public static AbstractWeatherEvent CreateInstance(WeatherEventType eventType, WeatherEventData weatherEventData) { GameObject gameObject = new GameObject(eventType.ToString()); AbstractWeatherEvent abstractWeatherEvent = AddWeatherComponent(eventType, gameObject); abstractWeatherEvent.WeatherEventData = weatherEventData; return(abstractWeatherEvent); }
private void WeatherEventStarted(StartWeatherEvent weatherEvent) { abstractWeatherEvent = weatherEvent.AbstractWeatherEvent; StartWeather(abstractWeatherEvent.WeatherType, abstractWeatherEvent.WeatherEventData); if (AddWeatherListener) { AddRemoveListener(abstractWeatherEvent.AddListener); } abstractWeatherEvent.AddEndListener(ResetState); }
public StartWeatherEvent(AbstractWeatherEvent abstractWeatherEvent, bool showAnimation = true) { AbstractWeatherEvent = abstractWeatherEvent; ShowAnimation = showAnimation; }
// Weather ends private void ResetState() { abstractWeatherEvent = null; SetToDefault(); }