Ejemplo n.º 1
0
        /// <summary>
        /// Displays weather for the map.
        /// </summary>
        /// <param name="player">The player to display the weather for.</param>
        public void DisplayWeather(Models.Entities.Player player)
        {
            if (Map.Weather == null)
            {
                var weatherPacket = new Models.Packets.Location.WeatherPacket
                {
                    Clear = true
                };

                player.ClientSocket.Send(weatherPacket);

                player.ClientSocket.Send(new Models.Packets.Client.DataExchangePacket
                {
                    ExchangeType = Enums.ExchangeType.MapARGB,
                    ClientId     = player.ClientId,
                    Data1        = 0
                });
            }
            else
            {
                var weatherPacket = new Models.Packets.Location.WeatherPacket
                {
                    Weather = Map.Weather
                };
                var showDark =
                    (Map.Weather.WeatherType == Enums.WeatherType.Rain || Map.Weather.WeatherType == Enums.WeatherType.RainWind);

                player.ClientSocket.Send(weatherPacket);

                if (showDark)
                {
                    player.ClientSocket.Send(new Models.Packets.Client.DataExchangePacket
                    {
                        ExchangeType = Enums.ExchangeType.MapARGB,
                        ClientId     = player.ClientId,
                        Data1        = 5855577
                    });
                }
                else
                {
                    player.ClientSocket.Send(new Models.Packets.Client.DataExchangePacket
                    {
                        ExchangeType = Enums.ExchangeType.MapARGB,
                        ClientId     = player.ClientId,
                        Data1        = 0
                    });
                }
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Displays weather for all players in the map.
        /// </summary>
        protected void DisplayWeather()
        {
            if (Map.Weather == null)
            {
                var weatherPacket = new Models.Packets.Location.WeatherPacket
                {
                    Clear = true
                };

                foreach (var mapObject in Map.MapObjects.Values)
                {
                    var player = mapObject as Models.Entities.Player;
                    if (player != null && player.LoggedIn)
                    {
                        player.ClientSocket.Send(weatherPacket);

                        player.ClientSocket.Send(new Models.Packets.Client.DataExchangePacket
                        {
                            ExchangeType = Enums.ExchangeType.MapARGB,
                            ClientId     = player.ClientId,
                            Data1        = 0
                        });
                    }
                }
            }
            else
            {
                var weatherPacket = new Models.Packets.Location.WeatherPacket
                {
                    Weather = Map.Weather
                };
                var showDark =
                    (Map.Weather.WeatherType == Enums.WeatherType.Rain || Map.Weather.WeatherType == Enums.WeatherType.RainWind);

                foreach (var mapObject in Map.MapObjects.Values)
                {
                    var player = mapObject as Models.Entities.Player;
                    if (player != null && player.LoggedIn)
                    {
                        player.ClientSocket.Send(weatherPacket);

                        if (showDark)
                        {
                            player.ClientSocket.Send(new Models.Packets.Client.DataExchangePacket
                            {
                                ExchangeType = Enums.ExchangeType.MapARGB,
                                ClientId     = player.ClientId,
                                Data1        = 5855577
                            });
                        }
                        else
                        {
                            player.ClientSocket.Send(new Models.Packets.Client.DataExchangePacket
                            {
                                ExchangeType = Enums.ExchangeType.MapARGB,
                                ClientId     = player.ClientId,
                                Data1        = 0
                            });
                        }
                    }
                }
            }
        }