by dryfly21 » 06 Jun 2013, 05:18
much like the cmd /freeze but with my own modifications and as always enjoy
- Code: Select all
using System;
using System.Threading;
namespace MCDzienny
{
public class CmdStop : Command
{
public override string name { get { return "stop"; } }
public override string shortcut { get { return "sp"; } }
public override string type { get { return "mod"; } }
public override bool museumUsable { get { return false; } }
public override LevelPermission defaultRank { get { return LevelPermission.Operator; } }
public override void Use(Player p, string message)
{
if (message == "") { Help(p); return; }
bool scat = false;
if (message[0] == '#')
{
message = message.Remove(0, 1).Trim();
scat = true;
}
Player who = Player.Find(message);
if (who == null)
{
Player.SendMessage(p, "Could not find player.");
return;
}
else if (who == p)
{
Player.SendMessage(p, "Cannot stop yourself.");
return;
}
else if (who.group.Permission >= p.group.Permission)
{
Player.SendMessage(p, "Cannot stop someone of equal or greater rank.");
return;
}
if (!who.frozen)
{
who.frozen = true;
Player.GlobalMessage(who.color + who.name + Server.DefaultColor + " has been %4stopped!");
}
else
{
who.frozen = false;
Player.GlobalMessage(who.color + who.name + Server.DefaultColor + " has been &aunstopped!");
Player.SendMessage(who, who.color + who.name + Server.DefaultColor + " you are free to move");
if (scat) Player.GlobalMessage(who.color + who.name + Server.DefaultColor + " is being kicked now...");
Thread.Sleep(1000);
if (scat) who.Kick(who.name + " was kicked");
}
}
public override void Help(Player p)
{
Player.SendMessage(p, "/stop <name> - Stops <name> from moving until unstopped.");
Player.SendMessage(p, "add '#' before name to kick the user after stopped");
}
}
}