From fdc02d5952fc677e685507cbf527ba536f4f10b4 Mon Sep 17 00:00:00 2001 From: Bluzume <39113159+KuromeSan@users.noreply.github.com> Date: Tue, 9 Nov 2021 21:59:36 -0500 Subject: [PATCH] Fix auto sell crash --- HorseIsleData | 2 +- HorseIsleServer/HorseIsleServer/Game/Arena.cs | 5 ++++- HorseIsleServer/HorseIsleServer/Game/Messages.cs | 1 + .../HorseIsleServer/Server/GameDataJson.cs | 3 ++- HorseIsleServer/HorseIsleServer/Server/GameServer.cs | 12 +++++++++--- HorseIsleWeb | 2 +- 6 files changed, 18 insertions(+), 7 deletions(-) diff --git a/HorseIsleData b/HorseIsleData index 4dbc6f8..eed8fcb 160000 --- a/HorseIsleData +++ b/HorseIsleData @@ -1 +1 @@ -Subproject commit 4dbc6f87116dc0ec357f8b2283ab8226b0dfbdcf +Subproject commit eed8fcbfbb36646528e53e22873a50e196c16d60 diff --git a/HorseIsleServer/HorseIsleServer/Game/Arena.cs b/HorseIsleServer/HorseIsleServer/Game/Arena.cs index bfeb420..2c0cd97 100644 --- a/HorseIsleServer/HorseIsleServer/Game/Arena.cs +++ b/HorseIsleServer/HorseIsleServer/Game/Arena.cs @@ -191,11 +191,14 @@ namespace HISP.Game entry.EnteredHorse.BasicStats.Shoes -= 100; message = Messages.ArenaJumpingStartup; break; - case "DRESSAGE": + case "CONFORMATION": entry.EnteredHorse.BasicStats.Mood -= 300; entry.EnteredHorse.BasicStats.Tiredness -= 200; message = Messages.ArenaConformationStartup; break; + default: + message = "Arena Type not recognized.
Why dont you stop asking questions and get to fucking beating the competition."; + break; } byte[] startingUpEventPacket = PacketBuilder.CreateChat(message, PacketBuilder.CHAT_BOTTOM_RIGHT); byte[] swfModulePacket = PacketBuilder.CreateSwfModulePacket(swf, PacketBuilder.PACKET_SWF_CUTSCENE); diff --git a/HorseIsleServer/HorseIsleServer/Game/Messages.cs b/HorseIsleServer/HorseIsleServer/Game/Messages.cs index d68b591..1f70f78 100644 --- a/HorseIsleServer/HorseIsleServer/Game/Messages.cs +++ b/HorseIsleServer/HorseIsleServer/Game/Messages.cs @@ -65,6 +65,7 @@ namespace HISP.Game // Auto Sell public static string AutoSellNotStandingInSamePlace; public static string AutoSellSuccessFormat; + public static string HorseAutoSellValueTooHigh; public static string AutoSellInsufficentFunds; public static string AutoSellTooManyHorses; public static string AutoSellYouSoldHorseFormat; diff --git a/HorseIsleServer/HorseIsleServer/Server/GameDataJson.cs b/HorseIsleServer/HorseIsleServer/Server/GameDataJson.cs index aed7615..7184a9c 100644 --- a/HorseIsleServer/HorseIsleServer/Server/GameDataJson.cs +++ b/HorseIsleServer/HorseIsleServer/Server/GameDataJson.cs @@ -933,7 +933,7 @@ namespace HISP.Server Messages.AutoSellTooManyHorses = gameData.messages.meta.auto_sell.toomany_horses; Messages.AutoSellYouSoldHorseFormat = gameData.messages.meta.auto_sell.you_sold; Messages.AutoSellYouSoldHorseOfflineFormat = gameData.messages.meta.auto_sell.sold_offline; - + // Mute Command Messages.NowMutingPlayerFormat = gameData.messages.meta.mute_command.now_ignoring_player; Messages.StoppedMutingPlayerFormat = gameData.messages.meta.mute_command.stop_ignoring_player; @@ -1760,6 +1760,7 @@ namespace HISP.Server Messages.HorseAutoSellMenuFormat = gameData.messages.meta.horse.auto_sell.auto_sell_meta; Messages.HorseIsAutoSell = gameData.messages.meta.horse.auto_sell.is_auto_sell; Messages.HorseAutoSellConfirmedFormat = gameData.messages.meta.horse.auto_sell.auto_sell_confirmed; + Messages.HorseAutoSellValueTooHigh = gameData.messages.meta.horse.auto_sell.auto_sell_to_high; Messages.HorseAutoSellRemoved = gameData.messages.meta.horse.auto_sell.auto_sell_remove; Messages.HorseSetAutoSell = gameData.messages.meta.horse.horse_inventory.set_auto_sell; diff --git a/HorseIsleServer/HorseIsleServer/Server/GameServer.cs b/HorseIsleServer/HorseIsleServer/Server/GameServer.cs index 6f70757..1b4b3e6 100644 --- a/HorseIsleServer/HorseIsleServer/Server/GameServer.cs +++ b/HorseIsleServer/HorseIsleServer/Server/GameServer.cs @@ -2575,12 +2575,18 @@ namespace HISP.Server { newSellPrice = int.Parse(dynamicInput[1]); } - catch (FormatException) + catch (Exception) { - Logger.ErrorPrint(sender.LoggedinUser.Username + " tried to set sell price to non int value."); - break; + goto tooHigh; } + if(newSellPrice > 500000000) + { + tooHigh:; + priceTooHigh = PacketBuilder.CreateChat(Messages.HorseAutoSellValueTooHigh, PacketBuilder.CHAT_BOTTOM_RIGHT); + sender.SendPacket(priceTooHigh); + break; + } byte[] sellPricePacket; if (newSellPrice > 0) sellPricePacket = PacketBuilder.CreateChat(Messages.FormatAutoSellConfirmedMessage(newSellPrice), PacketBuilder.CHAT_BOTTOM_RIGHT); diff --git a/HorseIsleWeb b/HorseIsleWeb index ed3ee67..57f2792 160000 --- a/HorseIsleWeb +++ b/HorseIsleWeb @@ -1 +1 @@ -Subproject commit ed3ee67204a391ed0f8c43b681af64e7f7b2883f +Subproject commit 57f27920918e9333354f7de1a3feec2dbb1dcc51