Cleanup /invincible.

This commit is contained in:
UnknownShadow200 2016-06-05 00:16:40 +10:00
parent e95cd2acac
commit d34db5c7ac
2 changed files with 38 additions and 58 deletions

View File

@ -102,7 +102,7 @@ namespace MCGalaxy.Commands {
public override void Help(Player p) { public override void Help(Player p) {
Player.Message(p, "%T/awards [player] %H- Gives a list of awards that player has."); Player.Message(p, "%T/awards [player] %H- Gives a list of awards that player has.");
Player.Message(p, "$HIf [player] is not given, lists all awards the server has."); Player.Message(p, "%HIf [player] is not given, lists all awards the server has.");
Player.Message(p, "%HSpecify 1/2/3/... after to get an ordered list."); Player.Message(p, "%HSpecify 1/2/3/... after to get an ordered list.");
} }
} }

View File

@ -16,10 +16,8 @@
permissions and limitations under the Licenses. permissions and limitations under the Licenses.
*/ */
using System; using System;
namespace MCGalaxy.Commands namespace MCGalaxy.Commands {
{ public sealed class CmdInvincible : Command {
public sealed class CmdInvincible : Command
{
public override string name { get { return "invincible"; } } public override string name { get { return "invincible"; } }
public override string shortcut { get { return "inv"; } } public override string shortcut { get { return "inv"; } }
public override string type { get { return CommandTypes.Other; } } public override string type { get { return CommandTypes.Other; } }
@ -27,50 +25,32 @@ namespace MCGalaxy.Commands
public override LevelPermission defaultRank { get { return LevelPermission.Operator; } } public override LevelPermission defaultRank { get { return LevelPermission.Operator; } }
public CmdInvincible() { } public CmdInvincible() { }
public override void Use(Player p, string message) public override void Use(Player p, string message) {
{
Player who = message == "" ? p : PlayerInfo.FindOrShowMatches(p, message); Player who = message == "" ? p : PlayerInfo.FindOrShowMatches(p, message);
if (who == null) return; if (who == null) return;
if (p != null && who.group.Permission > p.group.Permission) { if (p != null && who.group.Permission > p.group.Permission) {
MessageTooHighRank(p, "toggle invinciblity", true); return; MessageTooHighRank(p, "toggle invinciblity", true); return;
} }
who.invincible = !who.invincible;
if (who.invincible) ShowPlayerMessage(p, who);
{
who.invincible = false;
if(p != null && who == p)
{
Player.Message( p, "You are no longer invincible.");
}
else
{
Player.Message(p, who.ColoredName + " %Sis no longer invincible.");
} }
if (Server.cheapMessage && !who.hidden) static void ShowPlayerMessage(Player p, Player who) {
Player.SendChatFrom(who, who.ColoredName + " %Shas stopped being immortal", false); string msg = who.invincible ? "now invincible" : "no longer invincible";
}
else
{
if (p != null && who == p) if (p != null && who == p)
{ Player.Message(p, "You are {0}", msg);
Player.Message( p, "You are now invincible.");
}
else else
{ Player.Message(p, "{0} %Sis {1}.", who.ColoredName, msg);
Player.Message( p, who.ColoredName + " %Sis now invincible.");
} string globalMsg = who.invincible ? Server.cheapMessageGiven : "has stopped being immortal";
who.invincible = true;
if (Server.cheapMessage && !who.hidden) if (Server.cheapMessage && !who.hidden)
Player.SendChatFrom(who, who.ColoredName + " %S" + Server.cheapMessageGiven, false); Player.SendChatFrom(who, who.ColoredName + " %S" + globalMsg, false);
} }
}
public override void Help(Player p) public override void Help(Player p) {
{
Player.Message(p, "/invincible [name] - Turns invincible mode on/off."); Player.Message(p, "/invincible [name] - Turns invincible mode on/off.");
Player.Message(p, "If [name] is given, that player's invincibility is toggled"); Player.Message(p, "If [name] is given, that player's invincibility is toggled");
Player.Message(p, "/inv = Shortcut.");
} }
} }
} }