From 92da91522b90d537b0c66f5fc78088dcd7ad8f93 Mon Sep 17 00:00:00 2001 From: MarioE Date: Wed, 2 Oct 2013 21:13:55 -0400 Subject: [PATCH 1/3] Fix pirate invasion --- TShockAPI/GetDataHandlers.cs | 34 ++++++++++++---------------------- 1 file changed, 12 insertions(+), 22 deletions(-) diff --git a/TShockAPI/GetDataHandlers.cs b/TShockAPI/GetDataHandlers.cs index 98293c96..0f70932b 100755 --- a/TShockAPI/GetDataHandlers.cs +++ b/TShockAPI/GetDataHandlers.cs @@ -3169,43 +3169,33 @@ namespace TShockAPI private static bool HandleSpawnBoss(GetDataHandlerArgs args) { - var spawnboss = false; - var invasion = -1; var plr = args.Data.ReadInt32(); var Type = args.Data.ReadInt32(); + int invasion = -1 * Type; NPC npc = new NPC(); npc.SetDefaults(Type); - spawnboss = npc.boss; - if (!spawnboss) - { - switch (Type) - { - case -1: - invasion = 1; - break; - case -2: - invasion = 2; - break; - } - } - if (spawnboss && !args.Player.Group.HasPermission(Permissions.summonboss)) + + if (invasion <= 0 && !args.Player.Group.HasPermission(Permissions.summonboss)) { args.Player.SendMessage("You don't have permission to summon a boss.", Color.Red); return true; } - if (invasion != -1 && !args.Player.Group.HasPermission(Permissions.startinvasion)) + if (invasion > 0 && !args.Player.Group.HasPermission(Permissions.startinvasion)) { args.Player.SendMessage("You don't have permission to start an invasion.", Color.Red); return true; } - if (!spawnboss && invasion == -1) + if (!npc.boss || invasion > 3 || plr != args.Player.Index) + { return true; - if (plr != args.Player.Index) - return true; - + } + string boss; switch (Type) { + case -3: + boss = "the pirates"; + break; case -2: boss = "the Snow Legion"; break; @@ -3217,7 +3207,7 @@ namespace TShockAPI break; } - TShock.Utils.SendLogs(string.Format("{0} summoned {1}", args.Player.Name, boss), Color.PaleVioletRed, args.Player); + TShock.Utils.SendLogs(string.Format("{0} summoned {1}.", args.Player.Name, boss), Color.PaleVioletRed, args.Player); return false; } From 4221fe4a69f30e7c0a1a9e35638a099aa1ca2590 Mon Sep 17 00:00:00 2001 From: Zack Piispanen Date: Wed, 2 Oct 2013 21:38:50 -0400 Subject: [PATCH 2/3] Enable pirate support. --- TShockAPI/GetDataHandlers.cs | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/TShockAPI/GetDataHandlers.cs b/TShockAPI/GetDataHandlers.cs index f66fe30e..796f3f03 100755 --- a/TShockAPI/GetDataHandlers.cs +++ b/TShockAPI/GetDataHandlers.cs @@ -3146,7 +3146,7 @@ namespace TShockAPI private static bool HandleSpawnBoss(GetDataHandlerArgs args) { var spawnboss = false; - var invasion = -1; + var invasion = false; var plr = args.Data.ReadInt32(); var Type = args.Data.ReadInt32(); NPC npc = new NPC(); @@ -3157,10 +3157,9 @@ namespace TShockAPI switch (Type) { case -1: - invasion = 1; - break; case -2: - invasion = 2; + case -3: + invasion = true; break; } } @@ -3169,12 +3168,12 @@ namespace TShockAPI args.Player.SendMessage("You don't have permission to summon a boss.", Color.Red); return true; } - if (invasion != -1 && !args.Player.Group.HasPermission(Permissions.startinvasion)) + if (invasion && !args.Player.Group.HasPermission(Permissions.startinvasion)) { args.Player.SendMessage("You don't have permission to start an invasion.", Color.Red); return true; } - if (!spawnboss && invasion == -1) + if (!spawnboss && !invasion) return true; if (plr != args.Player.Index) return true; @@ -3182,6 +3181,9 @@ namespace TShockAPI string boss; switch (Type) { + case -3: + boss = "the pirates"; + break; case -2: boss = "the Snow Legion"; break; From e38a3bc8c8c98dbe184318f4535427b0f19d73f7 Mon Sep 17 00:00:00 2001 From: Zack Piispanen Date: Wed, 2 Oct 2013 22:16:22 -0400 Subject: [PATCH 3/3] Fix pulleys breaking tiles, again. Damn you packet! --- TShockAPI/GetDataHandlers.cs | 5 ----- 1 file changed, 5 deletions(-) diff --git a/TShockAPI/GetDataHandlers.cs b/TShockAPI/GetDataHandlers.cs index 60c7dbb7..f5df1333 100755 --- a/TShockAPI/GetDataHandlers.cs +++ b/TShockAPI/GetDataHandlers.cs @@ -2237,11 +2237,6 @@ namespace TShockAPI return true; } - if (pulley > 2) - { - return true; - } - if (args.Player.LastNetPosition == Vector2.Zero) { return true;