diff Arcomage.cpp @ 938:016e3577865c

stru289 removed, some data movements
author Nomad
date Wed, 01 May 2013 13:45:31 +0200
parents b462b598b97a
children c0d0656aa662
line wrap: on
line diff
--- a/Arcomage.cpp	Wed May 01 12:45:02 2013 +0200
+++ b/Arcomage.cpp	Wed May 01 13:45:31 2013 +0200
@@ -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