changeset 1091:9c7eb4037567

data moving
author Gloval
date Sun, 26 May 2013 14:13:22 +0400
parents 7033eb155558
children 38890b8385e4
files Player.cpp Player.h UICharacter.cpp mm7_1.cpp mm7_5.cpp mm7_data.cpp mm7_data.h
diffstat 7 files changed, 437 insertions(+), 498 deletions(-) [+]
line wrap: on
line diff
--- a/Player.cpp	Sun May 26 00:03:16 2013 +0400
+++ b/Player.cpp	Sun May 26 14:13:22 2013 +0400
@@ -3251,8 +3251,8 @@
 //----- (0048D676) --------------------------------------------------------
 bool Player::IsUnarmed()
 {
-  return HasItemEquipped(EQUIP_MAIN_HAND) != EQUIP_MAIN_HAND &&
-        !(HasItemEquipped(EQUIP_OFF_HAND) == EQUIP_MAIN_HAND && GetEquippedItemEquipType(EQUIP_OFF_HAND) != EQUIP_SHIELD);
+  return HasItemEquipped(EQUIP_MAIN_HAND) != 0 &&
+        !(HasItemEquipped(EQUIP_OFF_HAND) == 0 && GetEquippedItemEquipType(EQUIP_OFF_HAND) != EQUIP_SHIELD);
 }
 
 //----- (0048D6AA) --------------------------------------------------------
@@ -3288,7 +3288,7 @@
   {
     v6 = 0;
     while ( !HasItemEquipped((ITEM_EQUIP_TYPE)v6)
-         || this->pInventoryItems[pEquipment.pIndices[v6] - 1].uItemID != item_id )
+         || pInventoryItems[pEquipment.pIndices[v6] - 1].uItemID != item_id )
     {
       ++v6;
       if ( (signed int)v6 >= 16 )
@@ -3940,7 +3940,7 @@
 //----- (0048E1A3) --------------------------------------------------------
 unsigned int Player::GetSpellSchool(unsigned int uSpellID)
 {
-  return LOBYTE(pSpellStats->pInfos[uSpellID].uSchool);
+  return pSpellStats->pInfos[uSpellID].uSchool;
 }
 
 //----- (0048E1B5) --------------------------------------------------------
--- a/Player.h	Sun May 26 00:03:16 2013 +0400
+++ b/Player.h	Sun May 26 14:13:22 2013 +0400
@@ -201,7 +201,7 @@
 };
 
 /*  328 */
