diff --git a/TShockAPI/BackupManager.cs b/TShockAPI/BackupManager.cs index e56bbffa..bd2e6f56 100644 --- a/TShockAPI/BackupManager.cs +++ b/TShockAPI/BackupManager.cs @@ -69,7 +69,8 @@ namespace TShockAPI foreach (TSPlayer player in TShock.Players) { - if (player.IsLoggedIn) + // prevent null point exceptions + if (player != null && player.IsLoggedIn) { TShock.InventoryDB.InsertPlayerData(player); } diff --git a/TShockAPI/DB/RegionManager.cs b/TShockAPI/DB/RegionManager.cs index da2f7246..44bcdb91 100644 --- a/TShockAPI/DB/RegionManager.cs +++ b/TShockAPI/DB/RegionManager.cs @@ -618,6 +618,7 @@ namespace TShockAPI.DB DisableBuild = true; WorldID = string.Empty; AllowedIDs = new List(); + AllowedGroups = new List(); } public bool InArea(Rectangle point) @@ -662,15 +663,19 @@ namespace TShockAPI.DB AllowedIDs = id_list; } - public void SetAllowedGroups( String groups ) - { - List groupArr = groups.Split(',').ToList(); - - for (int i = 0; i < groupArr.Count; i++) - groupArr[i] = groupArr[i].Trim(); + public void SetAllowedGroups( String groups ) + { + // prevent null pointer exceptions + if (!string.IsNullOrEmpty(groups)) + { + List groupArr = groups.Split(',').ToList(); - AllowedGroups = groupArr; - } + for (int i = 0; i < groupArr.Count; i++) + groupArr[i] = groupArr[i].Trim(); + + AllowedGroups = groupArr; + } + } public void RemoveID(int id) { diff --git a/TShockAPI/TSPlayer.cs b/TShockAPI/TSPlayer.cs index d38c13fd..def97382 100644 --- a/TShockAPI/TSPlayer.cs +++ b/TShockAPI/TSPlayer.cs @@ -377,7 +377,7 @@ namespace TShockAPI public override void SendMessage(string msg, byte red, byte green, byte blue) { Console.WriteLine(msg); - RconHandler.Response += msg + "\n"; + //RconHandler.Response += msg + "\n"; } public void SetFullMoon(bool fullmoon)