diff Party.cpp @ 135:9b0d651821f1

Party creation screen: sorcerer class icon fixed
author Nomad
date Mon, 11 Feb 2013 20:23:55 +0200
parents 1c471f3629fb
children 541f3df0aa55
line wrap: on
line diff
--- a/Party.cpp	Mon Feb 11 19:42:28 2013 +0200
+++ b/Party.cpp	Mon Feb 11 20:23:55 2013 +0200
@@ -280,7 +280,7 @@
 {
   Party *pParty; // esi@1
   signed __int16 v3; // ax@1
-  int pResMagicBase; // ecx@1
+  //int pResMagicBase; // ecx@1
   Player *pCharacter; // esi@3
   signed int uSpellBookPageCount; // edx@5
   int pMagicSkills; // eax@5
@@ -317,10 +317,10 @@
   pParty->pPlayers[0].uAccuracy = 13;
   pParty->pPlayers[0].uSpeed = 14;
   pParty->pPlayers[0].uLuck = 7;
-  pParty->pPlayers[0].pActiveSkills[9] = 1;         // leather
-  pParty->pPlayers[0].pActiveSkills[33] = 1;        // armsmaster
-  pParty->pPlayers[0].pActiveSkills[5] = 1;         // bow
-  pParty->pPlayers[0].pActiveSkills[1] = 1;         // sword
+  pParty->pPlayers[0].pActiveSkills[PLAYER_SKILL_LEATHER] = 1;         // leather
+  pParty->pPlayers[0].pActiveSkills[PLAYER_SKILL_ARMSMASTER] = 1;        // armsmaster
+  pParty->pPlayers[0].pActiveSkills[PLAYER_SKILL_BOW] = 1;         // bow
+  pParty->pPlayers[0].pActiveSkills[PLAYER_SKILL_SWORD] = 1;         // sword
   pParty->pPlayers[1].field_1928 = 3;
   pParty->pPlayers[1].uFace = 3;
   pParty->pPlayers[1].field_1924 = 3;
@@ -333,10 +333,10 @@
   pParty->pPlayers[1].uAccuracy = 13;
   pParty->pPlayers[1].uSpeed = 13;
   pParty->pPlayers[1].uLuck = 13;
-  pParty->pPlayers[1].pActiveSkills[9] = 1;         // leather
-  pParty->pPlayers[1].pActiveSkills[34] = 1;        // stealing
-  pParty->pPlayers[1].pActiveSkills[2] = 1;         // dagger
-  pParty->pPlayers[1].pActiveSkills[29] = 1;        // disarm trap
+  pParty->pPlayers[1].pActiveSkills[PLAYER_SKILL_LEATHER] = 1;         // leather
+  pParty->pPlayers[1].pActiveSkills[PLAYER_SKILL_STEALING] = 1;        // stealing
+  pParty->pPlayers[1].pActiveSkills[PLAYER_SKILL_DAGGER] = 1;         // dagger
+  pParty->pPlayers[1].pActiveSkills[PLAYER_SKILL_TRAP_DISARM] = 1;        // disarm trap
   pParty->pPlayers[2].field_1928 = 14;
   pParty->pPlayers[2].uFace = 14;
   pParty->pPlayers[2].field_1924 = 14;
@@ -349,15 +349,15 @@
   pParty->pPlayers[2].uAccuracy = 7;
   pParty->pPlayers[2].uSpeed = 13;
   pParty->pPlayers[2].uLuck = 7;
-  pParty->pPlayers[2].pActiveSkills[35] = 1;        // alchemy
-  pParty->pPlayers[2].pActiveSkills[9] = 1;         // leather
-  pParty->pPlayers[2].pActiveSkills[18] = 1;        // body
-  pParty->pPlayers[2].pActiveSkills[6] = 1;         // mace
+  pParty->pPlayers[2].pActiveSkills[PLAYER_SKILL_ALCHEMY] = 1;        // alchemy
+  pParty->pPlayers[2].pActiveSkills[PLAYER_SKILL_LEATHER] = 1;         // leather
+  pParty->pPlayers[2].pActiveSkills[PLAYER_SKILL_BODY] = 1;        // body
+  pParty->pPlayers[2].pActiveSkills[PLAYER_SKILL_MACE] = 1;         // mace
   strcpy(pParty->pPlayers[3].pName, pGlobalTXT_LocalizationStrings[507]); // Alexis
   v3 = 10;
   pParty->pPlayers[3].field_1928 = 10;
   pParty->pPlayers[3].uFace = 10;
-  pResMagicBase = (int)&pParty->pPlayers[0].sResMagicBase;
+  //pResMagicBase = (int)&pParty->pPlayers[0].sResMagicBase;
   pParty->pPlayers[3].uEndurance = 13;
   pParty->pPlayers[3].uAccuracy = 13;
   pParty->pPlayers[3].uSpeed = 13;
@@ -367,17 +367,17 @@
   pParty->pPlayers[3].uIntelligence = 30;
   pParty->pPlayers[3].uWillpower = 9;
   pParty->pPlayers[3].uLuck = 7;
-  pParty->pPlayers[3].pActiveSkills[9] = 1;         // leather
-  pParty->pPlayers[3].pActiveSkills[13] = 1;        // air
-  pParty->pPlayers[3].pActiveSkills[12] = 1;        // fire
-  pParty->pPlayers[3].pActiveSkills[0] = 1;         // staff
-  pCharacter = &pParty->pPlayers[0];
+  pParty->pPlayers[3].pActiveSkills[PLAYER_SKILL_LEATHER] = 1;         // leather
+  pParty->pPlayers[3].pActiveSkills[PLAYER_SKILL_AIR] = 1;        // air
+  pParty->pPlayers[3].pActiveSkills[PLAYER_SKILL_FIRE] = 1;        // fire
+  pParty->pPlayers[3].pActiveSkills[PLAYER_SKILL_STAFF] = 1;         // staff
   //uNumPlayers = 4;
   //while ( 1 )
   for (uNumPlayers = 0; uNumPlayers < 4; uNumPlayers++)
   {
-    if ( !pCharacter->uClass )
-      *(short *)pResMagicBase = v3; //player[i].pResMagicBase
+    pCharacter = &pParty->pPlayers[uNumPlayers];
+    if (pCharacter->classType == PLAYER_CLASS_KNIGHT)
+      pCharacter->sResMagicBase = v3; //player[i].pResMagicBase
     uSpellBookPageCount = 0;
     //pMagicSkills = pPlayers[uNumPlayers].pActiveSkills[12];// Skills
     //while ( !*(short *)pMagicSkills )         //player[i].skillFire
@@ -521,11 +521,11 @@
     }
     pCharacter->sHealth = pCharacter->GetMaxHealth();
     pCharacter->sMana = pCharacter->GetMaxMana();
-    pCharacter++;
+    //pCharacter++;
     //uNumPlayers--;
     //if (!uNumPlayers)
       //break;
-    pResMagicBase = (int)pCharacter;
+    //pResMagicBase = (int)pCharacter;
     v3 = 10;
   }
 }
@@ -567,10 +567,10 @@
   for (uint i = 0; i < 4; ++i)
     ::pPlayers[i + 1] = &pPlayers[i];
 
-  pPlayers[0].Reset(0);
-  pPlayers[1].Reset(4);
-  pPlayers[2].Reset(24);
-  pPlayers[3].Reset(32);
+  pPlayers[0].Reset(PLAYER_CLASS_KNIGHT);
+  pPlayers[1].Reset(PLAYER_CLASS_THEIF);
+  pPlayers[2].Reset(PLAYER_CLASS_CLERIC);
+  pPlayers[3].Reset(PLAYER_CLASS_SORCERER);
   pPlayers[0].uFace = 17;
   pPlayers[0].field_1924 = 17;
   pPlayers[0].uVoiceID = 17;
@@ -1051,7 +1051,7 @@
     v2->uTimeToRecovery = 0;
     v2->sHealth = v2->GetMaxHealth();
     v5 = v2->GetMaxMana();
-    v6 = v2->uClass == 35;
+    v6 = v2->classType == PLAYER_CLASS_LICH;
     v2->sMana = v5;
     if ( v6 )
     {