public void KeyboardMove() { if (!NrTSingleton <NkClientLogic> .Instance.IsMovable()) { return; } if (!this.m_pkChar.IsMovingAnimation()) { return; } NrCharUser nrCharUser = this.m_pkChar as NrCharUser; if (nrCharUser == null || !nrCharUser.IsReady3DModel()) { return; } Nr3DCharActor nr3DCharActor = nrCharUser.Get3DChar() as Nr3DCharActor; if (nr3DCharActor == null) { return; } Transform transform = Camera.main.transform; Vector3 a = transform.TransformDirection(Vector3.forward); a.y = 0f; a = a.normalized; Vector3 a2 = new Vector3(a.z, 0f, -a.x); float axisRaw = NkInputManager.GetAxisRaw("Vertical"); float axisRaw2 = NkInputManager.GetAxisRaw("Horizontal"); Vector3 vector = axisRaw2 * a2 + axisRaw * a; Vector3 vector2 = Vector3.zero; if (vector != Vector3.zero) { float num = 0.3f; vector2 = Vector3.RotateTowards(vector2, vector, num * 0.0174532924f * Time.deltaTime, 1f); if (this.IsMovableArea(this.m_vCharPos.x + vector2.x, this.m_vCharPos.z + vector2.z) != NrCharDefine.eMoveTargetReason.MTR_SUCCESS && !this.FindMovableAreaByKey(ref vector2)) { return; } vector2 = vector2.normalized; } if (vector2 == Vector3.zero) { return; } this.ProcessIncreaseMove(); nr3DCharActor.KeyboardMove(vector2, true); this.SetCharPos(nr3DCharActor.GetRootGameObject()); this.SendCharMovePacketForKeyBoardMove(false); this.m_bArrived = false; this.m_bKeyboardMove = true; this.m_bMouseMove = false; }
public void CameraUpdate(ref NrBattleMap BattleMap) { if (this.m_TargetGo == null) { return; } NrTSingleton <NkBattleCharManager> .Instance.SyncBillboardRotate(); if (this.m_bSetCameraTrigger) { if (Time.time - this.m_fTriggerStartTime < this.m_fActionTime) { Vector3 pos = Vector3.zero; pos = Vector3.Lerp(this.m_veTriggerStartPos, this.m_veTriggerEndPos, (Time.time - this.m_fTriggerStartTime) / this.m_fActionTime); if (this.m_bCalcheight) { this.currentDistance = this.m_TargetGo.transform.position.y; this.desiredDistance = BattleMap.GetBattleMapHeight(pos); pos.y = Mathf.Lerp(this.currentDistance, this.desiredDistance, Time.deltaTime * 4f); } this.SetcameraPos(pos); } else if (Time.time - this.m_fTriggerStartTime > this.m_fDurningTime) { this.m_bSetCameraTrigger = false; this.SetcameraPos(this.m_veTriggerStartPos); } return; } bool flag = false; if (NkInputManager.GetKey(KeyCode.UpArrow) || NkInputManager.GetKey(KeyCode.W)) { flag = true; } if (NkInputManager.GetKey(KeyCode.DownArrow) || NkInputManager.GetKey(KeyCode.S)) { flag = true; } if (NkInputManager.GetKey(KeyCode.LeftArrow) || NkInputManager.GetKey(KeyCode.A)) { flag = true; } if (NkInputManager.GetKey(KeyCode.RightArrow) || NkInputManager.GetKey(KeyCode.D)) { flag = true; } if (NkInputManager.GetKeyUp(KeyCode.RightBracket)) { this.m_fScrollViewSensitive += 0.001f; if (this.m_fScrollViewSensitive < 0f) { this.m_fScrollViewSensitive = 0.01f; } Debug.Log("Set ScrollView Sensitive " + this.m_fScrollViewSensitive); } if (NkInputManager.GetKeyUp(KeyCode.LeftBracket)) { this.m_fScrollViewSensitive -= 0.001f; if (this.m_fScrollViewSensitive > 0.07f) { this.m_fScrollViewSensitive = 0.07f; } Debug.Log("Set ScrollView Sensitive " + this.m_fScrollViewSensitive); } if (!flag && !this.m_bCalcheight) { return; } if (this.m_bScrollView) { return; } if (Camera.main == null) { return; } Transform transform = Camera.main.transform; Vector3 a = transform.TransformDirection(Vector3.forward); a.y = 0f; a = a.normalized; Vector3 normalized = new Vector3(a.z, 0f, -a.x); normalized = normalized.normalized; float d = 0f; float d2 = 0f; if (flag) { d = NkInputManager.GetAxisRaw("Vertical"); d2 = NkInputManager.GetAxisRaw("Horizontal"); } Vector3 vector = d2 * normalized + d * a; Vector3 vector2 = Vector3.zero; if (vector != Vector3.zero) { float num = 0.3f; vector2 = Vector3.RotateTowards(vector2, vector, num * 0.0174532924f * Time.deltaTime, 1f).normalized; } if (vector2 == Vector3.zero && !this.m_bCalcheight) { return; } Vector3 vector3 = Vector3.zero; vector3 = this.m_TargetGo.transform.position + vector2 * Time.deltaTime * this.zoomDampening; if (this.m_TargetGo.transform.position.x < this.m_fMoveLimitX && vector2.x != 0f) { vector3.x = this.m_fMoveLimitX; } if (this.m_TargetGo.transform.position.x > this.m_fMapXSize && vector2.x != 0f) { vector3.x = this.m_fMapXSize; } if (this.m_TargetGo.transform.position.z < this.m_fMoveLimitZ && vector2.z != 0f) { vector3.z = this.m_fMoveLimitZ; } if (this.m_TargetGo.transform.position.z > this.m_fMapZSize && vector2.z != 0f) { vector3.z = this.m_fMapZSize; } if (this.m_bCalcheight) { this.currentDistance = this.m_TargetGo.transform.position.y; this.desiredDistance = BattleMap.GetBattleMapHeight(vector3); vector3.y = Mathf.Lerp(this.currentDistance, this.desiredDistance, Time.deltaTime * 4f); } this.m_TargetGo.transform.position = vector3; }
public void Update() { if (!EventTriggerMiniCamera._bUseControll) { return; } if (NkInputManager.GetKeyUp(KeyCode.KeypadEnter)) { EventTriggerMiniCamera.m_bControllPosition = !EventTriggerMiniCamera.m_bControllPosition; } if (NkInputManager.GetKey(KeyCode.Keypad8)) { if (EventTriggerMiniCamera.m_bControllPosition) { base.gameObject.transform.localPosition += base.gameObject.transform.up.normalized * EventTriggerMiniCamera.m_Reaction; } else { base.gameObject.transform.localEulerAngles += new Vector3(-EventTriggerMiniCamera.m_Reaction, 0f, 0f); } } if (NkInputManager.GetKey(KeyCode.Keypad2)) { if (EventTriggerMiniCamera.m_bControllPosition) { base.gameObject.transform.localPosition -= base.gameObject.transform.up.normalized * EventTriggerMiniCamera.m_Reaction; } else { base.gameObject.transform.localEulerAngles += new Vector3(EventTriggerMiniCamera.m_Reaction, 0f, 0f); } } if (NkInputManager.GetKey(KeyCode.Keypad4)) { if (EventTriggerMiniCamera.m_bControllPosition) { base.gameObject.transform.localPosition -= base.gameObject.transform.right.normalized * EventTriggerMiniCamera.m_Reaction; } else { base.gameObject.transform.localEulerAngles += new Vector3(0f, -EventTriggerMiniCamera.m_Reaction, 0f); } } if (NkInputManager.GetKey(KeyCode.Keypad6)) { if (EventTriggerMiniCamera.m_bControllPosition) { base.gameObject.transform.localPosition += base.gameObject.transform.right.normalized * EventTriggerMiniCamera.m_Reaction; } else { base.gameObject.transform.localEulerAngles += new Vector3(0f, EventTriggerMiniCamera.m_Reaction, 0f); } } if (NkInputManager.GetKey(KeyCode.KeypadPeriod)) { if (EventTriggerMiniCamera.m_bControllPosition) { base.gameObject.transform.localPosition += base.gameObject.transform.forward.normalized * EventTriggerMiniCamera.m_Reaction; } else { base.gameObject.transform.localEulerAngles += new Vector3(0f, 0f, EventTriggerMiniCamera.m_Reaction); } } if (NkInputManager.GetKey(KeyCode.Keypad0)) { if (EventTriggerMiniCamera.m_bControllPosition) { base.gameObject.transform.localPosition -= base.gameObject.transform.forward.normalized * EventTriggerMiniCamera.m_Reaction; } else { base.gameObject.transform.localEulerAngles += new Vector3(0f, 0f, -EventTriggerMiniCamera.m_Reaction); } } if (NkInputManager.GetKey(KeyCode.KeypadPlus)) { EventTriggerMiniCamera.m_Reaction += 0.25f; } if (NkInputManager.GetKey(KeyCode.KeypadMinus)) { EventTriggerMiniCamera.m_Reaction -= 0.25f; } if (NkInputManager.GetMouseButton(0)) { base.gameObject.transform.localEulerAngles += new Vector3(-NkInputManager.GetAxisRaw("Mouse Y"), NkInputManager.GetAxisRaw("Mouse X"), 0f); } if (NkInputManager.GetMouseButton(1)) { base.gameObject.transform.localEulerAngles += new Vector3(0f, 0f, NkInputManager.GetAxisRaw("Mouse X")); } if (NkInputManager.GetAxis("Mouse ScrollWheel") != 0f) { base.gameObject.transform.localPosition -= base.gameObject.transform.forward.normalized * NkInputManager.GetAxis("Mouse ScrollWheel"); } }