Stop auto play upon teleporting.
This commit is contained in:
parent
7e112206dc
commit
85d3e6ae24
@ -350,6 +350,7 @@ import org.l2jmobius.gameserver.network.serverpackets.TradeOtherDone;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.TradeStart;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.ValidateLocation;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.autoplay.ExAutoPlaySettingSend;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.commission.ExResponseCommissionInfo;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.friend.FriendStatus;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.monsterbook.ExMonsterBook;
|
||||
@ -357,6 +358,8 @@ import org.l2jmobius.gameserver.network.serverpackets.monsterbook.ExMonsterBookC
|
||||
import org.l2jmobius.gameserver.network.serverpackets.monsterbook.ExMonsterBookRewardIcon;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.sessionzones.TimedHuntingZoneExit;
|
||||
import org.l2jmobius.gameserver.taskmanager.AttackStanceTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.AutoPlayTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.AutoUseTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.PlayerAutoSaveTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.PvpFlagTaskManager;
|
||||
import org.l2jmobius.gameserver.util.Broadcast;
|
||||
@ -10366,7 +10369,7 @@ public class PlayerInstance extends Playable
|
||||
setLastServerPosition(getX(), getY(), getZ());
|
||||
}
|
||||
|
||||
// Force a revalidation
|
||||
// Force a revalidation.
|
||||
revalidateZone(true);
|
||||
|
||||
checkItemRestriction();
|
||||
@ -10376,14 +10379,14 @@ public class PlayerInstance extends Playable
|
||||
setTeleportProtection(true);
|
||||
}
|
||||
|
||||
// Trained beast is lost after teleport
|
||||
// Trained beast is lost after teleport.
|
||||
for (TamedBeastInstance tamedBeast : _tamedBeast)
|
||||
{
|
||||
tamedBeast.deleteMe();
|
||||
}
|
||||
_tamedBeast.clear();
|
||||
|
||||
// Modify the position of the pet if necessary
|
||||
// Modify the position of the pet if necessary.
|
||||
if (_pet != null)
|
||||
{
|
||||
_pet.setFollowStatus(false);
|
||||
@ -10404,7 +10407,7 @@ public class PlayerInstance extends Playable
|
||||
s.updateAndBroadcastStatus(0);
|
||||
});
|
||||
|
||||
// Show movie if available
|
||||
// Show movie if available.
|
||||
if (_movieHolder != null)
|
||||
{
|
||||
sendPacket(new ExStartScenePlayer(_movieHolder.getMovie()));
|
||||
@ -10416,7 +10419,12 @@ public class PlayerInstance extends Playable
|
||||
stopTimedHuntingZoneTask();
|
||||
}
|
||||
|
||||
// send info to nearby players
|
||||
// Stop auto play.
|
||||
AutoPlayTaskManager.getInstance().stopAutoPlay(this);
|
||||
AutoUseTaskManager.getInstance().stopAutoUseTask(this);
|
||||
sendPacket(new ExAutoPlaySettingSend(_autoPlaySettings.getOptions(), false, _autoPlaySettings.doPickup(), _autoPlaySettings.getNextTargetMode(), _autoPlaySettings.isLongRange(), _autoPlaySettings.getAutoPotionPercent(), _autoPlaySettings.isRespectfulHunting()));
|
||||
|
||||
// Send info to nearby players.
|
||||
broadcastInfo();
|
||||
}
|
||||
|
||||
|
@ -24,7 +24,9 @@ import java.util.concurrent.atomic.AtomicInteger;
|
||||
*/
|
||||
public class AutoPlaySettingsHolder
|
||||
{
|
||||
private final AtomicInteger _options = new AtomicInteger();
|
||||
private final AtomicBoolean _pickup = new AtomicBoolean();
|
||||
private final AtomicInteger _nextTargetMode = new AtomicInteger();
|
||||
private final AtomicBoolean _longRange = new AtomicBoolean();
|
||||
private final AtomicBoolean _respectfulHunting = new AtomicBoolean();
|
||||
private final AtomicInteger _autoPotionPercent = new AtomicInteger();
|
||||
@ -33,6 +35,16 @@ public class AutoPlaySettingsHolder
|
||||
{
|
||||
}
|
||||
|
||||
public int getOptions()
|
||||
{
|
||||
return _options.get();
|
||||
}
|
||||
|
||||
public void setOptions(int options)
|
||||
{
|
||||
_options.set(options);
|
||||
}
|
||||
|
||||
public boolean doPickup()
|
||||
{
|
||||
return _pickup.get();
|
||||
@ -43,6 +55,16 @@ public class AutoPlaySettingsHolder
|
||||
_pickup.set(value);
|
||||
}
|
||||
|
||||
public int getNextTargetMode()
|
||||
{
|
||||
return _nextTargetMode.get();
|
||||
}
|
||||
|
||||
public void setNextTargetMode(int nextTargetMode)
|
||||
{
|
||||
_nextTargetMode.set(nextTargetMode);
|
||||
}
|
||||
|
||||
public boolean isLongRange()
|
||||
{
|
||||
return _longRange.get();
|
||||
|
@ -67,7 +67,9 @@ public class ExAutoPlaySetting implements IClientIncomingPacket
|
||||
return;
|
||||
}
|
||||
|
||||
player.getAutoPlaySettings().setOptions(_options);
|
||||
player.getAutoPlaySettings().setPickup(_pickUp);
|
||||
player.getAutoPlaySettings().setNextTargetMode(_nextTargetMode);
|
||||
player.getAutoPlaySettings().setLongRange(_longRange);
|
||||
player.getAutoPlaySettings().setRespectfulHunting(_respectfulHunting);
|
||||
|
||||
|
@ -347,10 +347,13 @@ import org.l2jmobius.gameserver.network.serverpackets.TradeOtherDone;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.TradeStart;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.ValidateLocation;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.autoplay.ExAutoPlaySettingSend;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.commission.ExResponseCommissionInfo;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.friend.FriendStatus;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.sessionzones.TimedHuntingZoneExit;
|
||||
import org.l2jmobius.gameserver.taskmanager.AttackStanceTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.AutoPlayTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.AutoUseTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.PlayerAutoSaveTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.PvpFlagTaskManager;
|
||||
import org.l2jmobius.gameserver.util.Broadcast;
|
||||
@ -10402,7 +10405,7 @@ public class PlayerInstance extends Playable
|
||||
setLastServerPosition(getX(), getY(), getZ());
|
||||
}
|
||||
|
||||
// Force a revalidation
|
||||
// Force a revalidation.
|
||||
revalidateZone(true);
|
||||
|
||||
checkItemRestriction();
|
||||
@ -10412,14 +10415,14 @@ public class PlayerInstance extends Playable
|
||||
setTeleportProtection(true);
|
||||
}
|
||||
|
||||
// Trained beast is lost after teleport
|
||||
// Trained beast is lost after teleport.
|
||||
for (TamedBeastInstance tamedBeast : _tamedBeast)
|
||||
{
|
||||
tamedBeast.deleteMe();
|
||||
}
|
||||
_tamedBeast.clear();
|
||||
|
||||
// Modify the position of the pet if necessary
|
||||
// Modify the position of the pet if necessary.
|
||||
if (_pet != null)
|
||||
{
|
||||
_pet.setFollowStatus(false);
|
||||
@ -10440,7 +10443,7 @@ public class PlayerInstance extends Playable
|
||||
s.updateAndBroadcastStatus(0);
|
||||
});
|
||||
|
||||
// Show movie if available
|
||||
// Show movie if available.
|
||||
if (_movieHolder != null)
|
||||
{
|
||||
sendPacket(new ExStartScenePlayer(_movieHolder.getMovie()));
|
||||
@ -10452,7 +10455,12 @@ public class PlayerInstance extends Playable
|
||||
stopTimedHuntingZoneTask();
|
||||
}
|
||||
|
||||
// send info to nearby players
|
||||
// Stop auto play.
|
||||
AutoPlayTaskManager.getInstance().stopAutoPlay(this);
|
||||
AutoUseTaskManager.getInstance().stopAutoUseTask(this);
|
||||
sendPacket(new ExAutoPlaySettingSend(_autoPlaySettings.getOptions(), false, _autoPlaySettings.doPickup(), _autoPlaySettings.getNextTargetMode(), _autoPlaySettings.isLongRange(), _autoPlaySettings.getAutoPotionPercent(), _autoPlaySettings.isRespectfulHunting()));
|
||||
|
||||
// Send info to nearby players.
|
||||
broadcastInfo();
|
||||
}
|
||||
|
||||
|
@ -24,7 +24,9 @@ import java.util.concurrent.atomic.AtomicInteger;
|
||||
*/
|
||||
public class AutoPlaySettingsHolder
|
||||
{
|
||||
private final AtomicInteger _options = new AtomicInteger();
|
||||
private final AtomicBoolean _pickup = new AtomicBoolean();
|
||||
private final AtomicInteger _nextTargetMode = new AtomicInteger();
|
||||
private final AtomicBoolean _longRange = new AtomicBoolean();
|
||||
private final AtomicBoolean _respectfulHunting = new AtomicBoolean();
|
||||
private final AtomicInteger _autoPotionPercent = new AtomicInteger();
|
||||
@ -33,6 +35,16 @@ public class AutoPlaySettingsHolder
|
||||
{
|
||||
}
|
||||
|
||||
public int getOptions()
|
||||
{
|
||||
return _options.get();
|
||||
}
|
||||
|
||||
public void setOptions(int options)
|
||||
{
|
||||
_options.set(options);
|
||||
}
|
||||
|
||||
public boolean doPickup()
|
||||
{
|
||||
return _pickup.get();
|
||||
@ -43,6 +55,16 @@ public class AutoPlaySettingsHolder
|
||||
_pickup.set(value);
|
||||
}
|
||||
|
||||
public int getNextTargetMode()
|
||||
{
|
||||
return _nextTargetMode.get();
|
||||
}
|
||||
|
||||
public void setNextTargetMode(int nextTargetMode)
|
||||
{
|
||||
_nextTargetMode.set(nextTargetMode);
|
||||
}
|
||||
|
||||
public boolean isLongRange()
|
||||
{
|
||||
return _longRange.get();
|
||||
|
@ -68,7 +68,9 @@ public class ExAutoPlaySetting implements IClientIncomingPacket
|
||||
return;
|
||||
}
|
||||
|
||||
player.getAutoPlaySettings().setOptions(_options);
|
||||
player.getAutoPlaySettings().setPickup(_pickUp);
|
||||
player.getAutoPlaySettings().setNextTargetMode(_nextTargetMode);
|
||||
player.getAutoPlaySettings().setLongRange(_longRange);
|
||||
player.getAutoPlaySettings().setRespectfulHunting(_respectfulHunting);
|
||||
|
||||
|
@ -347,10 +347,13 @@ import org.l2jmobius.gameserver.network.serverpackets.TradeOtherDone;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.TradeStart;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.ValidateLocation;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.autoplay.ExAutoPlaySettingSend;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.commission.ExResponseCommissionInfo;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.friend.FriendStatus;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.sessionzones.TimedHuntingZoneExit;
|
||||
import org.l2jmobius.gameserver.taskmanager.AttackStanceTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.AutoPlayTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.AutoUseTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.PlayerAutoSaveTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.PvpFlagTaskManager;
|
||||
import org.l2jmobius.gameserver.util.Broadcast;
|
||||
@ -10402,7 +10405,7 @@ public class PlayerInstance extends Playable
|
||||
setLastServerPosition(getX(), getY(), getZ());
|
||||
}
|
||||
|
||||
// Force a revalidation
|
||||
// Force a revalidation.
|
||||
revalidateZone(true);
|
||||
|
||||
checkItemRestriction();
|
||||
@ -10412,14 +10415,14 @@ public class PlayerInstance extends Playable
|
||||
setTeleportProtection(true);
|
||||
}
|
||||
|
||||
// Trained beast is lost after teleport
|
||||
// Trained beast is lost after teleport.
|
||||
for (TamedBeastInstance tamedBeast : _tamedBeast)
|
||||
{
|
||||
tamedBeast.deleteMe();
|
||||
}
|
||||
_tamedBeast.clear();
|
||||
|
||||
// Modify the position of the pet if necessary
|
||||
// Modify the position of the pet if necessary.
|
||||
if (_pet != null)
|
||||
{
|
||||
_pet.setFollowStatus(false);
|
||||
@ -10440,7 +10443,7 @@ public class PlayerInstance extends Playable
|
||||
s.updateAndBroadcastStatus(0);
|
||||
});
|
||||
|
||||
// Show movie if available
|
||||
// Show movie if available.
|
||||
if (_movieHolder != null)
|
||||
{
|
||||
sendPacket(new ExStartScenePlayer(_movieHolder.getMovie()));
|
||||
@ -10452,7 +10455,12 @@ public class PlayerInstance extends Playable
|
||||
stopTimedHuntingZoneTask();
|
||||
}
|
||||
|
||||
// send info to nearby players
|
||||
// Stop auto play.
|
||||
AutoPlayTaskManager.getInstance().stopAutoPlay(this);
|
||||
AutoUseTaskManager.getInstance().stopAutoUseTask(this);
|
||||
sendPacket(new ExAutoPlaySettingSend(_autoPlaySettings.getOptions(), false, _autoPlaySettings.doPickup(), _autoPlaySettings.getNextTargetMode(), _autoPlaySettings.isLongRange(), _autoPlaySettings.getAutoPotionPercent(), _autoPlaySettings.isRespectfulHunting()));
|
||||
|
||||
// Send info to nearby players.
|
||||
broadcastInfo();
|
||||
}
|
||||
|
||||
|
@ -24,7 +24,9 @@ import java.util.concurrent.atomic.AtomicInteger;
|
||||
*/
|
||||
public class AutoPlaySettingsHolder
|
||||
{
|
||||
private final AtomicInteger _options = new AtomicInteger();
|
||||
private final AtomicBoolean _pickup = new AtomicBoolean();
|
||||
private final AtomicInteger _nextTargetMode = new AtomicInteger();
|
||||
private final AtomicBoolean _longRange = new AtomicBoolean();
|
||||
private final AtomicBoolean _respectfulHunting = new AtomicBoolean();
|
||||
private final AtomicInteger _autoPotionPercent = new AtomicInteger();
|
||||
@ -33,6 +35,16 @@ public class AutoPlaySettingsHolder
|
||||
{
|
||||
}
|
||||
|
||||
public int getOptions()
|
||||
{
|
||||
return _options.get();
|
||||
}
|
||||
|
||||
public void setOptions(int options)
|
||||
{
|
||||
_options.set(options);
|
||||
}
|
||||
|
||||
public boolean doPickup()
|
||||
{
|
||||
return _pickup.get();
|
||||
@ -43,6 +55,16 @@ public class AutoPlaySettingsHolder
|
||||
_pickup.set(value);
|
||||
}
|
||||
|
||||
public int getNextTargetMode()
|
||||
{
|
||||
return _nextTargetMode.get();
|
||||
}
|
||||
|
||||
public void setNextTargetMode(int nextTargetMode)
|
||||
{
|
||||
_nextTargetMode.set(nextTargetMode);
|
||||
}
|
||||
|
||||
public boolean isLongRange()
|
||||
{
|
||||
return _longRange.get();
|
||||
|
@ -68,7 +68,9 @@ public class ExAutoPlaySetting implements IClientIncomingPacket
|
||||
return;
|
||||
}
|
||||
|
||||
player.getAutoPlaySettings().setOptions(_options);
|
||||
player.getAutoPlaySettings().setPickup(_pickUp);
|
||||
player.getAutoPlaySettings().setNextTargetMode(_nextTargetMode);
|
||||
player.getAutoPlaySettings().setLongRange(_longRange);
|
||||
player.getAutoPlaySettings().setRespectfulHunting(_respectfulHunting);
|
||||
|
||||
|
@ -350,10 +350,13 @@ import org.l2jmobius.gameserver.network.serverpackets.TradeOtherDone;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.TradeStart;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.ValidateLocation;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.autoplay.ExAutoPlaySettingSend;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.commission.ExResponseCommissionInfo;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.friend.FriendStatus;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.sessionzones.TimedHuntingZoneExit;
|
||||
import org.l2jmobius.gameserver.taskmanager.AttackStanceTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.AutoPlayTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.AutoUseTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.PlayerAutoSaveTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.PvpFlagTaskManager;
|
||||
import org.l2jmobius.gameserver.util.Broadcast;
|
||||
@ -10200,7 +10203,7 @@ public class PlayerInstance extends Playable
|
||||
setLastServerPosition(getX(), getY(), getZ());
|
||||
}
|
||||
|
||||
// Force a revalidation
|
||||
// Force a revalidation.
|
||||
revalidateZone(true);
|
||||
|
||||
checkItemRestriction();
|
||||
@ -10210,14 +10213,14 @@ public class PlayerInstance extends Playable
|
||||
setTeleportProtection(true);
|
||||
}
|
||||
|
||||
// Trained beast is lost after teleport
|
||||
// Trained beast is lost after teleport.
|
||||
for (TamedBeastInstance tamedBeast : _tamedBeast)
|
||||
{
|
||||
tamedBeast.deleteMe();
|
||||
}
|
||||
_tamedBeast.clear();
|
||||
|
||||
// Modify the position of the pet if necessary
|
||||
// Modify the position of the pet if necessary.
|
||||
if (_pet != null)
|
||||
{
|
||||
_pet.setFollowStatus(false);
|
||||
@ -10238,7 +10241,7 @@ public class PlayerInstance extends Playable
|
||||
s.updateAndBroadcastStatus(0);
|
||||
});
|
||||
|
||||
// Show movie if available
|
||||
// Show movie if available.
|
||||
if (_movieHolder != null)
|
||||
{
|
||||
sendPacket(new ExStartScenePlayer(_movieHolder.getMovie()));
|
||||
@ -10250,7 +10253,12 @@ public class PlayerInstance extends Playable
|
||||
stopTimedHuntingZoneTask();
|
||||
}
|
||||
|
||||
// send info to nearby players
|
||||
// Stop auto play.
|
||||
AutoPlayTaskManager.getInstance().stopAutoPlay(this);
|
||||
AutoUseTaskManager.getInstance().stopAutoUseTask(this);
|
||||
sendPacket(new ExAutoPlaySettingSend(_autoPlaySettings.getOptions(), false, _autoPlaySettings.doPickup(), _autoPlaySettings.getNextTargetMode(), _autoPlaySettings.isLongRange(), _autoPlaySettings.getAutoPotionPercent(), _autoPlaySettings.isRespectfulHunting()));
|
||||
|
||||
// Send info to nearby players.
|
||||
broadcastInfo();
|
||||
}
|
||||
|
||||
|
@ -24,7 +24,9 @@ import java.util.concurrent.atomic.AtomicInteger;
|
||||
*/
|
||||
public class AutoPlaySettingsHolder
|
||||
{
|
||||
private final AtomicInteger _options = new AtomicInteger();
|
||||
private final AtomicBoolean _pickup = new AtomicBoolean();
|
||||
private final AtomicInteger _nextTargetMode = new AtomicInteger();
|
||||
private final AtomicBoolean _longRange = new AtomicBoolean();
|
||||
private final AtomicBoolean _respectfulHunting = new AtomicBoolean();
|
||||
private final AtomicInteger _autoPotionPercent = new AtomicInteger();
|
||||
@ -33,6 +35,16 @@ public class AutoPlaySettingsHolder
|
||||
{
|
||||
}
|
||||
|
||||
public int getOptions()
|
||||
{
|
||||
return _options.get();
|
||||
}
|
||||
|
||||
public void setOptions(int options)
|
||||
{
|
||||
_options.set(options);
|
||||
}
|
||||
|
||||
public boolean doPickup()
|
||||
{
|
||||
return _pickup.get();
|
||||
@ -43,6 +55,16 @@ public class AutoPlaySettingsHolder
|
||||
_pickup.set(value);
|
||||
}
|
||||
|
||||
public int getNextTargetMode()
|
||||
{
|
||||
return _nextTargetMode.get();
|
||||
}
|
||||
|
||||
public void setNextTargetMode(int nextTargetMode)
|
||||
{
|
||||
_nextTargetMode.set(nextTargetMode);
|
||||
}
|
||||
|
||||
public boolean isLongRange()
|
||||
{
|
||||
return _longRange.get();
|
||||
|
@ -67,7 +67,9 @@ public class ExAutoPlaySetting implements IClientIncomingPacket
|
||||
return;
|
||||
}
|
||||
|
||||
player.getAutoPlaySettings().setOptions(_options);
|
||||
player.getAutoPlaySettings().setPickup(_pickUp);
|
||||
player.getAutoPlaySettings().setNextTargetMode(_nextTargetMode);
|
||||
player.getAutoPlaySettings().setLongRange(_longRange);
|
||||
player.getAutoPlaySettings().setRespectfulHunting(_respectfulHunting);
|
||||
|
||||
|
@ -354,11 +354,14 @@ import org.l2jmobius.gameserver.network.serverpackets.TradeOtherDone;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.TradeStart;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.ValidateLocation;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.autoplay.ExAutoPlaySettingSend;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.commission.ExResponseCommissionInfo;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.friend.FriendStatus;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.limitshop.ExBloodyCoinCount;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.sessionzones.TimedHuntingZoneExit;
|
||||
import org.l2jmobius.gameserver.taskmanager.AttackStanceTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.AutoPlayTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.AutoUseTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.PlayerAutoSaveTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.PvpFlagTaskManager;
|
||||
import org.l2jmobius.gameserver.util.Broadcast;
|
||||
@ -10287,7 +10290,7 @@ public class PlayerInstance extends Playable
|
||||
setLastServerPosition(getX(), getY(), getZ());
|
||||
}
|
||||
|
||||
// Force a revalidation
|
||||
// Force a revalidation.
|
||||
revalidateZone(true);
|
||||
|
||||
checkItemRestriction();
|
||||
@ -10297,14 +10300,14 @@ public class PlayerInstance extends Playable
|
||||
setTeleportProtection(true);
|
||||
}
|
||||
|
||||
// Trained beast is lost after teleport
|
||||
// Trained beast is lost after teleport.
|
||||
for (TamedBeastInstance tamedBeast : _tamedBeast)
|
||||
{
|
||||
tamedBeast.deleteMe();
|
||||
}
|
||||
_tamedBeast.clear();
|
||||
|
||||
// Modify the position of the pet if necessary
|
||||
// Modify the position of the pet if necessary.
|
||||
if (_pet != null)
|
||||
{
|
||||
_pet.setFollowStatus(false);
|
||||
@ -10325,7 +10328,7 @@ public class PlayerInstance extends Playable
|
||||
s.updateAndBroadcastStatus(0);
|
||||
});
|
||||
|
||||
// Show movie if available
|
||||
// Show movie if available.
|
||||
if (_movieHolder != null)
|
||||
{
|
||||
sendPacket(new ExStartScenePlayer(_movieHolder.getMovie()));
|
||||
@ -10337,7 +10340,12 @@ public class PlayerInstance extends Playable
|
||||
stopTimedHuntingZoneTask();
|
||||
}
|
||||
|
||||
// send info to nearby players
|
||||
// Stop auto play.
|
||||
AutoPlayTaskManager.getInstance().stopAutoPlay(this);
|
||||
AutoUseTaskManager.getInstance().stopAutoUseTask(this);
|
||||
sendPacket(new ExAutoPlaySettingSend(_autoPlaySettings.getOptions(), false, _autoPlaySettings.doPickup(), _autoPlaySettings.getNextTargetMode(), _autoPlaySettings.isLongRange(), _autoPlaySettings.getAutoPotionPercent(), _autoPlaySettings.isRespectfulHunting()));
|
||||
|
||||
// Send info to nearby players.
|
||||
broadcastInfo();
|
||||
}
|
||||
|
||||
|
@ -24,7 +24,9 @@ import java.util.concurrent.atomic.AtomicInteger;
|
||||
*/
|
||||
public class AutoPlaySettingsHolder
|
||||
{
|
||||
private final AtomicInteger _options = new AtomicInteger();
|
||||
private final AtomicBoolean _pickup = new AtomicBoolean();
|
||||
private final AtomicInteger _nextTargetMode = new AtomicInteger();
|
||||
private final AtomicBoolean _longRange = new AtomicBoolean();
|
||||
private final AtomicBoolean _respectfulHunting = new AtomicBoolean();
|
||||
private final AtomicInteger _autoPotionPercent = new AtomicInteger();
|
||||
@ -33,6 +35,16 @@ public class AutoPlaySettingsHolder
|
||||
{
|
||||
}
|
||||
|
||||
public int getOptions()
|
||||
{
|
||||
return _options.get();
|
||||
}
|
||||
|
||||
public void setOptions(int options)
|
||||
{
|
||||
_options.set(options);
|
||||
}
|
||||
|
||||
public boolean doPickup()
|
||||
{
|
||||
return _pickup.get();
|
||||
@ -43,6 +55,16 @@ public class AutoPlaySettingsHolder
|
||||
_pickup.set(value);
|
||||
}
|
||||
|
||||
public int getNextTargetMode()
|
||||
{
|
||||
return _nextTargetMode.get();
|
||||
}
|
||||
|
||||
public void setNextTargetMode(int nextTargetMode)
|
||||
{
|
||||
_nextTargetMode.set(nextTargetMode);
|
||||
}
|
||||
|
||||
public boolean isLongRange()
|
||||
{
|
||||
return _longRange.get();
|
||||
|
@ -68,7 +68,9 @@ public class ExAutoPlaySetting implements IClientIncomingPacket
|
||||
return;
|
||||
}
|
||||
|
||||
player.getAutoPlaySettings().setOptions(_options);
|
||||
player.getAutoPlaySettings().setPickup(_pickUp);
|
||||
player.getAutoPlaySettings().setNextTargetMode(_nextTargetMode);
|
||||
player.getAutoPlaySettings().setLongRange(_longRange);
|
||||
player.getAutoPlaySettings().setRespectfulHunting(_respectfulHunting);
|
||||
|
||||
|
@ -354,11 +354,14 @@ import org.l2jmobius.gameserver.network.serverpackets.TradeOtherDone;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.TradeStart;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.ValidateLocation;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.autoplay.ExAutoPlaySettingSend;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.commission.ExResponseCommissionInfo;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.friend.FriendStatus;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.limitshop.ExBloodyCoinCount;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.sessionzones.TimedHuntingZoneExit;
|
||||
import org.l2jmobius.gameserver.taskmanager.AttackStanceTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.AutoPlayTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.AutoUseTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.PlayerAutoSaveTaskManager;
|
||||
import org.l2jmobius.gameserver.taskmanager.PvpFlagTaskManager;
|
||||
import org.l2jmobius.gameserver.util.Broadcast;
|
||||
@ -10291,7 +10294,7 @@ public class PlayerInstance extends Playable
|
||||
setLastServerPosition(getX(), getY(), getZ());
|
||||
}
|
||||
|
||||
// Force a revalidation
|
||||
// Force a revalidation.
|
||||
revalidateZone(true);
|
||||
|
||||
checkItemRestriction();
|
||||
@ -10301,14 +10304,14 @@ public class PlayerInstance extends Playable
|
||||
setTeleportProtection(true);
|
||||
}
|
||||
|
||||
// Trained beast is lost after teleport
|
||||
// Trained beast is lost after teleport.
|
||||
for (TamedBeastInstance tamedBeast : _tamedBeast)
|
||||
{
|
||||
tamedBeast.deleteMe();
|
||||
}
|
||||
_tamedBeast.clear();
|
||||
|
||||
// Modify the position of the pet if necessary
|
||||
// Modify the position of the pet if necessary.
|
||||
if (_pet != null)
|
||||
{
|
||||
_pet.setFollowStatus(false);
|
||||
@ -10329,7 +10332,7 @@ public class PlayerInstance extends Playable
|
||||
s.updateAndBroadcastStatus(0);
|
||||
});
|
||||
|
||||
// Show movie if available
|
||||
// Show movie if available.
|
||||
if (_movieHolder != null)
|
||||
{
|
||||
sendPacket(new ExStartScenePlayer(_movieHolder.getMovie()));
|
||||
@ -10341,7 +10344,12 @@ public class PlayerInstance extends Playable
|
||||
stopTimedHuntingZoneTask();
|
||||
}
|
||||
|
||||
// send info to nearby players
|
||||
// Stop auto play.
|
||||
AutoPlayTaskManager.getInstance().stopAutoPlay(this);
|
||||
AutoUseTaskManager.getInstance().stopAutoUseTask(this);
|
||||
sendPacket(new ExAutoPlaySettingSend(_autoPlaySettings.getOptions(), false, _autoPlaySettings.doPickup(), _autoPlaySettings.getNextTargetMode(), _autoPlaySettings.isLongRange(), _autoPlaySettings.getAutoPotionPercent(), _autoPlaySettings.isRespectfulHunting()));
|
||||
|
||||
// Send info to nearby players.
|
||||
broadcastInfo();
|
||||
}
|
||||
|
||||
|
@ -24,7 +24,9 @@ import java.util.concurrent.atomic.AtomicInteger;
|
||||
*/
|
||||
public class AutoPlaySettingsHolder
|
||||
{
|
||||
private final AtomicInteger _options = new AtomicInteger();
|
||||
private final AtomicBoolean _pickup = new AtomicBoolean();
|
||||
private final AtomicInteger _nextTargetMode = new AtomicInteger();
|
||||
private final AtomicBoolean _longRange = new AtomicBoolean();
|
||||
private final AtomicBoolean _respectfulHunting = new AtomicBoolean();
|
||||
private final AtomicInteger _autoPotionPercent = new AtomicInteger();
|
||||
@ -33,6 +35,16 @@ public class AutoPlaySettingsHolder
|
||||
{
|
||||
}
|
||||
|
||||
public int getOptions()
|
||||
{
|
||||
return _options.get();
|
||||
}
|
||||
|
||||
public void setOptions(int options)
|
||||
{
|
||||
_options.set(options);
|
||||
}
|
||||
|
||||
public boolean doPickup()
|
||||
{
|
||||
return _pickup.get();
|
||||
@ -43,6 +55,16 @@ public class AutoPlaySettingsHolder
|
||||
_pickup.set(value);
|
||||
}
|
||||
|
||||
public int getNextTargetMode()
|
||||
{
|
||||
return _nextTargetMode.get();
|
||||
}
|
||||
|
||||
public void setNextTargetMode(int nextTargetMode)
|
||||
{
|
||||
_nextTargetMode.set(nextTargetMode);
|
||||
}
|
||||
|
||||
public boolean isLongRange()
|
||||
{
|
||||
return _longRange.get();
|
||||
|
@ -68,7 +68,9 @@ public class ExAutoPlaySetting implements IClientIncomingPacket
|
||||
return;
|
||||
}
|
||||
|
||||
player.getAutoPlaySettings().setOptions(_options);
|
||||
player.getAutoPlaySettings().setPickup(_pickUp);
|
||||
player.getAutoPlaySettings().setNextTargetMode(_nextTargetMode);
|
||||
player.getAutoPlaySettings().setLongRange(_longRange);
|
||||
player.getAutoPlaySettings().setRespectfulHunting(_respectfulHunting);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user