Usecode pseudocode

This commit is contained in:
MaddoScientisto 2026-03-26 00:37:17 +01:00
commit c12bb39437
1362 changed files with 71072 additions and 38056 deletions

View file

@ -10,223 +10,117 @@ function landmine_use() /* entry=206 class_id=0x039A slot=0x01 */
mine, /* [BP-0Bh] type=0x24 */
wp; /* [BP-10h] type=0x24 */
entry:
set_info(0x0207, *(arg_06));
process_exclude();
landMine = *(arg_06);
/* global_address global_id=0x3C */
if (Item.getType() != 40) goto block_013E;
block_010A:
goto block_0502;
block_013E:
set_info(0x0207, *(arg_06));
process_exclude();
landMine = *(arg_06);
/* global_address global_id=0x3C */
if (Actor.getMap() == 40) {
return;
}
else {
set_info(0x00F0, 0);
block_0152:
/* global_address global_id=0x3C */
if Intrinsic0033() goto block_0188;
block_0162:
spawn class_0A0C_slot_32(pid, 2, 0x00000000);
suspend;
goto block_0152;
block_0188:
while (!Actor.isBusy()) {
spawn class_0A0C_slot_32(pid, 2, 0x00000000);
suspend;
}
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 0) goto block_01A6;
block_0198:
xOff = -1;
yOff = -3;
goto block_0368;
block_01A6:
if (Actor.getDir() == 0) {
xOff = -1;
yOff = -3;
}
else if (Actor.getDir() == 1) {
xOff = 0;
yOff = -3;
}
else if (Actor.getDir() == 2) {
xOff = 2;
yOff = -3;
}
else if (Actor.getDir() == 3) {
xOff = 2;
yOff = -2;
}
else if (Actor.getDir() == 4) {
xOff = 2;
yOff = -1;
}
else if (Actor.getDir() == 5) {
xOff = 2;
yOff = 0;
}
else if (Actor.getDir() == 6) {
xOff = 2;
yOff = 2;
}
else if (Actor.getDir() == 7) {
xOff = 0;
yOff = 2;
}
else if (Actor.getDir() == 8) {
xOff = -1;
yOff = 2;
}
else if (Actor.getDir() == 9) {
xOff = -2;
yOff = 2;
}
else if (Actor.getDir() == 10) {
xOff = -3;
yOff = 2;
}
else if (Actor.getDir() == 11) {
xOff = -3;
yOff = 1;
}
else if (Actor.getDir() == 12) {
xOff = -3;
yOff = 0;
}
else if (Actor.getDir() == 13) {
xOff = -3;
yOff = -1;
}
else if (Actor.getDir() == 14) {
xOff = -3;
yOff = -2;
}
else if (Actor.getDir() == 15) {
xOff = -3;
yOff = -3;
}
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 1) goto block_01C4;
block_01B6:
xOff = 0;
yOff = -3;
goto block_0368;
block_01C4:
if (!Actor.getSomeFlagProbablyCrouch()) {
InCrouch = 1;
}
else {
InCrouch = 0;
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
suspend;
}
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 2) goto block_01E2;
block_01D4:
xOff = 2;
yOff = -3;
goto block_0368;
block_01E2:
wp = (Item.getX() + (xOff * 16));
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 3) goto block_0200;
block_01F2:
xOff = 2;
yOff = -2;
goto block_0368;
block_0200:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 4) goto block_021E;
block_0210:
xOff = 2;
yOff = -1;
goto block_0368;
block_021E:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 5) goto block_023C;
block_022E:
xOff = 2;
yOff = 0;
goto block_0368;
block_023C:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 6) goto block_025A;
block_024C:
xOff = 2;
yOff = 2;
goto block_0368;
block_025A:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 7) goto block_0278;
block_026A:
xOff = 0;
yOff = 2;
goto block_0368;
block_0278:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 8) goto block_0296;
block_0288:
xOff = -1;
yOff = 2;
goto block_0368;
block_0296:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 9) goto block_02B4;
block_02A6:
xOff = -2;
yOff = 2;
goto block_0368;
block_02B4:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 10) goto block_02D2;
block_02C4:
xOff = -3;
yOff = 2;
goto block_0368;
block_02D2:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 11) goto block_02F0;
block_02E2:
xOff = -3;
yOff = 1;
goto block_0368;
block_02F0:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 12) goto block_030E;
block_0300:
xOff = -3;
yOff = 0;
goto block_0368;
block_030E:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 13) goto block_032C;
block_031E:
xOff = -3;
yOff = -1;
goto block_0368;
block_032C:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 14) goto block_034A;
block_033C:
xOff = -3;
yOff = -2;
goto block_0368;
block_034A:
/* global_address global_id=0x3C */
if (Intrinsic00FA() != 15) goto block_0368;
block_035A:
xOff = -3;
yOff = -3;
goto block_0368;
block_0368:
/* global_address global_id=0x3C */
if Intrinsic0035() goto block_0382;
block_0378:
InCrouch = 1;
goto block_03B9;
block_0382:
InCrouch = 0;
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
suspend;
block_03B9:
/* global_address global_id=0x3C */
wp = (Intrinsic0013() + (xOff * 16));
/* global_address global_id=0x3C */
local_0E = (Item.legal_create() + (yOff * 16));
local_0E = (Item.getY() + (yOff * 16));
/* global_address global_id=0x3C */
local_0C = Item.getZ();
if Item.getSurfaceWeight(wp, 0, 0x039A, mine) goto block_0416;
block_0408:
goto block_048E;
block_0416:
if (!InCrouch) goto block_047D;
block_044D:
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
suspend;
block_047D:
goto block_0502;
block_048E:
if (!InCrouch) goto block_04C7;
block_0497:
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
suspend;
block_04C7:
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
suspend;
block_0502:
if (!Item.legalCreateAtPoint(wp, 0, 0x039A, mine)) {
}
else if (InCrouch) {
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
suspend;
}
return;
if (InCrouch) {
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
suspend;
}
/* global_address global_id=0x3C */
/* global_address global_id=0x3C */
suspend;
}
return;
}

View file

@ -7,40 +7,23 @@ function landmine_gotHit() /* entry=206 class_id=0x039A slot=0x06 */
hType, /* [BP-02h] type=0x69 */
item; /* [BP-04h] type=0x24 */
entry:
set_info(0x020C, *(arg_06));
process_exclude();
if (ref != 1) goto block_0585;
block_057F:
goto block_05F3;
block_0585:
set_info(0x020C, *(arg_06));
process_exclude();
if (ref == 1) {
return;
}
else {
class_0A0C_slot_2C(vel, ref);
hType = retval;
if hType goto block_05CA;
block_059E:
if (hType != 4) goto block_05B8;
block_05AF:
goto block_05F3;
block_05B5:
goto block_05C7;
block_05B8:
block_05C7:
goto block_05F3;
block_05CA:
item = ref;
if Item.setQuality(*(arg_06), item) goto block_05F3;
block_05E4:
block_05F3:
return;
if (!hType) {
if (hType == 4) {
return;
}
return;
}
else {
item = ref;
}
}
return;
}