void Update() { Character.Update(); if (MYXZInputManager.Instance.GetKeyDown(KeyCode.Escape)) { EscSignal.Dispatch(); } mTimer += Time.deltaTime; if (mTimer > 60) //测试使用,每60s随机变换一次天气 { WeatherSystem.ChangeWeather(CurrentSceneWeather[Random.Range(0, CurrentSceneWeather.Length)]); mTimer = 0; } if (MYXZInputManager.Instance.GetKeyDown(KeyCode.Alpha1)) { UseSkillSignal.Dispatch(KeyCode.Alpha1); } }
public void ChangeWeather(WeatherType weather) { switch (weather) { case WeatherType.Foggy: { weatherSys.ChangeWeather(1); ClearState(WeatherType.Foggy); if (!fog.isPlaying) { fog.Play(); } break; } case WeatherType.Rain: { weatherSys.ChangeWeather(12); //rain.gameObject.SetActive(true); ClearState(WeatherType.Rain); if (!rain.isPlaying) { rain.Play(); NotificationCenter.DefaultCenter().PostNotification(this, "STARTRAIN"); } break; } case WeatherType.Sunny: { weatherSys.ChangeWeather(8); ClearState(WeatherType.Sunny); break; } case WeatherType.FallLeaves: { weatherSys.ChangeWeather(13); ClearState(WeatherType.FallLeaves); if (!leaves.isPlaying) { leaves.Play(); } break; } case WeatherType.Snow: { weatherSys.ChangeWeather(2); ClearState(WeatherType.Snow); if (!snow.isPlaying) { snow.Play(); } break; } case WeatherType.Bugs: { weatherSys.ChangeWeather(10); ClearState(WeatherType.Bugs); if (bugs.isPaused) { bugs.Play(); } break; } default: { break; } } }