aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Weather
diff options
context:
space:
mode:
authorVincent_Michael <Vincent_Michael@gmx.de>2014-01-21 21:57:09 +0100
committerVincent_Michael <Vincent_Michael@gmx.de>2014-01-21 21:58:30 +0100
commit3f99890b129c836cd364169ec4d69620bff0ca82 (patch)
treec71f17ba9f1425ec1044b6dfec60c4e8aa2902a8 /src/server/game/Weather
parent7c4a16e6c2f9cd6faa4d66ade9fa017267310632 (diff)
parent101ac7f5110030ac12fa13f3e9a9d2c671e48734 (diff)
Merge branch 'master' of github.com:TrinityCore/TrinityCore into 4.3.4
Conflicts: src/server/game/Entities/Unit/Unit.cpp src/server/game/Entities/Unit/Unit.h
Diffstat (limited to 'src/server/game/Weather')
-rw-r--r--src/server/game/Weather/Weather.cpp16
-rw-r--r--src/server/game/Weather/WeatherMgr.cpp1
2 files changed, 8 insertions, 9 deletions
diff --git a/src/server/game/Weather/Weather.cpp b/src/server/game/Weather/Weather.cpp
index 2a7e29629ff..79b4fbd8c69 100644
--- a/src/server/game/Weather/Weather.cpp
+++ b/src/server/game/Weather/Weather.cpp
@@ -195,7 +195,6 @@ bool Weather::ReGenerate()
void Weather::SendWeatherUpdateToPlayer(Player* player)
{
WorldPacket data(SMSG_WEATHER, (4+4+4));
-
data << uint32(GetWeatherState()) << (float)m_grade << uint8(0);
player->GetSession()->SendPacket(&data);
}
@@ -203,10 +202,6 @@ void Weather::SendWeatherUpdateToPlayer(Player* player)
/// Send the new weather to all players in the zone
bool Weather::UpdateWeather()
{
- Player* player = sWorld->FindPlayerInZone(m_zone);
- if (!player)
- return false;
-
///- Send the weather packet to all players in this zone
if (m_grade >= 1)
m_grade = 0.9999f;
@@ -216,8 +211,13 @@ bool Weather::UpdateWeather()
WeatherState state = GetWeatherState();
WorldPacket data(SMSG_WEATHER, (4+4+4));
- data << uint32(state) << (float)m_grade << uint8(0);
- player->SendMessageToSet(&data, true);
+ data << uint32(state);
+ data << (float)m_grade;
+ data << uint8(0);
+
+ //- Returns false if there were no players found to update
+ if (!sWorld->SendZoneMessage(m_zone, &data))
+ return false;
///- Log the event
char const* wthstr;
@@ -264,8 +264,8 @@ bool Weather::UpdateWeather()
wthstr = "fine";
break;
}
- TC_LOG_INFO("misc", "Change the weather of zone %u to %s.", m_zone, wthstr);
+ TC_LOG_INFO("misc", "Change the weather of zone %u to %s.", m_zone, wthstr);
sScriptMgr->OnWeatherChange(this, state, m_grade);
return true;
}
diff --git a/src/server/game/Weather/WeatherMgr.cpp b/src/server/game/Weather/WeatherMgr.cpp
index 69dce957558..9faecdf7c99 100644
--- a/src/server/game/Weather/WeatherMgr.cpp
+++ b/src/server/game/Weather/WeatherMgr.cpp
@@ -146,7 +146,6 @@ void LoadWeatherData()
void SendFineWeatherUpdateToPlayer(Player* player)
{
WorldPacket data(SMSG_WEATHER, (4+4+4));
-
data << (uint32)WEATHER_STATE_FINE << (float)0.0f << uint8(0);
player->GetSession()->SendPacket(&data);
}