Permission magic strings removed
This commit is contained in:
parent
fc03e72c77
commit
b06ec57819
8 changed files with 243 additions and 89 deletions
|
|
@ -110,75 +110,75 @@ namespace TShockAPI
|
|||
public static void InitCommands()
|
||||
{
|
||||
//When adding new perm in here, add new perm to CommandList in DBEditor
|
||||
ChatCommands.Add(new Command("kick", Kick, "kick"));
|
||||
ChatCommands.Add(new Command("ban", Ban, "ban"));
|
||||
ChatCommands.Add(new Command("ban", BanIP, "banip"));
|
||||
ChatCommands.Add(new Command("unban", UnBan, "unban"));
|
||||
ChatCommands.Add(new Command("unban", UnBanIP, "unbanip"));
|
||||
ChatCommands.Add(new Command("maintenance", ClearBans, "clearbans"));
|
||||
ChatCommands.Add(new Command("whitelist", Whitelist, "whitelist"));
|
||||
ChatCommands.Add(new Command("maintenance", Off, "off"));
|
||||
ChatCommands.Add(new Command("maintenance", OffNoSave, "off-nosave"));
|
||||
ChatCommands.Add(new Command("maintenance", CheckUpdates, "checkupdates"));
|
||||
ChatCommands.Add(new Command("causeevents", DropMeteor, "dropmeteor"));
|
||||
ChatCommands.Add(new Command("causeevents", Star, "star"));
|
||||
ChatCommands.Add(new Command("causeevents", Bloodmoon, "bloodmoon"));
|
||||
ChatCommands.Add(new Command("causeevents", Invade, "invade"));
|
||||
ChatCommands.Add(new Command("spawnboss", Eater, "eater"));
|
||||
ChatCommands.Add(new Command("spawnboss", Eye, "eye"));
|
||||
ChatCommands.Add(new Command("spawnboss", King, "king"));
|
||||
ChatCommands.Add(new Command("spawnboss", Skeletron, "skeletron"));
|
||||
ChatCommands.Add(new Command("spawnboss", Hardcore, "hardcore"));
|
||||
ChatCommands.Add(new Command("spawnmob", SpawnMob, "spawnmob", "sm"));
|
||||
ChatCommands.Add(new Command("tp", Home, "home"));
|
||||
ChatCommands.Add(new Command("tp", Spawn, "spawn"));
|
||||
ChatCommands.Add(new Command("tp", TP, "tp"));
|
||||
ChatCommands.Add(new Command("tphere", TPHere, "tphere"));
|
||||
ChatCommands.Add(new Command("warp", UseWarp, "warp"));
|
||||
ChatCommands.Add(new Command("managewarp", SetWarp, "setwarp"));
|
||||
ChatCommands.Add(new Command("managewarp", DeleteWarp, "delwarp"));
|
||||
ChatCommands.Add(new Command("managewarp", HideWarp, "hidewarp"));
|
||||
ChatCommands.Add(new Command("managegroup", AddGroup, "addgroup"));
|
||||
ChatCommands.Add(new Command("managegroup", DeleteGroup, "delgroup"));
|
||||
ChatCommands.Add(new Command("managegroup", ModifyGroup, "modgroup"));
|
||||
ChatCommands.Add(new Command("manageitem", AddItem, "additem"));
|
||||
ChatCommands.Add(new Command("manageitem", DeleteItem, "delitem"));
|
||||
ChatCommands.Add(new Command("cfg", SetSpawn, "setspawn"));
|
||||
ChatCommands.Add(new Command("cfg", Reload, "reload"));
|
||||
ChatCommands.Add(new Command("cfg", ShowConfiguration, "showconfig"));
|
||||
ChatCommands.Add(new Command("cfg", ServerPassword, "serverpassword"));
|
||||
ChatCommands.Add(new Command("cfg", Save, "save"));
|
||||
ChatCommands.Add(new Command("cfg", MaxSpawns, "maxspawns"));
|
||||
ChatCommands.Add(new Command("cfg", SpawnRate, "spawnrate"));
|
||||
ChatCommands.Add(new Command("time", Time, "time"));
|
||||
ChatCommands.Add(new Command("pvpfun", Slap, "slap"));
|
||||
ChatCommands.Add(new Command("editspawn", ToggleAntiBuild, "antibuild"));
|
||||
ChatCommands.Add(new Command("editspawn", ProtectSpawn, "protectspawn"));
|
||||
ChatCommands.Add(new Command("manageregion", Region, "region"));
|
||||
ChatCommands.Add(new Command("editspawn", DebugRegions, "debugreg"));
|
||||
ChatCommands.Add(new Command( Permissions.kick, Kick, "kick"));
|
||||
ChatCommands.Add(new Command(Permissions.ban, Ban, "ban"));
|
||||
ChatCommands.Add(new Command(Permissions.ban, BanIP, "banip"));
|
||||
ChatCommands.Add(new Command(Permissions.ban, UnBan, "unban"));
|
||||
ChatCommands.Add(new Command(Permissions.ban, UnBanIP, "unbanip"));
|
||||
ChatCommands.Add(new Command(Permissions.maintenance, ClearBans, "clearbans"));
|
||||
ChatCommands.Add(new Command(Permissions.whitelist, Whitelist, "whitelist"));
|
||||
ChatCommands.Add(new Command(Permissions.maintenance, Off, "off"));
|
||||
ChatCommands.Add(new Command(Permissions.maintenance, OffNoSave, "off-nosave"));
|
||||
ChatCommands.Add(new Command(Permissions.maintenance, CheckUpdates, "checkupdates"));
|
||||
ChatCommands.Add(new Command(Permissions.causeevents, DropMeteor, "dropmeteor"));
|
||||
ChatCommands.Add(new Command(Permissions.causeevents, Star, "star"));
|
||||
ChatCommands.Add(new Command(Permissions.causeevents, Bloodmoon, "bloodmoon"));
|
||||
ChatCommands.Add(new Command(Permissions.causeevents, Invade, "invade"));
|
||||
ChatCommands.Add(new Command(Permissions.spawnboss, Eater, "eater"));
|
||||
ChatCommands.Add(new Command(Permissions.spawnboss, Eye, "eye"));
|
||||
ChatCommands.Add(new Command(Permissions.spawnboss, King, "king"));
|
||||
ChatCommands.Add(new Command(Permissions.spawnboss, Skeletron, "skeletron"));
|
||||
ChatCommands.Add(new Command(Permissions.spawnboss, Hardcore, "hardcore"));
|
||||
ChatCommands.Add(new Command(Permissions.spawnmob, SpawnMob, "spawnmob", "sm"));
|
||||
ChatCommands.Add(new Command(Permissions.tp, Home, "home"));
|
||||
ChatCommands.Add(new Command(Permissions.tp, Spawn, "spawn"));
|
||||
ChatCommands.Add(new Command(Permissions.tp, TP, "tp"));
|
||||
ChatCommands.Add(new Command(Permissions.tphere, TPHere, "tphere"));
|
||||
ChatCommands.Add(new Command(Permissions.warp, UseWarp, "warp"));
|
||||
ChatCommands.Add(new Command(Permissions.managewarp, SetWarp, "setwarp"));
|
||||
ChatCommands.Add(new Command(Permissions.managewarp, DeleteWarp, "delwarp"));
|
||||
ChatCommands.Add(new Command(Permissions.managewarp, HideWarp, "hidewarp"));
|
||||
ChatCommands.Add(new Command(Permissions.managewarp, AddGroup, "addgroup"));
|
||||
ChatCommands.Add(new Command(Permissions.managewarp, DeleteGroup, "delgroup"));
|
||||
ChatCommands.Add(new Command(Permissions.managewarp, ModifyGroup, "modgroup"));
|
||||
ChatCommands.Add(new Command(Permissions.manageitem, AddItem, "additem"));
|
||||
ChatCommands.Add(new Command(Permissions.manageitem, DeleteItem, "delitem"));
|
||||
ChatCommands.Add(new Command(Permissions.cfg, SetSpawn, "setspawn"));
|
||||
ChatCommands.Add(new Command(Permissions.cfg, Reload, "reload"));
|
||||
ChatCommands.Add(new Command(Permissions.cfg, ShowConfiguration, "showconfig"));
|
||||
ChatCommands.Add(new Command(Permissions.cfg, ServerPassword, "serverpassword"));
|
||||
ChatCommands.Add(new Command(Permissions.cfg, Save, "save"));
|
||||
ChatCommands.Add(new Command(Permissions.cfg, MaxSpawns, "maxspawns"));
|
||||
ChatCommands.Add(new Command(Permissions.cfg, SpawnRate, "spawnrate"));
|
||||
ChatCommands.Add(new Command(Permissions.time, Time, "time"));
|
||||
ChatCommands.Add(new Command(Permissions.pvpfun, Slap, "slap"));
|
||||
ChatCommands.Add(new Command(Permissions.editspawn, ToggleAntiBuild, "antibuild"));
|
||||
ChatCommands.Add(new Command(Permissions.editspawn, ProtectSpawn, "protectspawn"));
|
||||
ChatCommands.Add(new Command(Permissions.manageregion, Region, "region"));
|
||||
ChatCommands.Add(new Command(Permissions.editspawn, DebugRegions, "debugreg"));
|
||||
ChatCommands.Add(new Command(Help, "help"));
|
||||
ChatCommands.Add(new Command(Playing, "playing", "online", "who"));
|
||||
ChatCommands.Add(new Command(AuthToken, "auth"));
|
||||
ChatCommands.Add(new Command(ThirdPerson, "me"));
|
||||
ChatCommands.Add(new Command(PartyChat, "p"));
|
||||
ChatCommands.Add(new Command(Rules, "rules"));
|
||||
ChatCommands.Add(new Command("logs", DisplayLogs, "displaylogs"));
|
||||
ChatCommands.Add(new Command(Permissions.logs, DisplayLogs, "displaylogs"));
|
||||
ChatCommands.Add(new Command(PasswordUser, "password") { DoLog = false });
|
||||
ChatCommands.Add(new Command(RegisterUser, "register") { DoLog = false });
|
||||
ChatCommands.Add(new Command("root-only", ManageUsers, "user") { DoLog = false });
|
||||
ChatCommands.Add(new Command("root-only", GrabUserUserInfo, "userinfo", "ui"));
|
||||
ChatCommands.Add(new Command("root-only", AuthVerify, "auth-verify"));
|
||||
ChatCommands.Add(new Command(Permissions.rootonly, ManageUsers, "user") { DoLog = false });
|
||||
ChatCommands.Add(new Command(Permissions.rootonly, GrabUserUserInfo, "userinfo", "ui"));
|
||||
ChatCommands.Add(new Command(Permissions.rootonly, AuthVerify, "auth-verify"));
|
||||
ChatCommands.Add(new Command(AttemptLogin, "login") { DoLog = false });
|
||||
ChatCommands.Add(new Command("cfg", Broadcast, "broadcast", "bc"));
|
||||
ChatCommands.Add(new Command("whisper", Whisper, "whisper", "w", "tell"));
|
||||
ChatCommands.Add(new Command("whisper", Reply, "reply", "r"));
|
||||
ChatCommands.Add(new Command("annoy", Annoy, "annoy"));
|
||||
ChatCommands.Add(new Command("cfg", ConvertWaR, "convert"));
|
||||
ChatCommands.Add(new Command("kill", Kill, "kill"));
|
||||
ChatCommands.Add(new Command("butcher", Butcher, "butcher"));
|
||||
ChatCommands.Add(new Command("item", Item, "item", "i"));
|
||||
ChatCommands.Add(new Command("item", Give, "give"));
|
||||
ChatCommands.Add(new Command("heal", Heal, "heal"));
|
||||
ChatCommands.Add(new Command(Permissions.cfg, Broadcast, "broadcast", "bc"));
|
||||
ChatCommands.Add(new Command(Permissions.whisper, Whisper, "whisper", "w", "tell"));
|
||||
ChatCommands.Add(new Command(Permissions.whisper, Reply, "reply", "r"));
|
||||
ChatCommands.Add(new Command(Permissions.annoy, Annoy, "annoy"));
|
||||
ChatCommands.Add(new Command(Permissions.cfg, ConvertWaR, "convert"));
|
||||
ChatCommands.Add(new Command(Permissions.kill, Kill, "kill"));
|
||||
ChatCommands.Add(new Command(Permissions.butcher, Butcher, "butcher"));
|
||||
ChatCommands.Add(new Command(Permissions.item, Item, "item", "i"));
|
||||
ChatCommands.Add(new Command(Permissions.item, Give, "give"));
|
||||
ChatCommands.Add(new Command(Permissions.heal, Heal, "heal"));
|
||||
}
|
||||
|
||||
public static bool HandleCommand(TSPlayer player, string text)
|
||||
|
|
@ -1627,7 +1627,7 @@ namespace TShockAPI
|
|||
{
|
||||
int.TryParse(args.Parameters[1], out damage);
|
||||
}
|
||||
if (!args.Player.Group.HasPermission("kill"))
|
||||
if (!args.Player.Group.HasPermission(Permissions.kill))
|
||||
{
|
||||
damage = Tools.Clamp(damage, 15, 0);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -316,7 +316,7 @@ namespace TShockAPI.DB
|
|||
|
||||
public bool CanBuild(int x, int y, TSPlayer ply)
|
||||
{
|
||||
if (!ply.Group.HasPermission("canbuild"))
|
||||
if (!ply.Group.HasPermission(Permissions.canbuild))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -150,7 +150,7 @@ namespace TShockAPI
|
|||
{
|
||||
string itemname = Encoding.ASCII.GetString(args.Data.ReadBytes(namelength));
|
||||
|
||||
if (!args.Player.Group.HasPermission("usebanneditem") && TShock.Itembans.ItemIsBanned(itemname))
|
||||
if (!args.Player.Group.HasPermission(Permissions.usebanneditem) && TShock.Itembans.ItemIsBanned(itemname))
|
||||
{
|
||||
args.Player.Disconnect("Using banned item: " + itemname + ", remove it and rejoin");
|
||||
}
|
||||
|
|
@ -299,7 +299,7 @@ namespace TShockAPI
|
|||
return true;
|
||||
}
|
||||
|
||||
if (!args.Player.Group.HasPermission("canbuild"))
|
||||
if (!args.Player.Group.HasPermission(Permissions.canbuild))
|
||||
{
|
||||
if (!args.Player.HasBeenSpammedWithBuildMessage)
|
||||
{
|
||||
|
|
@ -330,7 +330,7 @@ namespace TShockAPI
|
|||
return Tools.HandleGriefer(args.Player, TShock.Config.RangeCheckBanReason);
|
||||
}
|
||||
}
|
||||
if (tiletype == 48 && !args.Player.Group.HasPermission("canspike"))
|
||||
if (tiletype == 48 && !args.Player.Group.HasPermission(Permissions.canspike))
|
||||
{
|
||||
args.Player.SendMessage("You do not have permission to place spikes.", Color.Red);
|
||||
Tools.SendLogs(string.Format("{0} tried to place spikes", args.Player.Name), Color.Red);
|
||||
|
|
@ -338,7 +338,7 @@ namespace TShockAPI
|
|||
return true;
|
||||
}
|
||||
}
|
||||
if (!args.Player.Group.HasPermission("editspawn") && !TShock.Regions.CanBuild(x, y, args.Player) && TShock.Regions.InArea(x, y))
|
||||
if (!args.Player.Group.HasPermission(Permissions.editspawn) && !TShock.Regions.CanBuild(x, y, args.Player) && TShock.Regions.InArea(x, y))
|
||||
{
|
||||
if ((DateTime.UtcNow - args.Player.LastTileChangeNotify).TotalMilliseconds > 1000)
|
||||
{
|
||||
|
|
@ -350,7 +350,7 @@ namespace TShockAPI
|
|||
}
|
||||
if (TShock.Config.DisableBuild)
|
||||
{
|
||||
if (!args.Player.Group.HasPermission("editspawn"))
|
||||
if (!args.Player.Group.HasPermission(Permissions.editspawn))
|
||||
{
|
||||
if ((DateTime.UtcNow - args.Player.LastTileChangeNotify).TotalMilliseconds > 1000)
|
||||
{
|
||||
|
|
@ -363,7 +363,7 @@ namespace TShockAPI
|
|||
}
|
||||
if (TShock.Config.SpawnProtection)
|
||||
{
|
||||
if (!args.Player.Group.HasPermission("editspawn"))
|
||||
if (!args.Player.Group.HasPermission(Permissions.editspawn))
|
||||
{
|
||||
var flag = TShock.CheckSpawn(x, y);
|
||||
if (flag)
|
||||
|
|
@ -477,7 +477,7 @@ namespace TShockAPI
|
|||
if (type == 29 || type == 28 || type == 37)
|
||||
{
|
||||
Log.Debug(string.Format("Explosive(PlyXY:{0}_{1}, Type:{2})", args.Player.TileX, args.Player.TileY, type));
|
||||
if (TShock.Config.DisableExplosives && (!args.Player.Group.HasPermission("useexplosives") || !args.Player.Group.HasPermission("ignoregriefdetection")))
|
||||
if (TShock.Config.DisableExplosives && (!args.Player.Group.HasPermission(Permissions.useexplosives) || !args.Player.Group.HasPermission(Permissions.ignoregriefdetection)))
|
||||
{
|
||||
Main.projectile[ident].type = 0;
|
||||
args.Player.SendData(PacketTypes.ProjectileNew, "", ident);
|
||||
|
|
@ -536,21 +536,21 @@ namespace TShockAPI
|
|||
}
|
||||
}
|
||||
|
||||
if (!args.Player.Group.HasPermission("canbuild"))
|
||||
if (!args.Player.Group.HasPermission(Permissions.canbuild))
|
||||
{
|
||||
args.Player.SendMessage("You do not have permission to build!", Color.Red);
|
||||
args.Player.SendTileSquare(x, y);
|
||||
return true;
|
||||
}
|
||||
|
||||
if (lava && !args.Player.Group.HasPermission("canlava"))
|
||||
if (lava && !args.Player.Group.HasPermission(Permissions.canlava))
|
||||
{
|
||||
args.Player.SendMessage("You do not have permission to use lava", Color.Red);
|
||||
Tools.SendLogs(string.Format("{0} tried using lava", args.Player.Name), Color.Red);
|
||||
args.Player.SendTileSquare(x, y);
|
||||
return true;
|
||||
}
|
||||
if (!lava && !args.Player.Group.HasPermission("canwater"))
|
||||
if (!lava && !args.Player.Group.HasPermission(Permissions.canwater))
|
||||
{
|
||||
args.Player.SendMessage("You do not have permission to use water", Color.Red);
|
||||
Tools.SendLogs(string.Format("{0} tried using water", args.Player.Name), Color.Red);
|
||||
|
|
@ -574,7 +574,7 @@ namespace TShockAPI
|
|||
|
||||
if (TShock.Config.SpawnProtection)
|
||||
{
|
||||
if (!args.Player.Group.HasPermission("editspawn"))
|
||||
if (!args.Player.Group.HasPermission(Permissions.editspawn))
|
||||
{
|
||||
var flag = TShock.CheckSpawn(x, y);
|
||||
if (flag)
|
||||
|
|
@ -602,13 +602,13 @@ namespace TShockAPI
|
|||
Tools.ForceKick(args.Player, string.Format(TShock.Config.TileKillAbuseReason, Main.tile[tilex, tiley].type));
|
||||
return true;
|
||||
}
|
||||
if (!args.Player.Group.HasPermission("canbuild"))
|
||||
if (!args.Player.Group.HasPermission(Permissions.canbuild))
|
||||
{
|
||||
args.Player.SendMessage("You do not have permission to build!", Color.Red);
|
||||
args.Player.SendTileSquare(tilex, tiley);
|
||||
return true;
|
||||
}
|
||||
if (!args.Player.Group.HasPermission("editspawn") && !TShock.Regions.CanBuild(tilex, tiley, args.Player) && TShock.Regions.InArea(tilex, tiley))
|
||||
if (!args.Player.Group.HasPermission(Permissions.editspawn) && !TShock.Regions.CanBuild(tilex, tiley, args.Player) && TShock.Regions.InArea(tilex, tiley))
|
||||
{
|
||||
args.Player.SendMessage("Region protected from changes.", Color.Red);
|
||||
args.Player.SendTileSquare(tilex, tiley);
|
||||
|
|
@ -616,7 +616,7 @@ namespace TShockAPI
|
|||
}
|
||||
if (TShock.Config.DisableBuild)
|
||||
{
|
||||
if (!args.Player.Group.HasPermission("editspawn"))
|
||||
if (!args.Player.Group.HasPermission(Permissions.editspawn))
|
||||
{
|
||||
args.Player.SendMessage("World protected from changes.", Color.Red);
|
||||
args.Player.SendTileSquare(tilex, tiley);
|
||||
|
|
@ -625,7 +625,7 @@ namespace TShockAPI
|
|||
}
|
||||
if (TShock.Config.SpawnProtection)
|
||||
{
|
||||
if (!args.Player.Group.HasPermission("editspawn"))
|
||||
if (!args.Player.Group.HasPermission(Permissions.editspawn))
|
||||
{
|
||||
var flag = TShock.CheckSpawn(tilex, tiley);
|
||||
if (flag)
|
||||
|
|
|
|||
153
TShockAPI/Permissions.cs
Normal file
153
TShockAPI/Permissions.cs
Normal file
|
|
@ -0,0 +1,153 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
namespace TShockAPI
|
||||
{
|
||||
public static class Permissions
|
||||
{
|
||||
//Permissions with blank descriptions basically means its described by the commands it gives access to.
|
||||
|
||||
[Description("")]
|
||||
public static readonly string causeevents;
|
||||
|
||||
[Description("Required to be able to build (modify tiles and liquid)")]
|
||||
public static readonly string canbuild;
|
||||
|
||||
[Description("")]
|
||||
public static readonly string kill;
|
||||
|
||||
[Description("Allows you to use banned items")]
|
||||
public static readonly string usebanneditem;
|
||||
|
||||
[Description("Required to be able to place spikes")]
|
||||
public static readonly string canspike;
|
||||
|
||||
[Description("Required to be able to place/pickup water")]
|
||||
public static readonly string canwater;
|
||||
|
||||
[Description("Required to be able to place/pickup lava")]
|
||||
public static readonly string canlava;
|
||||
|
||||
[Description("Allows you to edit the spawn")]
|
||||
public static readonly string editspawn;
|
||||
|
||||
[Description("Prevents you from being kicked")]
|
||||
public static readonly string immunetokick;
|
||||
|
||||
[Description("Prevents you from being banned")]
|
||||
public static readonly string immunetoban;
|
||||
|
||||
[Description("Prevents you from being kicked/banned by TShocks grief detections")]
|
||||
public static readonly string ignoregriefdetection;
|
||||
|
||||
[Description("Prevents you from being kicked/banned by TShocks cheat detections")]
|
||||
public static readonly string ignorecheatdetection;
|
||||
|
||||
[Description("Allows you to use explosives even when they are disabled")]
|
||||
public static readonly string useexplosives;
|
||||
|
||||
[Description("Specific log messages are sent to users with this permission")]
|
||||
public static readonly string logs;
|
||||
|
||||
[Description("User gets the admin prefix/color in chat")]
|
||||
public static readonly string adminchat;
|
||||
|
||||
[Todo]
|
||||
[Description("Not currently working")]
|
||||
public static readonly string reservedslot;
|
||||
|
||||
[Description("User is notified when an update is available")]
|
||||
public static readonly string maintenance;
|
||||
|
||||
[Description("User can kick others")]
|
||||
public static readonly string kick;
|
||||
|
||||
[Description("User can ban others")]
|
||||
public static readonly string ban;
|
||||
|
||||
[Description("User can modify the whitelist")]
|
||||
public static readonly string whitelist;
|
||||
|
||||
[Description("User can spawn bosses")]
|
||||
public static readonly string spawnboss;
|
||||
|
||||
[Description("User can spawn npcs")]
|
||||
public static readonly string spawnmob;
|
||||
|
||||
[Description("User can teleport")]
|
||||
public static readonly string tp;
|
||||
|
||||
[Description("User can teleport people to them")]
|
||||
public static readonly string tphere;
|
||||
|
||||
[Description("User can use warps")]
|
||||
public static readonly string warp;
|
||||
|
||||
[Description("User can manage warps")]
|
||||
public static readonly string managewarp;
|
||||
|
||||
[Description("User can manage item bans")]
|
||||
public static readonly string manageitem;
|
||||
|
||||
[Description("User can edit sevrer configurations")]
|
||||
public static readonly string cfg;
|
||||
|
||||
[Description("")]
|
||||
public static readonly string time;
|
||||
|
||||
[Description("")]
|
||||
public static readonly string pvpfun;
|
||||
|
||||
[Description("User can edit regions")]
|
||||
public static readonly string manageregion;
|
||||
|
||||
[Description("Meant for super admins only")]
|
||||
public static readonly string rootonly;
|
||||
|
||||
[Description("User can whisper to others")]
|
||||
public static readonly string whisper;
|
||||
|
||||
[Description("")]
|
||||
public static readonly string annoy;
|
||||
|
||||
[Description("User can kill all enemy npcs")]
|
||||
public static readonly string butcher;
|
||||
|
||||
[Description("User can spawn items")]
|
||||
public static readonly string item;
|
||||
|
||||
[Description("")]
|
||||
public static readonly string heal;
|
||||
|
||||
|
||||
|
||||
|
||||
static Permissions()
|
||||
{
|
||||
foreach (var field in typeof(Permissions).GetFields())
|
||||
{
|
||||
field.SetValue(null, field.Name);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[AttributeUsage(AttributeTargets.Field, Inherited = false, AllowMultiple = false)]
|
||||
public sealed class TodoAttribute : Attribute
|
||||
{
|
||||
public string Info { get; private set; }
|
||||
|
||||
public TodoAttribute(string info)
|
||||
{
|
||||
Info = info;
|
||||
|
||||
}
|
||||
public TodoAttribute()
|
||||
{
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -400,7 +400,7 @@ namespace TShockAPI
|
|||
player.Group = Users.GetGroupForIP(player.IP);
|
||||
}
|
||||
|
||||
if (Tools.ActivePlayers() + 1 > Config.MaxSlots && !player.Group.HasPermission("reservedslot"))
|
||||
if (Tools.ActivePlayers() + 1 > Config.MaxSlots && !player.Group.HasPermission(Permissions.reservedslot))
|
||||
{
|
||||
Tools.ForceKick(player, Config.ServerFullReason);
|
||||
handler.Handled = true;
|
||||
|
|
@ -466,7 +466,7 @@ namespace TShockAPI
|
|||
return;
|
||||
}
|
||||
|
||||
if (tsplr.Group.HasPermission("adminchat") && !text.StartsWith("/") && Config.AdminChatEnabled)
|
||||
if (tsplr.Group.HasPermission(Permissions.adminchat) && !text.StartsWith("/") && Config.AdminChatEnabled)
|
||||
{
|
||||
Tools.Broadcast(Config.AdminChatPrefix + "<" + tsplr.Name + "> " + text,
|
||||
tsplr.Group.R, tsplr.Group.G,
|
||||
|
|
@ -579,7 +579,7 @@ namespace TShockAPI
|
|||
|
||||
// Stop accepting updates from player as this player is going to be kicked/banned during OnUpdate (different thread so can produce race conditions)
|
||||
if ((Config.BanKillTileAbusers || Config.KickKillTileAbusers) &&
|
||||
player.TileThreshold >= Config.TileThreshold && !player.Group.HasPermission("ignoregriefdetection"))
|
||||
player.TileThreshold >= Config.TileThreshold && !player.Group.HasPermission(Permissions.ignoregriefdetection))
|
||||
{
|
||||
Log.Debug("Rejecting " + type + " from " + player.Name + " as this player is about to be kicked");
|
||||
e.Handled = true;
|
||||
|
|
@ -627,7 +627,7 @@ namespace TShockAPI
|
|||
"PvP is forced! Enable PvP else you can't deal damage to other people. (People can kill you)",
|
||||
Color.Red);
|
||||
}
|
||||
if (player.Group.HasPermission("causeevents") && Config.InfiniteInvasion)
|
||||
if (player.Group.HasPermission(Permissions.causeevents) && Config.InfiniteInvasion)
|
||||
{
|
||||
StartInvasion();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -118,6 +118,7 @@
|
|||
<Compile Include="Net\WorldInfoMsg.cs" />
|
||||
<Compile Include="DB\RegionManager.cs" />
|
||||
<Compile Include="PacketBufferer.cs" />
|
||||
<Compile Include="Permissions.cs" />
|
||||
<Compile Include="RconHandler.cs" />
|
||||
<Compile Include="DB\RememberPosManager.cs" />
|
||||
<Compile Include="Resources.Designer.cs">
|
||||
|
|
@ -181,7 +182,7 @@
|
|||
</PropertyGroup>
|
||||
<ProjectExtensions>
|
||||
<VisualStudio>
|
||||
<UserProperties BuildVersion_UpdateAssemblyVersion="True" BuildVersion_UpdateFileVersion="True" BuildVersion_BuildAction="Both" BuildVersion_BuildVersioningStyle="None.None.None.MonthAndDayStamp" BuildVersion_StartDate="2011/6/17" BuildVersion_IncrementBeforeBuild="False" />
|
||||
<UserProperties BuildVersion_IncrementBeforeBuild="False" BuildVersion_StartDate="2011/6/17" BuildVersion_BuildVersioningStyle="None.None.None.MonthAndDayStamp" BuildVersion_BuildAction="Both" BuildVersion_UpdateFileVersion="True" BuildVersion_UpdateAssemblyVersion="True" />
|
||||
</VisualStudio>
|
||||
</ProjectExtensions>
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
|
|
|
|||
|
|
@ -146,7 +146,7 @@ namespace TShockAPI
|
|||
TSPlayer.Server.SendMessage(log, color);
|
||||
foreach (TSPlayer player in TShock.Players)
|
||||
{
|
||||
if (player != null && player.Active && player.Group.HasPermission("logs") && player.DisplayLogs && TShock.Config.DisableSpewLogs == false)
|
||||
if (player != null && player.Active && player.Group.HasPermission(Permissions.logs) && player.DisplayLogs && TShock.Config.DisableSpewLogs == false)
|
||||
player.SendMessage(log, color);
|
||||
}
|
||||
}
|
||||
|
|
@ -344,7 +344,7 @@ namespace TShockAPI
|
|||
{
|
||||
if (!player.ConnectionAlive)
|
||||
return true;
|
||||
if (!player.Group.HasPermission("immunetokick"))
|
||||
if (!player.Group.HasPermission(Permissions.immunetokick))
|
||||
{
|
||||
string playerName = player.Name;
|
||||
player.Disconnect(string.Format("Kicked: {0}", reason));
|
||||
|
|
@ -367,7 +367,7 @@ namespace TShockAPI
|
|||
{
|
||||
if (!player.ConnectionAlive)
|
||||
return true;
|
||||
if (!player.Group.HasPermission("immunetoban"))
|
||||
if (!player.Group.HasPermission(Permissions.immunetoban))
|
||||
{
|
||||
string ip = player.IP;
|
||||
string playerName = player.Name;
|
||||
|
|
@ -390,17 +390,17 @@ namespace TShockAPI
|
|||
|
||||
public static bool HandleGriefer(TSPlayer player, string reason)
|
||||
{
|
||||
return HandleBadPlayer(player, "ignoregriefdetection", TShock.Config.BanGriefers, TShock.Config.KickGriefers, reason);
|
||||
return HandleBadPlayer(player, Permissions.ignoregriefdetection, TShock.Config.BanGriefers, TShock.Config.KickGriefers, reason);
|
||||
}
|
||||
|
||||
public static bool HandleTntUser(TSPlayer player, string reason)
|
||||
{
|
||||
return HandleBadPlayer(player, "ignoregriefdetection", TShock.Config.BanKillTileAbusers, TShock.Config.KickKillTileAbusers, reason);
|
||||
return HandleBadPlayer(player, Permissions.ignoregriefdetection, TShock.Config.BanKillTileAbusers, TShock.Config.KickKillTileAbusers, reason);
|
||||
}
|
||||
|
||||
public static bool HandleExplosivesUser(TSPlayer player, string reason)
|
||||
{
|
||||
return HandleBadPlayer(player, "ignoregriefdetection", TShock.Config.BanExplosives, TShock.Config.KickExplosives, reason);
|
||||
return HandleBadPlayer(player, Permissions.ignoregriefdetection, TShock.Config.BanExplosives, TShock.Config.KickExplosives, reason);
|
||||
}
|
||||
|
||||
private static bool HandleBadPlayer(TSPlayer player, string overridePermission, bool ban, bool kick, string reason)
|
||||
|
|
|
|||
|
|
@ -83,7 +83,7 @@ namespace TShockAPI
|
|||
NotifyAdministrator(TSPlayer.Server, changes);
|
||||
foreach (TSPlayer player in TShock.Players)
|
||||
{
|
||||
if (player != null && player.Active && player.Group.HasPermission("maintenance"))
|
||||
if (player != null && player.Active && player.Group.HasPermission(Permissions.maintenance))
|
||||
{
|
||||
NotifyAdministrator(player, changes);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue