示例#1
0
 /// <summary>
 /// Writes weather state into network update message.
 /// </summary>
 /// <param name="message">The message to write weather state to.</param>
 public void WriteWeather(Network.Messages.WeatherUpdateMessage message)
 {
     message.weatherType      = CurrentWeather;
     message.weatherPos       = WeatherPos;
     message.weatherPosSecond = WeatherPosSecond;
     message.weatherOffset    = WeatherOffset;
     message.weatherRot       = WeatherRot;
 }
示例#2
0
        /// <summary>
        /// Set current weather from network message.
        /// </summary>
        /// <param name="message">Message to set weather state from.</param>
        public void SetWeather(Network.Messages.WeatherUpdateMessage message)
        {
            if (message.weatherType != CurrentWeather)
            {
                switch (message.weatherType)
                {
                case Network.Messages.WeatherType.RAIN:
                    weatherSystemFSM.SendEvent(RAIN_ENAME);
                    break;

                case Network.Messages.WeatherType.THUNDER:
                    weatherSystemFSM.SendEvent(THUNDER_ENAME);
                    break;

                case Network.Messages.WeatherType.SUNNY:
                    weatherSystemFSM.SendEvent(SUNNY_ENAME);
                    break;
                }
            }
            WeatherPos       = message.weatherPos;
            WeatherPosSecond = message.weatherPosSecond;
            WeatherOffset    = message.weatherOffset;
            WeatherRot       = message.weatherRot;
        }