-enum PLAYER_SKILL_TYPE: unsigned __int8
+enum PLAYER_SKILL_TYPE: __int8
 {
   PLAYER_SKILL_STAFF = 0,
   PLAYER_SKILL_SWORD = 1,
--- a/UICharacter.cpp	Sun May 26 00:03:16 2013 +0400
+++ b/UICharacter.cpp	Sun May 26 14:13:22 2013 +0400
@@ -71,6 +71,201 @@
 unsigned int ui_book_journal_text_color;
 unsigned int ui_book_journal_text_shadow;
 
+unsigned int papredoll_dbrds[16];
+unsigned int papredoll_drhs[4];
+unsigned int papredoll_dlhus[4];
+unsigned int papredoll_dlhs[4];
+unsigned int papredoll_dbods[5];
+int paperdoll_armor_texture[4][17][3];
+//int paperdoll_array_51132C[165];
+unsigned int papredoll_dlaus[5];
+unsigned int papredoll_dlads[4];
+int papredoll_flying_feet[777]; // idb
+int paperdoll_boots_texture[4][6];//0x511638
+int paperdoll_cloak_collar_texture[4][10]; // weak
+int paperdoll_cloak_texture[4][10];
+int paperdoll_helm_texture[2][16]; //511698
+int paperdoll_belt_texture[2][7];  //511718
+
+
+const int paperdoll_Weapon[4][16][2] = {//4E4C30
+    {{128, 205},  {30, 144},  {88,  85},  {0, 0},  {0, 0},  {0, 0},  {17, 104},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0}},
+    {{131, 201},  {38, 158},  {98,  87},  {0, 0},  {0, 0},  {0, 0},  {21, 100},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0}},
+    {{131, 216},  {29, 186},  {88, 119},  {0, 0},  {0, 0},  {0, 0},  {  0,  0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0}},
+    {{123, 216},  {35, 184},  {98, 119},  {0, 0},  {0, 0},  {0, 0},  {  0,  0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0}},
+    };
+
+
+
+const int paperdoll_Boot[4][7][2] = //4E5490
+    {
+    0xE, 0x11D,    0xD, 0x11D,    0xC, 0x10A,    0xA, 0xFF,    0xD, 0xF9,    0xD, 0x137,   0xC, 0x10E,
+    0x14, 0x125,   0x13, 0x122,   0x15, 0x120,   0x15, 0x114,  0x13, 0x10A,  0x11, 0x13E,  0x11, 0x116,
+    0x1D, 0x121,   0x1C, 0x11F,   0x1B, 0x11B,   0x1C, 0x117,  0x16, 0x116,  0x1B, 0x137,  0x1B, 0x11B,
+    0x1F, 0x127,   0x1F, 0x122,   0x1B, 0x11B,   0x1D, 0x117,  0x1D, 0x116,  0x1D, 0x137,  0x1B, 0x11F,
+    };
+const int paperdoll_Cloak[4][10][2] = //4E5570
+    {
+    0x11, 0x68,  0xF, 0x68,  0x14, 0x71,  0x19, 0x6B,  0x21, 0x6F,  0x5, 0x68,  0x5, 0x68,  0x14, 0x71,  0x3, 0x6B,  0xF, 0x6F,
+    0x15, 0x64,  0xB, 0x6B,  0xE, 0x67,   0x15, 0x6B,  0x1B, 0x6F,  0x3, 0x6B,  0, 0x6B,    0xE, 0x67,   0, 0x6B,    0x3, 0x6F,
+    0x10, 0x8A,  0x9, 0x8B,  0x18, 0x98,  0x25, 0x91,  0x29, 0x90,  0x8, 0x8A,  0x9, 0x8B,  0x18, 0x98,  0x3, 0x91,  0x3, 0x90,
+    0x14, 0x92,  0x10, 0x92, 0x15, 0x98,  0x1F, 0x91,  0x22, 0x90,  0x8, 0x92,  0xC, 0x92,  0x15, 0x98,  0x3, 0x91,  0x3, 0x90,
+    };
+const int paperdoll_CloakCollar[4][10][2] = //4E56B0
+    {
+    0x11, 0x68,  0x34, 0x64,  0x21, 0x69,  0x1D, 0x67,  0x20, 0x67,  0x21, 0x68,  0x34, 0x64,  0x21, 0x69,  0x1D, 0x67,  0x1F, 0x67,
+    0x13, 0x64,  0x35, 0x66,  0x29, 0x68,  0x1F, 0x68,  0x1F, 0x6A,  0x21, 0x6A,  0x2B, 0x66,  0x26, 0x68,  0x1F, 0x68,  0x1F, 0x6A,
+    0, 0,        0x30, 0x87,  0x1E, 0x86,  0x1B, 0x86,  0x1C, 0x8A,  0x21, 0x87,  0x30, 0x87,  0x1E, 0x86,  0x1B, 0x86,  0x1C, 0x8A,
+    0, 0,        0x38, 0x8A,  0x24, 0x8B,  0x1D, 0x8B,  0x21, 0x8C,  0x27, 0x8A,  0x34, 0x8A,  0x24, 0x8B,  0x25, 0x8B,  0x21, 0x8C,
+    };
+//int dword_4E56B4; // weak
+const int paperdoll_Belt[4][7][2] = //4E57F0
+    {
+    0x3A, 0xB6,  0x37, 0xB2,  0x34, 0xB9,  0x3A, 0xB9,  0x37, 0xB7,  0x38, 0xAC,  0x37, 0xB7,
+    0x3E, 0xAD,  0x3A, 0xAC,  0x37, 0xB0,  0x3A, 0xB1,  0x39, 0xB0,  0x3C, 0xA5,  0x39, 0xB0,
+    0x3B, 0xD5,  0x37, 0xD2,  0x31, 0xD5,  0x39, 0xD6,  0x37, 0xD8,  0x37, 0xD1,  0x37, 0xD8,
+    0x42, 0xD2,  0x3F, 0xD0,  0x3B, 0xD7,  0x3C, 0xD5,  0x3B, 0xD6,  0x3E, 0xCF,  0x36, 0xD6,
+    };
+const int paperdoll_Helm[4][16][2] = //4E58D0
+    {
+    0x3E, 0x1F,  0x41, 0x2C,  0x37, 0x2F,  0x31, 0x32,  0x37, 0x2A,  0x39, 0x28,  0x36, 0x34,  0x41, 0x38,  0x40, 0x31,  0x40, 0x21,  0x40, 0x31,  0x3C, 0x33,  0x3D, 0x24,  0x3A, 0x1A,  0x37, 0x2A,  0x41, 0x48,
+    0x41, 0x1E,  0x42, 0x2B,  0x37, 0x2F,  0x34, 0x30,  0x39, 0x29,  0x3A, 0x26,  0x36, 0x34,  0x41, 0x37,  0x42, 0x32,  0x40, 0x21,  0x40, 0x31,  0x40, 0x2F,  0x3E, 0x22,  0x3B, 0x1A,  0x39, 0x29,  0x42, 0x47,
+    0x3F, 0x47,  0x41, 0x56,  0x37, 0x59,  0x32, 0x5E,  0x37, 0x58,  0x39, 0x54,  0x34, 0x61,  0x40, 0x61,  0x41, 0x5D,  0x3E, 0x4F,  0x3E, 0x5B,  0x3D, 0x5B,  0x3F, 0x4C,  0x3B, 0x45,  0x37, 0x58,  0x41, 0x74,
+    0x45, 0x45,  0x46, 0x54,  0x3A, 0x55,  0x38, 0x58,  0x3C, 0x54,  0x3F, 0x52,  0x39, 0x5B,  0x45, 0x5C,  0x47, 0x5C,  0x44, 0x4B,  0x44, 0x57,  0x43, 0x55,  0x44, 0x4A,  0x3E, 0x45,  0x3C, 0x54,  0x47, 0x70,
+    };
+const int pPaperdoll_Beards[4] = //4E5AD0
+    {
+    52, 130, 56, 136,
+    };
+const int pPaperdoll_LeftHand[4][2] = //4E5AE0
+    {
+    0x67, 0x6A,
+    0x65, 0x6C,
+    0x74, 0x8D,
+    0x74, 0x93,
+    };
+const int pPaperdoll_SecondLeftHand[4][2] = //4E5B00
+    {
+    0x1A, 0x6B,
+    0x28, 0x6D,
+    0x19, 0x8D,
+    0x20, 0x92,
+    };
+const int pPaperdoll_RightHand[4][2] = //4E5B20
+    {
+    0x1E, 0x90,
+    0x22, 0x9E,
+    0x19, 0xBA,
+    0x1F, 0xB8,
+    };
+const int pPaperdollLeftEmptyHand[4][2] = //4E5B40
+    {
+    0x80, 0xCD,
+    0x83, 0xC9,
+    0x83, 0xD8,
+    0x7B, 0xD8,
+    };
+
+int pPaperdoll_BodyX = 481; // 004E4C28
+int pPaperdoll_BodyY = 0;   // 004E4C2C
+const int paperdoll_Armor[4][17][2] = //4E4E30
+    {
+    // X     Y
+    0x2C, 0x67,  0x30, 0x69,  0x2D, 0x67,  0x2C, 0x64,  0x14, 0x66,  0x22, 0x67,  0x20, 0x66,  0x25, 0x66,  0x12, 0x66,//Human
+    0x0A, 0x66,  0x13, 0x64,  0x0E, 0x64,  0x0A, 0x63,  0x14, 0x66,  0x0A, 0x63,  0x0A, 0x66,  0x25, 0x66,
+
+    0x32, 0x68,  0x32, 0x69,  0x35, 0x69,  0x33, 0x68,  0x24, 0x67,  0x30, 0x69,  0x33, 0x68,  0x31, 0x69,  0x19, 0x69,
+    0x19, 0x6A,  0x16, 0x66,  0x16, 0x65,  0x0F, 0x6B,  0x24, 0x67,  0x0F, 0x6B,  0x19, 0x6A,  0x31, 0x69,
+
+    0x2A, 0x8C,  0x29, 0x8C,  0x2A, 0x89,  0x29, 0x86,  0x12, 0x87,  0x2D, 0x89,  0x2A, 0x88,  0x25, 0x87,  0x12, 0x8B,
+    0x12, 0x8B,  0x11, 0x8A,  0x15, 0x87,  0x09, 0x89,  0x12, 0x87,  0x09, 0x89,  0x12, 0x8B,  0x25, 0x87,
+
+    0x33, 0x90,  0x32, 0x90,  0x34, 0x91,  0x32, 0x8E,  0x21, 0x8B,  0x31, 0x8B,  0x33, 0x8E,  0x2F, 0x8F,  0x16, 0x8D,
+    0x18, 0x8C,  0x19, 0x8C,  0x1B, 0x8E,  0x0C, 0x8C,  0x21, 0x8B,  0x0C, 0x8C,  0x18, 0x8C,  0x2F, 0x8F,
+    };
+const int paperdoll_shoulder[4][17][2] = //4E5050
+    {
+    0x64, 0x67,  0x61, 0x67,  0x65, 0x68,  0x6E, 0x74,  0x6C, 0x68,  0x61, 0x67,  0x66, 0x68,  0x6C, 0x6A,  0x6E, 0x6D,
+    0x67, 0x69,  0x70, 0x67,  0x6E, 0x6D,  0x6C, 0x6F,  0x6C, 0x68,  0x6C, 0x6F,  0x67, 0x69,  0x6C, 0x6A,
+
+    0x60, 0x6B,  0x60, 0x6C,  0x60, 0x6B,  0x61, 0x6A,  0x60, 0x69,  0x60, 0x6A,  0x60, 0x6A,  0x61, 0x69,  0x63, 0x6A,
+    0x64, 0x6A,  0x61, 0x66,  0x66, 0x67,  0x64, 0x6C,  0x60, 0x69,  0x64, 0x6C,  0x64, 0x6A,  0x61, 0x69,
+
+    0x6D, 0x8C,  0x75, 0x8C,  0, 0,        0x72, 0x8D,  0x6A, 0x89,  0, 0,        0x73, 0x8C,  0x69, 0x8C,  0x6E, 0x8D,
+    0x71, 0x8D,  0x70, 0x8D,  0x72, 0x8D,  0x74, 0x8E,  0x6A, 0x89,  0x74, 0x8E,  0x71, 0x8D,  0x69, 0x8C,
+
+    0x72, 0x91,  0x72, 0x91,  0, 0,        0x6E, 0x92,  0x6F, 0x91,  0, 0,        0, 0,        0x6E, 0x91,  0x71, 0x90,
+    0x72, 0x8D,  0x72, 0x90,  0x73, 0x93,  0x73, 0x90,  0x6F, 0x91,  0x73, 0x90,  0x72, 0x8D,  0x6E, 0x91,
+    };
+const int dword_4E5270[4][2] = 
+    {
+    0, 0,
+    0x61, 0x67,
+    0, 0,
+    0x64, 0x69,
+    };
+
+const char *dlad_texnames_by_face[25] =
+    {
+    "pc01lad", "pc02lad", "pc03lad", "pc04lad", "pc05lad", "pc06lad",
+    "pc07lad", "pc08lad", "pc09lad", "pc10lad", "pc11lad", "pc12lad",
+    "pc13lad", "pc14lad", "pc15lad", "pc16lad", "pc17lad", "pc18lad",
+    "pc19lad", "pc20lad", "pc21lad", "pc22lad", "pc23lad", "pc24lad",
+    "pc25lad"
+    };
+const char *dlau_texnames_by_face[25] =
+    {
+    "pc01lau", "pc02lau", "pc03lau", "pc04lau", "pc05lau", "pc06lau",
+    "pc07lau", "pc08lau", "pc09lau", "pc10lau", "pc11lau", "pc12lau",
+    "pc13lau", "pc14lau", "pc15lau", "pc16lau", "pc17lau", "pc18lau",
+    "pc19lau", "pc20lau", "pc21lau", "pc22lau", "pc23lau", "pc24lau",
+    "pc25lau"
+    };
+const char *dbod_texnames_by_face[25] =
+    {
+    "pc01bod", "pc02bod", "pc03bod", "pc04bod", "pc05bod", "pc06bod",
+    "pc07bod", "pc08bod", "pc09bod", "pc10bod", "pc11bod", "pc12bod",
+    "pc13bod", "pc14bod", "pc15bod", "pc16bod", "pc17bod", "pc18bod",
+    "pc19bod", "pc20bod", "pc21bod", "pc22bod", "pc23bod", "pc24bod",
+    "pc25bod"
+    };
+const char *drh_texnames_by_face[25] =
+    {
+
+    "pc01rh", "pc02rh", "pc03rh", "pc04rh", "pc05rh", "pc06rh",
+    "pc07rh", "pc08rh", "pc09rh", "pc10rh", "pc11rh", "pc12rh",
+    "pc13rh", "pc14rh", "pc15rh", "pc16rh", "pc17rh", "pc18rh",
+    "pc19rh", "pc20rh", "pc21rh", "pc22rh", "pc23rh", "pc24rh",
+    "pc25rh"
+    };
+const char *dlh_texnames_by_face[25] =
+    {
+    "pc01lh", "pc02lh", "pc03lh", "pc04lh", "pc05lh", "pc06lh",
+    "pc07lh", "pc08lh", "pc09lh", "pc10lh", "pc11lh", "pc12lh",
+    "pc13lh", "pc14lh", "pc15lh", "pc16lh", "pc17lh", "pc18lh",
+    "pc19lh", "pc20lh", "pc21lh", "pc22lh", "pc23lh", "pc24lh",
+    "pc25lh"
+    };
+const char *dlhu_texnames_by_face[25] =
+    {
+    "pc01lhu", "pc02lhu", "pc03lhu", "pc04lhu", "pc05lhu", "pc06lhu",
+    "pc07lhu", "pc08lhu", "pc09lhu", "pc10lhu", "pc11lhu", "pc12lhu",
+    "pc13lhu", "pc14lhu", "pc15lhu", "pc16lhu", "pc17lhu", "pc18lhu",
+    "pc19lhu", "pc20lhu", "pc21lhu", "pc22lhu", "pc23lhu", "pc24lhu",
+    "pc25lhu"
+    };
+
+const  int pArmorSkills[5]  = {PLAYER_SKILL_LEATHER, PLAYER_SKILL_CHAIN,      PLAYER_SKILL_PLATE,        PLAYER_SKILL_SHIELD,  PLAYER_SKILL_DODGE};
+const int pWeaponSkills[9] = {PLAYER_SKILL_AXE,     PLAYER_SKILL_BOW,        PLAYER_SKILL_DAGGER,       PLAYER_SKILL_MACE,    PLAYER_SKILL_SPEAR,      
+    PLAYER_SKILL_STAFF,    PLAYER_SKILL_SWORD,       PLAYER_SKILL_UNARMED,    PLAYER_SKILL_BLASTER};
+const  int pMiscSkills[12]  = {PLAYER_SKILL_ALCHEMY, PLAYER_SKILL_ARMSMASTER, PLAYER_SKILL_BODYBUILDING, PLAYER_SKILL_ITEM_ID, PLAYER_SKILL_MONSTER_ID, 
+    PLAYER_SKILL_LEARNING, PLAYER_SKILL_TRAP_DISARM, PLAYER_SKILL_MEDITATION, PLAYER_SKILL_MERCHANT, PLAYER_SKILL_PERCEPTION,
+    PLAYER_SKILL_REPAIR, PLAYER_SKILL_STEALING};
+const  int pMagicSkills[9]  = {PLAYER_SKILL_FIRE,    PLAYER_SKILL_AIR,        PLAYER_SKILL_WATER,        PLAYER_SKILL_EARTH,   PLAYER_SKILL_SPIRIT,    
+    PLAYER_SKILL_MIND,     PLAYER_SKILL_BODY,        PLAYER_SKILL_LIGHT,      PLAYER_SKILL_DARK};
+
+
+
 
 void set_default_ui_skin()
 {
@@ -244,7 +439,7 @@
 
 
 
-static int CharacterUI_SkillsTab_Draw__DrawSkillTable(Player *player, int x, int y, int *skill_list, int skill_list_size, int right_margin, const char *skill_group_name)
+static int CharacterUI_SkillsTab_Draw__DrawSkillTable(Player *player, int x, int y, const int *skill_list, int skill_list_size, int right_margin, const char *skill_group_name)
 {
   int y_offset = y;
   
@@ -295,20 +490,19 @@
       }
       else
       {
-        const char *v46 = nullptr;
+        const char *skill_level_str = nullptr;
 
         switch (SkillToMastery(skill_value))
         {
-          case 4: v46 = pGlobalTXT_LocalizationStrings[96];  break; // "Grand"
-          case 3: v46 = pGlobalTXT_LocalizationStrings[432]; break; // Master
-          case 2: v46 = pGlobalTXT_LocalizationStrings[433]; break; // Expert
+          case 4: skill_level_str = pGlobalTXT_LocalizationStrings[96];  break; // "Grand"
+          case 3: skill_level_str = pGlobalTXT_LocalizationStrings[432]; break; // Master
+          case 2: skill_level_str = pGlobalTXT_LocalizationStrings[433]; break; // Expert
         }
 
         if (!skill_mastery_color)
           skill_mastery_color = ui_character_header_text_color;
 
-        
-        sprintfex(pTmpBuf, "%s \f%05d%s\f%05d\r%03d%2d", pSkillNames[skill], skill_mastery_color, v46, skill_color, right_margin, skill_level);
+        sprintfex(pTmpBuf, "%s \f%05d%s\f%05d\r%03d%2d", pSkillNames[skill], skill_mastery_color, skill_level_str, skill_color, right_margin, skill_level);
         pGUIWindow_CurrentMenu->DrawText(pFontLucida, x, v8->uY, skill_color, pTmpBuf, 0, 0, 0);
       }
     }
