diff --git a/Speedy Eggbert 2 Source.vcxproj b/Speedy Eggbert 2 Source.vcxproj
index 8c66b5a..e389686 100644
--- a/Speedy Eggbert 2 Source.vcxproj
+++ b/Speedy Eggbert 2 Source.vcxproj
@@ -30,27 +30,27 @@
Application
true
v140_xp
- Unicode
+ NotSet
Application
false
v140_xp
true
- Unicode
+ NotSet
Application
true
v140_xp
- Unicode
+ NotSet
Application
false
v140_xp
true
- Unicode
+ NotSet
@@ -87,6 +87,9 @@
dxsdk3\sdk\lib;%(AdditionalLibraryDirectories)
false
kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ UseFastLinkTimeCodeGeneration
+ true
+ UndefinedSymbolOnly
@@ -101,11 +104,12 @@
UNICODE;_UNICODE
- Console
+ Windows
true
true
true
dxsdk3\sdk\lib;%(AdditionalLibraryDirectories)
+ UndefinedSymbolOnly
@@ -118,9 +122,12 @@
UNICODE;_UNICODE
- Console
+ Windows
true
dxsdk3\sdk\lib;%(AdditionalLibraryDirectories)
+ UseFastLinkTimeCodeGeneration
+ true
+ UndefinedSymbolOnly
@@ -135,11 +142,12 @@
UNICODE;_UNICODE
- Console
+ Windows
true
true
true
dxsdk3\sdk\lib;%(AdditionalLibraryDirectories)
+ UndefinedSymbolOnly
diff --git a/src/decdesign.cpp b/src/decdesign.cpp
index 1a9f441..a524756 100644
--- a/src/decdesign.cpp
+++ b/src/decdesign.cpp
@@ -370,6 +370,7 @@ void CDecor::PlaceItemFromMenu6(POINT cel, int index, BYTE flags, int currentIco
case 10: // Moving bomb
case 11: // Heliported ennemy
case 12: // Motorized ennemy
+ break;
}
}
@@ -604,6 +605,7 @@ void CDecor::PlaceItemFromMenu8(POINT cel, int index, BYTE flags, int currentIco
case 7: // Fragile bridge
case 8: // Wooden case
case 9: // Secret wooden case
+ break;
}
}
@@ -621,6 +623,7 @@ void CDecor::PlaceItemFromMenu9(POINT cel, int index, BYTE flags, int currentIco
case 2: // Skateboard
case 3: // Jeep
case 4: // Glue tank
+ break;
}
}
@@ -641,6 +644,7 @@ void CDecor::PlaceItemFromMenu10(POINT cel, int index, BYTE flags, int currentIc
case 5: // Door
case 6: // Level start
case 7: // Key
+ break;
}
}
diff --git a/src/decmove.cpp b/src/decmove.cpp
index 26707a0..3e6dea4 100644
--- a/src/decmove.cpp
+++ b/src/decmove.cpp
@@ -145,13 +145,13 @@ void CDecor::MoveObjectBlup(POINT pos)
POINT tinyPoint = pos;
while (tinyPoint.y > 0)
{
- int icon = m_decor[(tinyPoint.x + 16) / 64, tinyPoint.y / 64].icon;
+ int icon = m_decor[(tinyPoint.x + 16) / DIMOBJX][tinyPoint.y / DIMOBJY].icon;
if (icon != 91 && icon != 92)
{
break;
}
num++;
- tinyPoint.y -= 64;
+ tinyPoint.y -= DIMOBJY;
}
num--;
if (num <= 0)
@@ -169,7 +169,7 @@ void CDecor::MoveObjectBlup(POINT pos)
m_moveObject[num2].posCurrent.y = pos.y;
m_moveObject[num2].posStart = m_moveObject[num2].posCurrent;
m_moveObject[num2].posEnd.x = pos.x;
- m_moveObject[num2].posEnd.y = pos.y - num * 64;
+ m_moveObject[num2].posEnd.y = pos.y - num * DIMOBJY;
m_moveObject[num2].timeStopStart = 0;
m_moveObject[num2].stepAdvance = num * 10;
m_moveObject[num2].step = 2;
@@ -200,12 +200,9 @@ void CDecor::SetBalleTraj(POINT pos)
BOOL CDecor::IsBalleTraj(POINT pos)
{
- pos.x = (pos.x + 32) / 64;
- pos.y = (pos.y + 32) / 64;
- if (pos.x < 0 || pos.x >= 100 || pos.y < 0 || pos.y >= 100)
- {
- return FALSE;
- }
+ pos.x = (pos.x + DIMOBJX / 2) / DIMOBJX;
+ pos.y = (pos.y + DIMOBJY / 2) / DIMOBJY;
+ if (!IsValidCel(pos)) return FALSE;
int num = pos.y * 13;
num += pos.x / 8;
int num2 = pos.x & 7;
@@ -309,19 +306,24 @@ void CDecor::StartSploutchGlu(POINT pos)
PlaySound(51, pos);
}
-int CDecor::ObjectStart(POINT pos, int type, int speed)
+BOOL CDecor::ObjectStart(POINT pos, int type, int speed)
+{
+ return ObjectStart(pos, type, speed, FALSE);
+}
+
+BOOL CDecor::ObjectStart(POINT pos, int type, int speed, BOOL bMulti)
{
int num = MoveObjectFree();
if (num == -1)
{
- return -1;
+ return FALSE;
}
m_moveObject[num].type = type;
m_moveObject[num].phase = 0;
m_moveObject[num].posCurrent = pos;
m_moveObject[num].posStart = pos;
m_moveObject[num].posEnd = pos;
- MoveObjectStopIcon(num);
+ MoveObjectStepIcon(num);
if (speed != 0)
{
POINT tinyPoint = pos;
@@ -363,10 +365,10 @@ int CDecor::ObjectStart(POINT pos, int type, int speed)
}
if (num3 == 0)
{
- if (type == 23)
+ if (type == TYPE_BALLE)
{
m_moveObject[num].type = 0;
- return num;
+ return TRUE;
}
}
else
@@ -374,12 +376,22 @@ int CDecor::ObjectStart(POINT pos, int type, int speed)
m_moveObject[num].posEnd = tinyPoint;
m_moveObject[num].timeStopStart = 0;
m_moveObject[num].stepAdvance = abs(num2 * num3 / 64);
- m_moveObject[num].step = 2;
+ m_moveObject[num].step = STEP_ADVANCE;
m_moveObject[num].time = 0;
}
}
MoveObjectPriority(num);
- return num;
+ if (bMulti)
+ {
+ NetMessage msg;
+ msg.data1 = speed;
+ msg.type = MESS_OBJECTSTART;
+ msg.x = pos.x;
+ msg.y = pos.y;
+ msg.channel = type;
+ NetMessagePush(&msg);
+ }
+ return TRUE;
}
BOOL CDecor::ObjectDelete(POINT pos, int type)
@@ -420,8 +432,7 @@ BOOL CDecor::ObjectDelete(POINT pos, int type)
void CDecor::MoveObjectStep()
{
- m_blupiVector.x = 0;
- m_blupiVector.y = 0;
+ m_blupiVector = { 0, 0 };
m_blupiTransport = -1;
for (int i = 0; i < MAXMOVEOBJECT; i++)
{
@@ -429,34 +440,36 @@ void CDecor::MoveObjectStep()
{
MoveObjectStepLine(i);
MoveObjectStepIcon(i);
- if (m_moveObject[i].type == 4 ||
- m_moveObject[i].type == 33 ||
- m_moveObject[i].type == 32)
+ if (m_moveObject[i].type == TYPE_BULLDOZER ||
+ m_moveObject[i].type == TYPE_BLUPITANK ||
+ m_moveObject[i].type == TYPE_BLUPIHELICO)
+ {
int num = MovePersoDetect(m_moveObject[i].posCurrent);
- if (num != -1)
- {
- POINT posCurrent = m_moveObject[i].posCurrent;
- posCurrent.x -= 34;
- posCurrent.y -= 34;
- ObjectStart(posCurrent, 8, 0);
- PlaySound(10, m_moveObject[i].posCurrent);
- m_decorAction = 1;
- m_decorPhase = 0;
- posCurrent = m_moveObject[i].posCurrent;
- posCurrent.x += 2;
- posCurrent.y += BLUPIOFFY;
- ObjectDelete(m_moveObject[i].posCurrent, m_moveObject[i].type);
- ObjectStart(posCurrent, 37, 0);
- ObjectDelete(m_moveObject[num].posCurrent, m_moveObject[num].type);
- }
- if (BlupiElectro(m_moveObject[i].posCurrent))
- {
- POINT posCurrent = m_moveObject[i].posCurrent;
- posCurrent.x += 2;
- posCurrent.y += BLUPIOFFY;
- ObjectDelete(m_moveObject[i].posCurrent, m_moveObject[i].type);
- ObjectStart(posCurrent, 38, 55);
- PlaySound(59, posCurrent);
+ if (num != -1)
+ {
+ POINT posCurrent = m_moveObject[i].posCurrent;
+ posCurrent.x -= 34;
+ posCurrent.y -= 34;
+ ObjectStart(posCurrent, TYPE_EXPLO1, 0, TRUE);
+ PlaySound(10, m_moveObject[i].posCurrent);
+ m_decorAction = 1;
+ m_decorPhase = 0;
+ posCurrent = m_moveObject[i].posCurrent;
+ posCurrent.x += 2;
+ posCurrent.y += BLUPIOFFY;
+ ObjectDelete(m_moveObject[i].posCurrent, m_moveObject[i].type);
+ ObjectStart(posCurrent, 37, 0);
+ ObjectDelete(m_moveObject[num].posCurrent, m_moveObject[num].type);
+ }
+ if (BlupiElectro(m_moveObject[i].posCurrent))
+ {
+ POINT posCurrent = m_moveObject[i].posCurrent;
+ posCurrent.x += 2;
+ posCurrent.y += BLUPIOFFY;
+ ObjectDelete(m_moveObject[i].posCurrent, m_moveObject[i].type);
+ ObjectStart(posCurrent, 38, 55);
+ PlaySound(59, posCurrent);
+ }
}
}
}
@@ -542,7 +555,7 @@ void CDecor::MoveObjectStepLine(int i)
{
if (m_moveObject[i].posCurrent.x != m_moveObject[i].posEnd.x || m_moveObject[i].posCurrent.x != m_moveObject[i].posEnd.y)
{
- m_moveObject[i].time = moveOm_moveObjectbject2[i].time + 1;
+ m_moveObject[i].time ++;
if (m_moveObject[i].stepAdvance != 0)
{
m_moveObject[i].posCurrent.x = (m_moveObject[i].posEnd.x - m_moveObject[i].posStart.x) * m_moveObject[i].time / m_moveObject[i].stepAdvance + m_moveObject[i].posStart.x;
@@ -571,7 +584,7 @@ void CDecor::MoveObjectStepLine(int i)
{
if (m_moveObject[i].time < m_moveObject[i].timeStopEnd)
{
- m_moveObject[i].time = moveObject3[i].time + 1;
+ m_moveObject[i].time ++;
}
else
{
@@ -583,7 +596,7 @@ void CDecor::MoveObjectStepLine(int i)
{
if (m_moveObject[i].posCurrent.x != m_moveObject[i].posStart.x || m_moveObject[i].posCurrent.y != m_moveObject[i].posStart.y)
{
- m_moveObject[i].time = moveObject4[i].time + 1;
+ m_moveObject[i].time ++;
if (m_moveObject[i].stepRecede != 0)
{
m_moveObject[i].posCurrent.x = (m_moveObject[i].posStart.x - m_moveObject[i].posEnd.x) *
@@ -836,7 +849,7 @@ void CDecor::MoveObjectStepIcon(int i)
}
if (m_moveObject[i].type == 8)
{
- if (m_moveObject[i].phase >= table_explo1->length)
+ if (m_moveObject[i].phase >= table_explo1[0])
{
m_moveObject[i].type = 0;
}
@@ -978,7 +991,6 @@ void CDecor::MoveObjectStepIcon(int i)
m_moveObject[i].channel = 9;
}
}
- TinyPoint pos;
if (m_moveObject[i].type == 52)
{
if (m_moveObject[i].phase == 0)
@@ -1479,8 +1491,7 @@ void CDecor::MoveObjectStepIcon(int i)
m_moveObject[i].icon = 178;
m_moveObject[i].channel = 10;
}
- MoveObject[] moveObject = m_moveObject;
- moveObject[i].phase = moveObject[i].phase + 1;
+ m_moveObject[i].phase ++;
if (m_moveObject[i].phase > 32700)
{
m_moveObject[i].phase = 0;
@@ -1514,7 +1525,7 @@ void CDecor::DynamiteStart(int i, int dx, int dy)
{
if (tinyPoint.x >= 0 && tinyPoint.x < 100 && tinyPoint.y >= 0 && tinyPoint.y < 100)
{
- int icon = m_decor[tinyPoint.x, tinyPoint.y].icon;
+ int icon = m_decor[tinyPoint.x][tinyPoint.y].icon;
if (icon == 378 || icon == 379 || icon == 404 || icon == 410)
{
POINT pos;
@@ -1553,11 +1564,10 @@ void CDecor::DynamiteStart(int i, int dx, int dy)
int icon2 = m_moveObject[m_linkCaisse[l]].icon;
POINT posCurrent = m_moveObject[m_linkCaisse[l]].posCurrent;
double num = (double)Random(7, 23);
- if (m_random->next(0, 100) % 2 == 0)
+ if (rand() % 2 == 0)
{
num = -num;
}
- ByeByeAdd(channel, icon2, posCurrent, num, 1.0);
m_moveObject[m_linkCaisse[l]].type = 0;
}
ObjectDelete(m_moveObject[i].posCurrent, m_moveObject[i].type);
@@ -1636,29 +1646,30 @@ int CDecor::AscenseurDetect(RECT rect, POINT oldpos, POINT newpos)
void CDecor::AscenseurVertigo(int i, BOOL* pbVertigoLeft, BOOL* pbVertigoRight)
{
- pbVertigoLeft = FALSE;
- pbVertigoRight = FALSE;
+ *pbVertigoLeft = FALSE;
+
+ *pbVertigoRight = FALSE;
if (m_blupiPos.x + 20 + 4 < m_moveObject[i].posCurrent.x)
{
- pbVertigoLeft = TRUE;
+ *pbVertigoLeft = TRUE;
}
if (m_blupiPos.x + 60 - 20 - 4 > m_moveObject[i].posCurrent.x + 64)
{
- pbVertigoRight = TRUE;
+ *pbVertigoRight = TRUE;
}
if (AscenseurShift(i))
{
- if (pbVertigoLeft)
+ if (*pbVertigoLeft)
{
- pbVertigoLeft = FALSE;
- pbVertigoRight = TRUE;
+ *pbVertigoLeft = FALSE;
+ *pbVertigoRight = TRUE;
m_blupiTimeNoAsc = 10;
return;
}
- if (pbVertigoRight)
+ if (*pbVertigoRight)
{
- pbVertigoRight = FALSE;
- pbVertigoLeft = TRUE;
+ *pbVertigoRight = FALSE;
+ *pbVertigoLeft = TRUE;
m_blupiTimeNoAsc = 10;
}
}
@@ -1722,14 +1733,15 @@ BOOL CDecor::TestPushCaisse(int i, POINT pos, BOOL bPop)
BOOL CDecor::TestPushOneCaisse(int i, POINT move, int b)
{
-
+ // TODO
+ return FALSE;
}
void CDecor::SearchLinkCaisse(int rank, BOOL bPop)
{
m_nbLinkCaisse = 0;
AddLinkCaisse(rank);
- POINT posCurrent = m_moveObject;
+ POINT posCurrent = m_moveObject[rank].posCurrent;
BOOL flag;
do
@@ -1740,15 +1752,15 @@ void CDecor::SearchLinkCaisse(int rank, BOOL bPop)
int num = m_linkCaisse[i];
if (m_moveObject[num].posCurrent.y <=
posCurrent.y && (!bPop || (m_moveObject
- [num].posCurrent.x >= posCurrent.x - 32 &&
+ [num].posCurrent.x >= posCurrent.x - DIMOBJX / 2 &&
m_moveObject[num].posCurrent.x <=
- posCurrent.x + 32)))
+ posCurrent.x + DIMOBJX / 2)))
{
RECT src;
src.left = m_moveObject[num].posCurrent.x - 1;
src.top = m_moveObject[num].posCurrent.y - 1;
- src.right = src.left + 64 + 1;
- src.bottom = src.top + 64 + 1;
+ src.right = src.left + DIMOBJX + 1;
+ src.bottom = src.top + DIMOBJY + 1;
for (int j = 0; j < m_nbRankCaisse; j++)
{
int num2 = m_rankCaisse[j];
@@ -1845,9 +1857,9 @@ int CDecor::MockeryDetect(POINT pos)
POINT tinyPoint;
tinyPoint.x = pos.x + 30;
tinyPoint.y = pos.y + 30 + 64;
- if (tinyPoint.x >= 0 && tinyPoint.x < 6400 && tinyPoint.y >= 0 && tinyPoint.y < 6400)
+ if (tinyPoint.x >= 0 && tinyPoint.x < DIMOBJX*MAXCELX && tinyPoint.y >= 0 && tinyPoint.y < DIMOBJY*MAXCELY)
{
- int icon = m_decor[tinyPoint.x / 64, tinyPoint.y / 64].icon;
+ int icon = m_decor[tinyPoint.x / DIMOBJX][tinyPoint.y / DIMOBJY].icon;
if (icon == 68 || icon == 317)
{
return 64;
@@ -1992,9 +2004,10 @@ int CDecor::MoveObjectDetect(POINT pos, BOOL* pbNear)
m_moveObject[i].type != 12)
{
RECT src3;
-
+ // TODO
}
}
+ return -1;
}
int CDecor::MoveAscenseurDetect(POINT pos, int height)
@@ -2081,7 +2094,8 @@ int CDecor::MovePersoDetect(POINT pos)
int CDecor::MoveBalleDetect(POINT pos)
{
-
+ // TODO
+ return -1;
}
int CDecor::MoveObjectDelete(POINT cel)
@@ -2134,7 +2148,7 @@ int CDecor::SortGetType(int type)
void CDecor::MoveObjectSort()
{
- MoveObject src = default(MoveObject);
+ MoveObject src;
int num = 0;
for (int i = 0; i < MAXMOVEOBJECT; i++)
{
diff --git a/src/decor.cpp b/src/decor.cpp
index 3ae879e..028d5f3 100644
--- a/src/decor.cpp
+++ b/src/decor.cpp
@@ -27,6 +27,11 @@ inline BOOL IsValidCel(POINT cel)
return cel.x >= 0 && cel.x < MAXCELX && cel.y >= 0 && cel.y < MAXCELY;
}
+inline void MoveObjectCopy(MoveObject src, MoveObject dest)
+{
+ memcpy(&dest, &src, sizeof(dest));
+}
+
inline void CDecor::StopVehicleSound()
{
StopSound(SOUND_HELICOHIGH);
diff --git a/src/decor.h b/src/decor.h
index 7b13bfa..9a38fd2 100644
--- a/src/decor.h
+++ b/src/decor.h
@@ -213,10 +213,11 @@ public:
int SearchDistRight(POINT pos, POINT dir, int type);
void StartSploutchGlu(POINT pos);
BOOL ObjectStart(POINT pos, int type, int speed);
+ BOOL ObjectStart(POINT pos, int type, int speed, BOOL bMulti);
BOOL ObjectDelete(POINT pos, int type);
void MoveObjectStep();
void MoveObjectStepLine(int i);
- void* MoveObjectStepIcon(int i);
+ void MoveObjectStepIcon(int i);
void DynamiteStart(int i, int dx, int dy);
int AscenseurDetect(RECT rect, POINT oldpos, POINT newpos);
void AscenseurVertigo(int i, BOOL *pbVertigoLeft, BOOL *pbVertigoRight);
@@ -430,4 +431,5 @@ protected:
POINT GetCel(int x, int y);
POINT GetCel(POINT cel, int x, int y);
inline BOOL IsValidCel(POINT cel);
+inline void MoveObjectCopy(MoveObject src, MoveObject dest);
POINT GetVector(int direct);
\ No newline at end of file
diff --git a/src/dectables.h b/src/dectables.h
index d83d9fb..9990daa 100644
--- a/src/dectables.h
+++ b/src/dectables.h
@@ -266,536 +266,52 @@ extern int table_cle[12]
extern int table_cle1[12]
{
- 209, 210, 211, 212, 213, 214, 215, 214, 213, 212,
- 211, 210
+ 209, 210, 211, 212, 213, 214, 215, 214, 213, 212, 211, 210
};
extern int table_cle2[12]
{
- 220, 221, 222, 221, 220, 219, 218, 217, 216, 217,
- 218, 219
+ 220, 221, 222, 221, 220, 219, 218, 217, 216, 217, 218, 219
+};
+
+extern int table_cle3[12]
+{
+ 229, 228, 227, 226, 225, 224, 223, 224, 225, 226, 227, 228
};
extern int table_decor_action[]
{
- 1,
- 32,
- -4,
- 4,
- 4,
- -3,
- -4,
- 2,
- 4,
- 5,
- -4,
- -1,
- 4,
- 2,
- -4,
- -4,
- 4,
- -3,
- -3,
- 2,
- 3,
- 2,
- -3,
- -5,
- 3,
- 4,
- -3,
- 5,
- 3,
- -2,
- -3,
- 5,
- 3,
- 4,
- -2,
- -2,
- 2,
- 4,
- -2,
- -2,
- 2,
- -2,
- -2,
- -4,
- 2,
- 2,
- -2,
- -2,
- 2,
- -3,
- -1,
- -3,
- 1,
- -2,
- -1,
- -1,
- 1,
- 2,
- -1,
- -2,
- 1,
- -1,
- -1,
- 1,
- 1,
- 2,
- 2,
- 32,
- -4,
- 0,
- 4,
- 0,
- -4,
- 0,
- 4,
- 0,
- -4,
- 0,
- 4,
- 0,
- -4,
- 0,
- 4,
- 0,
- -3,
- 0,
- 3,
- 0,
- -3,
- 0,
- 3,
- 0,
- -3,
- 0,
- 3,
- 0,
- -3,
- 0,
- 3,
- 0,
- -2,
- 0,
- 2,
- 0,
- -2,
- 0,
- 2,
- 0,
- -2,
- 0,
- 2,
- 0,
- -2,
- 0,
- 2,
- 0,
- -1,
- 0,
- 1,
- 0,
- -1,
- 0,
- 1,
- 0,
- -1,
- 0,
- 1,
- 0,
- -1,
- 0,
- 1,
- 0,
- 5,
- 192,
- 0,
- -32,
- 0,
- 32,
- 0,
- -16,
- 0,
- 6,
- 0,
- -8,
- 0,
- 8,
- 0,
- -4,
- 0,
- 4,
- 0,
- -2,
- 0,
- 2,
- -7,
- 0,
- -6,
- 0,
- -5,
- 0,
- -4,
- 0,
- -2,
- 0,
- 0,
- 0,
- 2,
- 0,
- 4,
- 0,
- 5,
- 0,
- 6,
- 0,
- 7,
- 0,
- 7,
- 0,
- 6,
- 0,
- 5,
- 0,
- 4,
- 0,
- 2,
- 0,
- 0,
- 0,
- -2,
- 0,
- -4,
- 0,
- -5,
- 0,
- -6,
- 0,
- -7,
- 0,
- -7,
- 0,
- -6,
- 0,
- -5,
- 0,
- -4,
- 0,
- -2,
- 0,
- 0,
- 0,
- 2,
- 0,
- 4,
- 0,
- 5,
- 0,
- 6,
- 0,
- 7,
- 0,
- 7,
- 0,
- 6,
- 0,
- 5,
- 0,
- 4,
- 0,
- 2,
- 0,
- 0,
- 0,
- -2,
- 0,
- -4,
- 0,
- -5,
- 0,
- -6,
- 0,
- -7,
- 0,
- -7,
- 0,
- -6,
- 0,
- -5,
- 0,
- -4,
- 0,
- -2,
- 0,
- 0,
- 0,
- 2,
- 0,
- 4,
- 0,
- 5,
- 0,
- 6,
- 0,
- 7,
- 0,
- 7,
- 0,
- 6,
- 0,
- 5,
- 0,
- 4,
- 0,
- 2,
- 0,
- 0,
- 0,
- -2,
- 0,
- -4,
- 0,
- -5,
- 0,
- -6,
- 0,
- -7,
- 0,
- -7,
- 0,
- -6,
- 0,
- -5,
- 0,
- -4,
- 0,
- -2,
- 0,
- 0,
- 0,
- 2,
- 0,
- 4,
- 0,
- 5,
- 0,
- 6,
- 0,
- 7,
- 0,
- 7,
- 0,
- 6,
- 0,
- 5,
- 0,
- 4,
- 0,
- 2,
- 0,
- 0,
- 0,
- -2,
- 0,
- -4,
- 0,
- -5,
- 0,
- -6,
- 0,
- -7,
- 0,
- -7,
- 0,
- -6,
- 0,
- -5,
- 0,
- -4,
- 0,
- -2,
- 0,
- 0,
- 0,
- 2,
- 0,
- 4,
- 0,
- 5,
- 0,
- 6,
- 0,
- 7,
- 0,
- 7,
- 0,
- 6,
- 0,
- 5,
- 0,
- 4,
- 0,
- 2,
- 0,
- 0,
- 0,
- -2,
- 0,
- -4,
- 0,
- -5,
- 0,
- -6,
- 0,
- -7,
- 0,
- -7,
- 0,
- -6,
- 0,
- -5,
- 0,
- -4,
- 0,
- -2,
- 0,
- 0,
- 0,
- 2,
- 0,
- 4,
- 0,
- 5,
- 0,
- 6,
- 0,
- 7,
- 0,
- 7,
- 0,
- 6,
- 0,
- 5,
- 0,
- 4,
- 0,
- 2,
- 0,
- 0,
- 0,
- -2,
- 0,
- -4,
- 0,
- -5,
- 0,
- -6,
- 0,
- -7,
- 0,
- -7,
- 0,
- -6,
- 0,
- -5,
- 0,
- -4,
- 0,
- -2,
- 0,
- 0,
- 0,
- 2,
- 0,
- 4,
- 0,
- 5,
- 0,
- 6,
- 0,
- 7,
- 0,
- 7,
- 0,
- 6,
- 0,
- 5,
- 0,
- 4,
- 0,
- 2,
- 0,
- 0,
- 0,
- -2,
- 0,
- -4,
- 0,
- -5,
- 0,
- -6,
- 0,
- -7,
- 0,
- -7,
- 0,
- -6,
- 0,
- -5,
- 0,
- -4,
- 0,
- -2,
- 0,
- 0,
- 0,
- 2,
- 0,
- 4,
- 0,
- 5,
- 0,
- 6,
- 0,
- 7,
- 0,
- 7,
- 0,
- 6,
- 0,
- 5,
- 0,
- 4,
- 0,
- 2,
- 0,
- 0,
- 0,
- -2,
- 0,
- -4,
- 0,
- -5,
- 0,
- -6,
- 0,
- -7,
- 0,
- -7,
- 0,
- -6,
- 0,
- -5,
- 0,
- -4,
- 0,
- -2,
- 0,
- -1,
- 0,
+ 1,32,
+ -4,4, 4,-3, -4,2, 4,5, -4,-1, 4,2, -4,-4, 4,-3, -3,2, 3,2,
+ -3,-5, 3,4, -3,5, 3,-2, -3,5, 3,4, -2,-2, 2,4, -2,-2, 2,-2,
+ -2,-4, 2,2, -2,-2, 2,-3, -1,-3, 1,-2, -1,-1, 1,2, -1,-2, 1,-1,
+ -1,1, 1,2,
+ 2,32,
+ -4,0, 4,0, -4,0, 4,0, -4,0, 4,0, -4,0, 4,0, -3,0, 3,0,
+ -3,0, 3,0, -3,0, 3,0, -3,0, 3,0, -2,0, 2,0, -2,0, 2,0,
+ -2,0, 2,0, -2,0, 2,0, -1,0, 1,0, -1,0, 1,0, -1,0, 1,0,
+ -1,0, 1,0,
+ 5,192,
+ 0,-32, 0,32, 0,-16, 0,6, 0,-8, 0,8, 0,-4, 0,4, 0,-2, 0,2,
+ -7,0, -6,0, -5,0, -4,0, -2,0, 0,0, 2,0, 4,0, 5,0, 6,0,
+ 7,0, 7,0, 6,0, 5,0, 4,0, 2,0, 0,0, -2,0, -4,0, -5,0,
+ -6,0, -7,0, -7,0, -6,0, -5,0, -4,0, -2,0, 0,0, 2,0, 4,0,
+ 5,0, 6,0, 7,0, 7,0, 6,0, 5,0, 4,0, 2,0, 0,0, -2,0, -4,0,
+ -5,0, -6,0, -7,0, -7,0, -6,0, -5,0, -4,0, -2,0, 0,0, 2,0,
+ 4,0, 5,0, 6,0, 7,0, 7,0, 6,0, 5,0, 4,0, 2,0, 0,0,
+ -2,0, -4,0, -5,0, -6,0, -7,0, -7,0, -6,0, -5,0, -4,0, -2,0,
+ 0,0, 2,0, 4,0, 5,0, 6,0, 7,0, 7,0, 6,0, 5,0, 4,0,
+ 2,0, 0,0, -2,0, -4,0, -5,0, -6,0, -7,0, -7,0, -6,0, -5,0,
+ -4,0, -2,0, 0,0, 2,0, 4,0, 5,0, 6,0, 7,0, 7,0, 6,0,
+ 5,0, 4,0, 2,0, 0,0, -2,0, -4,0, -5,0, -6,0, -7,0, -7,0,
+ -6,0, -5,0, -4,0, -2,0, 0,0, 2,0, 4,0, 5,0, 6,0, 7,0,
+ 7,0, 6,0, 5,0, 4,0, 2,0, 0,0, -2,0, -4,0, -5,0, -6,0,
+ -7,0, -7,0, -6,0, -5,0, -4,0, -2,0, 0,0, 2,0, 4,0, 5,0,
+ 6,0, 7,0, 7,0, 6,0, 5,0, 4,0, 2,0, 0,0, -2,0, -4,0,
+ -5,0, -6,0, -7,0, -7,0, -6,0, -5,0, -4,0, -2,0, 0,0, 2,0,
+ 4,0, 5,0, 6,0, 7,0, 7,0, 6,0, 5,0, 4,0, 2,0, 0,0,
+ -2,0, -4,0, -5,0, -6,0, -7,0, -7,0, -6,0, -5,0, -4,0, -2,0,
+ -1,0,
0
};
@@ -938,8 +454,6 @@ extern int table_tresortrack[]
166
};
-extern int table_decor_lave[]{ 8, 68, 69, 70, 71, 72, 71, 70, 69 };
-
extern int table_decor_piege1[]
{
16,
@@ -974,7 +488,7 @@ extern int table_decor_eau1[]{ 6, 92, 93, 94, 95, 94, 93 };
extern int table_decor_eau2[]{ 6, 91, 96, 97, 98, 97, 96 };
-extern int table_decor_ventillog[]{ 3, 126, 127, 128 };
+
extern int table_decor_ventillod[]{ 3, 129, 130, 131 };
@@ -982,7 +496,7 @@ extern int table_decor_ventilloh[]{ 3, 132, 133, 134 };
extern int table_decor_ventillob[]{ 3, 135, 136, 137 };
-extern int table_decor_ventg[]{ 4, 110, 111, 112, 113 };
+
extern int table_decor_ventd[]{ 4, 114, 115, 116, 117 };
@@ -992,14 +506,46 @@ extern int table_decor_ventb[]{ 4, 122, 123, 124, 125 };
extern int table_marine[]
{
- 0,
- 2,
- 5,
- 8,
- 3,
- 0
+ 0, 2, 5, 8, 3, 0
};
+extern int table_36418[]{ 14, 10, 2, 3, 4, 5, 6, 7, 8, 9, 1, 11, 12, 13, 14 };
+extern int table_36458[]{ 10, 19, 20, 21, 23, 24, 25, 26, 27, 28, 29 };
+extern int table_36488[]{ 4, 15, 16, 17, 18 };
+extern int table_364a0[]{ 2, 73, 22 };
+extern int table_364b0[]{ 7, 78, 79, 80, 81, 82, 83, 84 };
+extern int table_364d0[]{ 4, 87, 88, 89, 90 };
+extern int table_364e8[]{ 2, 85, 86 };
+extern int table_364f8[]{ 5, 396, 388, 389, 390, 391 };
+extern int table_36510[]{ 3, 398, 399, 400 };
+extern int table_36520[]{ 3, 87, 88, 89 };
+extern int table_36530[]{ 1, 0x99 };
+extern int table_36538[]{ 2, 0x9a, 0x9b };
+extern int table_36548[]{ 1, 0xb9 };
+extern int table_36550[]{ 7, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f };
+extern int table_36570[]{ 12, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xe6, 0xe7, 0xe9, 0xea };
+extern int table_365a8[]{ 8, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe8 };
+extern int table_365d0[]{ 1, 0x9d };
+extern int table_365d8[]{ 5, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f };
+extern int table_365f0[]{ 7, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, 0xc0 };
+extern int table_36610[]{ 5, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5 };
+extern int table_decor_lave[]{ 8, 68, 69, 70, 71, 72, 71, 70, 69 };
+extern int table_36630[]{ 2, 0x5b, 0x5c };
+extern int table_decor_ventillog[]{ 3, 126, 127, 128 };
+extern int table_decor_ventg[]{ 4, 110, 111, 112, 113 };
+extern int table_36670[]{ 11, 0x4c, 0x4d, 0xc7, 0xc6, 0xc8, 0xc9, 0xeb, 0xec, 0x177, 0x178, 0x179 };
+extern int table_366a0[]{ 3, 0x193, 0x191, 0x192 };
+extern int table_366b0[]{ 3, 20, 21, 22 };
+extern int table_366c0[]{ 4, 16, 17, 18, 19 };
+extern int table_366d8[]{ 3, 23, 24, 25 };
+extern int table_366e8[]{ 2, 0x1a, 0x1b };
+extern int table_366f8[]{ 4, 0x1c, 0x1d, 0x1e, 0x1f };
+extern int table_36710[]{ 12, 0x2d, 0x2e, 0x2f, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c};
+extern int table_36748[]{ 4, 0x42, 0x43, 0x44, 0x45 };
+
+
+
+
extern int table_ressort[] // i dont really care to look this up right now so heres some bs
{
8,1,2,3,4,5,5,6,7,7