aboutsummaryrefslogtreecommitdiff
path: root/src/game/Pet.cpp
diff options
context:
space:
mode:
authormegamage <none@none>2008-12-25 10:35:24 -0600
committermegamage <none@none>2008-12-25 10:35:24 -0600
commit7438fc6dd74fc8c971e66660bbc63b6680a16f5c (patch)
tree162408b260bc7759109cb292385026057c02d809 /src/game/Pet.cpp
parentf481c04eac5514c5446a04c982b4318dda62b2c6 (diff)
*Make the pets of shaman and druid stronger and gain bonus damage from owners' spell damage.
--HG-- branch : trunk
Diffstat (limited to 'src/game/Pet.cpp')
-rw-r--r--src/game/Pet.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/game/Pet.cpp b/src/game/Pet.cpp
index 836ee6d8459..72d9f725a3b 100644
--- a/src/game/Pet.cpp
+++ b/src/game/Pet.cpp
@@ -1152,6 +1152,25 @@ bool Pet::InitStatsForLevel(uint32 petlevel)
SetUInt32Value(UNIT_FIELD_PETEXPERIENCE, 0);
SetUInt32Value(UNIT_FIELD_PETNEXTLEVELEXP, 1000);
+ switch(GetEntry())
+ {
+ case 1964: //force of nature
+ SetCreateHealth(30 + 30*petlevel);
+ SetBaseWeaponDamage(BASE_ATTACK, MINDAMAGE, float(petlevel * 2.5f - (petlevel / 2)));
+ SetBaseWeaponDamage(BASE_ATTACK, MAXDAMAGE, float(petlevel * 2.5f + (petlevel / 2)));
+ break;
+ case 15352: //earth elemental 36213
+ SetCreateHealth(100 + 120*petlevel);
+ SetBaseWeaponDamage(BASE_ATTACK, MINDAMAGE, float(petlevel - (petlevel / 4)));
+ SetBaseWeaponDamage(BASE_ATTACK, MAXDAMAGE, float(petlevel + (petlevel / 4)));
+ break;
+ case 15438: //fire elemental
+ SetCreateHealth(30 + 40*petlevel);
+ SetCreateMana(28 + 10*petlevel);
+ SetBaseWeaponDamage(BASE_ATTACK, MINDAMAGE, float(petlevel * 4 - petlevel));
+ SetBaseWeaponDamage(BASE_ATTACK, MAXDAMAGE, float(petlevel * 4 + petlevel));
+ break;
+ default:
SetCreateMana(28 + 10*petlevel);
SetCreateHealth(28 + 30*petlevel);
@@ -1161,6 +1180,8 @@ bool Pet::InitStatsForLevel(uint32 petlevel)
SetBaseWeaponDamage(BASE_ATTACK, MINDAMAGE, float(petlevel - (petlevel / 4)));
//damage range is then petlevel / 2
SetBaseWeaponDamage(BASE_ATTACK, MAXDAMAGE, float(petlevel + (petlevel / 4)));
+ break;
+ }
break;
default:
sLog.outError("Pet have incorrect type (%u) for levelup.", getPetType());