@@ -507,7 +701,7 @@
     break;
 
     case WINDOW_CharacterWindow_Skills:                                // skills
-      if (dword_507CC0 != uActiveCharacter)
+      if (dword_507CC0_activ_ch != uActiveCharacter)
       {
         CharacterUI_ReleaseButtons();
         CharacterUI_SkillsTab_CreateButtons();
@@ -834,19 +1028,19 @@
       item_Cloak = &pPlayers[uPlayerID]->pInventoryItems[pCloakNum - 1];
       switch ( item_Cloak->uItemID )
       {
-        case 525:
+        case ITEM_RELIC_TWILIGHT:
           v33 = 5;
           break;
-        case 530:
+        case ITEM_ARTIFACT_CLOAK_OF_THE_SHEEP:
           v33 = 6;
           break;
-        case 547:
+        case ITEM_RARE_SUN_CLOAK:
           v33 = 7;
           break;
-        case 548:
+        case ITEM_RARE_MOON_CLOAK:
           v33 = 8;
           break;
-        case 550:
+        case ITEM_RARE_VAMPIRES_CAPE:
           v33 = 9;
           break;
         default:
@@ -902,13 +1096,13 @@
         case 504:
           v45 = 15;
           break;
-        case 505:
+        case ITEM_ARTIFACT_YORUBA:
           v45 = 14;
           break;
-        case 516:
+        case ITEM_RELIC_HARECS_LEATHER:
           v45 = 13;
           break;
-        case 533:
+        case ITEM_ELVEN_CHAINMAIL:
           v45 = 16;
           break;
         default:
@@ -992,13 +1186,13 @@
             {
               if ( item_Armor->uAttributes & 0xF0 )
               {
-                if ( (item_Armor->uAttributes & 0xF0) == 16 )
+                if ( (item_Armor->uAttributes & 0xF0) == ITEM_AURA_EFFECT_RED )
                   v173 = "sptext01";
-                if ( (item_Armor->uAttributes & 0xF0) == 32 )
+                if ( (item_Armor->uAttributes & 0xF0) == ITEM_AURA_EFFECT_BLUE )
                   v173 = "sp28a";
-                if ( ( item_Armor->uAttributes & 0xF0) == 64 )
+                if ( ( item_Armor->uAttributes & 0xF0) == ITEM_AURA_EFFECT_GREEN )
                   v173 = "sp30a";
-                if ( (item_Armor->uAttributes & 0xF0) == 128 )
+                if ( (item_Armor->uAttributes & 0xF0) == ITEM_AURA_EFFECT_PURPLE )
                   v173 = "sp91a";
                 v96 = (char *)pIcons_LOD->LoadTexturePtr(v173, TEXTURE_16BIT_PALETTE);
                 _50C9A8_item_enchantment_timer -= pEventTimer->uTimeElapsed;
@@ -1136,10 +1330,10 @@
           item_Belt = &pPlayers[uPlayerID]->pInventoryItems[pBeltNum - 1];
         switch ( item_Belt->uItemID )
         {
-          case 524:
+          case ITEM_RILIC_TITANS_BELT:
             v73 = 5;
             break;
-          case 535:
+          case ITEM_ARTIFACT_HEROS_BELT:
             v73 = 6;
             break;
           default:
@@ -1919,121 +2113,94 @@
 
 //----- (00419401) --------------------------------------------------------
 void CharacterUI_SkillsTab_CreateButtons()
-{
-    unsigned int v0; // ecx@3
+    {
+    // unsigned int v0; // ecx@3
     GUIButton *pButton; // eax@3
-    GUIFont *v2; // eax@8
-    unsigned int v3; // esi@8
-    int v4; // eax@10
-    unsigned int v5; // esi@14
-    int v6; // eax@17
-    unsigned int v7; // esi@19
-    int v8; // eax@21
-    unsigned int v9; // esi@25
-    int v10; // eax@27
-    int a2; // [sp+10h] [bp-14h]@1
-    int v12; // [sp+14h] [bp-10h]@8
-    int v13; // [sp+14h] [bp-10h]@19
-    int *v14; // [sp+18h] [bp-Ch]@8
-    int *v15; // [sp+18h] [bp-Ch]@14
-    int *v16; // [sp+18h] [bp-Ch]@19
-    int *v17; // [sp+18h] [bp-Ch]@25
-    Player *v18; // [sp+1Ch] [bp-8h]@8
-    int a5; // [sp+20h] [bp-4h]@8
+    unsigned int current_Y; // esi@8
+    int buttons_count; // [sp+10h] [bp-14h]@1
+    int first_rows; // [sp+14h] [bp-10h]@19
+    int skill_id; // [sp+18h] [bp-Ch]@8
+    Player *curr_player; // [sp+1Ch] [bp-8h]@8
+    int i;
+    int uCurrFontHeght;
 
-    a2 = 0;
-    if ( dword_507CC0 )
+    buttons_count = 0;
+    if ( dword_507CC0_activ_ch )
         CharacterUI_ReleaseButtons();
-    v0 = uActiveCharacter;
-    dword_507CC0 = uActiveCharacter;
+    dword_507CC0_activ_ch = uActiveCharacter;
     for ( pButton = pGUIWindow_CurrentMenu->pControlsHead; pButton; pButton = pButton->pNext )
-    {
+        {
         if ( pButton->msg == UIMSG_InventoryLeftClick )
-        {
-            dword_50698C = pButton->uX;
-            dword_506988 = pButton->uY;
-            dword_506984 = pButton->uZ;
-            dword_506980 = pButton->uW;
+            {
+            dword_50698C_uX = pButton->uX;
+            dword_506988_uY = pButton->uY;
+            dword_506984_uZ = pButton->uZ;
+            dword_506980_uW = pButton->uW;
             pButton->uW = 0;
             pButton->uZ = 0;
             pButton->uY = 0;
             pButton->uX = 0;
-            v0 = uActiveCharacter;
+            }
+        }
+    first_rows = 0;
+    //  a5 = pGUIWindow_CurrentMenu->uNumControls;
+    curr_player = &pParty->pPlayers[uActiveCharacter-1];
+
+    uCurrFontHeght=pFontLucida->uFontHeight;
+    current_Y = 2 *uCurrFontHeght  + 13;
+    for(i=0; i<9;++i)
+        {
+        skill_id = pWeaponSkills[i];
+        if ( curr_player->pActiveSkills[skill_id] & 0x3F )
+            {
+            current_Y += uCurrFontHeght - 3;
+            ++buttons_count;
+            ++first_rows;
+            pGUIWindow_CurrentMenu->CreateButton(24, current_Y, 204, uCurrFontHeght - 3, 3, skill_id | 0x8000, UIMSG_SkillUp, skill_id, 0, "", 0, 0);
             }
         }
-    v12 = 0;
-    a5 = pGUIWindow_CurrentMenu->uNumControls;
-    v18 = &pParty->pPlayers[v0-1];
-    v2 = pFontLucida;
-    v14 = pWeaponSkills;
-    v3 = 2 * LOBYTE(pFontLucida->uFontHeight) + 13;
-    do
+    if ( !first_rows )
+        current_Y += uCurrFontHeght - 3;        
+    current_Y += 2 * uCurrFontHeght - 6;
+    for(i=0; i<9;++i)       
         {
-        if ( v18->pActiveSkills[*v14] & 0x3F )//crash
+        skill_id = pMagicSkills[i];
+        if ( curr_player->pActiveSkills[skill_id] & 0x3F && buttons_count < 15 )
             {
-            v4 = LOBYTE(v2->uFontHeight);
-            v3 = v3 + v4 - 3;
-            ++a2;
-            ++v12;
-            pGUIWindow_CurrentMenu->CreateButton(0x18u, v3, 0xCCu, v4 - 3, 3, *v14 | 0x8000, UIMSG_SkillUp, *v14, 0, "", 0, 0);
-            v2 = pFontLucida;
-            }
-        ++v14;
-        }
-        while ( v14 <= &pWeaponSkills[8] );
-        if ( !v12 )
-            v3 = v3 + LOBYTE(v2->uFontHeight) - 3;
-        v15 = pMagicSkills;
-        v5 = v3 + 2 * LOBYTE(v2->uFontHeight) - 6;
-        do
-            {
-            if ( v18->pActiveSkills[*v15] & 0x3F && a2 < 15 )
-                {
-                v6 = LOBYTE(v2->uFontHeight);
-                v5 = v5 + v6 - 3;
-                ++a2;
-                pGUIWindow_CurrentMenu->CreateButton(0x18u, v5, 0xCCu, v6 - 3, 3, *v15 | 0x8000, UIMSG_SkillUp, *v15, 0, "", 0, 0);
-                v2 = pFontLucida;
-                }
-            ++v15;
+            current_Y += uCurrFontHeght - 3;
+            ++buttons_count;
+            pGUIWindow_CurrentMenu->CreateButton(24, current_Y, 204, uCurrFontHeght - 3, 3, skill_id | 0x8000, UIMSG_SkillUp, skill_id, 0, "", 0, 0);
             }
-            while ( v15 <= &pMagicSkills[8] );
-            v13 = 0;
-            v16 = pArmorSkills;
-            v7 = 2 * LOBYTE(v2->uFontHeight) + 13;
-            do
-                {
-                if ( v18->pActiveSkills[*v16] & 0x3F )
-                    {
-                    v8 = LOBYTE(v2->uFontHeight);
-                    v7 = v7 + v8 - 3;
-                    ++a2;
-                    ++v13;
-                    pGUIWindow_CurrentMenu->CreateButton(0xF6u, v7, 0xCCu, v8 - 3, 3, *v16 | 0x8000, UIMSG_SkillUp, *v16, 0, "", 0, 0);
-                    v2 = pFontLucida;
-                    }
-                ++v16;
-                }
-                while ( v16 <= &pArmorSkills[4] );
-                if ( !v13 )
-                    v7 = v7 + LOBYTE(v2->uFontHeight) - 3;
-                v17 = pMiscSkills;
-                v9 = v7 + 2 * LOBYTE(v2->uFontHeight) - 6;
-                do
-                    {
-                    if ( v18->pActiveSkills[*v17] & 0x3F )
-                        {
-                        v10 = LOBYTE(v2->uFontHeight);
-                        v9 = v9 + v10 - 3;
-                        ++a2;
-                        pGUIWindow_CurrentMenu->CreateButton(0xF6u, v9, 0xCCu, v10 - 3, 3, *v17 | 0x8000, UIMSG_SkillUp, *v17, 0, "", 0, 0);
-                        v2 = pFontLucida;
-                        }
-                    ++v17;
-                    }
-                    while ( v17 <= &pMiscSkills[11] );
-                    if ( a2 )
-                        pGUIWindow_CurrentMenu->_41D08F_set_keyboard_control_group(a2, 1, 0, a5);
+        }
+    first_rows = 0;      
+    current_Y = 2 * uCurrFontHeght + 13;
+    for(i=0; i<5;++i) 
+        {
+        skill_id = pArmorSkills[i];
+        if ( curr_player->pActiveSkills[skill_id] & 0x3F )
+            {
+            current_Y+= uCurrFontHeght - 3;
+            ++buttons_count;
+            ++first_rows;
+            pGUIWindow_CurrentMenu->CreateButton(246, current_Y, 204, uCurrFontHeght - 3, 3, skill_id | 0x8000, UIMSG_SkillUp, skill_id, 0, "", 0, 0);
+            }
+        }
+    if ( !first_rows )
+        current_Y += uCurrFontHeght - 3;           
+    current_Y += 2 * uCurrFontHeght - 6;
+    for(i=0; i<12; ++i)
+        {
+        skill_id = pMiscSkills[i];
+        if ( curr_player->pActiveSkills[skill_id] & 0x3F )
+            {
+            current_Y += uCurrFontHeght - 3;
+            ++buttons_count;
+            pGUIWindow_CurrentMenu->CreateButton(246, current_Y, 204, uCurrFontHeght - 3, 3, skill_id | 0x8000, UIMSG_SkillUp, skill_id, 0, "", 0, 0);
+            }
+        }
+
+    if ( buttons_count )
+        pGUIWindow_CurrentMenu->_41D08F_set_keyboard_control_group(buttons_count, 1, 0, pGUIWindow_CurrentMenu->uNumControls);
     }
 
 
@@ -2377,3 +2544,66 @@
                 }
             }
         }
+
+
+//----- (0043EF2B) --------------------------------------------------------
+void WetsuitOn( unsigned int uPlayerID )
+    { 
+    CHARACTER_RACE player_race; // edi@2
+    signed int player_sex; // eax@2
+    int texture_num; // ecx@5
+    char pContainer[20]; // [sp+4h] [bp-1Ch]@7
+ 
+    if ( uPlayerID> 0 )
+        {
+        player_race = pPlayers[uPlayerID]->GetRace();
+        player_sex = pPlayers[uPlayerID]->GetSexByVoice();
+        if ( player_race == CHARACTER_RACE_DWARF  )
+            texture_num = (player_sex != 0) + 3;
+        else 
+            texture_num = (player_sex != 0) + 1;
+        wsprintfA(pContainer, "pc23v%dBod", texture_num);
+        papredoll_dbods[uPlayerID - 1] = pIcons_LOD->LoadTexture(pContainer, TEXTURE_16BIT_PALETTE);
+        wsprintfA(pContainer, "pc23v%dlad", texture_num);
+        papredoll_dlads[uPlayerID - 1] = pIcons_LOD->LoadTexture(pContainer, TEXTURE_16BIT_PALETTE);
+        wsprintfA(pContainer, "pc23v%dlau", texture_num);
+        papredoll_dlaus[uPlayerID - 1] = pIcons_LOD->LoadTexture(pContainer, TEXTURE_16BIT_PALETTE);
+        wsprintfA(pContainer, "pc23v%drh", texture_num);
+        papredoll_drhs[uPlayerID - 1] = pIcons_LOD->LoadTexture(pContainer, TEXTURE_16BIT_PALETTE);
+        wsprintfA(pContainer, "pc23v%dlh", texture_num);
+        papredoll_dlhs[uPlayerID - 1] = pIcons_LOD->LoadTexture(pContainer, TEXTURE_16BIT_PALETTE);
+        wsprintfA(pContainer, "pc23v%dlhu", texture_num);
+        papredoll_dlhus[uPlayerID - 1] = pIcons_LOD->LoadTexture(pContainer, TEXTURE_16BIT_PALETTE);
+
+        if ( pPlayers[uPlayerID]->uCurrentFace == 12 || pPlayers[uPlayerID]->uCurrentFace == 13 )
+            papredoll_dbrds[pPlayers[uPlayerID]->uCurrentFace] = 0;
+
+        papredoll_flying_feet[pPlayers[uPlayerID]->uCurrentFace] = 0;
+        IsPlayerWearingWatersuit[uPlayerID] = 1;
+        }
+    }
+
+//----- (0043F0BD) --------------------------------------------------------
+void WetsuitOff( unsigned int uPlayerID )
+    {
+    char pContainer[20]; // [sp+0h] [bp-18h]@4
+
+    if (uPlayerID > 0 )
+        {
+        papredoll_dbods[uPlayerID - 1] = pIcons_LOD->LoadTexture(dbod_texnames_by_face[pPlayers[uPlayerID]->uCurrentFace], TEXTURE_16BIT_PALETTE);
+        papredoll_dlads[uPlayerID - 1] = pIcons_LOD->LoadTexture(dlad_texnames_by_face[pPlayers[uPlayerID]->uCurrentFace], TEXTURE_16BIT_PALETTE);
+        papredoll_dlaus[uPlayerID - 1] = pIcons_LOD->LoadTexture(dlau_texnames_by_face[pPlayers[uPlayerID]->uCurrentFace], TEXTURE_16BIT_PALETTE);
+        papredoll_drhs [uPlayerID - 1] = pIcons_LOD->LoadTexture(drh_texnames_by_face [pPlayers[uPlayerID]->uCurrentFace], TEXTURE_16BIT_PALETTE);
+        papredoll_dlhs [uPlayerID - 1] = pIcons_LOD->LoadTexture(dlh_texnames_by_face [pPlayers[uPlayerID]->uCurrentFace], TEXTURE_16BIT_PALETTE);
+        papredoll_dlhus[uPlayerID - 1] = pIcons_LOD->LoadTexture(dlhu_texnames_by_face[pPlayers[uPlayerID]->uCurrentFace], TEXTURE_16BIT_PALETTE);
+
+        if ( pPlayers[uPlayerID]->uCurrentFace == 12 || pPlayers[uPlayerID]->uCurrentFace == 13 )
+            {
+            wsprintfA(pContainer, "pc%02dbrd", pPlayers[uPlayerID]->uCurrentFace + 1);
+            papredoll_dbrds[pPlayers[uPlayerID]->uCurrentFace] = pIcons_LOD->LoadTexture(pContainer, TEXTURE_16BIT_PALETTE);
+            }
+        wsprintfA(pContainer, "item281pc%02d", pPlayers[uPlayerID]->uCurrentFace + 1);
+        papredoll_flying_feet[pPlayers[uPlayerID]->uCurrentFace] = pIcons_LOD->LoadTexture(pContainer, TEXTURE_16BIT_PALETTE);
+        IsPlayerWearingWatersuit[uPlayerID] = 0;
+        }
+    }
--- a/mm7_1.cpp	Sun May 26 00:03:16 2013 +0400
+++ b/mm7_1.cpp	Sun May 26 14:13:22 2013 +0400
@@ -67,9 +67,9 @@
   GUIButton *i; // esi@2
   GUIButton *j; // esi@7
 
-  if ( dword_507CC0 )
+  if ( dword_507CC0_activ_ch )
   {
-    dword_507CC0 = 0;
+    dword_507CC0_activ_ch = 0;
     for ( i = pGUIWindow_CurrentMenu->pControlsHead; i; i = j )
     {
 	  j=i->pNext;
@@ -83,10 +83,10 @@
     {
       if ( j->msg == UIMSG_InventoryLeftClick)
       {
-        j->uX = dword_50698C;
-        j->uY = dword_506988;
-        j->uZ = dword_506984;
-        j->uW = dword_506980;
+        j->uX = dword_50698C_uX;
+        j->uY = dword_506988_uY;
+        j->uZ = dword_506984_uZ;
+        j->uW = dword_506980_uW;
         pGUIWindow_CurrentMenu->_41D08F_set_keyboard_control_group(1, 0, 0, 0);
       }
     }
@@ -296,49 +296,49 @@
         return true;
       }
       case VK_NEXT:
-      {
-        if ( pWindowList[v3].field_30 != 0 )
-        {
-          pMouse->GetClickPos(&uClickX, &uClickY);
-          v4 = pWindowList[v3].pStartingPosActiveItem;
-          v29 = v4 + pWindowList[v3].pNumPresenceButton;
-          if ( v4 < v4 + pWindowList[v3].pNumPresenceButton )
-          {
-            while ( 1 )
-            {
-              pButton = pWindowList[v3].pControlsHead;
-              if ( v4 > 0 )
-              {
-                v15 = v4;
-                do
-                {
-                  pButton = pButton->pNext;
-                  --v15;
-                }
-                while ( v15 );
-              }
-              if ( (signed int)uClickX >= (signed int)pButton->uX
-                && (signed int)uClickX <= (signed int)pButton->uZ
-                && (signed int)uClickY >= (signed int)pButton->uY
-                && (signed int)uClickY <= (signed int)pButton->uW )
-              {
-                pWindowList[v3].pCurrentPosActiveItem = v4;
-                return true;
-              }
-              ++v4;
-              if ( v4 >= v29 )
-              {
-                //v1 = 0;
-                //v2 = pMessageQueue_50CBD0->uNumMessages;
-                break;
-              }
-            }
-          }
-          else
-          {
-            //v2 = pMessageQueue_50CBD0->uNumMessages;
-          }
-        }
+      {  
+        //if ( pWindowList[v3].field_30 != 0 )   //crashed at skill draw
+        //{
+        //  pMouse->GetClickPos(&uClickX, &uClickY);
+        //  v4 = pWindowList[v3].pStartingPosActiveItem;
+        //  v29 = v4 + pWindowList[v3].pNumPresenceButton; //num buttons more than buttons 
+        //  if ( v4 < v29 )
+        //  {
+        //    while ( 1 )
+        //    {
+        //      pButton = pWindowList[v3].pControlsHead;
+        //      if ( v4 > 0 )
+        //      {
+        //        v15 = v4;
+        //        do
+        //        {
+        //          pButton = pButton->pNext;
+        //          --v15;
+        //        }
+        //        while ( v15 );
+        //      }
+        //      if ( (signed int)uClickX >= (signed int)pButton->uX
+        //        && (signed int)uClickX <= (signed int)pButton->uZ
+        //        && (signed int)uClickY >= (signed int)pButton->uY
+        //        && (signed int)uClickY <= (signed int)pButton->uW )
+        //      {
+        //        pWindowList[v3].pCurrentPosActiveItem = v4;
+        //        return true;
+        //      }
+        //      ++v4;
+        //      if ( v4 >= v29 )
+        //      {
+        //        //v1 = 0;
+        //        //v2 = pMessageQueue_50CBD0->uNumMessages;
+        //        break;
+        //      }
+        //    }
+        //  }
+        //  else
+        //  {
+        //    //v2 = pMessageQueue_50CBD0->uNumMessages;
+        //  }
+        //}
         break;
       }
       default:
--- a/mm7_5.cpp	Sun May 26 00:03:16 2013 +0400
+++ b/mm7_5.cpp	Sun May 26 14:13:22 2013 +0400
@@ -5938,89 +5938,6 @@
 }
 // A750D8: using guessed type __int64 qword_A750D8;
 
-//----- (0043EF2B) --------------------------------------------------------
-void __fastcall WetsuitOn(unsigned int uPlayerID)
-{
-  unsigned int v1; // ebx@1
-  Player **v2; // esi@2
-  enum CHARACTER_RACE v3; // edi@2
-  signed int v4; // eax@2
-  int v5; // ecx@5
-  unsigned __int8 v6; // al@7
-  char pContainer[20]; // [sp+4h] [bp-1Ch]@7
-  unsigned int v8; // [sp+18h] [bp-8h]@1
-  int v9; // [sp+1Ch] [bp-4h]@7
-
-  v1 = uPlayerID - 1;
-  v8 = uPlayerID;
-  if ( (uPlayerID - 1) >= 0 )
-  {
-    v2 = &pPlayers[uPlayerID];
-    v3 = (*v2)->GetRace();
-    v4 = (*v2)->GetSexByVoice();
-    if ( v3 && v3 != 1 && v3 != 2 )
-      v5 = (v4 != 0) + 3;
-    else
-      v5 = (v4 != 0) + 1;
-    v9 = v5;
-    wsprintfA(pContainer, "pc23v%dBod", v5);
-    papredoll_dbods[v1] = pIcons_LOD->LoadTexture(pContainer, TEXTURE_16BIT_PALETTE);
-    wsprintfA(pContainer, "pc23v%dlad", v9);
-    papredoll_dlads[v1] = pIcons_LOD->LoadTexture(pContainer, TEXTURE_16BIT_PALETTE);
-    wsprintfA(pContainer, "pc23v%dlau", v9);
-    papredoll_dlaus[v1] = pIcons_LOD->LoadTexture(pContainer, TEXTURE_16BIT_PALETTE);
-    wsprintfA(pContainer, "pc23v%drh", v9);
-    papredoll_drhs[v1] = pIcons_LOD->LoadTexture(pContainer, TEXTURE_16BIT_PALETTE);
-    wsprintfA(pContainer, "pc23v%dlh", v9);
-    papredoll_dlhs[v1] = pIcons_LOD->LoadTexture(pContainer, TEXTURE_16BIT_PALETTE);
-    wsprintfA(pContainer, "pc23v%dlhu", v9);
-    papredoll_dlhus[v1] = pIcons_LOD->LoadTexture(pContainer, TEXTURE_16BIT_PALETTE);
-    v6 = pPlayers[v1 + 1]->uCurrentFace;
-    if ( v6 == 12 || v6 == 13 )
-      papredoll_dbrds[pPlayers[v8]->uCurrentFace] = 0;
-    papredoll_flying_feet[pPlayers[v8]->uCurrentFace] = 0;
-    IsPlayerWearingWatersuit[v8] = 1;
-  }
-}
-
-//----- (0043F0BD) --------------------------------------------------------
-unsigned int __fastcall WetsuitOff(unsigned int uPlayerID)
-{
-  unsigned int result; // eax@1
-  Player **v2; // edi@2
-  unsigned int v3; // ebx@2
-  int v4; // ebx@2
-  char v5; // al@2
-  char pContainer[20]; // [sp+0h] [bp-18h]@4
-  unsigned int v7; // [sp+14h] [bp-4h]@1
-
-  result = uPlayerID - 1;
-  v7 = uPlayerID;
-  if ( ((uPlayerID - 1) & 0x80000000u) == 0 )
-  {
-    v2 = &pPlayers[uPlayerID];
-    v3 = uPlayerID - 1;
-    papredoll_dbods[v3] = pIcons_LOD->LoadTexture(dbod_texnames_by_face[(*v2)->uCurrentFace], TEXTURE_16BIT_PALETTE);
-    papredoll_dlads[v3] = pIcons_LOD->LoadTexture(dlad_texnames_by_face[(*v2)->uCurrentFace], TEXTURE_16BIT_PALETTE);
-    papredoll_dlaus[v3] = pIcons_LOD->LoadTexture(dlau_texnames_by_face[(*v2)->uCurrentFace], TEXTURE_16BIT_PALETTE);
-    papredoll_drhs[v3] = pIcons_LOD->LoadTexture(drh_texnames_by_face[(*v2)->uCurrentFace], TEXTURE_16BIT_PALETTE);
-    papredoll_dlhs[v3] = pIcons_LOD->LoadTexture(dlh_texnames_by_face[(*v2)->uCurrentFace], TEXTURE_16BIT_PALETTE);
-    papredoll_dlhus[v3] = pIcons_LOD->LoadTexture(dlhu_texnames_by_face[(*v2)->uCurrentFace], TEXTURE_16BIT_PALETTE);
-    v4 = (int)&(*v2)->uCurrentFace;
-    v5 = *(char *)v4;
-    if ( *(char *)v4 == 12 || v5 == 13 )
-    {
-      wsprintfA(pContainer, "pc%02dbrd", v5 + 1);
-      v4 = (int)&(*v2)->uCurrentFace;
-      papredoll_dbrds[*(char *)v4] = pIcons_LOD->LoadTexture(pContainer, TEXTURE_16BIT_PALETTE);
-    }
-    wsprintfA(pContainer, "item281pc%02d", *(char *)v4 + 1);
-    papredoll_flying_feet[(*v2)->uCurrentFace] = pIcons_LOD->LoadTexture(pContainer, TEXTURE_16BIT_PALETTE);
-    result = v7;
-    IsPlayerWearingWatersuit[v7] = 0;
-  }
-  return result;
-}
 
 //----- (0043F333) --------------------------------------------------------
 void BspRenderer::MakeVisibleSectorList()
@@ -11044,10 +10961,10 @@
     {
       if ( i->msg == UIMSG_InventoryLeftClick )
       {
-        dword_50698C = i->uX;
-        dword_506988 = i->uY;
-        dword_506984 = i->uZ;
-        dword_506980 = i->uW;
+        dword_50698C_uX = i->uX;
+        dword_506988_uY = i->uY;
+        dword_506984_uZ = i->uZ;
+        dword_506980_uW = i->uW;
         i->uW = 0;
         i->uZ = 0;
         i->uY = 0;
@@ -11089,10 +11006,10 @@
     {
       if ( pButton->msg == UIMSG_InventoryLeftClick )
       {
-        pButton->uX = dword_50698C;
-        pButton->uY = dword_506988;
-        pButton->uZ = dword_506984;
-        pButton->uW = dword_506980;
+        pButton->uX = dword_50698C_uX;
+        pButton->uY = dword_506988_uY;
+        pButton->uZ = dword_506984_uZ;
+        pButton->uW = dword_506980_uW;
         pGUIWindow_CurrentMenu->_41D08F_set_keyboard_control_group(1, 0, 0, 0);
       }
     }
--- a/mm7_data.cpp	Sun May 26 00:03:16 2013 +0400
+++ b/mm7_data.cpp	Sun May 26 14:13:22 2013 +0400
@@ -270,14 +270,7 @@
 
 #include "MM7.h"
 
-int paperdoll_Weapon[4][16][2] = {//4E4C30
-  {{128, 205},  {30, 144},  {88,  85},  {0, 0},  {0, 0},  {0, 0},  {17, 104},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0}},
-  {{131, 201},  {38, 158},  {98,  87},  {0, 0},  {0, 0},  {0, 0},  {21, 100},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0}},
-  {{131, 216},  {29, 186},  {88, 119},  {0, 0},  {0, 0},  {0, 0},  {  0,  0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0}},
-  {{123, 216},  {35, 184},  {98, 119},  {0, 0},  {0, 0},  {0, 0},  {  0,  0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0},  {0, 0}},
-};
-int paperdoll_helm_texture[2][16]; //511698
-int paperdoll_belt_texture[2][7];  //511718
+
 stat_coord stat_string_coord[26] = //4E2940
 {
   {0x1A, 0x39, 0xDC, 0x12},
@@ -495,10 +488,7 @@
 __int16 RightClickPortraitXmin[4]={0x14, 0x83, 0xF2, 0x165};
 __int16 RightClickPortraitXmax[4]={0x53, 0xC6, 0x138, 0x1A7};
 void *off_4E2A12; // stat_string_control_button_count
-int pArmorSkills[5]  = {PLAYER_SKILL_LEATHER, PLAYER_SKILL_CHAIN,      PLAYER_SKILL_PLATE,        PLAYER_SKILL_SHIELD,  PLAYER_SKILL_DODGE};
-int pWeaponSkills[9] = {PLAYER_SKILL_AXE,     PLAYER_SKILL_BOW,        PLAYER_SKILL_DAGGER,       PLAYER_SKILL_MACE,    PLAYER_SKILL_SPEAR,      PLAYER_SKILL_STAFF,    PLAYER_SKILL_SWORD,       PLAYER_SKILL_UNARMED,    PLAYER_SKILL_BLASTER};
-int pMiscSkills[12]  = {PLAYER_SKILL_ALCHEMY, PLAYER_SKILL_ARMSMASTER, PLAYER_SKILL_BODYBUILDING, PLAYER_SKILL_ITEM_ID, PLAYER_SKILL_MONSTER_ID, PLAYER_SKILL_LEARNING, PLAYER_SKILL_TRAP_DISARM, PLAYER_SKILL_MEDITATION, PLAYER_SKILL_MERCHANT, PLAYER_SKILL_PERCEPTION, PLAYER_SKILL_REPAIR, PLAYER_SKILL_STEALING};
-int pMagicSkills[9]  = {PLAYER_SKILL_FIRE,    PLAYER_SKILL_AIR,        PLAYER_SKILL_WATER,        PLAYER_SKILL_EARTH,   PLAYER_SKILL_SPIRIT,     PLAYER_SKILL_MIND,     PLAYER_SKILL_BODY,        PLAYER_SKILL_LIGHT,      PLAYER_SKILL_DARK};
+
 unsigned int pHealthBarPos[4] = {22, 137, 251, 366};
 unsigned int pManaBarPos[4] = {102, 217, 331, 447};
 char _4E2B21_buff_spell_tooltip_colors[80];
@@ -533,112 +523,7 @@
 int dword_4E4A40[777]; // weak
 int dword_4E4A44[777]; // weak
 float flt_4E4A80[10];
-int pPaperdoll_BodyX = 481; // 004E4C28
-int pPaperdoll_BodyY = 0;   // 004E4C2C
-int paperdoll_Armor[4][17][2] = //4E4E30
-{
-// X     Y
-  0x2C, 0x67,  0x30, 0x69,  0x2D, 0x67,  0x2C, 0x64,  0x14, 0x66,  0x22, 0x67,  0x20, 0x66,  0x25, 0x66,  0x12, 0x66,//Human
-  0x0A, 0x66,  0x13, 0x64,  0x0E, 0x64,  0x0A, 0x63,  0x14, 0x66,  0x0A, 0x63,  0x0A, 0x66,  0x25, 0x66,
 
-  0x32, 0x68,  0x32, 0x69,  0x35, 0x69,  0x33, 0x68,  0x24, 0x67,  0x30, 0x69,  0x33, 0x68,  0x31, 0x69,  0x19, 0x69,
-  0x19, 0x6A,  0x16, 0x66,  0x16, 0x65,  0x0F, 0x6B,  0x24, 0x67,  0x0F, 0x6B,  0x19, 0x6A,  0x31, 0x69,
-
-  0x2A, 0x8C,  0x29, 0x8C,  0x2A, 0x89,  0x29, 0x86,  0x12, 0x87,  0x2D, 0x89,  0x2A, 0x88,  0x25, 0x87,  0x12, 0x8B,
-  0x12, 0x8B,  0x11, 0x8A,  0x15, 0x87,  0x09, 0x89,  0x12, 0x87,  0x09, 0x89,  0x12, 0x8B,  0x25, 0x87,
-
-  0x33, 0x90,  0x32, 0x90,  0x34, 0x91,  0x32, 0x8E,  0x21, 0x8B,  0x31, 0x8B,  0x33, 0x8E,  0x2F, 0x8F,  0x16, 0x8D,
-  0x18, 0x8C,  0x19, 0x8C,  0x1B, 0x8E,  0x0C, 0x8C,  0x21, 0x8B,  0x0C, 0x8C,  0x18, 0x8C,  0x2F, 0x8F,
-};
-int paperdoll_shoulder[4][17][2] = //4E5050
-{
-  0x64, 0x67,  0x61, 0x67,  0x65, 0x68,  0x6E, 0x74,  0x6C, 0x68,  0x61, 0x67,  0x66, 0x68,  0x6C, 0x6A,  0x6E, 0x6D,
-  0x67, 0x69,  0x70, 0x67,  0x6E, 0x6D,  0x6C, 0x6F,  0x6C, 0x68,  0x6C, 0x6F,  0x67, 0x69,  0x6C, 0x6A,
-
-  0x60, 0x6B,  0x60, 0x6C,  0x60, 0x6B,  0x61, 0x6A,  0x60, 0x69,  0x60, 0x6A,  0x60, 0x6A,  0x61, 0x69,  0x63, 0x6A,
-  0x64, 0x6A,  0x61, 0x66,  0x66, 0x67,  0x64, 0x6C,  0x60, 0x69,  0x64, 0x6C,  0x64, 0x6A,  0x61, 0x69,
-
-  0x6D, 0x8C,  0x75, 0x8C,  0, 0,        0x72, 0x8D,  0x6A, 0x89,  0, 0,        0x73, 0x8C,  0x69, 0x8C,  0x6E, 0x8D,
-  0x71, 0x8D,  0x70, 0x8D,  0x72, 0x8D,  0x74, 0x8E,  0x6A, 0x89,  0x74, 0x8E,  0x71, 0x8D,  0x69, 0x8C,
-
-  0x72, 0x91,  0x72, 0x91,  0, 0,        0x6E, 0x92,  0x6F, 0x91,  0, 0,        0, 0,        0x6E, 0x91,  0x71, 0x90,
-  0x72, 0x8D,  0x72, 0x90,  0x73, 0x93,  0x73, 0x90,  0x6F, 0x91,  0x73, 0x90,  0x72, 0x8D,  0x6E, 0x91,
-};
-int dword_4E5270[4][2] = 
-{
-  0, 0,
-  0x61, 0x67,
-  0, 0,
-  0x64, 0x69,
-};
-int paperdoll_Boot[4][7][2] = //4E5490
-{
-  0xE, 0x11D,    0xD, 0x11D,    0xC, 0x10A,    0xA, 0xFF,    0xD, 0xF9,    0xD, 0x137,   0xC, 0x10E,
-  0x14, 0x125,   0x13, 0x122,   0x15, 0x120,   0x15, 0x114,  0x13, 0x10A,  0x11, 0x13E,  0x11, 0x116,
-  0x1D, 0x121,   0x1C, 0x11F,   0x1B, 0x11B,   0x1C, 0x117,  0x16, 0x116,  0x1B, 0x137,  0x1B, 0x11B,
-  0x1F, 0x127,   0x1F, 0x122,   0x1B, 0x11B,   0x1D, 0x117,  0x1D, 0x116,  0x1D, 0x137,  0x1B, 0x11F,
-};
-int paperdoll_Cloak[4][10][2] = //4E5570
-{
-  0x11, 0x68,  0xF, 0x68,  0x14, 0x71,  0x19, 0x6B,  0x21, 0x6F,  0x5, 0x68,  0x5, 0x68,  0x14, 0x71,  0x3, 0x6B,  0xF, 0x6F,
-  0x15, 0x64,  0xB, 0x6B,  0xE, 0x67,   0x15, 0x6B,  0x1B, 0x6F,  0x3, 0x6B,  0, 0x6B,    0xE, 0x67,   0, 0x6B,    0x3, 0x6F,
-  0x10, 0x8A,  0x9, 0x8B,  0x18, 0x98,  0x25, 0x91,  0x29, 0x90,  0x8, 0x8A,  0x9, 0x8B,  0x18, 0x98,  0x3, 0x91,  0x3, 0x90,
-  0x14, 0x92,  0x10, 0x92, 0x15, 0x98,  0x1F, 0x91,  0x22, 0x90,  0x8, 0x92,  0xC, 0x92,  0x15, 0x98,  0x3, 0x91,  0x3, 0x90,
-};
-int paperdoll_CloakCollar[4][10][2] = //4E56B0
-{
-  0x11, 0x68,  0x34, 0x64,  0x21, 0x69,  0x1D, 0x67,  0x20, 0x67,  0x21, 0x68,  0x34, 0x64,  0x21, 0x69,  0x1D, 0x67,  0x1F, 0x67,
-  0x13, 0x64,  0x35, 0x66,  0x29, 0x68,  0x1F, 0x68,  0x1F, 0x6A,  0x21, 0x6A,  0x2B, 0x66,  0x26, 0x68,  0x1F, 0x68,  0x1F, 0x6A,
-  0, 0,        0x30, 0x87,  0x1E, 0x86,  0x1B, 0x86,  0x1C, 0x8A,  0x21, 0x87,  0x30, 0x87,  0x1E, 0x86,  0x1B, 0x86,  0x1C, 0x8A,
-  0, 0,        0x38, 0x8A,  0x24, 0x8B,  0x1D, 0x8B,  0x21, 0x8C,  0x27, 0x8A,  0x34, 0x8A,  0x24, 0x8B,  0x25, 0x8B,  0x21, 0x8C,
-};
-//int dword_4E56B4; // weak
-int paperdoll_Belt[4][7][2] = //4E57F0
-{
-  0x3A, 0xB6,  0x37, 0xB2,  0x34, 0xB9,  0x3A, 0xB9,  0x37, 0xB7,  0x38, 0xAC,  0x37, 0xB7,
-  0x3E, 0xAD,  0x3A, 0xAC,  0x37, 0xB0,  0x3A, 0xB1,  0x39, 0xB0,  0x3C, 0xA5,  0x39, 0xB0,
-  0x3B, 0xD5,  0x37, 0xD2,  0x31, 0xD5,  0x39, 0xD6,  0x37, 0xD8,  0x37, 0xD1,  0x37, 0xD8,
-  0x42, 0xD2,  0x3F, 0xD0,  0x3B, 0xD7,  0x3C, 0xD5,  0x3B, 0xD6,  0x3E, 0xCF,  0x36, 0xD6,
-};
-int paperdoll_Helm[4][16][2] = //4E58D0
-{
-  0x3E, 0x1F,  0x41, 0x2C,  0x37, 0x2F,  0x31, 0x32,  0x37, 0x2A,  0x39, 0x28,  0x36, 0x34,  0x41, 0x38,  0x40, 0x31,  0x40, 0x21,  0x40, 0x31,  0x3C, 0x33,  0x3D, 0x24,  0x3A, 0x1A,  0x37, 0x2A,  0x41, 0x48,
-  0x41, 0x1E,  0x42, 0x2B,  0x37, 0x2F,  0x34, 0x30,  0x39, 0x29,  0x3A, 0x26,  0x36, 0x34,  0x41, 0x37,  0x42, 0x32,  0x40, 0x21,  0x40, 0x31,  0x40, 0x2F,  0x3E, 0x22,  0x3B, 0x1A,  0x39, 0x29,  0x42, 0x47,
-  0x3F, 0x47,  0x41, 0x56,  0x37, 0x59,  0x32, 0x5E,  0x37, 0x58,  0x39, 0x54,  0x34, 0x61,  0x40, 0x61,  0x41, 0x5D,  0x3E, 0x4F,  0x3E, 0x5B,  0x3D, 0x5B,  0x3F, 0x4C,  0x3B, 0x45,  0x37, 0x58,  0x41, 0x74,
-  0x45, 0x45,  0x46, 0x54,  0x3A, 0x55,  0x38, 0x58,  0x3C, 0x54,  0x3F, 0x52,  0x39, 0x5B,  0x45, 0x5C,  0x47, 0x5C,  0x44, 0x4B,  0x44, 0x57,  0x43, 0x55,  0x44, 0x4A,  0x3E, 0x45,  0x3C, 0x54,  0x47, 0x70,
-};
-int pPaperdoll_Beards[4] = //4E5AD0
-{
- 52, 130, 56, 136,
-};
-int pPaperdoll_LeftHand[4][2] = //4E5AE0
-{
-  0x67, 0x6A,
-  0x65, 0x6C,
-  0x74, 0x8D,
-  0x74, 0x93,
-};
-int pPaperdoll_SecondLeftHand[4][2] = //4E5B00
-{
-  0x1A, 0x6B,
-  0x28, 0x6D,
-  0x19, 0x8D,
-  0x20, 0x92,
-};
-int pPaperdoll_RightHand[4][2] = //4E5B20
-{
-  0x1E, 0x90,
-  0x22, 0x9E,
-  0x19, 0xBA,
-  0x1F, 0xB8,
-};
-int pPaperdollLeftEmptyHand[4][2] = //4E5B40
-{
-  0x80, 0xCD,
-  0x83, 0xC9,
-  0x83, 0xD8,
-  0x7B, 0xD8,
-};
 
 int pPartySpellbuffsUI_XYs[14][2] =
 {
@@ -710,55 +595,7 @@
   "pc21-", "pc22-", "pc23", "pc24-", "pc25-"
 };
 
-const char *dlad_texnames_by_face[25] =
-{
-  "pc01lad", "pc02lad", "pc03lad", "pc04lad", "pc05lad", "pc06lad",
-  "pc07lad", "pc08lad", "pc09lad", "pc10lad", "pc11lad", "pc12lad",
-  "pc13lad", "pc14lad", "pc15lad", "pc16lad", "pc17lad", "pc18lad",
-  "pc19lad", "pc20lad", "pc21lad", "pc22lad", "pc23lad", "pc24lad",
-  "pc25lad"
-};
-const char *dlau_texnames_by_face[25] =
-{
-  "pc01lau", "pc02lau", "pc03lau", "pc04lau", "pc05lau", "pc06lau",
-  "pc07lau", "pc08lau", "pc09lau", "pc10lau", "pc11lau", "pc12lau",
-  "pc13lau", "pc14lau", "pc15lau", "pc16lau", "pc17lau", "pc18lau",
-  "pc19lau", "pc20lau", "pc21lau", "pc22lau", "pc23lau", "pc24lau",
-  "pc25lau"
-};
-const char *dbod_texnames_by_face[25] =
-{
-  "pc01bod", "pc02bod", "pc03bod", "pc04bod", "pc05bod", "pc06bod",
-  "pc07bod", "pc08bod", "pc09bod", "pc10bod", "pc11bod", "pc12bod",
-  "pc13bod", "pc14bod", "pc15bod", "pc16bod", "pc17bod", "pc18bod",
-  "pc19bod", "pc20bod", "pc21bod", "pc22bod", "pc23bod", "pc24bod",
-  "pc25bod"
-};
-const char *drh_texnames_by_face[25] =
-{
 
-  "pc01rh", "pc02rh", "pc03rh", "pc04rh", "pc05rh", "pc06rh",
-  "pc07rh", "pc08rh", "pc09rh", "pc10rh", "pc11rh", "pc12rh",
-  "pc13rh", "pc14rh", "pc15rh", "pc16rh", "pc17rh", "pc18rh",
-  "pc19rh", "pc20rh", "pc21rh", "pc22rh", "pc23rh", "pc24rh",
-  "pc25rh"
-};
-const char *dlh_texnames_by_face[25] =
-{
-  "pc01lh", "pc02lh", "pc03lh", "pc04lh", "pc05lh", "pc06lh",
-  "pc07lh", "pc08lh", "pc09lh", "pc10lh", "pc11lh", "pc12lh",
-  "pc13lh", "pc14lh", "pc15lh", "pc16lh", "pc17lh", "pc18lh",
-  "pc19lh", "pc20lh", "pc21lh", "pc22lh", "pc23lh", "pc24lh",
-  "pc25lh"
-};
-const char *dlhu_texnames_by_face[25] =
-{
-  "pc01lhu", "pc02lhu", "pc03lhu", "pc04lhu", "pc05lhu", "pc06lhu",
-  "pc07lhu", "pc08lhu", "pc09lhu", "pc10lhu", "pc11lhu", "pc12lhu",
-  "pc13lhu", "pc14lhu", "pc15lhu", "pc16lhu", "pc17lhu", "pc18lhu",
-  "pc19lhu", "pc20lhu", "pc21lhu", "pc22lhu", "pc23lhu", "pc24lhu",
-  "pc25lhu"
-};
 
 unsigned char byte_4ECF08[48][25] =      // 4ECF08
 {
@@ -1160,10 +997,10 @@
 //unsigned __int8 bMonsterInfoUI_bDollInitialized;
 char *aSpellNames[44];
 int pMainScreenNum; // weak
-int dword_506980; // weak
-int dword_506984; // weak
-int dword_506988; // weak
-int dword_50698C; // weak
+int dword_506980_uW; // weak
+int dword_506984_uZ; // weak
+int dword_506988_uY; // weak
+int dword_50698C_uX; // weak
 int uGameMenuUI_CurentlySelectedKeyIdx; // 506E68
 unsigned int pPrevVirtualCidesMapping[27];
 int KeyboardPageNum; // weak
@@ -1201,7 +1038,7 @@
 unsigned int uActiveCharacter;
 int dword_507BF0_is_there_popup_onscreen; // weak
 int dword_507CBC; // weak
-int dword_507CC0; // weak
+int dword_507CC0_activ_ch; // weak
 __int64 GameUI_RightPanel_BookFlashTimer; // weak
 int _507CD4_RestUI_hourglass_anim_controller; // weak
 int dword_507CD8; // weak
@@ -1259,19 +1096,7 @@
 unsigned __int8 IsPlayerWearingWatersuit[5];
 char party_has_equipment[54];
 char byte_5111F6[16];
-unsigned int papredoll_dbrds[16];
-unsigned int papredoll_drhs[4];
-unsigned int papredoll_dlhus[4];
-unsigned int papredoll_dlhs[4];
-unsigned int papredoll_dbods[5];
-int paperdoll_armor_texture[4][17][3];
-//int paperdoll_array_51132C[165];
-unsigned int papredoll_dlaus[5];
-unsigned int papredoll_dlads[4];
-int papredoll_flying_feet[777]; // idb
-int paperdoll_boots_texture[4][6];//0x511638
-int paperdoll_cloak_collar_texture[4][10]; // weak
-int paperdoll_cloak_texture[4][10];
+
 int _unused000; // weak
 
 unsigned __int16 pOdmMinimap[117][137];
--- a/mm7_data.h	Sun May 26 00:03:16 2013 +0400
+++ b/mm7_data.h	Sun May 26 14:13:22 2013 +0400
@@ -332,7 +332,6 @@
 extern char aIcons[]; // idb
 extern char aPending[]; // idb
 extern char aCanTFindS[]; // idb
-extern int paperdoll_Weapon[4][16][2];
 extern char *spellbook_texture_filename_suffices[]; // weak
 extern __int16 word_4E1D3A[]; // weak
 extern __int16 pTownPortalBook_xs[6];
@@ -427,10 +426,10 @@
 extern __int16 RightClickPortraitXmin[4];
 extern __int16 RightClickPortraitXmax[4];
 extern void *off_4E2A12; // weak
-extern int pArmorSkills[5];
-extern int pWeaponSkills[9];
-extern int pMiscSkills[12];
-extern int pMagicSkills[9];
+//extern int pArmorSkills[5];
+//extern int pWeaponSkills[9];
+//extern int pMiscSkills[12];
+//extern int pMagicSkills[9];
 extern unsigned int pHealthBarPos[4];
 extern unsigned int pManaBarPos[4];
 extern char _4E2B21_buff_spell_tooltip_colors[80];
@@ -455,23 +454,7 @@
 extern int dword_4E4A40[]; // weak
 extern int dword_4E4A44[]; // weak
 extern float flt_4E4A80[10];
-extern int pPaperdoll_BodyX; // weak
-extern int pPaperdoll_BodyY; // weak
-extern int paperdoll_Armor[4][17][2];
-extern int paperdoll_shoulder[4][17][2];
-extern int paperdoll_helm_texture[2][16];
-extern int paperdoll_belt_texture[2][7];
-extern int dword_4E5270[4][2];
-extern int paperdoll_Boot[4][7][2];
-extern int paperdoll_Cloak[4][10][2];
-extern int paperdoll_CloakCollar[4][10][2];
-extern int paperdoll_Belt[4][7][2];
-extern int paperdoll_Helm[4][16][2];
-extern int pPaperdoll_Beards[4]; // weak
-extern int pPaperdoll_LeftHand[4][2];
-extern int pPaperdoll_SecondLeftHand[4][2];
-extern int pPaperdoll_RightHand[4][2];
-extern int pPaperdollLeftEmptyHand[4][2];
+
 extern int pPartySpellbuffsUI_XYs[14][2];
 extern unsigned char byte_4E5DD8[]; // weak
 extern unsigned __int8 pPartySpellbuffsUI_smthns[14];
@@ -499,12 +482,7 @@
 extern int dword_4EC2A8; // weak
 extern int dword_4EC2AC; // weak
 extern const char *pPlayerPortraitsNames[25];
-extern const char *dlad_texnames_by_face[25];
-extern const char *dlau_texnames_by_face[25];
-extern const char *dbod_texnames_by_face[25];
-extern const char *drh_texnames_by_face[25];
-extern const char *dlh_texnames_by_face[25];
-extern const char *dlhu_texnames_by_face[25];
+
 extern unsigned char byte_4ECF08[48][25];
 extern unsigned char SoundSetAction[110][8]; // weak
 extern __int16 pPlayerPortraitsXCoords_For_PlayerBuffAnimsDrawing[4];
@@ -651,10 +629,10 @@
 //extern unsigned __int8 bMonsterInfoUI_bDollInitialized;
 extern char *aSpellNames[44];
 extern int pMainScreenNum; // weak
-extern int dword_506980; // weak
-extern int dword_506984; // weak
-extern int dword_506988; // weak
-extern int dword_50698C; // weak
+extern int dword_506980_uW; // weak
+extern int dword_506984_uZ; // weak
+extern int dword_506988_uY; // weak
+extern int dword_50698C_uX; // weak
 extern int uGameMenuUI_CurentlySelectedKeyIdx; // 506E68
 extern bool GameMenuUI_InvaligKeyBindingsFlags[28]; // 506E6C
 extern unsigned int pPrevVirtualCidesMapping[27];
@@ -693,7 +671,7 @@
 extern unsigned int uActiveCharacter;
 extern int dword_507BF0_is_there_popup_onscreen; // weak
 extern int dword_507CBC; // weak
-extern int dword_507CC0; // weak
+extern int dword_507CC0_activ_ch; // weak
 extern __int64 GameUI_RightPanel_BookFlashTimer; // weak
 extern int _507CD4_RestUI_hourglass_anim_controller; // weak
 extern int dword_507CD8; // weak
@@ -752,18 +730,7 @@
 extern char party_has_equipment[54];
 extern char byte_5111F6[];
 extern unsigned int papredoll_dbrds[16];
-extern unsigned int papredoll_drhs[4];
-extern unsigned int papredoll_dlhus[4];
-extern unsigned int papredoll_dlhs[4];
-extern unsigned int papredoll_dbods[5];
-extern int paperdoll_armor_texture[4][17][3];//0x511290
-//extern int paperdoll_array_51132C[165];
-extern unsigned int papredoll_dlaus[5];
-extern unsigned int papredoll_dlads[4];
-extern int papredoll_flying_feet[]; // idb
-extern int paperdoll_boots_texture[4][6];
-extern int paperdoll_cloak_collar_texture[4][10]; // weak
-extern int paperdoll_cloak_texture[4][10];
+
 extern int bRingsShownInCharScreen; // weak
 extern int _unused000; // weak
 
@@ -1343,8 +1310,8 @@
 bool __thiscall sub_43EDB9_get_some_race_sex_relation_2(unsigned int _this);
 bool __fastcall Player_has_item(unsigned int uItemID, struct Player *pPlayer, char a3);
 bool __fastcall sub_43EE77_ProbablyIfUnderwaterSuitIsEquipped(signed int a1);
-void __fastcall WetsuitOn(unsigned int uPlayerID); // idb
-unsigned int __fastcall WetsuitOff(unsigned int uPlayerID);
+void  WetsuitOn(unsigned int uPlayerID); // idb
+void  WetsuitOff(unsigned int uPlayerID);
 void __fastcall PrepareDrawLists_BLV(struct IndoorLocation_drawstru *_this);
 int /*__usercall*/ sr_sub_4D6FB0/*<eax>*/(struct stru315 *a1/*<ebp>*/);
 int /*__usercall*/ sr_sub_4D705A/*<eax>*/(struct stru315 *a1/*<ebp>*/);