Browse Source

Clean up OperateL1LDoor.

pull/287/head^2
Sergey Semushin 7 years ago committed by Anders Jenbo
parent
commit
fe4f391673
  1. 104
      Source/objects.cpp
  2. 2
      Source/objects.h

104
Source/objects.cpp

@ -2404,70 +2404,60 @@ void OperateL1RDoor(int pnum, int oi, BOOL sendflag)
} }
// 676190: using guessed type int deltaload; // 676190: using guessed type int deltaload;
void OperateL1LDoor(int pnum, int oi, unsigned char sendflag) void OperateL1LDoor(int pnum, int oi, BOOL sendflag)
{ {
int v3; // esi int xp, yp;
int v4; // eax
int v5; // ebx
int v6; // edi
int v7; // ST04_4
int v8; // [esp+Ch] [ebp-Ch]
int v9; // [esp+10h] [ebp-8h]
int param1; // [esp+14h] [ebp-4h]
v3 = oi; if (object[oi]._oVar4 == 2) {
param1 = oi; if (!deltaload)
v9 = pnum; PlaySfxLoc(IS_DOORCLOS, object[oi]._ox, object[oi]._oy);
v4 = object[oi]._oVar4; return;
if (v4 != 2) { }
v5 = object[v3]._ox;
v6 = object[v3]._oy; xp = object[oi]._ox;
if (v4) { yp = object[oi]._oy;
if (!deltaload) if (object[oi]._oVar4 == 0) {
PlaySfxLoc(IS_DOORCLOS, v5, object[v3]._oy); if (pnum == myplr && sendflag)
v8 = v6 + 112 * v5; NetSendCmdParam1(TRUE, CMD_OPENDOOR, oi);
if (dDead[v5][v6] != 0 || dMonster[0][v8] != 0 || dItem[v5][v6] != 0) { if (!deltaload)
object[v3]._oVar4 = 2; PlaySfxLoc(IS_DOOROPEN, object[oi]._ox, object[oi]._oy);
return; if (object[oi]._oVar1 == 214)
} ObjSetMicro(xp, yp, 408);
if (v9 == myplr && sendflag) else
NetSendCmdParam1(TRUE, CMD_CLOSEDOOR, param1); ObjSetMicro(xp, yp, 393);
v7 = object[v3]._oVar1; dArch[xp][yp] = 7;
object[v3]._oVar4 = 0; objects_set_door_piece(xp - 1, yp);
object[v3]._oSelFlag = 3; object[oi]._oAnimFrame += 2;
ObjSetMicro(v5, v6, v7); object[oi]._oPreFlag = TRUE;
if (object[v3]._oVar2 == 50) { DoorSet(oi, xp, yp - 1);
if (dPiece[0][v8 - 1] == 396) /* check *(_DWORD *)&dflags[39][v8 * 4 + 36] == 396 ) */ object[oi]._oVar4 = 1;
ObjSetMicro(v5, v6 - 1, 412); object[oi]._oSelFlag = 2;
else RedoPlayerVision();
ObjSetMicro(v5, v6 - 1, 50); return;
} else { }
ObjSetMicro(v5, v6 - 1, object[v3]._oVar2);
} if (!deltaload)
object[v3]._oAnimFrame -= 2; PlaySfxLoc(IS_DOORCLOS, xp, object[oi]._oy);
object[v3]._oPreFlag = FALSE; if (((dDead[xp][yp] != 0 ? 0 : 1) & (dMonster[xp][yp] != 0 ? 0 : 1) & (dItem[xp][yp] != 0 ? 0 : 1)) != 0) {
if (pnum == myplr && sendflag)
NetSendCmdParam1(TRUE, CMD_CLOSEDOOR, oi);
object[oi]._oVar4 = 0;
object[oi]._oSelFlag = 3;
ObjSetMicro(xp, yp, object[oi]._oVar1);
if (object[oi]._oVar2 != 50) {
ObjSetMicro(xp, yp - 1, object[oi]._oVar2);
} else { } else {
if (pnum == myplr && sendflag) if (dPiece[xp][yp - 1] == 396)
NetSendCmdParam1(TRUE, CMD_OPENDOOR, oi); ObjSetMicro(xp, yp - 1, 412);
if (!deltaload)
PlaySfxLoc(IS_DOOROPEN, object[v3]._ox, object[v3]._oy);
if (object[v3]._oVar1 == 214)
ObjSetMicro(v5, v6, 408);
else else
ObjSetMicro(v5, v6, 393); ObjSetMicro(xp, yp - 1, 50);
dArch[v5][v6] = 7;
objects_set_door_piece(v5 - 1, v6);
object[v3]._oAnimFrame += 2;
object[v3]._oPreFlag = TRUE;
DoorSet(param1, v5, v6 - 1);
object[v3]._oVar4 = 1;
object[v3]._oSelFlag = 2;
} }
object[oi]._oAnimFrame -= 2;
object[oi]._oPreFlag = FALSE;
RedoPlayerVision(); RedoPlayerVision();
return; } else {
object[oi]._oVar4 = 2;
} }
if (!deltaload)
PlaySfxLoc(IS_DOORCLOS, object[v3]._ox, object[v3]._oy);
} }
// 676190: using guessed type int deltaload; // 676190: using guessed type int deltaload;

2
Source/objects.h

@ -91,7 +91,7 @@ void ObjL2Special(int x1, int y1, int x2, int y2);
void DoorSet(int oi, int dx, int dy); void DoorSet(int oi, int dx, int dy);
void RedoPlayerVision(); void RedoPlayerVision();
void OperateL1RDoor(int pnum, int oi, BOOL sendflag); void OperateL1RDoor(int pnum, int oi, BOOL sendflag);
void OperateL1LDoor(int pnum, int oi, unsigned char sendflag); void OperateL1LDoor(int pnum, int oi, BOOL sendflag);
void OperateL2RDoor(int pnum, int oi, unsigned char sendflag); void OperateL2RDoor(int pnum, int oi, unsigned char sendflag);
void OperateL2LDoor(int pnum, int oi, unsigned char sendflag); void OperateL2LDoor(int pnum, int oi, unsigned char sendflag);
void OperateL3RDoor(int pnum, int oi, unsigned char sendflag); void OperateL3RDoor(int pnum, int oi, unsigned char sendflag);

Loading…
Cancel
Save