All pastes #747836 Raw Edit

Someone

public text v1 · immutable
·published 2007-10-24 12:04 UTC
rendered paste body
Index: java/net/sf/l2j/gameserver/clientpackets/ChangeWaitType2.java
===================================================================
--- java/net/sf/l2j/gameserver/clientpackets/ChangeWaitType2.java	(revision 1240)
+++ java/net/sf/l2j/gameserver/clientpackets/ChangeWaitType2.java	(working copy)
@@ -18,6 +18,12 @@
  */
 package net.sf.l2j.gameserver.clientpackets;
 
+import net.sf.l2j.gameserver.instancemanager.CastleManager;
+import net.sf.l2j.gameserver.model.L2Object;
+import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
+import net.sf.l2j.gameserver.model.actor.instance.L2StaticObjectInstance;
+import net.sf.l2j.gameserver.serverpackets.ChairSit;
+
 /**
  * This class ...
  * 
@@ -38,12 +44,31 @@
 	@Override
 	protected void runImpl()
 	{
-	    if(getClient() != null && getClient().getActiveChar() != null)
+		L2PcInstance player = getClient().getActiveChar();
+		L2Object target = player.getTarget();
+	    if(getClient() != null && player != null)
 	    {
+	    	if (player.getMountType() != 0) //prevent sit/stand if you riding
+				return;
+	        if (target != null 
+	        		&& !player.isSitting()
+	        		&& target instanceof L2StaticObjectInstance
+	        		&& ((L2StaticObjectInstance)target).getType() == 1
+	        		//&& player.getClan() != null
+	        		&& CastleManager.getInstance().getCastle(target) != null
+	        		//&& player.isCastleLord(CastleManager.getInstance().getCastle(target).getCastleId())
+	        		&& player.isInsideRadius(target, L2StaticObjectInstance.INTERACTION_DISTANCE, false, false)
+	        )
+	        {
+	        	ChairSit cs = new ChairSit(player,((L2StaticObjectInstance)target).getStaticObjectId());
+	        	player.sendPacket(cs);
+	        	player.sitDown();
+	        	player.broadcastPacket(cs);
+	        }
 	        if (_typeStand)
-	            getClient().getActiveChar().standUp();
+	        	player.standUp();
 	        else
-	            getClient().getActiveChar().sitDown();
+	        	player.sitDown();
 	    }
 	}
 

Index: java/net/sf/l2j/gameserver/clientpackets/RequestActionUse.java
===================================================================
--- java/net/sf/l2j/gameserver/clientpackets/RequestActionUse.java	(revision 1256)
+++ java/net/sf/l2j/gameserver/clientpackets/RequestActionUse.java	(working copy)
@@ -105,9 +105,9 @@
 					&& !activeChar.isSitting()
 					&& target instanceof L2StaticObjectInstance
 					&& ((L2StaticObjectInstance)target).getType() == 1
-					&& activeChar.getClan() != null
+					//&& activeChar.getClan() != null
 					&& CastleManager.getInstance().getCastle(target) != null
-					&& activeChar.isCastleLord(CastleManager.getInstance().getCastle(target).getCastleId())
+					//&& activeChar.isCastleLord(CastleManager.getInstance().getCastle(target).getCastleId())
 					&& activeChar.isInsideRadius(target, L2StaticObjectInstance.INTERACTION_DISTANCE, false, false)
 			)
 			{