fix more possible crashes

This commit is contained in:
Bluzume 2021-11-03 23:27:20 -04:00
parent 6cec9249ab
commit e7b24c709f

View file

@ -899,6 +899,8 @@ namespace HISP.Server
if (World.InSpecialTile(sender.LoggedinUser.X, sender.LoggedinUser.Y))
{
World.SpecialTile tile = World.GetSpecialTile(sender.LoggedinUser.X, sender.LoggedinUser.Y);
if(tile.Code != null)
{
if (tile.Code.StartsWith("VET-"))
{
string[] vetInfo = tile.Code.Split('-');
@ -933,6 +935,8 @@ namespace HISP.Server
}
UpdateArea(sender);
}
}
}
break;
case PacketBuilder.HORSE_VET_SERVICE:
@ -960,6 +964,8 @@ namespace HISP.Server
if(World.InSpecialTile(sender.LoggedinUser.X, sender.LoggedinUser.Y))
{
World.SpecialTile tile = World.GetSpecialTile(sender.LoggedinUser.X, sender.LoggedinUser.Y);
if(tile.Code != null)
{
if (tile.Code.StartsWith("VET-"))
{
string[] vetInfo = tile.Code.Split('-');
@ -983,6 +989,8 @@ namespace HISP.Server
}
UpdateArea(sender);
}
}
}
break;
}
@ -1017,6 +1025,8 @@ namespace HISP.Server
if (World.InSpecialTile(sender.LoggedinUser.X, sender.LoggedinUser.Y))
{
World.SpecialTile tile = World.GetSpecialTile(sender.LoggedinUser.X, sender.LoggedinUser.Y);
if(tile.Code != null)
{
if (tile.Code.StartsWith("FARRIER-"))
{
string[] farrierInfo = tile.Code.Split('-');
@ -1056,6 +1066,8 @@ namespace HISP.Server
}
UpdateArea(sender);
}
}
}
break;
}
@ -1068,6 +1080,8 @@ namespace HISP.Server
if (World.InSpecialTile(sender.LoggedinUser.X, sender.LoggedinUser.Y))
{
World.SpecialTile tile = World.GetSpecialTile(sender.LoggedinUser.X, sender.LoggedinUser.Y);
if(tile.Code != null)
{
if (tile.Code.StartsWith("FARRIER-"))
{
string[] farrierInfo = tile.Code.Split('-');
@ -1107,6 +1121,8 @@ namespace HISP.Server
UpdateArea(sender);
}
}
}
break;
case PacketBuilder.HORSE_GROOM_SERVICE:
randomId = 0;
@ -1133,6 +1149,8 @@ namespace HISP.Server
if (World.InSpecialTile(sender.LoggedinUser.X, sender.LoggedinUser.Y))
{
World.SpecialTile tile = World.GetSpecialTile(sender.LoggedinUser.X, sender.LoggedinUser.Y);
if(tile.Code != null)
{
if (tile.Code.StartsWith("GROOMER-"))
{
string[] groomerInfo = tile.Code.Split('-');
@ -1158,6 +1176,8 @@ namespace HISP.Server
}
UpdateArea(sender);
}
}
}
break;
}
@ -1170,6 +1190,8 @@ namespace HISP.Server
if (World.InSpecialTile(sender.LoggedinUser.X, sender.LoggedinUser.Y))
{
World.SpecialTile tile = World.GetSpecialTile(sender.LoggedinUser.X, sender.LoggedinUser.Y);
if(tile.Code != null)
{
if (tile.Code.StartsWith("GROOMER-"))
{
string[] groomerInfo = tile.Code.Split('-');
@ -1212,6 +1234,8 @@ namespace HISP.Server
}
UpdateArea(sender);
}
}
}
break;
case PacketBuilder.HORSE_BARN_SERVICE:
@ -1239,6 +1263,8 @@ namespace HISP.Server
if (World.InSpecialTile(sender.LoggedinUser.X, sender.LoggedinUser.Y))
{
World.SpecialTile tile = World.GetSpecialTile(sender.LoggedinUser.X, sender.LoggedinUser.Y);
if (tile.Code != null)
{
if (tile.Code.StartsWith("BARN-"))
{
string[] barnInfo = tile.Code.Split('-');
@ -1266,6 +1292,8 @@ namespace HISP.Server
}
UpdateArea(sender);
}
}
}
break;
}
@ -1278,6 +1306,8 @@ namespace HISP.Server
if (World.InSpecialTile(sender.LoggedinUser.X, sender.LoggedinUser.Y))
{
World.SpecialTile tile = World.GetSpecialTile(sender.LoggedinUser.X, sender.LoggedinUser.Y);
if(tile.Code != null)
{
if (tile.Code.StartsWith("BARN-"))
{
string[] barnInfo = tile.Code.Split('-');
@ -1320,6 +1350,8 @@ namespace HISP.Server
}
UpdateArea(sender);
}
}
}
break;
case PacketBuilder.HORSE_TRAIN:
@ -1587,6 +1619,8 @@ namespace HISP.Server
if(World.InSpecialTile(sender.LoggedinUser.X, sender.LoggedinUser.Y))
{
World.SpecialTile tile = World.GetSpecialTile(sender.LoggedinUser.X, sender.LoggedinUser.Y);
if(tile.Code != null)
{
if (tile.Code.StartsWith("ARENA-"))
{
string[] arenaInfo = tile.Code.Split('-');
@ -1650,6 +1684,8 @@ namespace HISP.Server
sender.SendPacket(allreadyEntered);
}
}
}
}
}
else
@ -2656,6 +2692,8 @@ namespace HISP.Server
if(World.InSpecialTile(sender.LoggedinUser.X, sender.LoggedinUser.Y))
{
World.SpecialTile tile = World.GetSpecialTile(sender.LoggedinUser.X, sender.LoggedinUser.Y);
if(tile.Code != null)
{
if (tile.Code.StartsWith("PASSWORD-"))
{
string[] args = tile.Code.Replace("!", "-").Split('-');
@ -2688,6 +2726,7 @@ namespace HISP.Server
break;
}
}
}
else
{
Logger.HackerPrint(sender.LoggedinUser.Username + " Sent a password while not in a special tile.");
@ -7992,6 +8031,8 @@ namespace HISP.Server
public static bool ProcessMapCodeWithArg(GameClient forClient, World.SpecialTile tile)
{
string mapCode = tile.Code;
if (mapCode == null)
return false;
if(mapCode.Contains('-'))
{
string[] codeInfo = mapCode.Split('-');