Переглянути джерело

another bypass fixes, still some to come, thx lion for reporting

janiii 15 роки тому
батько
коміт
0ecf7dd0e4

+ 9 - 3
L2_GameServer/java/com/l2jserver/gameserver/model/actor/instance/L2CastleChamberlainInstance.java

@@ -237,6 +237,7 @@ public class L2CastleChamberlainInstance extends L2MerchantInstance
 
 					showBuyWindow(player,Integer.parseInt(val + "1"));
 					player.sendPacket(ActionFailed.STATIC_PACKET);
+					return;
 				}
 				else
 				{
@@ -418,6 +419,7 @@ public class L2CastleChamberlainInstance extends L2MerchantInstance
 							player.sendPacket(new ExShowCropSetting(getCastle().getCastleId()));
 						break;
 				}
+				return;
 			}
 			else if (actualCommand.equalsIgnoreCase("operate_door")) // door
 			// control
@@ -1230,6 +1232,7 @@ public class L2CastleChamberlainInstance extends L2MerchantInstance
 						+ getCastle().getFunction(Castle.FUNC_SUPPORT).getLvl()	+ ".htm");
 				html.replace("%mp%", String.valueOf((int)getStatus().getCurrentMp()));
 				sendHtmlMessage(player, html);
+				return;
 			}
 			else if (actualCommand.equalsIgnoreCase("goto"))
 			{
@@ -1273,6 +1276,7 @@ public class L2CastleChamberlainInstance extends L2MerchantInstance
 					html.setFile("data/html/chamberlain/chamberlain-noprivs.htm");
 					sendHtmlMessage(player, html);
 				}
+				return;
 			}
 			else if (actualCommand.equalsIgnoreCase("siege_time_set")) // set preDay
 			{
@@ -1313,7 +1317,8 @@ public class L2CastleChamberlainInstance extends L2MerchantInstance
 					html.setFile("data/html/chamberlain/siegetime8.htm");
 					html.replace("%time%", String.valueOf(getCastle().getSiegeDate().getTime()));
 				}
-				sendHtmlMessage(player, html);				
+				sendHtmlMessage(player, html);
+				return;
 			}
 			else if (actualCommand.equals("give_crown"))
 			{
@@ -1343,9 +1348,10 @@ public class L2CastleChamberlainInstance extends L2MerchantInstance
 					html.setFile("data/html/chamberlain/chamberlain-noprivs.htm");
 				
 				player.sendPacket(html);
+				return;
 			}
-
-			super.onBypassFeedback(player, command);
+			else
+				super.onBypassFeedback(player, command);
 		}
 	}
 	

+ 4 - 2
L2_GameServer/java/com/l2jserver/gameserver/model/actor/instance/L2FameManagerInstance.java

@@ -61,6 +61,7 @@ public class L2FameManagerInstance extends L2Npc
 				html.setFile("data/html/famemanager/"+getNpcId()+"-lowfame.htm");
 
 			sendHtmlMessage(player, html);
+			return;
 		}
 		else if (actualCommand.equalsIgnoreCase("CRP"))
 		{
@@ -83,9 +84,10 @@ public class L2FameManagerInstance extends L2Npc
 				html.setFile("data/html/famemanager/"+getNpcId()+"-noclan.htm");
 
 			sendHtmlMessage(player, html);
+			return;
 		}
-
-		super.onBypassFeedback(player, command);
+		else
+			super.onBypassFeedback(player, command);
 	}
 
 	private void sendHtmlMessage(L2PcInstance player, NpcHtmlMessage html)

+ 4 - 6
L2_GameServer/java/com/l2jserver/gameserver/model/actor/instance/L2MerchantInstance.java

@@ -159,8 +159,11 @@ public class L2MerchantInstance extends L2NpcInstance
 				}
 			}
 		}
-		else if (actualCommand.equalsIgnoreCase("Wear") && Config.ALLOW_WEAR)
+		else if (actualCommand.equalsIgnoreCase("Wear"))
 		{
+			if (!Config.ALLOW_WEAR)
+				return;
+			
 			if (st.countTokens() < 1)
 				return;
 
@@ -184,12 +187,7 @@ public class L2MerchantInstance extends L2NpcInstance
 			L2Multisell.getInstance().separateAndSend(val, player, getNpcId(), true, getCastle().getTaxRate());
 		}
 		else
-		{
-			// this class dont know any other commands, let forward
-			// the command to the parent class
-
 			super.onBypassFeedback(player, command);
-		}
 	}
 
 	public final void showRentPetWindow(L2PcInstance player)