diff Player.h @ 1026:6afa77761a00

Слияние
author Ritor1
date Tue, 21 May 2013 12:43:08 +0600
parents 83be083ab25e
children 7f8be9f9769e
line wrap: on
line diff
--- a/Player.h	Tue May 21 12:42:57 2013 +0600
+++ b/Player.h	Tue May 21 12:43:08 2013 +0600
@@ -319,6 +319,11 @@
       PlayerSpellbookChapter pChapters[9];
       char _pad_1;
     };
+    struct
+        {
+        char bHaveSpell[99];
+        char _pad_1;
+        };
   };
 };
 #pragma pack(pop)
@@ -427,8 +432,8 @@
 #pragma pack(push, 1)
 struct Player
 {
-  enum Condition: unsigned __int32
-  {
+enum Condition: unsigned __int32
+    {
     Condition_Cursed = 0,
     Condition_Weak = 1,
     Condition_Sleep = 2,
@@ -448,7 +453,7 @@
     Condition_Eradicated = 16,
     Condition_Zombie = 17,
     Condition_Good = 18
-  };
+    };
 
   Player();
 
@@ -515,12 +520,12 @@
   int _48EA46_calc_special_bonus_by_items(int a2);
   int GetItemsBonus(enum CHARACTER_ATTRIBUTE_TYPE attr, int a3);
   int GetMagicalBonus(enum CHARACTER_ATTRIBUTE_TYPE a2);
-  char GetActualSkillLevel(PLAYER_SKILL_TYPE uSkillType);
+  int GetActualSkillLevel(PLAYER_SKILL_TYPE uSkillType);
   int GetSkillBonus(enum CHARACTER_ATTRIBUTE_TYPE a2);
   enum CHARACTER_RACE GetRace();
   PLAYER_SEX GetSexByVoice();
   void SetInitialStats();
-  int SetSexByVoice();
+  void SetSexByVoice();
   void Reset(PLAYER_CLASS_TYPE classType);
   PLAYER_SKILL_TYPE GetSkillIdxByOrder(signed int order);
   void DecreaseAttribute(int eAttribute);
@@ -542,11 +547,11 @@
   int CreateItemInInventory(unsigned int uSlot, unsigned int uItemID);
   int HasSkill(unsigned int uSkillType);
   int WearItem(unsigned int uItemID);
-  int AddItem(unsigned int uSlot, unsigned int uItemID);
-  int AddItem2(unsigned int uSlot, ItemGen *Src);
+  int AddItem(int uSlot, unsigned int uItemID);
+  int AddItem2(int uSlot, ItemGen *Src);
   int CreateItemInInventory2(unsigned int uSlot, ItemGen *Src);
-  bool _49298B(ItemGen *a2, int a3, int a4);
-  unsigned int RemoveItemAtInventoryIndex(unsigned int uSlot);
+  int PutItemArInventoryIndex(ItemGen *item, int item_id, int uSlot);
+  void RemoveItemAtInventoryIndex(unsigned int uSlot);
   bool CanAct();
   bool CanSteal();
   bool CanEquip_RaceAndAlignmentCheck(unsigned int uItemID);
@@ -554,7 +559,7 @@
   int _49327B(unsigned int uClass, int a3);
   void PlaySound(PlayerSpeech speech, int a3);
   void PlayEmotion(CHARACTER_EXPRESSION_ID expression, int a3);
-  char _4160CA(int a2);
+  void ItemsEnchant(int enchant_count);
   unsigned int GetItemIDAtInventoryIndex(int *a2);
   int _4B6FF9();
   int _4B824B(float a2);
@@ -568,7 +573,7 @@
   int _4B807C(float a2);
   int _4B8040_condition_time(unsigned int uCondition);
   bool _43EEF3();
-  void SalesProcess(unsigned int a2, int a3, int _2devent_idx);//0x4BE2DD
+  void SalesProcess(unsigned int inventory_idnx, int item_index, int _2devent_idx);//0x4BE2DD
   bool Recover(signed int a2);
   bool CanCastSpell(unsigned int uRequiredMana);
 
@@ -606,7 +611,7 @@
   char pName[16];
   PLAYER_SEX uSex;
   PLAYER_CLASS_TYPE classType;
-  unsigned __int8 uFace;
+  unsigned __int8 uCurrentFace;
   char field_BB;
   unsigned __int16 uMight;
   unsigned __int16 uMightBonus;
@@ -682,10 +687,25 @@
   };
   unsigned char _guilds_member_bits[64];
   PlayerSpells spellbook;
-  char field_1F5[30]; // used to be [31]
-  ItemGen pInventoryItems[126];
-  ItemGen pEquippedItems[12];
-  int pInventoryIndices[126];
+  char field__1F5[2]; // used to be [31]
+  int pure_luck_used;      
+  int pure_speed_used; 
+  int pure_intellect_used;  
+  int pure_endurance_used;  
+  int pure_willpower_used;       
+  int pure_accuracy_used;      
+  int pure_might_used;    
+  union  //214h
+      {
+      struct  
+          {
+          ItemGen pInventoryItems[126];
+          ItemGen pEquippedItems[12];
+      };
+      ItemGen pOwnItems[138];
+      };
+  
+    int pInventoryIndices[126];  
   __int16 sResFireBase;
   __int16 sResAirBase;
   __int16 sResWaterBase;
@@ -710,8 +730,8 @@
   __int16 sResDarkBonus;
   SpellBuff pPlayerBuffs[24];
   unsigned int uVoiceID;
-  int field_1924;
-  int field_1928;
+  int uPrevVoiceID;
+  int uPrevFace;
   int field_192C;
   int field_1930;
   unsigned __int16 uTimeToRecovery;