package net.scapeemulator.game.msg.decoder;
import java.io.IOException;
import net.scapeemulator.game.msg.MessageDecoder;
import net.scapeemulator.game.msg.impl.camera.CameraAngleMessage;
import net.scapeemulator.game.net.game.DataOrder;
import net.scapeemulator.game.net.game.DataTransformation;
import net.scapeemulator.game.net.game.DataType;
import net.scapeemulator.game.net.game.GameFrame;
import net.scapeemulator.game.net.game.GameFrameReader;
public final class CameraAngleMessageDecoder extends MessageDecoder<CameraAngleMessage> {
public CameraAngleMessageDecoder() {
super(21);
}
@Override
public CameraAngleMessage decode(GameFrame frame) throws IOException {
GameFrameReader reader = new GameFrameReader(frame);
int pitch = (int) reader.getUnsigned(DataType.SHORT, DataTransformation.ADD);
int yaw = (int) reader.getUnsigned(DataType.SHORT, DataOrder.LITTLE);
return new CameraAngleMessage(yaw, pitch);
}
}