mirror of
https://github.com/ClassiCube/MCGalaxy.git
synced 2025-09-25 22:30:52 -04:00
Remove outdated GCMod stuff, also allow disabling drawops on certain maps.
This commit is contained in:
parent
ef8c7b57a1
commit
5951661748
@ -29,7 +29,9 @@ namespace MCGalaxy.Commands
|
||||
//bla
|
||||
public override void Use(Player p, string message)
|
||||
{
|
||||
if (p != null && !p.verifiedName) { Player.SendMessage(p, "You can't use GC, because the server hasn't verify-names on"); return; }
|
||||
if (p != null && !p.verifiedName) {
|
||||
Player.SendMessage(p, "You cannot use global chat, because your name is not verified."); return;
|
||||
}
|
||||
|
||||
if (String.IsNullOrEmpty(message)) {
|
||||
p.InGlobalChat = !p.InGlobalChat;
|
||||
|
@ -36,6 +36,9 @@ namespace MCGalaxy.Commands {
|
||||
Player.SendMessage(p, "Map authors: " + p.level.Authors);
|
||||
Player.SendMessage(p, "Pillaring allowed: " + p.level.Pillaring);
|
||||
Player.SendMessage(p, "Build type: " + p.level.BuildType);
|
||||
Player.SendMessage(p, "Min round time: " + p.level.MinRoundTime + " minutes");
|
||||
Player.SendMessage(p, "Max round time: " + p.level.MaxRoundTime + " minutes");
|
||||
Player.SendMessage(p, "Drawing commands allowed: " + p.level.DrawingAllowed);
|
||||
return;
|
||||
}
|
||||
|
||||
@ -81,6 +84,13 @@ namespace MCGalaxy.Commands {
|
||||
}
|
||||
p.level.MaxRoundTime = time;
|
||||
Player.SendMessage(p, "Set max round time to: " + time + " minutes");
|
||||
} else if (args[0].CaselessEq("drawingallowed") || args[0].CaselessEq("drawingenabled")) {
|
||||
bool value;
|
||||
if (!bool.TryParse(args[1], out value)) {
|
||||
Player.SendMessage(p, "Value must be 'true' or 'false'"); return;
|
||||
}
|
||||
p.level.DrawingAllowed = value;
|
||||
Player.SendMessage(p, "Set drawing commands allowed to: " + value);
|
||||
} else {
|
||||
Player.SendMessage(p, "Unrecognised property \"" + args[0] + "\"."); return;
|
||||
}
|
||||
@ -95,6 +105,7 @@ namespace MCGalaxy.Commands {
|
||||
Player.SendMessage(p, "%T/mapset build [normal/modifyonly/nomodify]");
|
||||
Player.SendMessage(p, "%T/mapset minroundtime [minutes]");
|
||||
Player.SendMessage(p, "%T/mapset maxroundtime [minutes]");
|
||||
Player.SendMessage(p, "%T/mapset drawingallowed [true/false]");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,38 +0,0 @@
|
||||
/*
|
||||
Copyright 2010 MCLawl Team - Written by Valek (Modified for use with MCGalaxy)
|
||||
|
||||
Dual-licensed under the Educational Community License, Version 2.0 and
|
||||
the GNU General Public License, Version 3 (the "Licenses"); you may
|
||||
not use this file except in compliance with the Licenses. You may
|
||||
obtain a copy of the Licenses at
|
||||
|
||||
http://www.opensource.org/licenses/ecl2.php
|
||||
http://www.gnu.org/licenses/gpl-3.0.html
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the Licenses are distributed on an "AS IS"
|
||||
BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
|
||||
or implied. See the Licenses for the specific language governing
|
||||
permissions and limitations under the Licenses.
|
||||
*/
|
||||
namespace MCGalaxy.Commands {
|
||||
|
||||
public sealed class CmdDevs : Command {
|
||||
|
||||
public override string name { get { return "devs"; } }
|
||||
public override string shortcut { get { return "dev"; } }
|
||||
public override string type { get { return CommandTypes.Information; } }
|
||||
public override bool museumUsable { get { return true; } }
|
||||
public override LevelPermission defaultRank { get { return LevelPermission.Banned; } }
|
||||
|
||||
public override void Use(Player p, string message) {
|
||||
if ( message != "" ) { Help(p); return; }
|
||||
string devlist = string.Join(", ", Server.Devs);
|
||||
Player.SendMessage(p, "&9MCGalaxy Development Team: %S" + devlist + "&e.");
|
||||
}
|
||||
|
||||
public override void Help(Player p) {
|
||||
Player.SendMessage(p, "/devs - Displays the list of MCGalaxy developers.");
|
||||
}
|
||||
}
|
||||
}
|
@ -1,38 +0,0 @@
|
||||
/*
|
||||
Copyright 2010 MCLawl Team - Written by Valek (Modified for use with MCGalaxy)
|
||||
|
||||
Dual-licensed under the Educational Community License, Version 2.0 and
|
||||
the GNU General Public License, Version 3 (the "Licenses"); you may
|
||||
not use this file except in compliance with the Licenses. You may
|
||||
obtain a copy of the Licenses at
|
||||
|
||||
http://www.opensource.org/licenses/ecl2.php
|
||||
http://www.gnu.org/licenses/gpl-3.0.html
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the Licenses are distributed on an "AS IS"
|
||||
BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
|
||||
or implied. See the Licenses for the specific language governing
|
||||
permissions and limitations under the Licenses.
|
||||
*/
|
||||
namespace MCGalaxy.Commands {
|
||||
|
||||
public sealed class CmdGcmods : Command {
|
||||
|
||||
public override string name { get { return "gcmods"; } }
|
||||
public override string shortcut { get { return "gcmod"; } }
|
||||
public override string type { get { return CommandTypes.Information; } }
|
||||
public override bool museumUsable { get { return true; } }
|
||||
public override LevelPermission defaultRank { get { return LevelPermission.Banned; } }
|
||||
|
||||
public override void Use(Player p, string message) {
|
||||
if (message != "") { Help(p); return; }
|
||||
string gcmodlist = string.Join(", ", Server.GCmods);
|
||||
Player.SendMessage(p, "&9MCGalaxy Global Chat Moderation Team: %S" + gcmodlist + "&e.");
|
||||
}
|
||||
|
||||
public override void Help(Player p) {
|
||||
Player.SendMessage(p, "/gcmods - Displays the list of MCGalaxy global chat moderators.");
|
||||
}
|
||||
}
|
||||
}
|
@ -1,38 +0,0 @@
|
||||
/*
|
||||
Copyright 2010 MCLawl Team - Written by Valek (Modified for use with MCGalaxy)
|
||||
|
||||
Dual-licensed under the Educational Community License, Version 2.0 and
|
||||
the GNU General Public License, Version 3 (the "Licenses"); you may
|
||||
not use this file except in compliance with the Licenses. You may
|
||||
obtain a copy of the Licenses at
|
||||
|
||||
http://www.opensource.org/licenses/ecl2.php
|
||||
http://www.gnu.org/licenses/gpl-3.0.html
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the Licenses are distributed on an "AS IS"
|
||||
BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
|
||||
or implied. See the Licenses for the specific language governing
|
||||
permissions and limitations under the Licenses.
|
||||
*/
|
||||
namespace MCGalaxy.Commands {
|
||||
|
||||
public sealed class CmdMods : Command {
|
||||
|
||||
public override string name { get { return "mods"; } }
|
||||
public override string shortcut { get { return "mod"; } }
|
||||
public override string type { get { return CommandTypes.Information; } }
|
||||
public override bool museumUsable { get { return true; } }
|
||||
public override LevelPermission defaultRank { get { return LevelPermission.Banned; } }
|
||||
|
||||
public override void Use(Player p, string message) {
|
||||
if (message != "") { Help(p); return; }
|
||||
string modlist = string.Join(", ", Server.Mods);
|
||||
Player.SendMessage(p, "&9MCGalaxy Moderation Team: %S" + modlist + "&e.");
|
||||
}
|
||||
|
||||
public override void Help(Player p) {
|
||||
Player.SendMessage(p, "/mods - Displays the list of MCGalaxy moderators.");
|
||||
}
|
||||
}
|
||||
}
|
@ -88,7 +88,6 @@ namespace MCGalaxy.Commands
|
||||
|
||||
if (pl.isDev) devSec.Append(pl, name);
|
||||
if (pl.isMod) modsSec.Append(pl, name);
|
||||
if (pl.isGCMod) gcModsSec.Append(pl, name);
|
||||
playerList.Find(grp => grp.group == pl.group).Append(pl, name);
|
||||
}
|
||||
}
|
||||
|
@ -1,24 +1,23 @@
|
||||
/*
|
||||
Copyright 2010 MCLawl Team - Written by Valek (Modified for use with MCGalaxy)
|
||||
Copyright 2010 MCLawl Team - Written by Valek (Modified for use with MCGalaxy)
|
||||
|
||||
Dual-licensed under the Educational Community License, Version 2.0 and
|
||||
the GNU General Public License, Version 3 (the "Licenses"); you may
|
||||
not use this file except in compliance with the Licenses. You may
|
||||
obtain a copy of the Licenses at
|
||||
|
||||
http://www.opensource.org/licenses/ecl2.php
|
||||
http://www.gnu.org/licenses/gpl-3.0.html
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the Licenses are distributed on an "AS IS"
|
||||
BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
|
||||
or implied. See the Licenses for the specific language governing
|
||||
permissions and limitations under the Licenses.
|
||||
Dual-licensed under the Educational Community License, Version 2.0 and
|
||||
the GNU General Public License, Version 3 (the "Licenses"); you may
|
||||
not use this file except in compliance with the Licenses. You may
|
||||
obtain a copy of the Licenses at
|
||||
|
||||
http://www.opensource.org/licenses/ecl2.php
|
||||
http://www.gnu.org/licenses/gpl-3.0.html
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the Licenses are distributed on an "AS IS"
|
||||
BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
|
||||
or implied. See the Licenses for the specific language governing
|
||||
permissions and limitations under the Licenses.
|
||||
*/
|
||||
namespace MCGalaxy.Commands
|
||||
{
|
||||
public sealed class CmdStaff : Command
|
||||
{
|
||||
namespace MCGalaxy.Commands {
|
||||
|
||||
public sealed class CmdStaff : Command {
|
||||
public override string name { get { return "staff"; } }
|
||||
public override string shortcut { get { return ""; } }
|
||||
public override string type { get { return CommandTypes.Information; } }
|
||||
@ -26,17 +25,52 @@ namespace MCGalaxy.Commands
|
||||
public override LevelPermission defaultRank { get { return LevelPermission.Banned; } }
|
||||
public CmdStaff() { }
|
||||
|
||||
public override void Use(Player p, string message)
|
||||
{
|
||||
public override void Use(Player p, string message) {
|
||||
if (message != "") { Help(p); return; }
|
||||
Command.all.Find("devs").Use(p, "");
|
||||
Command.all.Find("mods").Use(p, "");
|
||||
//Command.all.Find("gcmods").Use(p, "");
|
||||
}
|
||||
|
||||
public override void Help(Player p)
|
||||
{
|
||||
public override void Help(Player p) {
|
||||
Player.SendMessage(p, "/staff - Displays the MCGalaxy team.");
|
||||
}
|
||||
}
|
||||
|
||||
public sealed class CmdMods : Command {
|
||||
|
||||
public override string name { get { return "mods"; } }
|
||||
public override string shortcut { get { return "mod"; } }
|
||||
public override string type { get { return CommandTypes.Information; } }
|
||||
public override bool museumUsable { get { return true; } }
|
||||
public override LevelPermission defaultRank { get { return LevelPermission.Banned; } }
|
||||
|
||||
public override void Use(Player p, string message) {
|
||||
if (message != "") { Help(p); return; }
|
||||
string modlist = string.Join(", ", Server.Mods);
|
||||
Player.SendMessage(p, "&9MCGalaxy Moderation Team: %S" + modlist + "&e.");
|
||||
}
|
||||
|
||||
public override void Help(Player p) {
|
||||
Player.SendMessage(p, "/mods - Displays the list of MCGalaxy moderators.");
|
||||
}
|
||||
}
|
||||
|
||||
public sealed class CmdDevs : Command {
|
||||
|
||||
public override string name { get { return "devs"; } }
|
||||
public override string shortcut { get { return "dev"; } }
|
||||
public override string type { get { return CommandTypes.Information; } }
|
||||
public override bool museumUsable { get { return true; } }
|
||||
public override LevelPermission defaultRank { get { return LevelPermission.Banned; } }
|
||||
|
||||
public override void Use(Player p, string message) {
|
||||
if (message != "") { Help(p); return; }
|
||||
string devlist = string.Join(", ", Server.Devs);
|
||||
Player.SendMessage(p, "&9MCGalaxy Development Team: %S" + devlist + "&e.");
|
||||
}
|
||||
|
||||
public override void Help(Player p) {
|
||||
Player.SendMessage(p, "/devs - Displays the list of MCGalaxy developers.");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -59,7 +59,6 @@ namespace MCGalaxy.Commands
|
||||
|
||||
if (who.isDev) Player.SendMessage(p, "> > Player is a &9Developer");
|
||||
else if (who.isMod) Player.SendMessage(p, "> > Player is a &9MCGalaxy Moderator");
|
||||
else if (who.isGCMod) Player.SendMessage(p, "> > Player is a &9Global Chat Moderator");
|
||||
|
||||
if (p == null || (int)p.group.Permission >= CommandOtherPerms.GetPerm(this)) {
|
||||
string givenIP;
|
||||
|
@ -68,7 +68,6 @@ namespace MCGalaxy.Commands
|
||||
|
||||
if (Server.Devs.ContainsInsensitive(message)) Player.SendMessage(p, "> > Player is a &9Developer");
|
||||
else if (Server.Mods.ContainsInsensitive(message)) Player.SendMessage(p, "> > Player is a &9MCGalaxy Moderator");
|
||||
else if (Server.GCmods.ContainsInsensitive(message)) Player.SendMessage(p, "> > Player is a &9Global Chat Moderator");
|
||||
|
||||
if (p == null || (int)p.group.Permission >= CommandOtherPerms.GetPerm(this)) {
|
||||
if (Server.bannedIP.Contains(target.ip))
|
||||
|
@ -155,6 +155,10 @@ namespace MCGalaxy.Drawing.Ops {
|
||||
op.Max = Vec3U16.Max(op.Max, marks[i]);
|
||||
}
|
||||
op.Level = p.level;
|
||||
if (!op.Level.DrawingAllowed) {
|
||||
Player.SendMessage(p, "Drawing commands are turned off on this map.");
|
||||
return false;
|
||||
}
|
||||
|
||||
long affected = 0;
|
||||
if (!op.CanDraw(marks, p, out affected))
|
||||
|
@ -320,8 +320,6 @@ namespace MCGalaxy
|
||||
message = "[Dev]" + message;
|
||||
else if(Server.Mods.ContainsInsensitive(message.Split(':')[0]) && !message.StartsWith("[Mod]") && !message.StartsWith("[Moderator]"))
|
||||
message = "[Mod]" + message;
|
||||
else if (Server.GCmods.ContainsInsensitive(message.Split(':')[0]) && !message.StartsWith("[GCMod]"))
|
||||
message = "[GCMod]" + message;
|
||||
|
||||
/*try {
|
||||
if(GUI.GuiEvent != null)
|
||||
|
@ -86,6 +86,7 @@ namespace MCGalaxy.Levels.IO {
|
||||
writer.WriteLine("BuildType = " + level.BuildType);
|
||||
writer.WriteLine("MinRoundTime = " + level.MinRoundTime);
|
||||
writer.WriteLine("MaxRoundTime = " + level.MaxRoundTime);
|
||||
writer.WriteLine("DrawingAllowed = " + level.DrawingAllowed);
|
||||
}
|
||||
|
||||
static string GetName(LevelPermission perm) {
|
||||
|
@ -209,6 +209,7 @@ namespace MCGalaxy
|
||||
public bool CanPlace { get { return Buildable && BuildType != BuildType.NoModify; } }
|
||||
public bool CanDelete { get { return Deletable && BuildType != BuildType.NoModify; } }
|
||||
public int MinRoundTime = 4, MaxRoundTime = 7;
|
||||
public bool DrawingAllowed = true;
|
||||
|
||||
public Level(string n, ushort x, ushort y, ushort z, string type, int seed = 0, bool useSeed = false)
|
||||
{
|
||||
|
@ -206,9 +206,7 @@
|
||||
<Compile Include="Commands\Information\CmdAfk.cs" />
|
||||
<Compile Include="Commands\Information\CmdBlocks.cs" />
|
||||
<Compile Include="Commands\Information\CmdClones.cs" />
|
||||
<Compile Include="Commands\Information\CmdDevs.cs" />
|
||||
<Compile Include="Commands\Information\CmdFaq.cs" />
|
||||
<Compile Include="Commands\Information\CmdGcmods.cs" />
|
||||
<Compile Include="Commands\Information\CmdHasirc.cs" />
|
||||
<Compile Include="Commands\Information\CmdHelp.cs" />
|
||||
<Compile Include="Commands\Information\CmdHost.cs" />
|
||||
@ -218,7 +216,6 @@
|
||||
<Compile Include="Commands\Information\CmdLevels.cs" />
|
||||
<Compile Include="Commands\Information\CmdMapInfo.cs" />
|
||||
<Compile Include="Commands\Information\CmdMeasure.cs" />
|
||||
<Compile Include="Commands\Information\CmdMods.cs" />
|
||||
<Compile Include="Commands\Information\CmdNews.cs" />
|
||||
<Compile Include="Commands\Information\CmdOpRules.cs" />
|
||||
<Compile Include="Commands\Information\CmdOpStats.cs" />
|
||||
|
@ -256,17 +256,16 @@ namespace MCGalaxy {
|
||||
}
|
||||
|
||||
string verify = enc.GetString(message, 65, 32).Trim();
|
||||
if (Server.verify)
|
||||
{
|
||||
if (verify == "--" || verify !=
|
||||
BitConverter.ToString(md5.ComputeHash(enc.GetBytes(Server.salt + truename)))
|
||||
.Replace("-", "").ToLower())
|
||||
{
|
||||
if (!IPInPrivateRange(ip))
|
||||
{
|
||||
verifiedName = false;
|
||||
if (Server.verify) {
|
||||
string hash = BitConverter.ToString(md5.ComputeHash(enc.GetBytes(Server.salt + truename)));
|
||||
if (!verify.CaselessEq(hash.Replace("-", ""))) {
|
||||
if (!IPInPrivateRange(ip)) {
|
||||
Kick("Login failed! Try signing in again.", true); return;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
verifiedName = true;
|
||||
}
|
||||
}
|
||||
DisplayName = name;
|
||||
SkinName = name;
|
||||
@ -275,8 +274,6 @@ namespace MCGalaxy {
|
||||
|
||||
isDev = Server.Devs.ContainsInsensitive(name);
|
||||
isMod = Server.Mods.ContainsInsensitive(name);
|
||||
isGCMod = Server.GCmods.ContainsInsensitive(name);
|
||||
verifiedName = Server.verify;
|
||||
|
||||
try {
|
||||
Server.TempBan tBan = Server.tempBans.Find(tB => tB.name.ToLower() == name.ToLower());
|
||||
|
@ -310,7 +310,7 @@ namespace MCGalaxy {
|
||||
public bool InGlobalChat { get; set; }
|
||||
public Dictionary<string, string> sounds = new Dictionary<string, string>();
|
||||
|
||||
public bool isDev, isMod, isGCMod; //is this player a dev/mod/gcmod?
|
||||
public bool isDev, isMod;
|
||||
public bool isStaff;
|
||||
public bool verifiedName;
|
||||
|
||||
@ -330,8 +330,7 @@ namespace MCGalaxy {
|
||||
prefix = team != null ? "<" + team.Color + team.Name + color + "> " : "";
|
||||
|
||||
string viptitle = isDev ? string.Format("{1}[{0}Dev{1}] ", Colors.blue, color) :
|
||||
isMod ? string.Format("{1}[{0}Mod{1}] ", Colors.lime, color)
|
||||
: isGCMod ? string.Format("{1}[{0}GCMod{1}] ", Colors.gold, color) : "";
|
||||
isMod ? string.Format("{1}[{0}Mod{1}] ", Colors.lime, color) : "";
|
||||
prefix = prefix + viptitle;
|
||||
prefix = (title == "") ? prefix : prefix + color + "[" + titlecolor + title + color + "] ";
|
||||
}
|
||||
|
@ -627,7 +627,7 @@ namespace MCGalaxy {
|
||||
|
||||
public static void SaveProps(StreamWriter w) {
|
||||
w.WriteLine("# Edit the settings below to modify how your server operates. This is an explanation of what each setting does.");
|
||||
w.WriteLine("# server-name\t\t\t\t= The name which displays on minecraft.net");
|
||||
w.WriteLine("# server-name\t\t\t\t= The name which displays on classicube.net");
|
||||
w.WriteLine("# motd\t\t\t\t= The message which displays when a player connects");
|
||||
w.WriteLine("# port\t\t\t\t= The port to operate from");
|
||||
w.WriteLine("# console-only\t\t\t= Run without a GUI (useful for Linux servers with mono)");
|
||||
|
@ -200,7 +200,6 @@ namespace MCGalaxy {
|
||||
void UpdateStaffList() {
|
||||
Devs.Clear();
|
||||
Mods.Clear();
|
||||
GCmods.Clear();
|
||||
ml.Queue(UpdateStaffListTask);
|
||||
}
|
||||
|
||||
@ -210,7 +209,7 @@ namespace MCGalaxy {
|
||||
string[] result = web.DownloadString(staffUrl).Split(new string[] { "\r\n", "\n" }, StringSplitOptions.None);
|
||||
foreach (string line in result) {
|
||||
string type = line.Split(':')[0].ToLower();
|
||||
List<string> staffList = type.Equals("devs") ? Devs : type.Equals("mods") ? Mods : type.Equals("gcmods") ? GCmods : null;
|
||||
List<string> staffList = type.Equals("devs") ? Devs : type.Equals("mods") ? Mods : null;
|
||||
foreach (string name in line.Split(':')[1].Split())
|
||||
staffList.Add(name);
|
||||
}
|
||||
@ -220,7 +219,6 @@ namespace MCGalaxy {
|
||||
s.Log("Failed to update MCGalaxy staff list.");
|
||||
Devs.Clear();
|
||||
Mods.Clear();
|
||||
GCmods.Clear();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -107,7 +107,6 @@ namespace MCGalaxy
|
||||
|
||||
public static readonly List<string> Devs = new List<string>();
|
||||
public static readonly List<string> Mods = new List<string>();
|
||||
public static readonly List<string> GCmods = new List<string>();
|
||||
|
||||
internal static readonly List<string> protectover = new List<string>(new string[] { "moderate", "mute", "freeze", "lockdown", "ban", "banip", "kickban", "kick", "global", "xban", "xundo", "undo", "uban", "unban", "unbanip", "demote", "promote", "restart", "shutdown", "setrank", "warn", "tempban", "impersonate", "sendcmd", "possess", "joker", "jail", "ignore", "voice" });
|
||||
public static List<string> ProtectOver { get { return new List<string>(protectover); } }
|
||||
|
Loading…
x
Reference in New Issue
Block a user