Thread: Mage Pet fixes
View Single Post
  #5  
Old 06-10-2003, 05:11 AM
gej302
Sarnak
 
Join Date: May 2003
Location: Silverfist
Posts: 42
Default Diff this time

ok from cvs diff -uBb spells.cpp
compiles makes etc. but I appear to have deleted a line when re-merging the code. between the last normal pet and the Epic pet, need a "break;" statement. nothing like summoning up your level 4 pet and having a 6th level epic pet with earth pet skin.

Code:
Index: spells.cpp
===================================================================
RCS file: /cvsroot/eqemu/NightDumps/Source/zone/spells.cpp,v
retrieving revision 1.1.1.4
diff -u -B -b -r1.1.1.4 spells.cpp
--- spells.cpp  7 Jun 2003 15:53:04 -0000       1.1.1.4
+++ spells.cpp  10 Jun 2003 17:08:00 -0000
@@ -3489,42 +3489,154 @@
  * will stay on 4. Also I may want to note that even though pet
  * ranges and types are reserved, it doesn't mean they will be used,
  * however please respect the reserved spots.  Thanks!
-TODO: Define specifics for mage pets. - Make anything missing on this list ^_^
 */
-       //Baron-Sprite:  Mage pets have been hax0red for now.
+//Bentareth - Fixing Mage pets with data from MagesCompendium
        if (strncmp(pettype, "SumEarthR", 9) == 0) { //Baron-Sprite: This Pettype is reserved to 0. ALSO 74-87.
                int8 tmp = atoi(&pettype[9]);
                if (tmp >= 2 && tmp <= 15) {
-                       MakePet(((int)(2 + ((tmp-2) * 3.5) + (rand()%3))),
-                    0, 75, 0, 0, 4 + (((float)(tmp - 2) / 14) * 3),1);
+                   switch (tmp) {
+                     case  2: MakePet(6, 1, 75, 0, 74,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  3: MakePet(9, 1, 75, 0, 75,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  4: MakePet(12, 1, 75, 0, 76,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  5: MakePet(15, 1, 75, 0, 77,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  6: MakePet(18, 1, 75, 0, 78,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  7: MakePet(21, 1, 75, 0, 79,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  8: MakePet(25, 1, 75, 0, 80,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  9: MakePet(29, 1, 75, 0, 81,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 10: MakePet(33, 1, 75, 0, 82,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 11: MakePet(37, 1, 75, 0, 83,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 12: MakePet(41, 1, 75, 0, 84,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 13: MakePet(45, 1, 75, 0, 85,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 14: MakePet(48, 1, 75, 0, 86,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 15: MakePet(60, 1, 75, 0, 87,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                  } //switch
         } else {
                        Message(0, "Error: Unknown Earth Pet formula");
                }
     } else if (strncmp(pettype, "SumFireR", 8) == 0) { //Baron-Sprite: This Pettype is reserved to 1. ALSO 88-101.
                int8 tmp = atoi(&pettype[8]);
                if (tmp >= 2 && tmp <= 15) {
-                       MakePet(((int)(4 + ((tmp-2) * 3.5) + (rand()%3))),
-                    0, 75, 1, 0, 4 + (((float)(tmp - 2) / 14) * 3),1);
+                  switch (tmp) {
+                     case  2: MakePet(6, 1, 75, 1, 88,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  3: MakePet(9, 1, 75, 1, 89,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  4: MakePet(12, 1, 75, 1, 90,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  5: MakePet(15, 1, 75, 1, 91,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  6: MakePet(18, 1, 75, 1, 92,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  7: MakePet(21, 1, 75, 1, 93,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  8: MakePet(25, 1, 75, 1, 94,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  9: MakePet(29, 1, 75, 1, 95,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 10: MakePet(33, 1, 75, 1, 96,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 11: MakePet(37, 1, 75, 1, 97,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 12: MakePet(41, 1, 75, 1, 98,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 13: MakePet(45, 12, 75, 1, 99,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 14: MakePet(48, 12, 75, 1, 100,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 15: MakePet(60, 12, 75, 1, 101,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                  }
+
         } else {
                        Message(0, "Error: Unknown Fire Pet formula");
                }
     } else if (strncmp(pettype, "SumAirR", 7) == 0) { //Baron-Sprite: This Pettype is reserved to 3. ALSO 60-73.
                int8 tmp = atoi(&pettype[7]);
         if (tmp >= 2 && tmp <= 15) {
-                       MakePet(((int)(3 + ((tmp-2) * 3.5) + (rand()%3))),
-                    0, 75, 3, 0, 4 + (((float)(tmp - 2) / 14) * 3),1);
+                   switch (tmp) {
+                     case  2: MakePet(6, 1, 75, 3, 60,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  3: MakePet(9, 1, 75, 3, 61,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  4: MakePet(12, 1, 75, 3, 62,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  5: MakePet(15, 1, 75, 3, 63,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  6: MakePet(18, 1, 75, 3, 64,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  7: MakePet(21, 1, 75, 3, 65,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  8: MakePet(25, 1, 75, 3, 66,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  9: MakePet(29, 1, 75, 3, 67,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 10: MakePet(33, 1, 75, 3, 68,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 11: MakePet(37, 1, 75, 3, 69,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 12: MakePet(41, 1, 75, 3, 70,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 13: MakePet(45, 7, 75, 3, 71,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 14: MakePet(48, 7, 75, 3, 72,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 15: MakePet(60, 7, 75, 3, 73,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                  }
         } else {
                        Message(0, "Error: Unknown Air Pet formula");
                }
     } else if (strncmp(pettype, "SumWaterR", 9) == 0) { //Baron-Sprite: This Pettype is reserved to 2. ALSO 102-115.
                int8 tmp = atoi(&pettype[9]);
                if (tmp >= 2 && tmp <= 15) {
-                       MakePet(((int)(3 + ((tmp-2) * 3.5) + (rand()%3))),
-                    0, 75, 2, 0, 4 + (((float)(tmp - 2) / 14) * 3),1);
+                   switch (tmp) {
+                     case  2: MakePet(6, 1, 75, 2, 102,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  3: MakePet(9, 1, 75, 2, 103,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  4: MakePet(12, 1, 75, 2, 104,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  5: MakePet(15, 1, 75, 2, 105,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  6: MakePet(18, 1, 75, 2, 106,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  7: MakePet(21, 1, 75, 2, 107,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  8: MakePet(25, 1, 75, 2, 108,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case  9: MakePet(29, 1, 75, 2, 109,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 10: MakePet(33, 1, 75, 2, 110,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 11: MakePet(37, 1, 75, 2, 111,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 12: MakePet(41, 1, 75, 2, 112,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 13: MakePet(45, 9, 75, 2, 113,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 14: MakePet(48, 9, 75, 2, 114,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                     case 15: MakePet(60, 9, 75, 2, 115,4 + (((float)(tmp - 2) / 14) * 3), 1);
+                              break;
+                  }
         } else {
                        Message(0, "Error: Unknown Water Pet formula");
                }
-    } else if (strncmp(pettype, "Familiar1",9) == 0) { // neotokyo: reserved type 217 for familiars
+//end Bentareth fix    } else if (strncmp(pettype, "Familiar1",9) == 0) { // neotokyo: reserved type 217 for familiars
         MakePet(27,1,46,1,120,3,217); //Baron-Sprite: This Pettype is reserved to 120-124.
     } else if (strncmp(pettype, "Familiar2",9) == 0) {
         MakePet(47,1,46,1,121,3,217);
@@ -3827,7 +3939,7 @@
        npc_type->max_hp = CalcPetHp(npc_type->level, npc_type->class_);
        npc_type->cur_hp = npc_type->max_hp;
        npc_type->fixedZ = 1;
-       int pettype = in_pettype; //Baron-Sprite: Needed for necro pet types.
+       int pettype = in_pettype; //Baron-Sprite: Needed for necro pet types.(Mages too - Bentareth)
        int yourlevel = this->GetLevel();

        switch(type) {
@@ -3843,18 +3955,385 @@
                npc_type->max_hp = 1000;
                break;
        }
-       case 1: { //Baron-Sprite:  Gay Mage Pets.  Will make them real once I am done moving.
-                       npc_type->max_hp = ((yourlevel * 5) * 5);
-                       npc_type->cur_hp = ((yourlevel * 5) * 5);
-                       npc_type->min_dmg = (yourlevel / 2);
-                       npc_type->max_dmg = ((yourlevel / 2) + 7);
+       case 1: { //Bentareth: Mage pets, as close live as I can find, need spell procs added
+                 //2 types of procs, last 3 in each category does a new type of proc
+                 //Air and earth do damage ~50 hp, water does double previous, and fire needs several wizard spells added
+                       npc_type->hp_regen = 6; //default case (true until lvl 39 pet)
+                       switch(pettype) {
+                         case 60: //Air pets begin
+                               npc_type->max_hp   = 75;
+                               npc_type->cur_hp   = 75;
+                               npc_type->min_dmg  = 6;
+                               npc_type->max_dmg  = 12;
                        break;
-       }
-       case 15: { // Mage Epic Pet
-                       npc_type->max_hp = 2200;
-                       npc_type->cur_hp = 2200;
-                       npc_type->min_dmg = 1;
+                          case 61:
+                                npc_type->max_hp   = 175;
+                                npc_type->cur_hp   = 175;
+                                npc_type->min_dmg  = 9;
+                                npc_type->max_dmg  = 16;
+                                break;
+                          case 62:
+                                npc_type->max_hp   = 230;
+                                npc_type->cur_hp   = 230;
+                                npc_type->min_dmg  = 11;
+                                npc_type->max_dmg  = 18;
+                                break;
+                          case 63:
+                                npc_type->max_hp  = 360;
+                                npc_type->cur_hp  = 360;
+                                npc_type->min_dmg = 13;
+                                npc_type->max_dmg = 20;
+                                break;
+                          case 64:
+                                npc_type->max_hp  = 460;
+                                npc_type->cur_hp  = 460;
+                                npc_type->min_dmg = 15;
+                                npc_type->max_dmg = 22;
+                                break;
+                          case 65:
+                                npc_type->max_hp  = 580;
+                                npc_type->cur_hp  = 580;
+                                npc_type->min_dmg = 17;
+                                npc_type->max_dmg = 26;
+                                break;
+                          case 66:
+                                npc_type->max_hp  = 700;
+                                npc_type->cur_hp  = 700;
+                                npc_type->min_dmg = 20;
+                                npc_type->max_dmg = 28;
+                                break;
+                          case 67:
+                                npc_type->max_hp  = 800;
+                                npc_type->cur_hp  = 800;
+                                npc_type->min_dmg = 24;
+                                npc_type->max_dmg = 34;
+                               break;
+                          case 68:
+                                npc_type->max_hp   = 1015;
+                                npc_type->cur_hp   = 1015;
+                                npc_type->min_dmg  = 28;
+                                npc_type->max_dmg  = 40;
+                                npc_type->hp_regen = 30;
+                                break;
+                          case 69:
+                                npc_type->max_hp  = 1225;
+                                npc_type->cur_hp  = 1225;
+                                npc_type->min_dmg = 34;
+                                npc_type->max_dmg = 48;
+                                npc_type->hp_regen = 30;
+                                break;
+                          case 70:
+                                npc_type->max_hp  = 2205;
+                                npc_type->cur_hp  = 2205;
+                                npc_type->min_dmg = 38;
+                                npc_type->max_dmg = 56;
+                                npc_type->hp_regen = 30;
+                                break;
+                          case 71:  //from here in need to do damage proc
+                                npc_type->max_hp  = 2410;
+                                npc_type->cur_hp  = 2410;
+                                npc_type->min_dmg = 40;
+                                npc_type->max_dmg = 56;
+                                npc_type->hp_regen = 30;
+                                break;
+                          case 72:
+                                npc_type->max_hp  = 2700;
+                                npc_type->cur_hp  = 2700;
+                                npc_type->min_dmg = 50;
+                                npc_type->max_dmg = 68;
+                                npc_type->hp_regen = 30;
+                                break;
+                          case 73:
+                                sprintf(npc_type->npc_attacks, "E");
+                               npc_type->max_hp  = 3800;
+                                npc_type->cur_hp  = 3800;
+                                npc_type->min_dmg = 70;
+                                npc_type->max_dmg = 83;
+                                npc_type->hp_regen = 100;
+                                break;
+                       //End of Air Pets, Begin Earth
+                          case 74:
+                                npc_type->max_hp   = 95;
+                                npc_type->cur_hp   = 95;
+                                npc_type->min_dmg  = 6;
+                                npc_type->max_dmg  = 12;
+                                break;
+                          case 75:
+                                npc_type->max_hp   = 250;
+                                npc_type->cur_hp   = 250;
+                                npc_type->min_dmg  = 9;
+                                npc_type->max_dmg  = 16;
+                                break;
+                          case 76:
+                                npc_type->max_hp   = 350;
+                                npc_type->cur_hp   = 350;
+                                npc_type->min_dmg  = 11;
+                                npc_type->max_dmg  = 18;
+                                break;
+                          case 77:
+                                npc_type->max_hp  = 520;
+                                npc_type->cur_hp  = 520;
+                                npc_type->min_dmg = 13;
+                                npc_type->max_dmg = 20;
+                                break;
+                          case 78:
+                                npc_type->max_hp  = 675;
+                                npc_type->cur_hp  = 675;
+                                npc_type->min_dmg = 15;
+                                npc_type->max_dmg = 22;
+                                break;
+                          case 79:
+                                npc_type->max_hp  = 830;
+                                npc_type->cur_hp  = 830;
+                                npc_type->min_dmg = 17;
+                                npc_type->max_dmg = 26;
+                                break;
+                          case 80:
+                                npc_type->max_hp  = 1000;
+                                npc_type->cur_hp  = 1000;
+                                npc_type->min_dmg = 20;
+                                npc_type->max_dmg = 28;
+                                break;
+                          case 81:
+                                npc_type->max_hp  = 1150;
+                                npc_type->cur_hp  = 1150;
+                                npc_type->min_dmg = 24;
+                                npc_type->max_dmg = 34;
+                               break;
+                          case 82:
+                                npc_type->max_hp   = 1450;
+                                npc_type->cur_hp   = 1450;
+                                npc_type->min_dmg  = 28;
+                                npc_type->max_dmg  = 40;
+                                npc_type->hp_regen = 30;
+                                break;
+                          case 83:
+                                npc_type->max_hp  = 1750;
+                                npc_type->cur_hp  = 1750;
+                                npc_type->min_dmg = 34;
+                                npc_type->max_dmg = 48;
+                                npc_type->hp_regen = 30;
+                                break;
+                          case 84:
+                                npc_type->max_hp  = 3150;
+                                npc_type->cur_hp  = 3150;
+                                npc_type->min_dmg = 38;
+                                npc_type->max_dmg = 56;
+                                npc_type->hp_regen = 30;
+                                break;
+                          case 85: //Damage proc from here on in
+                                npc_type->max_hp  = 3200;
+                                npc_type->cur_hp  = 3200;
+                                npc_type->min_dmg = 42;
+                                npc_type->max_dmg = 58;
+                                npc_type->hp_regen = 30;
+                                break;
+                          case 86:
+                                npc_type->max_hp  = 3300;
+                                npc_type->cur_hp  = 3300;
+                                npc_type->min_dmg = 52;
+                                npc_type->max_dmg = 70;
+                                npc_type->hp_regen = 30;
+                                break;
+                          case 87:
+                                sprintf(npc_type->npc_attacks, "E");
+                                npc_type->max_hp  = 4800;
+                                npc_type->cur_hp  = 4800;
+                                npc_type->min_dmg = 72;
+                                npc_type->max_dmg = 85;
+                                npc_type->hp_regen = 100;
+                                break;
+                       // End of Earth Pets, Begin Fire, add flameshield effect
+                          case 88:
+                                npc_type->max_hp   = 50;
+                                npc_type->cur_hp   = 50;
+                                npc_type->min_dmg  = 6;
+                                npc_type->max_dmg  = 12;
+                                break;
+                          case 89:
+                                npc_type->max_hp   = 125;
+                                npc_type->cur_hp   = 125;
+                                npc_type->min_dmg  = 9;
+                                npc_type->max_dmg  = 16;
+                                break;
+                          case 90:
+                                npc_type->max_hp   = 180;
+                                npc_type->cur_hp   = 180;
+                                npc_type->min_dmg  = 11;
+                                npc_type->max_dmg  = 18;
+                                break;
+                          case 91:
+                                npc_type->max_hp  = 260;
+                                npc_type->cur_hp  = 260;
+                                npc_type->min_dmg = 13;
+                                npc_type->max_dmg = 20;
+                                break;
+                          case 92:
+                                npc_type->max_hp  = 340;
+                                npc_type->cur_hp  = 340;
+                                npc_type->min_dmg = 15;
+                                npc_type->max_dmg = 22;
+                                break;
+                          case 93:
+                                npc_type->max_hp  = 415;
+                                npc_type->cur_hp  = 415;
+                                npc_type->min_dmg = 17;
+                                npc_type->max_dmg = 26;
+                                break;
+                          case 94:
+                                npc_type->max_hp  = 500;
+                                npc_type->cur_hp  = 500;
+                                npc_type->min_dmg = 20;
+                                npc_type->max_dmg = 28;
+                                break;
+                          case 95:
+                                npc_type->max_hp  = 575;
+                                npc_type->cur_hp  = 575;
+                                npc_type->min_dmg = 24;
+                                npc_type->max_dmg = 34;
+                               break;
+                          case 96:
+                                npc_type->max_hp   = 725;
+                                npc_type->cur_hp   = 725;
+                                npc_type->min_dmg  = 28;
+                                npc_type->max_dmg  = 40;
+                                npc_type->hp_regen = 30;
+                                break;
+                          case 97:
+                                npc_type->max_hp  = 875;
+                                npc_type->cur_hp  = 875;
+                                npc_type->min_dmg = 34;
+                                npc_type->max_dmg = 48;
+                                npc_type->hp_regen = 30;
+                                break;
+                          case 98:
+                                npc_type->max_hp  = 1575;
+                                npc_type->cur_hp  = 1575;
+                                npc_type->min_dmg = 38;
+                                npc_type->max_dmg = 56;
+                                npc_type->hp_regen = 30;
+                                break;
+                          case 99: // Fire is a wizard from here on in, needs spells,
+                                npc_type->max_hp  = 1900;
+                                npc_type->cur_hp  = 1900;
+                                npc_type->min_dmg = 20;
+                                npc_type->max_dmg = 29;
+                                npc_type->hp_regen = 30;
+                                break;
+                          case 100:
+                                npc_type->max_hp  = 2080;
+                                npc_type->cur_hp  = 2080;
+                                npc_type->min_dmg = 24;
+                                npc_type->max_dmg = 36;
+                                npc_type->hp_regen = 30;
+                                break;
+                          case 101:
+                                sprintf(npc_type->npc_attacks, "E");
+                                npc_type->max_hp  = 2400;
+                                npc_type->cur_hp  = 2400;
+                                npc_type->min_dmg = 30;
+                                npc_type->max_dmg = 45;
+                                npc_type->hp_regen = 100;
+                                break;
+                       // End of Fire Pets, Begin Water
+                          case 102:
+                                npc_type->max_hp   = 80;
+                                npc_type->cur_hp   = 80;
+                                npc_type->min_dmg  = 6;
+                                npc_type->max_dmg  = 12;
+                                break;
+                          case 103:
+                                npc_type->max_hp   = 200;
+                                npc_type->cur_hp   = 200;
+                                npc_type->min_dmg  = 9;
+                                npc_type->max_dmg  = 16;
+                                break;
+                          case 104:
+                                npc_type->max_hp   = 280;
+                                npc_type->cur_hp   = 280;
+                                npc_type->min_dmg  = 11;
+                                npc_type->max_dmg  = 18;
+                                break;
+                          case 105:
+                                npc_type->max_hp  = 420;
+                                npc_type->cur_hp  = 420;
+                                npc_type->min_dmg = 13;
+                                npc_type->max_dmg = 20;
+                                break;
+                          case 106:
+                                npc_type->max_hp  = 540;
+                                npc_type->cur_hp  = 540;
+                                npc_type->min_dmg = 15;
+                                npc_type->max_dmg = 22;
+                                break;
+                          case 107:
+                                npc_type->max_hp  = 660;
+                                npc_type->cur_hp  = 660;
+                                npc_type->min_dmg = 17;
+                                npc_type->max_dmg = 26;
+                                break;
+                          case 108:
+                                npc_type->max_hp  = 800;
+                                npc_type->cur_hp  = 800;
+                                npc_type->min_dmg = 20;
+                                npc_type->max_dmg = 28;
+                                break;
+                          case 109:
+                                npc_type->max_hp  = 920;
+                                npc_type->cur_hp  = 920;
+                                npc_type->min_dmg = 24;
+                                npc_type->max_dmg = 34;
+                          case 110:
+                                npc_type->max_hp   = 1160;
+                                npc_type->cur_hp   = 1160;
+                                npc_type->min_dmg  = 28;
+                                npc_type->max_dmg  = 40;
+                                npc_type->hp_regen = 30;
+                                break;
+                          case 111:
+                                npc_type->max_hp  = 1400;
+                                npc_type->cur_hp  = 1400;
+                                npc_type->min_dmg = 34;

+                                npc_type->max_dmg = 48;
+                                npc_type->hp_regen = 30;
+                                break;
+                          case 112:
+                                npc_type->max_hp  = 2520;
+                                npc_type->cur_hp  = 2520;
+                                npc_type->min_dmg = 38;
+                                npc_type->max_dmg = 56;
+                                npc_type->hp_regen = 30;
+                                break;
+                          case 113: //Rogue type now, should backstab, needs higher dmg proc
+                                npc_type->max_hp  = 2350;
+                                npc_type->cur_hp  = 2350;
+                                npc_type->min_dmg = 40;
+                                npc_type->max_dmg = 56;
+                                npc_type->hp_regen = 30;
+                                break;
+                          case 114:
+                                npc_type->max_hp  = 2450;
+                                npc_type->cur_hp  = 2450;
+                                npc_type->min_dmg = 50;
+                                npc_type->max_dmg = 58;
+                                npc_type->hp_regen = 30;
+                                break;
+                          case 115:
+                                sprintf(npc_type->npc_attacks, "E");
+                                npc_type->max_hp  = 3300;
+                                npc_type->cur_hp  = 3300;
+                                npc_type->min_dmg = 70;
+                                npc_type->max_dmg = 81;
+                                npc_type->hp_regen = 100;
+                                break;
+                       } //switch (pettype) - End of Normal Mage pets
+       }
+       case 15: { // Mage Epic Pet fixed
+                       npc_type->max_hp  = 4300;
+                       npc_type->cur_hp  = 4300;
+                       npc_type->min_dmg = 50;
                        npc_type->max_dmg = 80;
+                       npc_type->hp_regen=50;
 // TODO: NPCSPELLS
 //                     sprintf(npc_type->npc_spells,"847 848 849");
                        break;
Reply With Quote