public void SetLockCamera(float angle) { if (!Mathf.Approximately(angle, -1f)) { angle %= 360f; mCameraView = ECameraView.LockView; mouseX = angle; } else { mCameraView = ECameraView.Lock2P5View; } }
/// <summary> /// 震动摄像机 /// </summary> /// <param name="force">震动幅度</param> /// <param name="duration">持续时间</param> public void Shake(float xForce, float yForce, float zForce, float duration) { if (mainCamera == null || mainCamera.Equals(null)) { return; } //Action ac = new Action(onCameraShakeEnd); Hashtable ht = new Hashtable(); ht.Add("time", duration); ht.Add("amount", new Vector3(xForce, yForce, zForce)); Action action = onCameraShakeEnd; ht.Add("oncomplete", action); //(iTween.CompleteMethod)onCameraShakeEnd); ht.Add("islocal", true); iTween.ShakePosition(mainCamera.gameObject, ht); //iTween.ShakePosition(mainCamera.gameObject, new Vector3(xForce, yForce, zForce), duration); tempCameraView = cameraView; //cameraView = ECameraView.LockView; }