public override void Use(Player p, string message) { if ((message.ToLower() == "set") && p != null) { p.level.jailx = p.pos[0]; p.level.jaily = p.pos[1]; p.level.jailz = p.pos[2]; p.level.jailrotx = p.rot[0]; p.level.jailroty = p.rot[1]; Player.SendMessage(p, "Set Jail point."); } else { Player who = Player.Find(message); if (who != null) { if (!who.jailed) { if (p != null) { if (who.group.Permission >= p.group.Permission) { Player.SendMessage(p, "Cannot jail someone of equal or greater rank."); return; } } Player.GlobalDie(who, false); if (p != null) { Player.GlobalSpawn(who, p.level.jailx, p.level.jaily, p.level.jailz, p.level.jailrotx, p.level.jailroty, true); } else { Player.GlobalSpawn(who, who.level.jailx, who.level.jaily, who.level.jailz, who.level.jailrotx, who.level.jailroty, true); } who.jailed = true; if (p == null) { if (Server.devs.Contains(who.name) || Server.gcmodhasprotection(who.name)) { return; } Player.SendMessage(p, who.name + " was jailed."); } Player.GlobalChat(who, who.color + who.name + Server.DefaultColor + " was &8jailed", false); } else { if (p == null) { if (Server.devs.Contains(who.name) || Server.gcmodhasprotection(who.name)) { return; } Player.SendMessage(p, who.name + " was freed from jail."); } who.jailed = false; Player.GlobalChat(who, who.color + who.name + Server.DefaultColor + " was &afreed" + Server.DefaultColor + " from jail", false); } } else { Player.SendMessage(p, "Could not find specified player."); } } }