package net.scapeemulator.game.update; import net.scapeemulator.game.model.Position; import net.scapeemulator.game.model.npc.NPC; import net.scapeemulator.game.msg.impl.NpcUpdateMessage; import net.scapeemulator.game.net.game.DataTransformation; import net.scapeemulator.game.net.game.DataType; import net.scapeemulator.game.net.game.GameFrameBuilder; public class TurnToPositionNpcBlock extends NpcBlock { private final Position position; public TurnToPositionNpcBlock(NPC npc) { super(0x200); this.position = npc.getTurnToPosition(); } @Override public void encode(NpcUpdateMessage message, GameFrameBuilder builder) { // The measure is in half tiles, you must add a half tile because the player is located on the middle of a tile builder.put(DataType.SHORT, DataTransformation.ADD, position.getX() * 2 + 1); builder.put(DataType.SHORT, position.getY() * 2 + 1); } }