# HG changeset patch # User Ritor1 # Date 1367406391 -21600 # Node ID 7cbe4f80e3221bba1d85d0a51c45cc832014b1f4 # Parent ffc32cabc5f546689c4f518d6105660ffebe8bbc# Parent 4dd4184d42483e8aea3298ba5d3df99e131242c9 Слияние diff -r ffc32cabc5f5 -r 7cbe4f80e322 Arcomage.cpp --- a/Arcomage.cpp Wed May 01 17:06:18 2013 +0600 +++ b/Arcomage.cpp Wed May 01 17:06:31 2013 +0600 @@ -17,6 +17,46 @@ +void sub_409BE8(); + + + + +/* 388 */ +#pragma pack(push, 1) +struct stru348 +{ + __int16 field_0; + __int16 field_2; + __int16 field_4; + __int16 field_6; + __int16 field_8; + __int16 field_A; + __int16 field_C; + __int16 field_E; + __int16 field_10; + __int16 field_12; + int field_14; +}; +#pragma pack(pop) +stru348 stru_4E1890[13] = +{ + { 30, 100, 15, 5, 2, 2, 2, 10, 10, 10, 0}, + { 50, 150, 20, 5, 2, 2, 2, 5, 5, 5, 1}, + { 50, 150, 20, 5, 2, 2, 2, 5, 5, 5, 2}, + { 75, 200, 25, 10, 3, 3, 3, 5, 5, 5, 2}, + { 75, 200, 20, 10, 3, 3, 3, 5, 5, 5, 1}, + {100, 300, 30, 15, 4, 4, 4, 10, 10, 10, 1}, + {100, 300, 30, 15, 4, 4, 4, 10, 10, 10, 2}, + {150, 400, 20, 10, 5, 5, 5, 25, 25, 25, 0}, + {200, 500, 20, 10, 1, 1, 1, 15, 15, 15, 2}, + {100, 300, 20, 50, 1, 1, 5, 5, 5, 25, 0}, + {125, 350, 10, 20, 3, 1, 2, 15, 5, 10, 2}, + {125, 350, 10, 20, 3, 1, 2, 15, 5, 10, 1}, + {100, 300, 50, 50, 5, 3, 5, 20, 10, 20, 0} +}; + + ArcomageGame *pArcomageGame = new ArcomageGame; @@ -1401,12 +1441,9 @@ } while ( (signed int)v4 <= (signed int)&unk_4FAA20 ); } -// 40DFA7: using guessed type uint __stdcall retzero_sub_40DFA7(uint); -// 4E1874: using guessed type int dword_4E1874; -// 4FAA24: using guessed type char byte_4FAA24; -// 4FAA2C: using guessed type char byte_4FAA2C; -// 4FAA70: using guessed type int dword_4FAA70; -// 4FAA77: using guessed type char am_byte_4FAA77; + + + //----- (00409FE9) -------------------------------------------------------- char __cdecl am_409FE9() @@ -5798,3 +5835,37 @@ v1->bGameInProgress = 0; v1->field_F9 = 0; } + + + + + + +//----- (00409BE8) -------------------------------------------------------- +void __cdecl sub_409BE8() +{ + void *v0; // eax@1 + stru348 *v1; // eax@1 + int v2; // ecx@1 + int v3; // eax@1 + + v0 = window_SpeakInHouse->ptr_1C; + dword_4E1874 = 5; + v1 = &stru_4E1890[(int)((char *)v0 - 108)]; + amuint_4E1860 = v1->field_4; + amuint_4E1864 = v1->field_6; + amuint_4E1868 = v1->field_8 - 1; + amuint_4E186C = v1->field_A - 1; + amuint_4E1870 = v1->field_C - 1; + amuint_505884 = v1->field_E; + amuint_505888 = v1->field_10; + amuint_50588C = v1->field_12; + dword_4E1878 = 1; + dword_4E187C = 1; + dword_4E1880 = 1; + dword_4E1884 = v1->field_0; + v2 = v1->field_2; + v3 = v1->field_14; + dword_4E1888 = v2; + dword_4DF3A4 = v3; +} \ No newline at end of file diff -r ffc32cabc5f5 -r 7cbe4f80e322 Items.h --- a/Items.h Wed May 01 17:06:18 2013 +0600 +++ b/Items.h Wed May 01 17:06:31 2013 +0600 @@ -387,4 +387,19 @@ +10 Water Resistance and +2 Alchemy skill. 70 Prevents damage from drowning. 71 Prevents damage from falling. 72 -*/ \ No newline at end of file +*/ + + +/* 391 */ +#pragma pack(push, 1) +struct stru351_summoned_item +{ + int field_0_expire_second; + int field_4_expire_minute; + int field_8_expire_hour; + int field_C_expire_day; + int field_10_expire_week; + int field_14_exprie_month; + int field_18_expire_year; +}; +#pragma pack(pop) \ No newline at end of file diff -r ffc32cabc5f5 -r 7cbe4f80e322 MM7.h --- a/MM7.h Wed May 01 17:06:18 2013 +0600 +++ b/MM7.h Wed May 01 17:06:31 2013 +0600 @@ -32,33 +32,6 @@ #include "VectorTypes.h" #include "IndoorCameraD3D.h" -/*#include "LOD.h" -#include "Texture.h" -#include "Mouse.h" -#include "Overlays.h" -#include "Game.h" -#include "Items.h" -#include "Actor.h" -#include "Arcomage.h" -#include "Render.h" -#include "Time.h" -#include "GUIWindow.h" -#include "GUIButton.h" -#include "GUIProgressBar.h" -#include "GUIFont.h" -#include "NPC.h" -#include "PaletteManager.h" -#include "Party.h" -#include "AudioPlayer.h" -#include "VideoPlayer.h" -#include "Chest.h" -#include "Allocator.h" -#include "IndoorCamera.h" -#include "Party.h" -#include "Outdoor.h" - -#include "mm7_data.h" -*/ @@ -66,35 +39,8 @@ -/* 285 */ -#pragma pack(push, 1) -struct stru289 -{ - //----- (0046263C) -------------------------------------------------------- - inline stru289() - { - this->field_64 = 2; - this->field_74 = 0; - this->field_70 = 0; - this->field_6C = 0; - this->field_68 = 0; - } - - - char field_0[100]; - int field_64; - int field_68; - int field_6C; - int field_70; - int field_74; -}; -#pragma pack(pop) -extern stru289 stru_6BE158; - - - /* 288 */ -#pragma pack(push, 1) +/*#pragma pack(push, 1) struct CheckHRESULT_stru0 { void CheckHRESULT(HRESULT a2, const char *Str, int a4, unsigned int uType); @@ -105,7 +51,7 @@ void (__thiscall ***vdestructor_ptr)(CheckHRESULT_stru0 *, bool); }; -#pragma pack(pop) +#pragma pack(pop)*/ @@ -141,40 +87,10 @@ -/* 369 */ -#pragma pack(push, 1) - -#pragma pack(pop) -extern int paperdoll_Weapon[4][16][2]; - -/* 371 */ // stru331 - deleted -/* 372 */ -#pragma pack(push, 1) -/*struct stru332 -{ - unsigned int texids[11]; - int texid1; - int texid2; - int texid3; - int texid4; - int texid5; -};*/ -#pragma pack(pop) -extern int paperdoll_helm_texture[2][16]; -/* 373 */ -#pragma pack(push, 1) -/*struct stru333 -{ - unsigned int texids[5]; - int texid1; - int texid2; -};*/ -#pragma pack(pop) -extern int paperdoll_belt_texture[2][7]; /* 374 */ @@ -204,38 +120,3 @@ }; #pragma pack(pop) - - - - - - - - - - - - -/* 388 */ -#pragma pack(push, 1) -struct stru348 -{ - __int16 field_0; - __int16 field_2; - __int16 field_4; - __int16 field_6; - __int16 field_8; - __int16 field_A; - __int16 field_C; - __int16 field_E; - __int16 field_10; - __int16 field_12; - int field_14; -}; -#pragma pack(pop) - -extern stru348 stru_4E1890[13]; - - - - diff -r ffc32cabc5f5 -r 7cbe4f80e322 UIBooks.cpp --- a/UIBooks.cpp Wed May 01 17:06:18 2013 +0600 +++ b/UIBooks.cpp Wed May 01 17:06:31 2013 +0600 @@ -40,7 +40,6 @@ #include "StorylineTextTable.h" #include "Events2D.h" #include "texts.h" -#include "stru351.h" #include "mm7_data.h" diff -r ffc32cabc5f5 -r 7cbe4f80e322 UICharacter.cpp --- a/UICharacter.cpp Wed May 01 17:06:18 2013 +0600 +++ b/UICharacter.cpp Wed May 01 17:06:31 2013 +0600 @@ -40,7 +40,6 @@ #include "StorylineTextTable.h" #include "Events2D.h" #include "texts.h" -#include "stru351.h" #include "mm7_data.h" @@ -1251,7 +1250,7 @@ int pY_ArmorShoulder; // ecx@237 int v106; // edx@238 int v107; // edx@239 - int v108; // edx@240 + int v108; // edx@240papredoll_flying_feet int v109; // edi@250 char *v110; // edx@250 unsigned int pCloakCollarNum; // eax@259 @@ -2422,6 +2421,8 @@ if (Player_has_item(ITEM_RARE_VAMPIRES_CAPE, player, 1)) byte_5111F6[15] = 1; if (Player_has_item(ITEM_ELVEN_CHAINMAIL, player, 1)) byte_5111F6[16] = 1; } + + for (uint i = 0; i < 2; ++i) { for ( uint j = 0; j < 5; ++j )//Belt @@ -2455,7 +2456,7 @@ if ( sub_43EDB9_get_some_race_sex_relation_2(i) ) { GetItemTextureFilename(pContainer, 524, i + 1, 0); - paperdoll_belt_texture[i][6] = pIcons_LOD->LoadTexture(pContainer, TEXTURE_16BIT_PALETTE);//Titans belt + paperdoll_belt_texture[i][5] = pIcons_LOD->LoadTexture(pContainer, TEXTURE_16BIT_PALETTE);//Titans belt pItemTXTNum = 66; for ( v32 = 0; v32 < 13; ++v32 )//simple armor { diff -r ffc32cabc5f5 -r 7cbe4f80e322 UIMainMenu.cpp --- a/UIMainMenu.cpp Wed May 01 17:06:18 2013 +0600 +++ b/UIMainMenu.cpp Wed May 01 17:06:31 2013 +0600 @@ -40,7 +40,6 @@ #include "StorylineTextTable.h" #include "Events2D.h" #include "texts.h" -#include "stru351.h" #include "mm7_data.h" diff -r ffc32cabc5f5 -r 7cbe4f80e322 UIOptions.cpp --- a/UIOptions.cpp Wed May 01 17:06:18 2013 +0600 +++ b/UIOptions.cpp Wed May 01 17:06:31 2013 +0600 @@ -40,7 +40,6 @@ #include "StorylineTextTable.h" #include "Events2D.h" #include "texts.h" -#include "stru351.h" #include "mm7_data.h" diff -r ffc32cabc5f5 -r 7cbe4f80e322 UIPartyCreation.cpp --- a/UIPartyCreation.cpp Wed May 01 17:06:18 2013 +0600 +++ b/UIPartyCreation.cpp Wed May 01 17:06:31 2013 +0600 @@ -40,7 +40,6 @@ #include "StorylineTextTable.h" #include "Events2D.h" #include "texts.h" -#include "stru351.h" #include "mm7_data.h" diff -r ffc32cabc5f5 -r 7cbe4f80e322 UIPopup.cpp --- a/UIPopup.cpp Wed May 01 17:06:18 2013 +0600 +++ b/UIPopup.cpp Wed May 01 17:06:31 2013 +0600 @@ -40,7 +40,6 @@ #include "StorylineTextTable.h" #include "Events2D.h" #include "texts.h" -#include "stru351.h" #include "mm7_data.h" diff -r ffc32cabc5f5 -r 7cbe4f80e322 UIRest.cpp --- a/UIRest.cpp Wed May 01 17:06:18 2013 +0600 +++ b/UIRest.cpp Wed May 01 17:06:31 2013 +0600 @@ -40,7 +40,6 @@ #include "StorylineTextTable.h" #include "Events2D.h" #include "texts.h" -#include "stru351.h" #include "mm7_data.h" @@ -48,7 +47,7 @@ //----- (0041F6C1) -------------------------------------------------------- void __cdecl RestUI_Initialize() - { +{ Player *v0; // eax@10 if ( !dword_506F14 ) diff -r ffc32cabc5f5 -r 7cbe4f80e322 UISaveLoad.cpp --- a/UISaveLoad.cpp Wed May 01 17:06:18 2013 +0600 +++ b/UISaveLoad.cpp Wed May 01 17:06:31 2013 +0600 @@ -40,7 +40,6 @@ #include "StorylineTextTable.h" #include "Events2D.h" #include "texts.h" -#include "stru351.h" #include "mm7_data.h" diff -r ffc32cabc5f5 -r 7cbe4f80e322 UiGame.cpp --- a/UiGame.cpp Wed May 01 17:06:18 2013 +0600 +++ b/UiGame.cpp Wed May 01 17:06:31 2013 +0600 @@ -41,7 +41,6 @@ #include "StorylineTextTable.h" #include "Events2D.h" #include "texts.h" -#include "stru351.h" #include "UIHouses.h" #include "mm7_data.h" diff -r ffc32cabc5f5 -r 7cbe4f80e322 mm7_1.cpp --- a/mm7_1.cpp Wed May 01 17:06:18 2013 +0600 +++ b/mm7_1.cpp Wed May 01 17:06:31 2013 +0600 @@ -46,7 +46,6 @@ #include "StorylineTextTable.h" #include "Events2D.h" #include "texts.h" -#include "stru351.h" #include "UIHouses.h" #include "mm7_data.h" diff -r ffc32cabc5f5 -r 7cbe4f80e322 mm7_2.cpp --- a/mm7_2.cpp Wed May 01 17:06:18 2013 +0600 +++ b/mm7_2.cpp Wed May 01 17:06:31 2013 +0600 @@ -27,7 +27,6 @@ #include "DecorationList.h" #include "SaveLoad.h" #include "stru123.h" -#include "stru287.h" #include "stru176.h" #include "Time.h" #include "IconFrameTable.h" @@ -45,7 +44,6 @@ #include "CastSpellInfo.h" #include "stru298.h" #include "stru12.h" -#include "stru351.h" #include "Events2D.h" #include "stru159.h" #include "Log.h" diff -r ffc32cabc5f5 -r 7cbe4f80e322 mm7_3.cpp --- a/mm7_3.cpp Wed May 01 17:06:18 2013 +0600 +++ b/mm7_3.cpp Wed May 01 17:06:31 2013 +0600 @@ -26,7 +26,6 @@ #include "DecorationList.h" #include "SaveLoad.h" #include "stru123.h" -#include "stru287.h" #include "Time.h" #include "IconFrameTable.h" #include "TurnEngine.h" diff -r ffc32cabc5f5 -r 7cbe4f80e322 mm7_4.cpp --- a/mm7_4.cpp Wed May 01 17:06:18 2013 +0600 +++ b/mm7_4.cpp Wed May 01 17:06:31 2013 +0600 @@ -28,7 +28,6 @@ #include "DecorationList.h" #include "SaveLoad.h" #include "stru123.h" -#include "stru287.h" #include "Time.h" #include "IconFrameTable.h" #include "GUIProgressBar.h" @@ -45,7 +44,6 @@ #include "CastSpellInfo.h" #include "stru298.h" #include "stru12.h" -#include "stru351.h" #include "Events2D.h" #include "stru159.h" #include "texts.h" diff -r ffc32cabc5f5 -r 7cbe4f80e322 mm7_5.cpp --- a/mm7_5.cpp Wed May 01 17:06:18 2013 +0600 +++ b/mm7_5.cpp Wed May 01 17:06:31 2013 +0600 @@ -9317,49 +9317,6 @@ return v5; } -//----- (00409BE8) -------------------------------------------------------- -void __cdecl sub_409BE8() -{ - void *v0; // eax@1 - stru348 *v1; // eax@1 - int v2; // ecx@1 - int v3; // eax@1 - - v0 = window_SpeakInHouse->ptr_1C; - dword_4E1874 = 5; - v1 = &stru_4E1890[(int)((char *)v0 - 108)]; - amuint_4E1860 = v1->field_4; - amuint_4E1864 = v1->field_6; - amuint_4E1868 = v1->field_8 - 1; - amuint_4E186C = v1->field_A - 1; - amuint_4E1870 = v1->field_C - 1; - amuint_505884 = v1->field_E; - amuint_505888 = v1->field_10; - amuint_50588C = v1->field_12; - dword_4E1878 = 1; - dword_4E187C = 1; - dword_4E1880 = 1; - dword_4E1884 = v1->field_0; - v2 = v1->field_2; - v3 = v1->field_14; - dword_4E1888 = v2; - dword_4DF3A4 = v3; -} -// 4DF3A4: using guessed type int dword_4DF3A4; -// 4E1860: using guessed type int amuint_4E1860; -// 4E1864: using guessed type int amuint_4E1864; -// 4E1868: using guessed type int amuint_4E1868; -// 4E186C: using guessed type int amuint_4E186C; -// 4E1870: using guessed type int amuint_4E1870; -// 4E1874: using guessed type int dword_4E1874; -// 4E1878: using guessed type int dword_4E1878; -// 4E187C: using guessed type int dword_4E187C; -// 4E1880: using guessed type int dword_4E1880; -// 4E1884: using guessed type int dword_4E1884; -// 4E1888: using guessed type int dword_4E1888; -// 505884: using guessed type int amuint_505884; -// 505888: using guessed type int amuint_505888; -// 50588C: using guessed type int amuint_50588C; //----- (0040D75D) -------------------------------------------------------- char __fastcall pPrimaryWindow_draws_text(int a1, const char *pText, int *pXY) diff -r ffc32cabc5f5 -r 7cbe4f80e322 mm7_data.cpp --- a/mm7_data.cpp Wed May 01 17:06:18 2013 +0600 +++ b/mm7_data.cpp Wed May 01 17:06:31 2013 +0600 @@ -51,9 +51,6 @@ #include "stru298.h" stru298 stru_50FE08; // weak -#include "stru287.h" -stru287 stru_5E4C50; - #include "Autonotes.h" Autonote pAutonoteTxt[195]; // weak @@ -273,16 +270,15 @@ #include "MM7.h" -stru289 stru_6BE158; int paperdoll_Weapon[4][16][2] = {//4E4C30 - 0x80, 0xCD, 0x1E, 0x90, 0x58, 0x55, 0, 0, 0, 0, 0, 0, 0x11, 0x68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0x83, 0xC9, 0x26, 0x9E, 0x62, 0x57, 0, 0, 0, 0, 0, 0, 0x15, 0x64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0x83, 0xD8, 0x1D, 0xBA, 0x58, 0x77, 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, - 0x7B, 0xD8, 0x23, 0xB8, 0x62, 0x77, 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, + {{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]; -int paperdoll_belt_texture[2][7]; -stat_coord stat_string_coord[26] = //0x4E2940 +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}, {0x1A, 0x4A, 0xDC, 0x12}, @@ -311,7 +307,6 @@ {0x111, 0x129, 0xBA, 0x12}, {0x13E, 0x12, 0x89, 0x12}, }; -stru348 stru_4E1890[13]; @@ -682,9 +677,9 @@ char aInvalidDevic_0[777]; // idb char aEWorkMsdevMm_3[777]; // idb char aErrorNoMouseFo[22]; // weak -int pPaperdoll_BodyX = 481; -int pPaperdoll_BodyY = 0; -int paperdoll_Armor[4][17][2] = //0x4E4E30 +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 @@ -699,7 +694,7 @@ 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] = +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, @@ -727,14 +722,14 @@ 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] = //0x4E5570 +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] = //0x4E56B0 +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, @@ -742,48 +737,46 @@ 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] = //0x4E57F0 +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] = //0x4E58D0 +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 dword_4E58D4[777]; // HelmY 31 -int pPaperdoll_Beards[4] = //0x4E5AD0 +int pPaperdoll_Beards[4] = //4E5AD0 { 52, 130, 56, 136, }; -int dword_4E5AD4[777]; // weak -int pPaperdoll_LeftHand[4][2] = +int pPaperdoll_LeftHand[4][2] = //4E5AE0 { 0x67, 0x6A, 0x65, 0x6C, 0x74, 0x8D, 0x74, 0x93, }; -int pPaperdoll_SecondLeftHand[4][2] = +int pPaperdoll_SecondLeftHand[4][2] = //4E5B00 { 0x1A, 0x6B, 0x28, 0x6D, 0x19, 0x8D, 0x20, 0x92, }; -int pPaperdoll_RightHand[4][2] = //fist +int pPaperdoll_RightHand[4][2] = //4E5B20 { 0x1E, 0x90, 0x22, 0x9E, 0x19, 0xBA, 0x1F, 0xB8, }; -int pPaperdollLeftEmptyHand[4][2] = //0x4E5B40 +int pPaperdollLeftEmptyHand[4][2] = //4E5B40 { 0x80, 0xCD, 0x83, 0xC9, @@ -794,10 +787,6 @@ int pPaperdollRingsY[6] = {0x0CA, 0x0CA, 0x0CA, 0x0FA, 0x0FA, 0x0FA}; char aItem092v3[777]; // idb char aIbCd5D[777]; // idb -char aAr_dn_dn[777]; // idb -char aAr_dn_up[777]; // idb -char aAr_up_dn[777]; // idb -char aAr_up_up[777]; // idb char aItem281pc02d[777]; // idb char aPc02dbrd[777]; // idb char aPc23vDlhu[777]; // idb diff -r ffc32cabc5f5 -r 7cbe4f80e322 mm7_data.h --- a/mm7_data.h Wed May 01 17:06:18 2013 +0600 +++ b/mm7_data.h Wed May 01 17:06:31 2013 +0600 @@ -342,6 +342,7 @@ extern char aPending[]; // idb extern char aCanTFindS[]; // idb extern char pDayMoonPhase[28]; +extern int paperdoll_Weapon[4][16][2]; extern char *spellbook_texture_filename_suffices[]; // weak extern __int16 word_4E1D3A[]; // weak extern __int16 pTownPortalBook_xs[6]; @@ -603,16 +604,15 @@ 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 dword_4E56B4; // weak extern int paperdoll_Belt[4][7][2]; extern int paperdoll_Helm[4][16][2]; -//extern int dword_4E58D4[]; // weak extern int pPaperdoll_Beards[4]; // weak -extern int dword_4E5AD4[]; // weak extern int pPaperdoll_LeftHand[4][2]; extern int pPaperdoll_SecondLeftHand[4][2]; extern int pPaperdoll_RightHand[4][2]; @@ -621,10 +621,6 @@ extern int pPaperdollRingsY[6]; extern char aItem092v3[]; // idb extern char aIbCd5D[]; // idb -extern char aAr_dn_dn[]; // idb -extern char aAr_dn_up[]; // idb -extern char aAr_up_dn[]; // idb -extern char aAr_up_up[]; // idb extern char aItem281pc02d[]; // idb extern char aPc02dbrd[]; // idb extern char aPc23vDlhu[]; // idb @@ -1538,8 +1534,6 @@ unsigned int __fastcall SearchActorByMonsterID(unsigned int *pTotalActors, int uMonsterID); unsigned int __fastcall SearchActorByGroup(unsigned int *pTotalActors, unsigned int uGroup); unsigned int __fastcall SearchActorByID(unsigned int *pTotalActors, unsigned int a2); -// char __usercall am_408BB4(int a1, int a2); -void __cdecl sub_409BE8(); void __cdecl PrepareArcomage(); char __cdecl am_409FE9(); char __cdecl am_40A198(); diff -r ffc32cabc5f5 -r 7cbe4f80e322 stru287.h --- a/stru287.h Wed May 01 17:06:18 2013 +0600 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,12 +0,0 @@ -#pragma once - - - -/* 281 */ -#pragma pack(push, 1) -struct stru287 -{ - char field_0[24]; -}; -#pragma pack(pop) -extern stru287 stru_5E4C50; \ No newline at end of file diff -r ffc32cabc5f5 -r 7cbe4f80e322 stru351.h --- a/stru351.h Wed May 01 17:06:18 2013 +0600 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,16 +0,0 @@ -#pragma once - - -/* 391 */ -#pragma pack(push, 1) -struct stru351_summoned_item -{ - int field_0_expire_second; - int field_4_expire_minute; - int field_8_expire_hour; - int field_C_expire_day; - int field_10_expire_week; - int field_14_exprie_month; - int field_18_expire_year; -}; -#pragma pack(pop) \ No newline at end of file diff -r ffc32cabc5f5 -r 7cbe4f80e322 texts.cpp --- a/texts.cpp Wed May 01 17:06:18 2013 +0600 +++ b/texts.cpp Wed May 01 17:06:31 2013 +0600 @@ -1,7 +1,6 @@ #include #include "Allocator.h" -#include "stru287.h" #include "LOD.h" #include "mm7_data.h" #include "texts.h" @@ -46,7 +45,6 @@ pSomeItemsNames[11] = pGlobalTXT_LocalizationStrings[281]; pSomeItemsNames[12] = pGlobalTXT_LocalizationStrings[282]; pSomeItemsNames[13] = pGlobalTXT_LocalizationStrings[143]; - memset(&stru_5E4C50, 0, sizeof(stru_5E4C50)); } //----- (00452C30) --------------------------------------------------------