private void OnRecvPlayerMove(IChannel channel, Message message) { SPlayerMove msg = message as SPlayerMove; NetworkEntity self = networkEntities[msg.ID]; IPlayerBehavior behavior = (IPlayerBehavior)(self.behavior); Vector2 move = new Vector2(msg.move.x, msg.move.y); Vector3 position = new Vector3(msg.pos.x, msg.pos.y, msg.pos.z); Quaternion rotation = new Quaternion(msg.rot.x, msg.rot.y, msg.rot.z, msg.rot.w); switch (msg.state) { case MoveState.BEGIN: { behavior.MoveBegin(move, position, rotation); break; } case MoveState.STEP: { behavior.MoveStep(move, position, rotation); break; } case MoveState.END: { behavior.MoveEnd(move, position, rotation); break; } default: break; } }
/** * @brief 접속 종료 * @param nickName 이름 * @param pos 생성 위치 * @param isPlayer 나 인가 아닌가 */ public void CreateUser(int idx, string nickName, Vector3 pos, MOVE_CONTROL moveC, bool isPlayer) { GameObject obj = Instantiate(playerPrefs, pos, Quaternion.identity) as GameObject; SPlayerMove player = obj.GetComponent <SPlayerMove>(); player.myIdx = idx; player.nickName = nickName; player.isPlayer = isPlayer; player.myMove = moveC; v_user.Add(player); }
private void OnRecvPlayerMove(IChannel channel, Message message) { CPlayerMove request = message as CPlayerMove; Player player = (Player)World.Instance.GetEntity(request.player); player.Position = Entity.V3ToPoint3d(request.pos); SPlayerMove response = new SPlayerMove(); response.ID = request.player; response.state = request.state; response.pos = request.pos; response.rot = request.rot; response.move = request.move; response.state = request.state; player.Broadcast(response, true); }
void Start() { HeroSc = GameObject.Find("PLAYER").GetComponent <SPlayerMove>(); }