Browse Source

fix location desync caused by power casting

lakebane
FatBoy-DOTC 3 weeks ago
parent
commit
3561564f8c
  1. 3
      src/engine/gameManager/MovementManager.java
  2. 4
      src/engine/gameManager/PowersManager.java

3
src/engine/gameManager/MovementManager.java

@ -107,6 +107,9 @@ public enum MovementManager { @@ -107,6 +107,9 @@ public enum MovementManager {
// ((Mob)toMove).updateLocation();
// get start and end locations for the move
Vector3fImmutable startLocation = new Vector3fImmutable(msg.getStartLat(), msg.getStartAlt(), msg.getStartLon());
//if(toMove.isMoving()){
// startLocation = toMove.getMovementLoc();
//}
Vector3fImmutable endLocation = new Vector3fImmutable(msg.getEndLat(), msg.getEndAlt(), msg.getEndLon());
// if (toMove.getObjectType() == GameObjectType.PlayerCharacter)

4
src/engine/gameManager/PowersManager.java

@ -172,8 +172,8 @@ public enum PowersManager { @@ -172,8 +172,8 @@ public enum PowersManager {
if(!pc.isFlying() && powersBaseByToken.get(msg.getPowerUsedID()) != null && powersBaseByToken.get(msg.getPowerUsedID()).isSpell) //cant be sitting if flying
CombatManager.toggleSit(false,origin);
if(pc.isMoving())
pc.stopMovement(pc.getMovementLoc());
//if(pc.isMoving())
//pc.stopMovement(pc.getMovementLoc());
if(msg.getPowerUsedID() != 421084024 && origin.getPlayerCharacter().getPromotionClassID() != 2513) {
if (!origin.getPlayerCharacter().getPowers().containsKey(msg.getPowerUsedID())) {
Logger.error(origin.getPlayerCharacter().getFirstName() + " attempted to cast a power they do not have");

Loading…
Cancel
Save