diff options
| author | _manuel_ <manue.l@live.com.ar> | 2010-03-21 15:22:40 -0300 |
|---|---|---|
| committer | _manuel_ <manue.l@live.com.ar> | 2010-03-21 15:22:40 -0300 |
| commit | e34a7d31347358b298a1d7a36a429eb490c4498b (patch) | |
| tree | 9431f7827117d8e8cd0ea2f745764b94b3588b49 /src/game | |
| parent | a4e98f50d0f18e6ae59145aca31a719ff754c703 (diff) | |
| parent | 2318d74dde1a8ec939a782cf66b31f91a7f83b79 (diff) | |
Merge
--HG--
branch : trunk
Diffstat (limited to 'src/game')
| -rw-r--r-- | src/game/Creature.cpp | 7 | ||||
| -rw-r--r-- | src/game/Creature.h | 3 | ||||
| -rw-r--r-- | src/game/Unit.cpp | 8 |
3 files changed, 11 insertions, 7 deletions
diff --git a/src/game/Creature.cpp b/src/game/Creature.cpp index 8404702f748..e4f3e2e7b89 100644 --- a/src/game/Creature.cpp +++ b/src/game/Creature.cpp @@ -341,9 +341,10 @@ bool Creature::InitEntry(uint32 Entry, uint32 team, const CreatureData *data ) SetFloatValue(UNIT_MOD_CAST_SPEED, 1.0f); - SetSpeed(MOVE_WALK, cinfo->speed ); - SetSpeed(MOVE_RUN, cinfo->speed ); - SetSpeed(MOVE_SWIM, cinfo->speed ); + SetSpeed(MOVE_WALK, cinfo->speed_walk ); + SetSpeed(MOVE_RUN, cinfo->speed_run ); + SetSpeed(MOVE_SWIM, 1.0f); // using 1.0 rate + SetSpeed(MOVE_FLIGHT, 1.0f); // using 1.0 rate SetFloatValue(OBJECT_FIELD_SCALE_X, cinfo->scale); diff --git a/src/game/Creature.h b/src/game/Creature.h index cef677edc29..4d74e03d60f 100644 --- a/src/game/Creature.h +++ b/src/game/Creature.h @@ -88,7 +88,8 @@ struct CreatureInfo uint32 faction_A; uint32 faction_H; uint32 npcflag; - float speed; + float speed_walk; + float speed_run; float scale; uint32 rank; float mindmg; diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index 3d63555ab0b..4f97861c9a1 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -292,6 +292,7 @@ void Unit::SendMonsterMoveWithSpeedToCurrentDestination(Player* player) SendMonsterMoveWithSpeed(x, y, z, 0, player); } + void Unit::SendMonsterMoveWithSpeed(float x, float y, float z, uint32 transitTime, Player* player) { if (!transitTime) @@ -421,8 +422,9 @@ void Unit::SendMonsterMove(float NewPosX, float NewPosY, float NewPosZ, uint32 M data << uint32(MovementFlags); - if (MovementFlags & MONSTER_MOVE_WALK) - moveTime *= 1.05f; + //enable me if things goes wrong or looks ugly, it is however an old hack + //if (MovementFlags & MONSTER_MOVE_WALK) + //moveTime *= 1.05f; data << uint32(moveTime); // Time in between points data << uint32(1); // 1 single waypoint @@ -11744,7 +11746,7 @@ void Unit::UpdateSpeed(UnitMoveType mtype, bool forced) { // Set creature speed rate from CreatureInfo if (GetTypeId() == TYPEID_UNIT) - speed *= this->ToCreature()->GetCreatureInfo()->speed; + speed *= this->ToCreature()->GetCreatureInfo()->speed_walk; // Normalize speed by 191 aura SPELL_AURA_USE_NORMAL_MOVEMENT_SPEED if need // TODO: possible affect only on MOVE_RUN |
