aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/game/Entities/Vehicle/Vehicle.cpp59
1 files changed, 29 insertions, 30 deletions
diff --git a/src/server/game/Entities/Vehicle/Vehicle.cpp b/src/server/game/Entities/Vehicle/Vehicle.cpp
index 67d8b4ce92c..818cbd67904 100644
--- a/src/server/game/Entities/Vehicle/Vehicle.cpp
+++ b/src/server/game/Entities/Vehicle/Vehicle.cpp
@@ -61,7 +61,6 @@ Vehicle::Vehicle(Unit *unit, VehicleEntry const *vehInfo) : me(unit), m_vehicleI
default:
break;
}
- ASSERT(!m_Seats.empty());
}
Vehicle::~Vehicle()
@@ -72,39 +71,39 @@ Vehicle::~Vehicle()
void Vehicle::Install()
{
- if (Creature *cre = dynamic_cast<Creature*>(me))
+ if (Creature *pCreature = me->ToCreature())
{
- if (m_vehicleInfo->m_powerType == POWER_STEAM)
+ switch (m_vehicleInfo->m_powerType)
{
- me->setPowerType(POWER_ENERGY);
- me->SetMaxPower(POWER_ENERGY, 100);
- }
- else if (m_vehicleInfo->m_powerType == POWER_PYRITE)
- {
- me->setPowerType(POWER_ENERGY);
- me->SetMaxPower(POWER_ENERGY, 50);
- }
- else
- {
- for (uint32 i = 0; i < MAX_SPELL_VEHICLE; ++i)
- {
- if (!cre->m_spells[i])
- continue;
-
- SpellEntry const *spellInfo = sSpellStore.LookupEntry(cre->m_spells[i]);
- if (!spellInfo)
- continue;
-
- if (spellInfo->powerType == POWER_MANA)
- break;
-
- if (spellInfo->powerType == POWER_ENERGY)
+ case POWER_STEAM:
+ me->setPowerType(POWER_ENERGY);
+ me->SetMaxPower(POWER_ENERGY, 100);
+ break;
+ case POWER_PYRITE:
+ me->setPowerType(POWER_ENERGY);
+ me->SetMaxPower(POWER_ENERGY, 50);
+ break;
+ default:
+ for (uint32 i = 0; i < MAX_SPELL_VEHICLE; ++i)
{
- me->setPowerType(POWER_ENERGY);
- me->SetMaxPower(POWER_ENERGY, 100);
- break;
+ if (!pCreature->m_spells[i])
+ continue;
+
+ SpellEntry const *spellInfo = sSpellStore.LookupEntry(pCreature->m_spells[i]);
+ if (!spellInfo)
+ continue;
+
+ if (spellInfo->powerType == POWER_MANA)
+ break;
+
+ if (spellInfo->powerType == POWER_ENERGY)
+ {
+ me->setPowerType(POWER_ENERGY);
+ me->SetMaxPower(POWER_ENERGY, 100);
+ break;
+ }
}
- }
+ break;
}
}