/// <summary> /// 摇杆操作 /// </summary> /// <param name="move"></param> void OnJoystickMove(MovingJoystick move) { if (_avatarObj == null) { return; } if (move.joystickName != "New joystick") { return; } _positionX = move.joystickAxis.x; // 获取摇杆偏移摇杆中心的x坐标 _positionY = move.joystickAxis.y; // 获取摇杆偏移摇杆中心的y坐标 if (_bBeforeDragging) { _bBeforeDragging = false; // _avatarObj.ChangeAvatarForward(ComMoveControllerObj.GetFPTransform().forward); _fpChangeAvatarForward = ComMoveControllerObj.GetFPTransform().forward; _fpDragFlag = true; Debug.Log("_bBeforeDragging_bBeforeDragging_bBeforeDragging::" + _fpChangeAvatarForward.ToVector()); } FrameSyncInput.SetFP((byte)E_InputId.E_MOVE_X, _positionX); FrameSyncInput.SetFP((byte)E_InputId.E_MOVE_Y, _positionY); }
public override void OnSyncedInput() { if (_dragging)//拖拽中 { FrameSyncInput.SetBool((byte)E_InputId.E_MOUSE_DRAGGING, _dragging); FrameSyncInput.SetBool((byte)E_InputId.E_MOUSE_DRAG_LEFT, _directorToLeft); FrameSyncInput.SetBool((byte)E_InputId.E_MOUSE_DRAG_RIGHT, _directorToRight); } if (_fpDragEndFlag) //拖拽结束 { FrameSyncInput.SetBool((byte)E_InputId.E_MOUSE_DRAGEND, _fpDragEndFlag); FrameSyncInput.SetBool((byte)E_InputId.E_MOUSE_DRAG_LEFT, false); FrameSyncInput.SetBool((byte)E_InputId.E_MOUSE_DRAG_RIGHT, false); } //如果之前有摄像头拖拽,传递数值 if (_fpDragFlag) { FrameSyncInput.SetFPVector((byte)E_InputId.E_DRAGGING_CAMERA, _fpChangeAvatarForward); // Debug.Log("Input_Input_Input:::DraggingDraggingDraggingDragging + " + _fpChangeAvatarForward.ToVector() + ", datax::" + _positionX + " , _datay::" + _positionY); } //移动 if (_positionX != 0 || _positionY != 0) { FrameSyncInput.SetFP((byte)E_InputId.E_MOVE_X, _positionX); FrameSyncInput.SetFP((byte)E_InputId.E_MOVE_Y, _positionY); // Debug.Log("FP_FP_FP_::move_yyyyyyyyyy::" + _positionX.AsFloat() + ",move_y::" + _positionY.AsFloat()); } //暂停 if (_fpIdleFlag) { FrameSyncInput.SetBool((byte)E_InputId.E_IDEL, _fpIdleFlag); // Debug.Log("Input_Input_Input:::IdelIdelIdelIdelIdelIdelIdelIdel"); } //射击 if (_fpShootDownFlag) { FrameSyncInput.SetBool((byte)E_InputId.E_SHOOT_DOWN, _fpShootDownFlag); } if (_fpShootUpFlag) { FrameSyncInput.SetBool((byte)E_InputId.E_SHOOT_UP, _fpShootUpFlag); } //跳跃 if (_fpJumpFlag) { FrameSyncInput.SetBool((byte)E_InputId.E_JUMP, _fpJumpFlag); // Debug.Log("Input_Input_Input:::JUMPJUMPJUMPJUMPJUMPJUMPJUMP"); } //改变模型格局 if (_fpModelChangeState > 0) { FrameSyncInput.SetInt((byte)E_InputId.E_CHANGE_MODEL, _fpModelChangeState); } //更换装备 if (_fpReplaceWeapon) { FrameSyncInput.SetInt((byte)E_InputId.E_REPLACE_WEAPON, GameManager.Instance.CurWeapon); } //扔手雷 if (_fpThrowGrenadeFlag) { FrameSyncInput.SetBool((byte)E_InputId.E_THROW_GRENADE, _fpThrowGrenadeFlag); } //FrameSyncInput.SetFPVector((byte)E_InputId.E_SHOOT_FORWARD, _fpBeforeShootForward); //FrameSyncInput.SetFPVector((byte)E_InputId.E_CHANGE_AVATAR_FORWARD, _fpChangeAvatarForward); //重置数值 _fpIdleFlag = false; _fpModelChangeState = 0; _fpJumpFlag = false; _fpReplaceWeapon = false; _fpThrowGrenadeFlag = false; _fpShootUpFlag = false; _fpDragFlag = false; _fpDragEndFlag = false; }