mirror of
https://github.com/ClassiCube/MCGalaxy.git
synced 2025-09-23 04:32:50 -04:00
Reduce IL size of CmdBlockProperties.SetProperty by 317 bytes
This commit is contained in:
parent
46c571e7f0
commit
69dd9d7d89
@ -99,55 +99,44 @@ namespace MCGalaxy.Commands.World {
|
|||||||
void SetProperty(Player p, BlockProps[] scope, ExtBlock block,
|
void SetProperty(Player p, BlockProps[] scope, ExtBlock block,
|
||||||
string prop, string[] args) {
|
string prop, string[] args) {
|
||||||
int i = GetIndex(scope, block);
|
int i = GetIndex(scope, block);
|
||||||
|
string text = args.Length > 3 ? args[3] : null;
|
||||||
|
|
||||||
if (prop == "portal") {
|
if (prop == "portal") {
|
||||||
scope[i].IsPortal = !scope[i].IsPortal;
|
Toggle(p, scope, block, "a portal", ref scope[i].IsPortal);
|
||||||
OnToggleSet(p, scope, block, "a portal", scope[i].IsPortal);
|
|
||||||
} else if (prop == "mb" || prop == "messageblock") {
|
} else if (prop == "mb" || prop == "messageblock") {
|
||||||
scope[i].IsMessageBlock = !scope[i].IsMessageBlock;
|
Toggle(p, scope, block, "a message block", ref scope[i].IsMessageBlock);
|
||||||
OnToggleSet(p, scope, block, "a message block", scope[i].IsMessageBlock);
|
|
||||||
} else if (prop == "rails") {
|
} else if (prop == "rails") {
|
||||||
scope[i].IsRails = !scope[i].IsRails;
|
Toggle(p, scope, block, "train rails", ref scope[i].IsRails);
|
||||||
OnToggleSet(p, scope, block, "train rails", scope[i].IsRails);
|
|
||||||
} else if (prop == "waterkills") {
|
} else if (prop == "waterkills") {
|
||||||
scope[i].WaterKills = !scope[i].WaterKills;
|
Toggle(p, scope, block, "killed by water", ref scope[i].WaterKills);
|
||||||
OnToggleSet(p, scope, block, "killed by water", scope[i].WaterKills);
|
|
||||||
} else if (prop == "lavakills") {
|
} else if (prop == "lavakills") {
|
||||||
scope[i].LavaKills = !scope[i].LavaKills;
|
Toggle(p, scope, block, "killed by lava", ref scope[i].LavaKills);
|
||||||
OnToggleSet(p, scope, block, "killed by lava", scope[i].LavaKills);
|
|
||||||
} else if (prop == "door") {
|
} else if (prop == "door") {
|
||||||
scope[i].IsDoor = !scope[i].IsDoor;
|
Toggle(p, scope, block, "a door", ref scope[i].IsDoor);
|
||||||
OnToggleSet(p, scope, block, "a door", scope[i].IsDoor);
|
|
||||||
} else if (prop == "tdoor") {
|
} else if (prop == "tdoor") {
|
||||||
scope[i].IsTDoor = !scope[i].IsTDoor;
|
Toggle(p, scope, block, "a tdoor", ref scope[i].IsTDoor);
|
||||||
OnToggleSet(p, scope, block, "a tdoor", scope[i].IsTDoor);
|
|
||||||
} else if (prop == "killer" || prop == "death") {
|
} else if (prop == "killer" || prop == "death") {
|
||||||
scope[i].KillerBlock = !scope[i].KillerBlock;
|
Toggle(p, scope, block, "a killer block", ref scope[i].KillerBlock);
|
||||||
OnToggleSet(p, scope, block, "a killer block", scope[i].KillerBlock);
|
|
||||||
} else if (prop == "deathmsg" || prop == "deathmessage") {
|
} else if (prop == "deathmsg" || prop == "deathmessage") {
|
||||||
string msg = args.Length > 3 ? args[3] : null;
|
SetDeathMessage(p, scope, block, i, text);
|
||||||
SetDeathMessage(p, scope, block, i, msg);
|
|
||||||
} else if (prop == "animalai" || prop == "animal") {
|
} else if (prop == "animalai" || prop == "animal") {
|
||||||
string msg = args.Length > 3 ? args[3] : null;
|
SetEnum(p, scope, block, i, text);
|
||||||
SetEnum(p, scope, block, i, msg);
|
|
||||||
} else if (prop == "stackid" || prop == "stackblock") {
|
} else if (prop == "stackid" || prop == "stackblock") {
|
||||||
string msg = args.Length > 3 ? args[3] : null;
|
SetStackId(p, scope, block, i, text);
|
||||||
SetStackId(p, scope, block, i, msg);
|
|
||||||
} else if (prop == "opblock" || prop == "op") {
|
} else if (prop == "opblock" || prop == "op") {
|
||||||
scope[i].OPBlock = !scope[i].OPBlock;
|
Toggle(p, scope, block, "an OP block", ref scope[i].OPBlock);
|
||||||
OnToggleSet(p, scope, block, "an OP block", scope[i].OPBlock);
|
|
||||||
} else if (prop == "odoor") {
|
} else if (prop == "odoor") {
|
||||||
string odoor = args.Length > 3 ? args[3] : null;
|
SetODoor(p, scope, block, i, text);
|
||||||
SetODoor(p, scope, block, i, odoor);
|
|
||||||
} else if (prop == "drownable" || prop == "drown") {
|
} else if (prop == "drownable" || prop == "drown") {
|
||||||
scope[i].Drownable = !scope[i].Drownable;
|
Toggle(p, scope, block, "drowns players", ref scope[i].Drownable);
|
||||||
OnToggleSet(p, scope, block, "drowns players", scope[i].Drownable);
|
|
||||||
} else {
|
} else {
|
||||||
Help(p);
|
Help(p);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static void OnToggleSet(Player p, BlockProps[] scope, ExtBlock block, string type, bool on) {
|
static void Toggle(Player p, BlockProps[] scope, ExtBlock block, string type, ref bool on) {
|
||||||
|
on = !on;
|
||||||
Level lvl = Player.IsSuper(p) ? null : p.level;
|
Level lvl = Player.IsSuper(p) ? null : p.level;
|
||||||
Player.Message(p, "Block {0} is {1}: {2}",
|
Player.Message(p, "Block {0} is {1}: {2}",
|
||||||
BlockName(scope, lvl, block),
|
BlockName(scope, lvl, block),
|
||||||
|
@ -25,15 +25,8 @@ namespace MCGalaxy.Commands.Building {
|
|||||||
public override string name { get { return "Replace"; } }
|
public override string name { get { return "Replace"; } }
|
||||||
public override string shortcut { get { return "r"; } }
|
public override string shortcut { get { return "r"; } }
|
||||||
public override LevelPermission defaultRank { get { return LevelPermission.AdvBuilder; } }
|
public override LevelPermission defaultRank { get { return LevelPermission.AdvBuilder; } }
|
||||||
protected virtual bool ReplaceNot { get { return false; } }
|
protected override DrawOp GetDrawOp(DrawArgs dArgs) { return new CuboidDrawOp(); }
|
||||||
|
protected override string GetBrush(DrawArgs dArgs, ref int offset) { return "replace"; }
|
||||||
protected override DrawOp GetDrawOp(DrawArgs dArgs) {
|
|
||||||
return new CuboidDrawOp();
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override string GetBrush(DrawArgs dArgs, ref int offset) {
|
|
||||||
return ReplaceNot ? "replacenot" : "replace";
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void Help(Player p) {
|
public override void Help(Player p) {
|
||||||
Player.Message(p, "%T/Replace [block] [block2].. [new]");
|
Player.Message(p, "%T/Replace [block] [block2].. [new]");
|
||||||
@ -46,7 +39,7 @@ namespace MCGalaxy.Commands.Building {
|
|||||||
public sealed class CmdReplaceNot : CmdReplace {
|
public sealed class CmdReplaceNot : CmdReplace {
|
||||||
public override string name { get { return "ReplaceNot"; } }
|
public override string name { get { return "ReplaceNot"; } }
|
||||||
public override string shortcut { get { return "rn"; } }
|
public override string shortcut { get { return "rn"; } }
|
||||||
protected override bool ReplaceNot { get { return true; } }
|
protected override string GetBrush(DrawArgs dArgs, ref int offset) { return "replacenot"; }
|
||||||
|
|
||||||
public override void Help(Player p) {
|
public override void Help(Player p) {
|
||||||
Player.Message(p, "%T/ReplaceNot [block] [block2].. [new]");
|
Player.Message(p, "%T/ReplaceNot [block] [block2].. [new]");
|
||||||
|
Loading…
x
Reference in New Issue
Block a user