Browse Source

Clean up OperateL2RDoor.

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

73
Source/objects.cpp

@ -2461,52 +2461,45 @@ void OperateL1LDoor(int pnum, int oi, BOOL sendflag)
} }
// 676190: using guessed type int deltaload; // 676190: using guessed type int deltaload;
void OperateL2RDoor(int pnum, int oi, unsigned char sendflag) void OperateL2RDoor(int pnum, int oi, BOOL sendflag)
{ {
int v3; // esi int xp, yp;
int v4; // eax
int v5; // ebx
short param1; // [esp+Ch] [ebp-Ch]
int v7; // [esp+10h] [ebp-8h]
int v8; // [esp+14h] [ebp-4h]
v3 = oi; if (object[oi]._oVar4 == 2) {
param1 = oi; if (!deltaload)
v7 = pnum; PlaySfxLoc(IS_DOORCLOS, object[oi]._ox, object[oi]._oy);
v4 = object[oi]._oVar4; return;
if (v4 != 2) { }
v5 = object[v3]._oy; xp = object[oi]._ox;
v8 = object[v3]._ox; yp = object[oi]._oy;
if (v4) { if (object[oi]._oVar4 == 0) {
if (!deltaload) if (pnum == myplr && sendflag)
PlaySfxLoc(IS_DOORCLOS, object[v3]._ox, v5); NetSendCmdParam1(TRUE, CMD_OPENDOOR, oi);
if (dDead[v8][v5] != 0 || dMonster[v8][v5] != 0 || dItem[v8][v5] != 0) { if (!deltaload)
object[v3]._oVar4 = 2; PlaySfxLoc(IS_DOOROPEN, object[oi]._ox, object[oi]._oy);
return; ObjSetMicro(xp, yp, 17);
} object[oi]._oAnimFrame += 2;
if (v7 == myplr && sendflag) object[oi]._oPreFlag = TRUE;
NetSendCmdParam1(TRUE, CMD_CLOSEDOOR, param1); object[oi]._oVar4 = 1;
object[v3]._oVar4 = 0; object[oi]._oSelFlag = 2;
object[v3]._oSelFlag = 3;
ObjSetMicro(v8, v5, 540);
object[v3]._oAnimFrame -= 2;
object[v3]._oPreFlag = FALSE;
} else {
if (pnum == myplr && sendflag)
NetSendCmdParam1(TRUE, CMD_OPENDOOR, oi);
if (!deltaload)
PlaySfxLoc(IS_DOOROPEN, object[v3]._ox, object[v3]._oy);
ObjSetMicro(v8, v5, 17);
object[v3]._oAnimFrame += 2;
object[v3]._oPreFlag = TRUE;
object[v3]._oVar4 = 1;
object[v3]._oSelFlag = 2;
}
RedoPlayerVision(); RedoPlayerVision();
return; return;
} }
if (!deltaload) if (!deltaload)
PlaySfxLoc(IS_DOORCLOS, object[v3]._ox, object[v3]._oy); PlaySfxLoc(IS_DOORCLOS, object[oi]._ox, yp);
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, 540);
object[oi]._oAnimFrame -= 2;
object[oi]._oPreFlag = FALSE;
RedoPlayerVision();
} else {
object[oi]._oVar4 = 2;
}
} }
// 676190: using guessed type int deltaload; // 676190: using guessed type int deltaload;

2
Source/objects.h

@ -92,7 +92,7 @@ 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, BOOL sendflag); void OperateL1LDoor(int pnum, int oi, BOOL sendflag);
void OperateL2RDoor(int pnum, int oi, unsigned char sendflag); void OperateL2RDoor(int pnum, int oi, BOOL 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);
void OperateL3LDoor(int pnum, int oi, unsigned char sendflag); void OperateL3LDoor(int pnum, int oi, unsigned char sendflag);

Loading…
Cancel
Save