Re-addition of blinkActive related methods.

This commit is contained in:
MobiusDevelopment
2021-08-28 17:42:18 +00:00
parent d723a13403
commit 422492b2e4
63 changed files with 641 additions and 21 deletions
@@ -39,6 +39,7 @@ import java.util.concurrent.ConcurrentSkipListMap;
import java.util.concurrent.Future; import java.util.concurrent.Future;
import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -542,6 +543,8 @@ public class PlayerInstance extends Playable
/** Stored from last ValidatePosition **/ /** Stored from last ValidatePosition **/
private final Location _lastServerPosition = new Location(0, 0, 0); private final Location _lastServerPosition = new Location(0, 0, 0);
private final AtomicBoolean _blinkActive = new AtomicBoolean();
/** The number of recommendation obtained by the PlayerInstance */ /** The number of recommendation obtained by the PlayerInstance */
private int _recomHave; // how much I was recommended by others private int _recomHave; // how much I was recommended by others
/** The number of recommendation that the PlayerInstance can give */ /** The number of recommendation that the PlayerInstance can give */
@@ -10473,6 +10476,16 @@ public class PlayerInstance extends Playable
return _lastServerPosition; return _lastServerPosition;
} }
public void setBlinkActive(boolean value)
{
_blinkActive.set(value);
}
public boolean isBlinkActive()
{
return _blinkActive.get();
}
@Override @Override
public void addExpAndSp(double addToExp, double addToSp) public void addExpAndSp(double addToExp, double addToSp)
{ {
@@ -106,7 +106,14 @@ public class ValidatePosition implements IClientIncomingPacket
// Check out of sync. // Check out of sync.
if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed()) if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed())
{ {
player.setXYZ(_x, _y, _z); if (player.isBlinkActive())
{
player.setBlinkActive(false);
}
else
{
player.setXYZ(_x, _y, _z);
}
} }
player.setClientX(_x); player.setClientX(_x);
@@ -62,6 +62,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_destY = destY; _destY = destY;
_destZ = destZ; _destZ = destZ;
_type = type; _type = type;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed) public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed)
@@ -77,6 +82,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_flySpeed = flySpeed; _flySpeed = flySpeed;
_flyDelay = flyDelay; _flyDelay = flyDelay;
_animationSpeed = animationSpeed; _animationSpeed = animationSpeed;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, ILocational dest, FlyType type) public FlyToLocation(Creature creature, ILocational dest, FlyType type)
@@ -39,6 +39,7 @@ import java.util.concurrent.ConcurrentSkipListMap;
import java.util.concurrent.Future; import java.util.concurrent.Future;
import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -544,6 +545,8 @@ public class PlayerInstance extends Playable
/** Stored from last ValidatePosition **/ /** Stored from last ValidatePosition **/
private final Location _lastServerPosition = new Location(0, 0, 0); private final Location _lastServerPosition = new Location(0, 0, 0);
private final AtomicBoolean _blinkActive = new AtomicBoolean();
/** The number of recommendation obtained by the PlayerInstance */ /** The number of recommendation obtained by the PlayerInstance */
private int _recomHave; // how much I was recommended by others private int _recomHave; // how much I was recommended by others
/** The number of recommendation that the PlayerInstance can give */ /** The number of recommendation that the PlayerInstance can give */
@@ -10480,6 +10483,16 @@ public class PlayerInstance extends Playable
return _lastServerPosition; return _lastServerPosition;
} }
public void setBlinkActive(boolean value)
{
_blinkActive.set(value);
}
public boolean isBlinkActive()
{
return _blinkActive.get();
}
@Override @Override
public void addExpAndSp(double addToExp, double addToSp) public void addExpAndSp(double addToExp, double addToSp)
{ {
@@ -106,7 +106,14 @@ public class ValidatePosition implements IClientIncomingPacket
// Check out of sync. // Check out of sync.
if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed()) if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed())
{ {
player.setXYZ(_x, _y, _z); if (player.isBlinkActive())
{
player.setBlinkActive(false);
}
else
{
player.setXYZ(_x, _y, _z);
}
} }
player.setClientX(_x); player.setClientX(_x);
@@ -62,6 +62,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_destY = destY; _destY = destY;
_destZ = destZ; _destZ = destZ;
_type = type; _type = type;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed) public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed)
@@ -77,6 +82,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_flySpeed = flySpeed; _flySpeed = flySpeed;
_flyDelay = flyDelay; _flyDelay = flyDelay;
_animationSpeed = animationSpeed; _animationSpeed = animationSpeed;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, ILocational dest, FlyType type) public FlyToLocation(Creature creature, ILocational dest, FlyType type)
@@ -39,6 +39,7 @@ import java.util.concurrent.ConcurrentSkipListMap;
import java.util.concurrent.Future; import java.util.concurrent.Future;
import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -546,6 +547,8 @@ public class PlayerInstance extends Playable
/** Stored from last ValidatePosition **/ /** Stored from last ValidatePosition **/
private final Location _lastServerPosition = new Location(0, 0, 0); private final Location _lastServerPosition = new Location(0, 0, 0);
private final AtomicBoolean _blinkActive = new AtomicBoolean();
/** The number of recommendation obtained by the PlayerInstance */ /** The number of recommendation obtained by the PlayerInstance */
private int _recomHave; // how much I was recommended by others private int _recomHave; // how much I was recommended by others
/** The number of recommendation that the PlayerInstance can give */ /** The number of recommendation that the PlayerInstance can give */
@@ -10482,6 +10485,16 @@ public class PlayerInstance extends Playable
return _lastServerPosition; return _lastServerPosition;
} }
public void setBlinkActive(boolean value)
{
_blinkActive.set(value);
}
public boolean isBlinkActive()
{
return _blinkActive.get();
}
@Override @Override
public void addExpAndSp(double addToExp, double addToSp) public void addExpAndSp(double addToExp, double addToSp)
{ {
@@ -106,7 +106,14 @@ public class ValidatePosition implements IClientIncomingPacket
// Check out of sync. // Check out of sync.
if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed()) if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed())
{ {
player.setXYZ(_x, _y, _z); if (player.isBlinkActive())
{
player.setBlinkActive(false);
}
else
{
player.setXYZ(_x, _y, _z);
}
} }
player.setClientX(_x); player.setClientX(_x);
@@ -62,6 +62,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_destY = destY; _destY = destY;
_destZ = destZ; _destZ = destZ;
_type = type; _type = type;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed) public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed)
@@ -77,6 +82,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_flySpeed = flySpeed; _flySpeed = flySpeed;
_flyDelay = flyDelay; _flyDelay = flyDelay;
_animationSpeed = animationSpeed; _animationSpeed = animationSpeed;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, ILocational dest, FlyType type) public FlyToLocation(Creature creature, ILocational dest, FlyType type)
@@ -38,6 +38,7 @@ import java.util.concurrent.ConcurrentSkipListMap;
import java.util.concurrent.Future; import java.util.concurrent.Future;
import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -550,6 +551,8 @@ public class PlayerInstance extends Playable
/** Stored from last ValidatePosition **/ /** Stored from last ValidatePosition **/
private final Location _lastServerPosition = new Location(0, 0, 0); private final Location _lastServerPosition = new Location(0, 0, 0);
private final AtomicBoolean _blinkActive = new AtomicBoolean();
/** The number of recommendation obtained by the PlayerInstance */ /** The number of recommendation obtained by the PlayerInstance */
private int _recomHave; // how much I was recommended by others private int _recomHave; // how much I was recommended by others
/** The number of recommendation that the PlayerInstance can give */ /** The number of recommendation that the PlayerInstance can give */
@@ -10473,6 +10476,16 @@ public class PlayerInstance extends Playable
return _lastServerPosition; return _lastServerPosition;
} }
public void setBlinkActive(boolean value)
{
_blinkActive.set(value);
}
public boolean isBlinkActive()
{
return _blinkActive.get();
}
@Override @Override
public void addExpAndSp(double addToExp, double addToSp) public void addExpAndSp(double addToExp, double addToSp)
{ {
@@ -106,7 +106,14 @@ public class ValidatePosition implements IClientIncomingPacket
// Check out of sync. // Check out of sync.
if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed()) if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed())
{ {
player.setXYZ(_x, _y, _z); if (player.isBlinkActive())
{
player.setBlinkActive(false);
}
else
{
player.setXYZ(_x, _y, _z);
}
} }
player.setClientX(_x); player.setClientX(_x);
@@ -62,6 +62,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_destY = destY; _destY = destY;
_destZ = destZ; _destZ = destZ;
_type = type; _type = type;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed) public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed)
@@ -77,6 +82,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_flySpeed = flySpeed; _flySpeed = flySpeed;
_flyDelay = flyDelay; _flyDelay = flyDelay;
_animationSpeed = animationSpeed; _animationSpeed = animationSpeed;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, ILocational dest, FlyType type) public FlyToLocation(Creature creature, ILocational dest, FlyType type)
@@ -38,6 +38,7 @@ import java.util.concurrent.ConcurrentSkipListMap;
import java.util.concurrent.Future; import java.util.concurrent.Future;
import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -548,6 +549,8 @@ public class PlayerInstance extends Playable
/** Stored from last ValidatePosition **/ /** Stored from last ValidatePosition **/
private final Location _lastServerPosition = new Location(0, 0, 0); private final Location _lastServerPosition = new Location(0, 0, 0);
private final AtomicBoolean _blinkActive = new AtomicBoolean();
/** The number of recommendation obtained by the PlayerInstance */ /** The number of recommendation obtained by the PlayerInstance */
private int _recomHave; // how much I was recommended by others private int _recomHave; // how much I was recommended by others
/** The number of recommendation that the PlayerInstance can give */ /** The number of recommendation that the PlayerInstance can give */
@@ -10463,6 +10466,16 @@ public class PlayerInstance extends Playable
return _lastServerPosition; return _lastServerPosition;
} }
public void setBlinkActive(boolean value)
{
_blinkActive.set(value);
}
public boolean isBlinkActive()
{
return _blinkActive.get();
}
@Override @Override
public void addExpAndSp(double addToExp, double addToSp) public void addExpAndSp(double addToExp, double addToSp)
{ {
@@ -106,7 +106,14 @@ public class ValidatePosition implements IClientIncomingPacket
// Check out of sync. // Check out of sync.
if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed()) if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed())
{ {
player.setXYZ(_x, _y, _z); if (player.isBlinkActive())
{
player.setBlinkActive(false);
}
else
{
player.setXYZ(_x, _y, _z);
}
} }
player.setClientX(_x); player.setClientX(_x);
@@ -62,6 +62,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_destY = destY; _destY = destY;
_destZ = destZ; _destZ = destZ;
_type = type; _type = type;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed) public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed)
@@ -77,6 +82,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_flySpeed = flySpeed; _flySpeed = flySpeed;
_flyDelay = flyDelay; _flyDelay = flyDelay;
_animationSpeed = animationSpeed; _animationSpeed = animationSpeed;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, ILocational dest, FlyType type) public FlyToLocation(Creature creature, ILocational dest, FlyType type)
@@ -38,6 +38,7 @@ import java.util.concurrent.ConcurrentSkipListMap;
import java.util.concurrent.Future; import java.util.concurrent.Future;
import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -548,6 +549,8 @@ public class PlayerInstance extends Playable
/** Stored from last ValidatePosition **/ /** Stored from last ValidatePosition **/
private final Location _lastServerPosition = new Location(0, 0, 0); private final Location _lastServerPosition = new Location(0, 0, 0);
private final AtomicBoolean _blinkActive = new AtomicBoolean();
/** The number of recommendation obtained by the PlayerInstance */ /** The number of recommendation obtained by the PlayerInstance */
private int _recomHave; // how much I was recommended by others private int _recomHave; // how much I was recommended by others
/** The number of recommendation that the PlayerInstance can give */ /** The number of recommendation that the PlayerInstance can give */
@@ -10466,6 +10469,16 @@ public class PlayerInstance extends Playable
return _lastServerPosition; return _lastServerPosition;
} }
public void setBlinkActive(boolean value)
{
_blinkActive.set(value);
}
public boolean isBlinkActive()
{
return _blinkActive.get();
}
@Override @Override
public void addExpAndSp(double addToExp, double addToSp) public void addExpAndSp(double addToExp, double addToSp)
{ {
@@ -106,7 +106,14 @@ public class ValidatePosition implements IClientIncomingPacket
// Check out of sync. // Check out of sync.
if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed()) if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed())
{ {
player.setXYZ(_x, _y, _z); if (player.isBlinkActive())
{
player.setBlinkActive(false);
}
else
{
player.setXYZ(_x, _y, _z);
}
} }
player.setClientX(_x); player.setClientX(_x);
@@ -62,6 +62,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_destY = destY; _destY = destY;
_destZ = destZ; _destZ = destZ;
_type = type; _type = type;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed) public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed)
@@ -77,6 +82,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_flySpeed = flySpeed; _flySpeed = flySpeed;
_flyDelay = flyDelay; _flyDelay = flyDelay;
_animationSpeed = animationSpeed; _animationSpeed = animationSpeed;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, ILocational dest, FlyType type) public FlyToLocation(Creature creature, ILocational dest, FlyType type)
@@ -38,6 +38,7 @@ import java.util.concurrent.ConcurrentSkipListMap;
import java.util.concurrent.Future; import java.util.concurrent.Future;
import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -548,6 +549,8 @@ public class PlayerInstance extends Playable
/** Stored from last ValidatePosition **/ /** Stored from last ValidatePosition **/
private final Location _lastServerPosition = new Location(0, 0, 0); private final Location _lastServerPosition = new Location(0, 0, 0);
private final AtomicBoolean _blinkActive = new AtomicBoolean();
/** The number of recommendation obtained by the PlayerInstance */ /** The number of recommendation obtained by the PlayerInstance */
private int _recomHave; // how much I was recommended by others private int _recomHave; // how much I was recommended by others
/** The number of recommendation that the PlayerInstance can give */ /** The number of recommendation that the PlayerInstance can give */
@@ -10472,6 +10475,16 @@ public class PlayerInstance extends Playable
return _lastServerPosition; return _lastServerPosition;
} }
public void setBlinkActive(boolean value)
{
_blinkActive.set(value);
}
public boolean isBlinkActive()
{
return _blinkActive.get();
}
@Override @Override
public void addExpAndSp(double addToExp, double addToSp) public void addExpAndSp(double addToExp, double addToSp)
{ {
@@ -106,7 +106,14 @@ public class ValidatePosition implements IClientIncomingPacket
// Check out of sync. // Check out of sync.
if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed()) if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed())
{ {
player.setXYZ(_x, _y, _z); if (player.isBlinkActive())
{
player.setBlinkActive(false);
}
else
{
player.setXYZ(_x, _y, _z);
}
} }
player.setClientX(_x); player.setClientX(_x);
@@ -62,6 +62,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_destY = destY; _destY = destY;
_destZ = destZ; _destZ = destZ;
_type = type; _type = type;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed) public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed)
@@ -77,6 +82,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_flySpeed = flySpeed; _flySpeed = flySpeed;
_flyDelay = flyDelay; _flyDelay = flyDelay;
_animationSpeed = animationSpeed; _animationSpeed = animationSpeed;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, ILocational dest, FlyType type) public FlyToLocation(Creature creature, ILocational dest, FlyType type)
@@ -39,6 +39,7 @@ import java.util.concurrent.CopyOnWriteArrayList;
import java.util.concurrent.Future; import java.util.concurrent.Future;
import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -561,6 +562,8 @@ public class PlayerInstance extends Playable
/** Stored from last ValidatePosition **/ /** Stored from last ValidatePosition **/
private final Location _lastServerPosition = new Location(0, 0, 0); private final Location _lastServerPosition = new Location(0, 0, 0);
private final AtomicBoolean _blinkActive = new AtomicBoolean();
/** The number of recommendation obtained by the PlayerInstance */ /** The number of recommendation obtained by the PlayerInstance */
private int _recomHave; // how much I was recommended by others private int _recomHave; // how much I was recommended by others
/** The number of recommendation that the PlayerInstance can give */ /** The number of recommendation that the PlayerInstance can give */
@@ -10482,6 +10485,16 @@ public class PlayerInstance extends Playable
return _lastServerPosition; return _lastServerPosition;
} }
public void setBlinkActive(boolean value)
{
_blinkActive.set(value);
}
public boolean isBlinkActive()
{
return _blinkActive.get();
}
@Override @Override
public void addExpAndSp(double addToExp, double addToSp) public void addExpAndSp(double addToExp, double addToSp)
{ {
@@ -106,7 +106,14 @@ public class ValidatePosition implements IClientIncomingPacket
// Check out of sync. // Check out of sync.
if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed()) if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed())
{ {
player.setXYZ(_x, _y, _z); if (player.isBlinkActive())
{
player.setBlinkActive(false);
}
else
{
player.setXYZ(_x, _y, _z);
}
} }
player.setClientX(_x); player.setClientX(_x);
@@ -62,6 +62,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_destY = destY; _destY = destY;
_destZ = destZ; _destZ = destZ;
_type = type; _type = type;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed) public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed)
@@ -77,6 +82,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_flySpeed = flySpeed; _flySpeed = flySpeed;
_flyDelay = flyDelay; _flyDelay = flyDelay;
_animationSpeed = animationSpeed; _animationSpeed = animationSpeed;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, ILocational dest, FlyType type) public FlyToLocation(Creature creature, ILocational dest, FlyType type)
@@ -39,6 +39,7 @@ import java.util.concurrent.CopyOnWriteArrayList;
import java.util.concurrent.Future; import java.util.concurrent.Future;
import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -564,6 +565,8 @@ public class PlayerInstance extends Playable
/** Stored from last ValidatePosition **/ /** Stored from last ValidatePosition **/
private final Location _lastServerPosition = new Location(0, 0, 0); private final Location _lastServerPosition = new Location(0, 0, 0);
private final AtomicBoolean _blinkActive = new AtomicBoolean();
/** The number of recommendation obtained by the PlayerInstance */ /** The number of recommendation obtained by the PlayerInstance */
private int _recomHave; // how much I was recommended by others private int _recomHave; // how much I was recommended by others
/** The number of recommendation that the PlayerInstance can give */ /** The number of recommendation that the PlayerInstance can give */
@@ -10593,6 +10596,16 @@ public class PlayerInstance extends Playable
return _lastServerPosition; return _lastServerPosition;
} }
public void setBlinkActive(boolean value)
{
_blinkActive.set(value);
}
public boolean isBlinkActive()
{
return _blinkActive.get();
}
@Override @Override
public void addExpAndSp(double addToExp, double addToSp) public void addExpAndSp(double addToExp, double addToSp)
{ {
@@ -106,7 +106,14 @@ public class ValidatePosition implements IClientIncomingPacket
// Check out of sync. // Check out of sync.
if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed()) if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed())
{ {
player.setXYZ(_x, _y, _z); if (player.isBlinkActive())
{
player.setBlinkActive(false);
}
else
{
player.setXYZ(_x, _y, _z);
}
} }
player.setClientX(_x); player.setClientX(_x);
@@ -62,6 +62,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_destY = destY; _destY = destY;
_destZ = destZ; _destZ = destZ;
_type = type; _type = type;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed) public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed)
@@ -77,6 +82,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_flySpeed = flySpeed; _flySpeed = flySpeed;
_flyDelay = flyDelay; _flyDelay = flyDelay;
_animationSpeed = animationSpeed; _animationSpeed = animationSpeed;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, ILocational dest, FlyType type) public FlyToLocation(Creature creature, ILocational dest, FlyType type)
@@ -39,6 +39,7 @@ import java.util.concurrent.CopyOnWriteArrayList;
import java.util.concurrent.Future; import java.util.concurrent.Future;
import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -577,6 +578,8 @@ public class PlayerInstance extends Playable
/** Stored from last ValidatePosition **/ /** Stored from last ValidatePosition **/
private final Location _lastServerPosition = new Location(0, 0, 0); private final Location _lastServerPosition = new Location(0, 0, 0);
private final AtomicBoolean _blinkActive = new AtomicBoolean();
/** The number of recommendation obtained by the PlayerInstance */ /** The number of recommendation obtained by the PlayerInstance */
private int _recomHave; // how much I was recommended by others private int _recomHave; // how much I was recommended by others
/** The number of recommendation that the PlayerInstance can give */ /** The number of recommendation that the PlayerInstance can give */
@@ -10619,6 +10622,16 @@ public class PlayerInstance extends Playable
return _lastServerPosition; return _lastServerPosition;
} }
public void setBlinkActive(boolean value)
{
_blinkActive.set(value);
}
public boolean isBlinkActive()
{
return _blinkActive.get();
}
@Override @Override
public void addExpAndSp(double addToExp, double addToSp) public void addExpAndSp(double addToExp, double addToSp)
{ {
@@ -106,7 +106,14 @@ public class ValidatePosition implements IClientIncomingPacket
// Check out of sync. // Check out of sync.
if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed()) if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed())
{ {
player.setXYZ(_x, _y, _z); if (player.isBlinkActive())
{
player.setBlinkActive(false);
}
else
{
player.setXYZ(_x, _y, _z);
}
} }
player.setClientX(_x); player.setClientX(_x);
@@ -62,6 +62,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_destY = destY; _destY = destY;
_destZ = destZ; _destZ = destZ;
_type = type; _type = type;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed) public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed)
@@ -77,6 +82,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_flySpeed = flySpeed; _flySpeed = flySpeed;
_flyDelay = flyDelay; _flyDelay = flyDelay;
_animationSpeed = animationSpeed; _animationSpeed = animationSpeed;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, ILocational dest, FlyType type) public FlyToLocation(Creature creature, ILocational dest, FlyType type)
@@ -38,6 +38,7 @@ import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentSkipListMap; import java.util.concurrent.ConcurrentSkipListMap;
import java.util.concurrent.Future; import java.util.concurrent.Future;
import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.locks.ReentrantLock; import java.util.concurrent.locks.ReentrantLock;
import java.util.logging.Level; import java.util.logging.Level;
@@ -528,6 +529,8 @@ public class PlayerInstance extends Playable
/** Stored from last ValidatePosition **/ /** Stored from last ValidatePosition **/
private final Location _lastServerPosition = new Location(0, 0, 0); private final Location _lastServerPosition = new Location(0, 0, 0);
private final AtomicBoolean _blinkActive = new AtomicBoolean();
/** The number of recommendation obtained by the PlayerInstance */ /** The number of recommendation obtained by the PlayerInstance */
private int _recomHave; // how much I was recommended by others private int _recomHave; // how much I was recommended by others
/** The number of recommendation that the PlayerInstance can give */ /** The number of recommendation that the PlayerInstance can give */
@@ -10889,6 +10892,16 @@ public class PlayerInstance extends Playable
return _lastServerPosition; return _lastServerPosition;
} }
public void setBlinkActive(boolean value)
{
_blinkActive.set(value);
}
public boolean isBlinkActive()
{
return _blinkActive.get();
}
@Override @Override
public void addExpAndSp(double addToExp, double addToSp) public void addExpAndSp(double addToExp, double addToSp)
{ {
@@ -106,7 +106,14 @@ public class ValidatePosition implements IClientIncomingPacket
// Check out of sync. // Check out of sync.
if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed()) if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed())
{ {
player.setXYZ(_x, _y, _z); if (player.isBlinkActive())
{
player.setBlinkActive(false);
}
else
{
player.setXYZ(_x, _y, _z);
}
} }
player.setClientX(_x); player.setClientX(_x);
@@ -53,6 +53,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_destY = destY; _destY = destY;
_destZ = destZ; _destZ = destZ;
_type = type; _type = type;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, ILocational dest, FlyType type) public FlyToLocation(Creature creature, ILocational dest, FlyType type)
@@ -39,6 +39,7 @@ import java.util.concurrent.ConcurrentSkipListMap;
import java.util.concurrent.Future; import java.util.concurrent.Future;
import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import java.util.logging.Level; import java.util.logging.Level;
@@ -547,6 +548,8 @@ public class PlayerInstance extends Playable
/** Stored from last ValidatePosition **/ /** Stored from last ValidatePosition **/
private final Location _lastServerPosition = new Location(0, 0, 0); private final Location _lastServerPosition = new Location(0, 0, 0);
private final AtomicBoolean _blinkActive = new AtomicBoolean();
/** The number of recommendation obtained by the PlayerInstance */ /** The number of recommendation obtained by the PlayerInstance */
private int _recomHave; // how much I was recommended by others private int _recomHave; // how much I was recommended by others
/** The number of recommendation that the PlayerInstance can give */ /** The number of recommendation that the PlayerInstance can give */
@@ -10772,6 +10775,16 @@ public class PlayerInstance extends Playable
return _lastServerPosition; return _lastServerPosition;
} }
public void setBlinkActive(boolean value)
{
_blinkActive.set(value);
}
public boolean isBlinkActive()
{
return _blinkActive.get();
}
@Override @Override
public void addExpAndSp(double addToExp, double addToSp) public void addExpAndSp(double addToExp, double addToSp)
{ {
@@ -106,7 +106,14 @@ public class ValidatePosition implements IClientIncomingPacket
// Check out of sync. // Check out of sync.
if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed()) if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed())
{ {
player.setXYZ(_x, _y, _z); if (player.isBlinkActive())
{
player.setBlinkActive(false);
}
else
{
player.setXYZ(_x, _y, _z);
}
} }
player.setClientX(_x); player.setClientX(_x);
@@ -53,6 +53,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_destY = destY; _destY = destY;
_destZ = destZ; _destZ = destZ;
_type = type; _type = type;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, ILocational dest, FlyType type) public FlyToLocation(Creature creature, ILocational dest, FlyType type)
@@ -41,6 +41,7 @@ import java.util.concurrent.ConcurrentSkipListMap;
import java.util.concurrent.Future; import java.util.concurrent.Future;
import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -545,6 +546,8 @@ public class PlayerInstance extends Playable
/** Stored from last ValidatePosition **/ /** Stored from last ValidatePosition **/
private final Location _lastServerPosition = new Location(0, 0, 0); private final Location _lastServerPosition = new Location(0, 0, 0);
private final AtomicBoolean _blinkActive = new AtomicBoolean();
/** The number of recommendation obtained by the PlayerInstance */ /** The number of recommendation obtained by the PlayerInstance */
private int _recomHave; // how much I was recommended by others private int _recomHave; // how much I was recommended by others
/** The number of recommendation that the PlayerInstance can give */ /** The number of recommendation that the PlayerInstance can give */
@@ -10384,6 +10387,16 @@ public class PlayerInstance extends Playable
return _lastServerPosition; return _lastServerPosition;
} }
public void setBlinkActive(boolean value)
{
_blinkActive.set(value);
}
public boolean isBlinkActive()
{
return _blinkActive.get();
}
@Override @Override
public void addExpAndSp(double addToExp, double addToSp) public void addExpAndSp(double addToExp, double addToSp)
{ {
@@ -106,7 +106,14 @@ public class ValidatePosition implements IClientIncomingPacket
// Check out of sync. // Check out of sync.
if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed()) if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed())
{ {
player.setXYZ(_x, _y, _z); if (player.isBlinkActive())
{
player.setBlinkActive(false);
}
else
{
player.setXYZ(_x, _y, _z);
}
} }
player.setClientX(_x); player.setClientX(_x);
@@ -62,6 +62,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_destY = destY; _destY = destY;
_destZ = destZ; _destZ = destZ;
_type = type; _type = type;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed) public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed)
@@ -77,6 +82,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_flySpeed = flySpeed; _flySpeed = flySpeed;
_flyDelay = flyDelay; _flyDelay = flyDelay;
_animationSpeed = animationSpeed; _animationSpeed = animationSpeed;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, ILocational dest, FlyType type) public FlyToLocation(Creature creature, ILocational dest, FlyType type)
@@ -41,6 +41,7 @@ import java.util.concurrent.ConcurrentSkipListMap;
import java.util.concurrent.Future; import java.util.concurrent.Future;
import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -545,6 +546,8 @@ public class PlayerInstance extends Playable
/** Stored from last ValidatePosition **/ /** Stored from last ValidatePosition **/
private final Location _lastServerPosition = new Location(0, 0, 0); private final Location _lastServerPosition = new Location(0, 0, 0);
private final AtomicBoolean _blinkActive = new AtomicBoolean();
/** The number of recommendation obtained by the PlayerInstance */ /** The number of recommendation obtained by the PlayerInstance */
private int _recomHave; // how much I was recommended by others private int _recomHave; // how much I was recommended by others
/** The number of recommendation that the PlayerInstance can give */ /** The number of recommendation that the PlayerInstance can give */
@@ -10384,6 +10387,16 @@ public class PlayerInstance extends Playable
return _lastServerPosition; return _lastServerPosition;
} }
public void setBlinkActive(boolean value)
{
_blinkActive.set(value);
}
public boolean isBlinkActive()
{
return _blinkActive.get();
}
@Override @Override
public void addExpAndSp(double addToExp, double addToSp) public void addExpAndSp(double addToExp, double addToSp)
{ {
@@ -106,7 +106,14 @@ public class ValidatePosition implements IClientIncomingPacket
// Check out of sync. // Check out of sync.
if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed()) if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed())
{ {
player.setXYZ(_x, _y, _z); if (player.isBlinkActive())
{
player.setBlinkActive(false);
}
else
{
player.setXYZ(_x, _y, _z);
}
} }
player.setClientX(_x); player.setClientX(_x);
@@ -62,6 +62,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_destY = destY; _destY = destY;
_destZ = destZ; _destZ = destZ;
_type = type; _type = type;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed) public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed)
@@ -77,6 +82,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_flySpeed = flySpeed; _flySpeed = flySpeed;
_flyDelay = flyDelay; _flyDelay = flyDelay;
_animationSpeed = animationSpeed; _animationSpeed = animationSpeed;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, ILocational dest, FlyType type) public FlyToLocation(Creature creature, ILocational dest, FlyType type)
@@ -41,6 +41,7 @@ import java.util.concurrent.ConcurrentSkipListMap;
import java.util.concurrent.Future; import java.util.concurrent.Future;
import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -543,6 +544,8 @@ public class PlayerInstance extends Playable
/** Stored from last ValidatePosition **/ /** Stored from last ValidatePosition **/
private final Location _lastServerPosition = new Location(0, 0, 0); private final Location _lastServerPosition = new Location(0, 0, 0);
private final AtomicBoolean _blinkActive = new AtomicBoolean();
/** The number of recommendation obtained by the PlayerInstance */ /** The number of recommendation obtained by the PlayerInstance */
private int _recomHave; // how much I was recommended by others private int _recomHave; // how much I was recommended by others
/** The number of recommendation that the PlayerInstance can give */ /** The number of recommendation that the PlayerInstance can give */
@@ -10370,6 +10373,16 @@ public class PlayerInstance extends Playable
return _lastServerPosition; return _lastServerPosition;
} }
public void setBlinkActive(boolean value)
{
_blinkActive.set(value);
}
public boolean isBlinkActive()
{
return _blinkActive.get();
}
@Override @Override
public void addExpAndSp(double addToExp, double addToSp) public void addExpAndSp(double addToExp, double addToSp)
{ {
@@ -106,7 +106,14 @@ public class ValidatePosition implements IClientIncomingPacket
// Check out of sync. // Check out of sync.
if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed()) if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed())
{ {
player.setXYZ(_x, _y, _z); if (player.isBlinkActive())
{
player.setBlinkActive(false);
}
else
{
player.setXYZ(_x, _y, _z);
}
} }
player.setClientX(_x); player.setClientX(_x);
@@ -62,6 +62,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_destY = destY; _destY = destY;
_destZ = destZ; _destZ = destZ;
_type = type; _type = type;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed) public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed)
@@ -77,6 +82,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_flySpeed = flySpeed; _flySpeed = flySpeed;
_flyDelay = flyDelay; _flyDelay = flyDelay;
_animationSpeed = animationSpeed; _animationSpeed = animationSpeed;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, ILocational dest, FlyType type) public FlyToLocation(Creature creature, ILocational dest, FlyType type)
@@ -41,6 +41,7 @@ import java.util.concurrent.ConcurrentSkipListMap;
import java.util.concurrent.Future; import java.util.concurrent.Future;
import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -549,6 +550,8 @@ public class PlayerInstance extends Playable
/** Stored from last ValidatePosition **/ /** Stored from last ValidatePosition **/
private final Location _lastServerPosition = new Location(0, 0, 0); private final Location _lastServerPosition = new Location(0, 0, 0);
private final AtomicBoolean _blinkActive = new AtomicBoolean();
/** The number of recommendation obtained by the PlayerInstance */ /** The number of recommendation obtained by the PlayerInstance */
private int _recomHave; // how much I was recommended by others private int _recomHave; // how much I was recommended by others
/** The number of recommendation that the PlayerInstance can give */ /** The number of recommendation that the PlayerInstance can give */
@@ -10397,6 +10400,16 @@ public class PlayerInstance extends Playable
return _lastServerPosition; return _lastServerPosition;
} }
public void setBlinkActive(boolean value)
{
_blinkActive.set(value);
}
public boolean isBlinkActive()
{
return _blinkActive.get();
}
@Override @Override
public void addExpAndSp(double addToExp, double addToSp) public void addExpAndSp(double addToExp, double addToSp)
{ {
@@ -106,7 +106,14 @@ public class ValidatePosition implements IClientIncomingPacket
// Check out of sync. // Check out of sync.
if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed()) if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed())
{ {
player.setXYZ(_x, _y, _z); if (player.isBlinkActive())
{
player.setBlinkActive(false);
}
else
{
player.setXYZ(_x, _y, _z);
}
} }
player.setClientX(_x); player.setClientX(_x);
@@ -62,6 +62,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_destY = destY; _destY = destY;
_destZ = destZ; _destZ = destZ;
_type = type; _type = type;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed) public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed)
@@ -77,6 +82,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_flySpeed = flySpeed; _flySpeed = flySpeed;
_flyDelay = flyDelay; _flyDelay = flyDelay;
_animationSpeed = animationSpeed; _animationSpeed = animationSpeed;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, ILocational dest, FlyType type) public FlyToLocation(Creature creature, ILocational dest, FlyType type)
@@ -41,6 +41,7 @@ import java.util.concurrent.ConcurrentSkipListMap;
import java.util.concurrent.Future; import java.util.concurrent.Future;
import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -549,6 +550,8 @@ public class PlayerInstance extends Playable
/** Stored from last ValidatePosition **/ /** Stored from last ValidatePosition **/
private final Location _lastServerPosition = new Location(0, 0, 0); private final Location _lastServerPosition = new Location(0, 0, 0);
private final AtomicBoolean _blinkActive = new AtomicBoolean();
/** The number of recommendation obtained by the PlayerInstance */ /** The number of recommendation obtained by the PlayerInstance */
private int _recomHave; // how much I was recommended by others private int _recomHave; // how much I was recommended by others
/** The number of recommendation that the PlayerInstance can give */ /** The number of recommendation that the PlayerInstance can give */
@@ -10397,6 +10400,16 @@ public class PlayerInstance extends Playable
return _lastServerPosition; return _lastServerPosition;
} }
public void setBlinkActive(boolean value)
{
_blinkActive.set(value);
}
public boolean isBlinkActive()
{
return _blinkActive.get();
}
@Override @Override
public void addExpAndSp(double addToExp, double addToSp) public void addExpAndSp(double addToExp, double addToSp)
{ {
@@ -106,7 +106,14 @@ public class ValidatePosition implements IClientIncomingPacket
// Check out of sync. // Check out of sync.
if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed()) if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed())
{ {
player.setXYZ(_x, _y, _z); if (player.isBlinkActive())
{
player.setBlinkActive(false);
}
else
{
player.setXYZ(_x, _y, _z);
}
} }
player.setClientX(_x); player.setClientX(_x);
@@ -62,6 +62,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_destY = destY; _destY = destY;
_destZ = destZ; _destZ = destZ;
_type = type; _type = type;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed) public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed)
@@ -77,6 +82,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_flySpeed = flySpeed; _flySpeed = flySpeed;
_flyDelay = flyDelay; _flyDelay = flyDelay;
_animationSpeed = animationSpeed; _animationSpeed = animationSpeed;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, ILocational dest, FlyType type) public FlyToLocation(Creature creature, ILocational dest, FlyType type)
@@ -42,6 +42,7 @@ import java.util.concurrent.CopyOnWriteArrayList;
import java.util.concurrent.Future; import java.util.concurrent.Future;
import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -564,6 +565,8 @@ public class PlayerInstance extends Playable
/** Stored from last ValidatePosition **/ /** Stored from last ValidatePosition **/
private final Location _lastServerPosition = new Location(0, 0, 0); private final Location _lastServerPosition = new Location(0, 0, 0);
private final AtomicBoolean _blinkActive = new AtomicBoolean();
/** The number of recommendation obtained by the PlayerInstance */ /** The number of recommendation obtained by the PlayerInstance */
private int _recomHave; // how much I was recommended by others private int _recomHave; // how much I was recommended by others
/** The number of recommendation that the PlayerInstance can give */ /** The number of recommendation that the PlayerInstance can give */
@@ -10342,6 +10345,16 @@ public class PlayerInstance extends Playable
return _lastServerPosition; return _lastServerPosition;
} }
public void setBlinkActive(boolean value)
{
_blinkActive.set(value);
}
public boolean isBlinkActive()
{
return _blinkActive.get();
}
@Override @Override
public void addExpAndSp(double addToExp, double addToSp) public void addExpAndSp(double addToExp, double addToSp)
{ {
@@ -106,7 +106,14 @@ public class ValidatePosition implements IClientIncomingPacket
// Check out of sync. // Check out of sync.
if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed()) if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed())
{ {
player.setXYZ(_x, _y, _z); if (player.isBlinkActive())
{
player.setBlinkActive(false);
}
else
{
player.setXYZ(_x, _y, _z);
}
} }
player.setClientX(_x); player.setClientX(_x);
@@ -62,6 +62,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_destY = destY; _destY = destY;
_destZ = destZ; _destZ = destZ;
_type = type; _type = type;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed) public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed)
@@ -77,6 +82,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_flySpeed = flySpeed; _flySpeed = flySpeed;
_flyDelay = flyDelay; _flyDelay = flyDelay;
_animationSpeed = animationSpeed; _animationSpeed = animationSpeed;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, ILocational dest, FlyType type) public FlyToLocation(Creature creature, ILocational dest, FlyType type)
@@ -39,6 +39,7 @@ import java.util.concurrent.ConcurrentSkipListMap;
import java.util.concurrent.Future; import java.util.concurrent.Future;
import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -540,6 +541,8 @@ public class PlayerInstance extends Playable
/** Stored from last ValidatePosition **/ /** Stored from last ValidatePosition **/
private final Location _lastServerPosition = new Location(0, 0, 0); private final Location _lastServerPosition = new Location(0, 0, 0);
private final AtomicBoolean _blinkActive = new AtomicBoolean();
/** The number of recommendation obtained by the PlayerInstance */ /** The number of recommendation obtained by the PlayerInstance */
private int _recomHave; // how much I was recommended by others private int _recomHave; // how much I was recommended by others
/** The number of recommendation that the PlayerInstance can give */ /** The number of recommendation that the PlayerInstance can give */
@@ -10380,6 +10383,16 @@ public class PlayerInstance extends Playable
return _lastServerPosition; return _lastServerPosition;
} }
public void setBlinkActive(boolean value)
{
_blinkActive.set(value);
}
public boolean isBlinkActive()
{
return _blinkActive.get();
}
@Override @Override
public void addExpAndSp(double addToExp, double addToSp) public void addExpAndSp(double addToExp, double addToSp)
{ {
@@ -106,7 +106,14 @@ public class ValidatePosition implements IClientIncomingPacket
// Check out of sync. // Check out of sync.
if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed()) if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed())
{ {
player.setXYZ(_x, _y, _z); if (player.isBlinkActive())
{
player.setBlinkActive(false);
}
else
{
player.setXYZ(_x, _y, _z);
}
} }
player.setClientX(_x); player.setClientX(_x);
@@ -62,6 +62,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_destY = destY; _destY = destY;
_destZ = destZ; _destZ = destZ;
_type = type; _type = type;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed) public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed)
@@ -77,6 +82,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_flySpeed = flySpeed; _flySpeed = flySpeed;
_flyDelay = flyDelay; _flyDelay = flyDelay;
_animationSpeed = animationSpeed; _animationSpeed = animationSpeed;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, ILocational dest, FlyType type) public FlyToLocation(Creature creature, ILocational dest, FlyType type)
@@ -42,6 +42,7 @@ import java.util.concurrent.CopyOnWriteArrayList;
import java.util.concurrent.Future; import java.util.concurrent.Future;
import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -583,6 +584,8 @@ public class PlayerInstance extends Playable
/** Stored from last ValidatePosition **/ /** Stored from last ValidatePosition **/
private final Location _lastServerPosition = new Location(0, 0, 0); private final Location _lastServerPosition = new Location(0, 0, 0);
private final AtomicBoolean _blinkActive = new AtomicBoolean();
/** The number of recommendation obtained by the PlayerInstance */ /** The number of recommendation obtained by the PlayerInstance */
private int _recomHave; // how much I was recommended by others private int _recomHave; // how much I was recommended by others
/** The number of recommendation that the PlayerInstance can give */ /** The number of recommendation that the PlayerInstance can give */
@@ -10508,6 +10511,16 @@ public class PlayerInstance extends Playable
return _lastServerPosition; return _lastServerPosition;
} }
public void setBlinkActive(boolean value)
{
_blinkActive.set(value);
}
public boolean isBlinkActive()
{
return _blinkActive.get();
}
@Override @Override
public void addExpAndSp(double addToExp, double addToSp) public void addExpAndSp(double addToExp, double addToSp)
{ {
@@ -106,7 +106,14 @@ public class ValidatePosition implements IClientIncomingPacket
// Check out of sync. // Check out of sync.
if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed()) if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed())
{ {
player.setXYZ(_x, _y, _z); if (player.isBlinkActive())
{
player.setBlinkActive(false);
}
else
{
player.setXYZ(_x, _y, _z);
}
} }
player.setClientX(_x); player.setClientX(_x);
@@ -62,6 +62,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_destY = destY; _destY = destY;
_destZ = destZ; _destZ = destZ;
_type = type; _type = type;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed) public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed)
@@ -77,6 +82,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_flySpeed = flySpeed; _flySpeed = flySpeed;
_flyDelay = flyDelay; _flyDelay = flyDelay;
_animationSpeed = animationSpeed; _animationSpeed = animationSpeed;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, ILocational dest, FlyType type) public FlyToLocation(Creature creature, ILocational dest, FlyType type)
@@ -42,6 +42,7 @@ import java.util.concurrent.CopyOnWriteArrayList;
import java.util.concurrent.Future; import java.util.concurrent.Future;
import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -607,6 +608,8 @@ public class PlayerInstance extends Playable
/** Stored from last ValidatePosition **/ /** Stored from last ValidatePosition **/
private final Location _lastServerPosition = new Location(0, 0, 0); private final Location _lastServerPosition = new Location(0, 0, 0);
private final AtomicBoolean _blinkActive = new AtomicBoolean();
/** The number of recommendation obtained by the PlayerInstance */ /** The number of recommendation obtained by the PlayerInstance */
private int _recomHave; // how much I was recommended by others private int _recomHave; // how much I was recommended by others
/** The number of recommendation that the PlayerInstance can give */ /** The number of recommendation that the PlayerInstance can give */
@@ -10574,6 +10577,16 @@ public class PlayerInstance extends Playable
return _lastServerPosition; return _lastServerPosition;
} }
public void setBlinkActive(boolean value)
{
_blinkActive.set(value);
}
public boolean isBlinkActive()
{
return _blinkActive.get();
}
@Override @Override
public void addExpAndSp(double addToExp, double addToSp) public void addExpAndSp(double addToExp, double addToSp)
{ {
@@ -106,7 +106,14 @@ public class ValidatePosition implements IClientIncomingPacket
// Check out of sync. // Check out of sync.
if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed()) if (player.calculateDistance3D(_x, _y, _z) > player.getStat().getMoveSpeed())
{ {
player.setXYZ(_x, _y, _z); if (player.isBlinkActive())
{
player.setBlinkActive(false);
}
else
{
player.setXYZ(_x, _y, _z);
}
} }
player.setClientX(_x); player.setClientX(_x);
@@ -62,6 +62,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_destY = destY; _destY = destY;
_destZ = destZ; _destZ = destZ;
_type = type; _type = type;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed) public FlyToLocation(Creature creature, int destX, int destY, int destZ, FlyType type, int flySpeed, int flyDelay, int animationSpeed)
@@ -77,6 +82,11 @@ public class FlyToLocation implements IClientOutgoingPacket
_flySpeed = flySpeed; _flySpeed = flySpeed;
_flyDelay = flyDelay; _flyDelay = flyDelay;
_animationSpeed = animationSpeed; _animationSpeed = animationSpeed;
if (creature.isPlayer())
{
creature.getActingPlayer().setBlinkActive(true);
}
} }
public FlyToLocation(Creature creature, ILocational dest, FlyType type) public FlyToLocation(Creature creature, ILocational dest, FlyType type)