/// <summary> /// 游戏中的TimeScale,设置状态,可自动设置TimeScale的值 /// </summary> /// <param name="state">状态</param> public void SetState(TimeScaleState state) { if (state == curTimeScaleState) { return; } preTimeScaleState = curTimeScaleState; switch (state) { case TimeScaleState.TimeScale_Normal: SetValue(1f); break; case TimeScaleState.TimeScale_Double: SetValue(1.5f); break; case TimeScaleState.TimeScale_Triple: SetValue(2f); break; case TimeScaleState.TimeScale_Pause: SetValue(0f); break; case TimeScaleState.TimeScale_Custom: break; default: break; } curTimeScaleState = state; }
void GuideFinghting(GameEvent e) { if (GuideManager.GetInstance().isGuideUser) { if ((int)(e.data) == 100308) { if (GuideManager.GetInstance().GetBackCount(100307)) { mInitSpeed = GameTimeControler.Inst.curTimeScaleState; GameTimeControler.Inst.SetState(TimeScaleState.TimeScale_Pause); // 点击【切换模式】 100308 GuideManager.GetInstance().ShowGuideWithIndex(100308); //开始引导技能释放 关闭Mask SetMaskObjActive(false); } } else if ((int)e.data == 100311) { if (GuideManager.GetInstance().GetBackCount(100310)) { mInitSpeed = GameTimeControler.Inst.curTimeScaleState; GameTimeControler.Inst.SetState(TimeScaleState.TimeScale_Pause); // 点击【切换模式 【 100311 GuideManager.GetInstance().ShowGuideWithIndex(100311); //开始引导技能释放 关闭Mask SetMaskObjActive(false); } } else { Debug.Log(e.data); } } }
private void ForwardFinish() { int max = (int)ExchangeModule.GetMaxTimeScaleState(); TimeScaleState model = (TimeScaleState)Mathf.Min(max, ((int)GameTimeControler.Inst.curTimeScaleState % max + 1)); GameTimeControler.Inst.SetState(model); // 切换纹理 switch (GameTimeControler.Inst.curTimeScaleState) { case TimeScaleState.TimeScale_Double: { m_Speed.text = "x2"; } break; case TimeScaleState.TimeScale_Triple: { m_Speed.text = "x3"; } break; case TimeScaleState.TimeScale_Normal: { m_Speed.text = "x1"; } break; } }
private GameObject mQualityHight; // 高画质 public override void InitUIData() { LoadComponent(); mInitSpeed = GameTimeControler.Inst.curTimeScaleState; GameTimeControler.Inst.SetState(TimeScaleState.TimeScale_Pause); mQualityLow = selfTransform.FindChild("left/Quality/low").gameObject; mQualityHight = selfTransform.FindChild("left/Quality/hight").gameObject; setQualityView(); m_StageTemp = GetCurrentStage(); }
void LateUpdate() { if (isUpdateTime) { setTime(FightControler.Inst.GetRemainingCountTime()); } // 新手引导相关 等两秒后提示引导 if (m_IsGuide) { m_CurTime += Time.deltaTime; if (m_CurTime >= m_AllTime) { m_IsGuide = false; mInitSpeed = GameTimeControler.Inst.curTimeScaleState; GameTimeControler.Inst.SetState(TimeScaleState.TimeScale_Pause); // 新手引导战斗, 战斗教学1-1 100306 - 100307 GuideManager.GetInstance().ShowGuideWithIndex(100306); } } }
public static void ChangeTimeScale(TimeScaleState newState) { _currTimeScaleState = newState; }
void setTimescaleStateBasedOnTime(float p_currentTime) { if (p_currentTime >= m_startTime && p_currentTime < m_endTime) { m_timeScaleState = TimeScaleState.READING_BUFFER; if (rigidbody && m_kinematicWhenReversing) { rigidbody.isKinematic = true; //rigidbody.detectCollisions = false; } } else if (p_currentTime >= m_endTime) // outside buffer, resume realtime { m_timeScaleState = TimeScaleState.WRITING_BUFFER; if (rigidbody && m_kinematicWhenReversing) { rigidbody.isKinematic = false; rigidbody.WakeUp(); //rigidbody.detectCollisions = false; } } else { m_timeScaleState = TimeScaleState.NOT_SPAWNED; } }