void ReceiveData(byte[] data) { ByteArray byteArray = new ByteArray(data, (short)data.Length); ReceiveDataType type = (ReceiveDataType)byteArray.readChar(); ReceiveData receiveData = new ReceiveData(); switch (type) { case ReceiveDataType.Response: checkConfirm(byteArray.readInt(), byteArray.readChar()); break; case ReceiveDataType.Transform: receiveData.cmd = type; receiveData.transform = ReceiveTransformData.readFromBytes(byteArray.readBytes()); callback(receiveData); break; case ReceiveDataType.Action: receiveData.cmd = type; SendResponse(byteArray.readInt()); receiveData.action = ReceiveActionData.readFromBytes(byteArray.readBytes()); callback(receiveData); break; case ReceiveDataType.State: receiveData.cmd = type; SendResponse(byteArray.readInt()); receiveData.state = ReceiveStateData.readFromBytes(byteArray.readBytes()); callback(receiveData); break; } }
public void DispatchState(ReceiveStateData data) { if (data.fd == GameGlobalData.fd) { DispatchPlayerState(data); } else { DispatchRobotState(data); } }
public static ReceiveStateData readFromBytes(byte[] bytes) { ByteArray array = new ByteArray(bytes, (short)bytes.Length); ReceiveStateData data = new ReceiveStateData(); data.fd = array.readInt(); data.state = array.readChar(); if (data.state == (char)PlayerState.Trap) { data.trapData = new ReceiveTrapData(); data.trapData.trapLevel = array.readChar(); } return(data); }
public void ReceiveState(ReceiveStateData stateData) { switch ((PlayerState)stateData.state) { case PlayerState.Trap: if (stateData.trapData.trapLevel == (char)TrapLevel.Trap1) { animatorController.AcceptSpecialState(PlayerDirection.Down, PlayerState.Trap); } break; case PlayerState.Save: animatorController.AcceptSpecialState(PlayerDirection.Down, PlayerState.Save); break; case PlayerState.Death: animatorController.AcceptSpecialState(PlayerDirection.Down, PlayerState.Death); break; } }
public void DispatchRobotState(ReceiveStateData data) { RobotInputController robot = GameGlobalData.robotList[data.fd]; robot.ReceiveState(data); }
public void DispatchPlayerState(ReceiveStateData data) { }