Browse Source

MI_Flamec almost bin exact / AddMissile almost bin exact

pull/78/head
qndel 7 years ago
parent
commit
449a4a2e4e
  1. 56
      Source/missiles.cpp

56
Source/missiles.cpp

@ -3106,7 +3106,7 @@ int __fastcall AddMissile(int sx, int sy, int dx, int dy, int midir, int mitype,
if (nummissiles >= MAXMISSILES) if (nummissiles >= MAXMISSILES)
return -1; return -1;
if (mitype == MIS_MANASHIELD && plr[id].pManaShield) { if (mitype == MIS_MANASHIELD && plr[id].pManaShield == TRUE) {
if (currlevel != plr[id].plrlevel) if (currlevel != plr[id].plrlevel)
return -1; return -1;
@ -4908,50 +4908,26 @@ void __fastcall MI_Flame(int i)
void __fastcall MI_Flamec(int i) void __fastcall MI_Flamec(int i)
{ {
int v1; // edi int id, src;
int v2; // esi
int v3; // eax
int v4; // ebx
int v5; // ecx
int v6; // edx
int v7; // eax
int v8; // eax
v1 = i; missile[i]._mirange--;
v2 = i; missile[i]._mitxoff += missile[i]._mixvel;
v3 = missile[i]._mixvel; src = missile[i]._misource;
--missile[v2]._mirange; missile[i]._mityoff += missile[i]._miyvel;
missile[v2]._mitxoff += v3;
v4 = missile[i]._misource;
missile[v2]._mityoff += missile[i]._miyvel;
GetMissilePos(i); GetMissilePos(i);
v5 = missile[v2]._mix; if (missile[i]._mix != missile[i]._miVar1 || missile[i]._miy != missile[i]._miVar2) {
if (v5 != missile[v2]._miVar1 || missile[v2]._miy != missile[v2]._miVar2) { id = dPiece[missile[i]._mix][missile[i]._miy];
v6 = missile[v2]._miy; if (!nMissileTable[id]) {
v7 = dPiece[v5][v6]; AddMissile(missile[i]._mix, missile[i]._miy, missile[i]._misx, missile[i]._misy, i, MIS_FLAME, missile[i]._micaster, src, missile[i]._miVar3, missile[i]._mispllvl);
if (nMissileTable[v7]) {
missile[v2]._mirange = 0;
} else { } else {
_LOBYTE(v7) = missile[v2]._micaster; missile[i]._mirange = 0;
AddMissile(
v5,
v6,
missile[v2]._misx,
missile[v2]._misy,
v1,
MIS_FLAME,
v7,
v4,
missile[v2]._miVar3,
missile[v2]._mispllvl);
} }
v8 = missile[v2]._mix; missile[i]._miVar1 = missile[i]._mix;
++missile[v2]._miVar3; missile[i]._miVar2 = missile[i]._miy;
missile[v2]._miVar1 = v8; missile[i]._miVar3++;
missile[v2]._miVar2 = missile[v2]._miy;
} }
if (!missile[v2]._mirange || missile[v2]._miVar3 == 3) if (!missile[i]._mirange || missile[i]._miVar3 == 3)
missile[v2]._miDelFlag = TRUE; missile[i]._miDelFlag = TRUE;
} }
void __fastcall MI_Cbolt(int i) void __fastcall MI_Cbolt(int i)

Loading…
Cancel
Save