Browse Source

Clean up M_Start*

pull/25/head
Anders Jenbo 8 years ago committed by Dennis Duda
parent
commit
c8e2794715
  1. 312
      Source/monster.cpp

312
Source/monster.cpp

@ -1895,234 +1895,146 @@ void __fastcall M_StartWalk(int i, int xvel, int yvel, int xadd, int yadd, int E
void __fastcall M_StartWalk2(int i, int xvel, int yvel, int xoff, int yoff, int xadd, int yadd, int EndDir) void __fastcall M_StartWalk2(int i, int xvel, int yvel, int xoff, int yoff, int xadd, int yadd, int EndDir)
{ {
int v8; // esi int fx = xadd + monster[i]._mx;
int v9; // edx int fy = yadd + monster[i]._my;
int v10; // ecx
int v11; // eax
int v12; // eax
bool v13; // zf
CMonster *v14; // edx
int v15; // [esp+Ch] [ebp-8h]
int ia; // [esp+10h] [ebp-4h]
int EndDira; // [esp+28h] [ebp+14h]
v15 = xvel; dMonster[monster[i]._mx][monster[i]._my] = -(i + 1);
ia = i; monster[i]._mVar1 = monster[i]._mx;
v8 = i; monster[i]._mVar2 = monster[i]._my;
v9 = xadd + monster[i]._mx; monster[i]._moldx = monster[i]._mx;
EndDira = monster[i]._mx; monster[i]._moldy = monster[i]._my;
v10 = monster[i]._my; monster[i]._mx = fx;
v11 = monster[v8]._my; monster[i]._my = fy;
monster[v8]._mVar2 = v10; monster[i]._mfutx = fx;
dMonster[0][v10 + 112 * EndDira] = -1 - ia; monster[i]._mfuty = fy;
monster[v8]._mVar1 = EndDira; dMonster[fx][fy] = i + 1;
monster[v8]._moldx = EndDira; if ( monster[i]._uniqtype )
v12 = yadd + v11; ChangeLightXY(monster[i].mlid, monster[i]._mx, monster[i]._my);
monster[v8]._moldy = v10; monster[i]._mxoff = xoff;
v13 = monster[v8]._uniqtype == 0; monster[i]._myoff = yoff;
monster[v8]._mx = v9; monster[i]._mmode = MM_WALK2;
monster[v8]._my = v12; monster[i]._mxvel = xvel;
monster[v8]._mfutx = v9; monster[i]._myvel = yvel;
monster[v8]._mfuty = v12; monster[i]._mVar3 = EndDir;
dMonster[0][v12 + 112 * v9] = ia + 1; monster[i]._mdir = EndDir;
if ( !v13 ) NewMonsterAnim(i, &monster[i].MType->Anims[MA_WALK], EndDir);
ChangeLightXY((unsigned char)monster[v8].mlid, v9, v12); monster[i]._mVar6 = 16 * xoff;
v14 = monster[v8].MType; monster[i]._mVar7 = 16 * yoff;
monster[v8]._mxvel = v15; monster[i]._mVar8 = 0;
monster[v8]._myvel = yvel; M_CheckEFlag(i);
monster[v8]._mxoff = xoff;
monster[v8]._myoff = yoff;
monster[v8]._mmode = MM_WALK2;
monster[v8]._mVar3 = EndDir;
monster[v8]._mdir = EndDir;
NewMonsterAnim(ia, &v14->Anims[MA_WALK], EndDir);
monster[v8]._mVar8 = 0;
monster[v8]._mVar6 = 16 * xoff;
monster[v8]._mVar7 = 16 * yoff;
M_CheckEFlag(ia);
} }
void __fastcall M_StartWalk3(int i, int xvel, int yvel, int xoff, int yoff, int xadd, int yadd, int mapx, int mapy, int EndDir) void __fastcall M_StartWalk3(int i, int xvel, int yvel, int xoff, int yoff, int xadd, int yadd, int mapx, int mapy, int EndDir)
{ {
int v10; // esi int fx = xadd + monster[i]._mx;
int v11; // ebx int fy = yadd + monster[i]._my;
int v12; // edi int x = mapx + monster[i]._mx;
int v13; // edi int y = mapy + monster[i]._my;
int v14; // ebx
int v15; // ecx
CMonster *v16; // edx
int v17; // [esp+Ch] [ebp-8h]
int ia; // [esp+10h] [ebp-4h]
int a6a; // [esp+28h] [ebp+14h]
int a7a; // [esp+2Ch] [ebp+18h]
ia = i;
v10 = i;
v11 = monster[i]._my;
v12 = monster[i]._mx;
v17 = xvel;
a6a = v12 + xadd;
a7a = v11 + yadd;
v13 = mapx + v12;
v14 = mapy + v11;
if ( monster[i]._uniqtype ) if ( monster[i]._uniqtype )
ChangeLightXY((unsigned char)monster[v10].mlid, v13, v14); ChangeLightXY(monster[i].mlid, x, y);
v15 = monster[v10]._my + 112 * monster[v10]._mx;
monster[v10]._mVar4 = v13; dMonster[monster[i]._mx][monster[i]._my] = -(i + 1);
dMonster[0][v15] = -1 - ia; dMonster[fx][fy] = -(i + 1);
monster[v10]._mVar5 = v14; monster[i]._mVar4 = x;
dMonster[0][a7a + 112 * a6a] = -1 - ia; monster[i]._mVar5 = y;
monster[v10]._moldx = monster[v10]._mx; dFlags[x][y] |= DFLAG_MONSTER;
monster[v10]._moldy = monster[v10]._my; monster[i]._moldx = monster[i]._mx;
monster[v10]._mfutx = a6a; monster[i]._moldy = monster[i]._my;
monster[v10]._mxvel = v17; monster[i]._mfutx = fx;
dFlags[v13][v14] |= DFLAG_MONSTER; monster[i]._mfuty = fy;
v16 = monster[v10].MType; monster[i]._mxoff = xoff;
monster[v10]._myvel = yvel; monster[i]._myoff = yoff;
monster[v10]._mfuty = a7a; monster[i]._mmode = MM_WALK3;
monster[v10]._mVar1 = a6a; monster[i]._mxvel = xvel;
monster[v10]._mVar2 = a7a; monster[i]._myvel = yvel;
monster[v10]._mxoff = xoff; monster[i]._mVar1 = fx;
monster[v10]._myoff = yoff; monster[i]._mVar2 = fy;
monster[v10]._mmode = MM_WALK3; monster[i]._mVar3 = EndDir;
monster[v10]._mVar3 = EndDir; monster[i]._mdir = EndDir;
monster[v10]._mdir = EndDir; NewMonsterAnim(i, &monster[i].MType->Anims[MA_WALK], EndDir);
NewMonsterAnim(ia, &v16->Anims[MA_WALK], EndDir); monster[i]._mVar6 = 16 * xoff;
monster[v10]._mVar8 = 0; monster[i]._mVar7 = 16 * yoff;
monster[v10]._mVar6 = 16 * xoff; monster[i]._mVar8 = 0;
monster[v10]._mVar7 = 16 * yoff; M_CheckEFlag(i);
M_CheckEFlag(ia);
} }
void __fastcall M_StartAttack(int i) void __fastcall M_StartAttack(int i)
{ {
int v1; // edi int md = M_GetDir(i);
int v2; // ebx NewMonsterAnim(i, &monster[i].MType->Anims[MA_ATTACK], md);
int v3; // esi monster[i]._mmode = MM_ATTACK;
int v4; // ecx monster[i]._mxoff = 0;
int v5; // eax monster[i]._myoff = 0;
monster[i]._mfutx = monster[i]._mx;
v1 = i; monster[i]._mfuty = monster[i]._my;
v2 = M_GetDir(i); monster[i]._moldx = monster[i]._mx;
v3 = v1; monster[i]._moldy = monster[i]._my;
NewMonsterAnim(v1, &monster[v1].MType->Anims[MA_ATTACK], v2); monster[i]._mdir = md;
v4 = monster[v1]._my; M_CheckEFlag(i);
v5 = monster[v1]._mx;
monster[v3]._mxoff = 0;
monster[v3]._myoff = 0;
monster[v3]._mfuty = v4;
monster[v3]._moldy = v4;
monster[v3]._mmode = MM_ATTACK;
monster[v3]._mfutx = v5;
monster[v3]._moldx = v5;
monster[v3]._mdir = v2;
M_CheckEFlag(v1);
} }
void __fastcall M_StartRAttack(int i, int missile_type, int dam) void __fastcall M_StartRAttack(int i, int missile_type, int dam)
{ {
int v3; // ebp int md = M_GetDir(i);
int v4; // edi NewMonsterAnim(i, &monster[i].MType->Anims[MA_ATTACK], md);
int v5; // ebx monster[i]._mmode = MM_RATTACK;
int v6; // esi monster[i]._mVar1 = missile_type;
int v7; // ecx monster[i]._mVar2 = dam;
int v8; // eax monster[i]._mxoff = 0;
monster[i]._myoff = 0;
v3 = missile_type; monster[i]._mfutx = monster[i]._mx;
v4 = i; monster[i]._mfuty = monster[i]._my;
v5 = M_GetDir(i); monster[i]._moldx = monster[i]._mx;
v6 = v4; monster[i]._moldy = monster[i]._my;
NewMonsterAnim(v4, &monster[v4].MType->Anims[MA_ATTACK], v5); monster[i]._mdir = md;
v7 = monster[v4]._my; M_CheckEFlag(i);
monster[v6]._mxoff = 0;
monster[v6]._myoff = 0;
monster[v6]._mVar2 = dam;
v8 = monster[v4]._mx;
monster[v6]._mfuty = v7;
monster[v6]._moldy = v7;
monster[v6]._mmode = MM_RATTACK;
monster[v6]._mVar1 = v3;
monster[v6]._mfutx = v8;
monster[v6]._moldx = v8;
monster[v6]._mdir = v5;
M_CheckEFlag(v4);
} }
void __fastcall M_StartRSpAttack(int i, int missile_type, int dam) void __fastcall M_StartRSpAttack(int i, int missile_type, int dam)
{ {
int v3; // ebp int md = M_GetDir(i);
int v4; // edi NewMonsterAnim(i, &monster[i].MType->Anims[MA_SPECIAL], md);
int v5; // ebx monster[i]._mmode = MM_RSPATTACK;
int v6; // esi monster[i]._mVar1 = missile_type;
int v7; // ecx monster[i]._mVar2 = 0;
int v8; // eax monster[i]._mVar3 = dam;
monster[i]._mxoff = 0;
v3 = missile_type; monster[i]._myoff = 0;
v4 = i; monster[i]._mfutx = monster[i]._mx;
v5 = M_GetDir(i); monster[i]._mfuty = monster[i]._my;
v6 = v4; monster[i]._moldx = monster[i]._mx;
NewMonsterAnim(v4, &monster[v4].MType->Anims[MA_SPECIAL], v5); monster[i]._moldy = monster[i]._my;
monster[v6]._mmode = MM_RSPATTACK; monster[i]._mdir = md;
monster[v6]._mVar2 = 0; M_CheckEFlag(i);
monster[v6]._mVar3 = dam;
v7 = monster[v4]._my;
monster[v6]._mxoff = 0;
monster[v6]._myoff = 0;
v8 = monster[v4]._mx;
monster[v6]._mfuty = v7;
monster[v6]._moldy = v7;
monster[v6]._mVar1 = v3;
monster[v6]._mfutx = v8;
monster[v6]._moldx = v8;
monster[v6]._mdir = v5;
M_CheckEFlag(v4);
} }
void __fastcall M_StartSpAttack(int i) void __fastcall M_StartSpAttack(int i)
{ {
int v1; // edi int md = M_GetDir(i);
int v2; // ebx NewMonsterAnim(i, &monster[i].MType->Anims[MA_SPECIAL], md);
int v3; // esi monster[i]._mmode = MM_SATTACK;
int v4; // ecx monster[i]._mxoff = 0;
int v5; // eax monster[i]._myoff = 0;
monster[i]._mfutx = monster[i]._mx;
v1 = i; monster[i]._mfuty = monster[i]._my;
v2 = M_GetDir(i); monster[i]._moldx = monster[i]._mx;
v3 = v1; monster[i]._moldy = monster[i]._my;
NewMonsterAnim(v1, &monster[v1].MType->Anims[MA_SPECIAL], v2); monster[i]._mdir = md;
v4 = monster[v1]._my; M_CheckEFlag(i);
v5 = monster[v1]._mx;
monster[v3]._mxoff = 0;
monster[v3]._myoff = 0;
monster[v3]._mfuty = v4;
monster[v3]._moldy = v4;
monster[v3]._mmode = MM_SATTACK;
monster[v3]._mfutx = v5;
monster[v3]._moldx = v5;
monster[v3]._mdir = v2;
M_CheckEFlag(v1);
} }
void __fastcall M_StartEat(int i) void __fastcall M_StartEat(int i)
{ {
int v1; // edi
int v2; // esi
int v3; // ecx
int v4; // eax
v1 = i;
v2 = i;
NewMonsterAnim(i, &monster[i].MType->Anims[MA_SPECIAL], monster[i]._mdir); NewMonsterAnim(i, &monster[i].MType->Anims[MA_SPECIAL], monster[i]._mdir);
v3 = monster[v2]._my; monster[i]._mmode = MM_SATTACK;
v4 = monster[v2]._mx; monster[i]._mxoff = 0;
monster[v2]._mxoff = 0; monster[i]._myoff = 0;
monster[v2]._myoff = 0; monster[i]._mfutx = monster[i]._mx;
monster[v2]._mfuty = v3; monster[i]._mfuty = monster[i]._my;
monster[v2]._moldy = v3; monster[i]._moldx = monster[i]._mx;
monster[v2]._mmode = MM_SATTACK; monster[i]._moldy = monster[i]._my;
monster[v2]._mfutx = v4; M_CheckEFlag(i);
monster[v2]._moldx = v4;
M_CheckEFlag(v1);
} }
void __fastcall M_ClearSquares(int i) void __fastcall M_ClearSquares(int i)

Loading…
Cancel
Save