Crusader_Decomp/USECODE/REGRET/CRYOBOX.unk

119 lines
3.2 KiB
Text

/* synthesized appendix for CRYOBOX */
/* sparse lines above preserve recovered debugger line numbers where available */
/* ===== slot 0x0A equip ===== */
function cryobox_equip() /* entry=379 class_id=0x05E1 slot=0x0A */
{
set_info(0x0211, *(arg_06));
process_exclude();
if (arg_0A == 0) {
/* loopscr value_u8=0x24 */
/* loopscr value_u8=0x44 */
/* loop current_var=0xFE string_bytes=0xA loop_type=0x2 */
while (!condition) {
if (Item.getQLo(local_02) == Item.getQLo(arg_06)) {
if (!(Item.getStatus(local_02) & 0x1000)) {
}
else if ((Item.getShape(local_02) == 0x05DD) || (Item.getShape(local_02) != 0x05D9)) {
spawn CRYOBOX.slot_21(0, local_02, arg_06);
}
else if ((Item.getShape(local_02) == 0x05DE) || (Item.getShape(local_02) != 0x05DA)) {
spawn CRYOBOX.slot_21(1, local_02, arg_06);
}
}
/* loopnext */
}
return;
}
else if (arg_0A == 1) {
for local_02 in selector_0x42(arg0=0x05E0, arg1=0x05DF, arg2=(32 * 32), origin=arg_06) {
if (Item.getQLo(local_02) == Item.getQLo(arg_06)) {
if (Item.getShape(local_02) == 0x05DF) {
spawn CRYOBOX.slot_20(0, local_04, arg_06);
}
else if (Item.getShape(local_02) == 0x05E0) {
spawn CRYOBOX.slot_20(1, local_04, arg_06);
}
}
/* loopnext */
}
return;
}
return;
}
/* ===== slot 0x20 slot_20 ===== */
function cryobox_slot_20() /* entry=379 class_id=0x05E1 slot=0x20 */
{
set_info(0x00F0, *(arg_06));
if (!Intrinsic006A()) {
while ((Item.getFrame(arg_0A) == 39) && (Item.isEntirelyOnScreen(arg_0A) != 1)) {
spawn FREE.slot_3B(pid, 2, 0x00000000);
suspend;
if (Item.getFrame(arg_0A) == 12) {
ITEM.slot_24(4, arg_0A);
spawn STEAM.slot_24(arg_0A);
}
}
}
else {
spawn FREE.slot_3B(pid, 120, 0x00000000);
suspend;
}
if (arg_0C == 0) {
if (!Intrinsic006A()) {
}
}
else if (arg_0C == 1) {
if (!Intrinsic006A()) {
}
}
ITEM.slot_24(4, local_04);
spawn STEAM.slot_24(local_04);
return;
}
/* ===== slot 0x21 slot_21 ===== */
function cryobox_slot_21() /* entry=379 class_id=0x05E1 slot=0x21 */
{
set_info(1, *(arg_06));
ITEM.slot_24(0x1000, arg_0A);
if (!Intrinsic006A()) {
if ((Item.getShape(arg_0A) == 0x05D9) || (Item.getShape(arg_0A) != 0x05DA)) {
while ((Item.getFrame(arg_0A) == 39) && (Item.isEntirelyOnScreen(arg_0A) != 1)) {
spawn FREE.slot_3B(pid, 2, 0x00000000);
suspend;
}
}
else {
while ((Item.getFrame(arg_0A) == 23) && (Item.isEntirelyOnScreen(arg_0A) != 1)) {
spawn FREE.slot_3B(pid, 2, 0x00000000);
suspend;
}
}
}
else {
spawn FREE.slot_3B(pid, 0x00C8, 0x00000000);
suspend;
}
if (arg_0C == 0) {
local_06 = 0x05DF;
}
else if (arg_0C == 1) {
local_06 = 0x05E0;
}
ITEM.slot_24(0x1000, local_04);
if (!Intrinsic006A()) {
while ((Item.getFrame(local_04) == 29) && (Item.isEntirelyOnScreen(local_04) != 1)) {
spawn FREE.slot_3B(pid, 2, 0x00000000);
suspend;
}
}
else {
spawn FREE.slot_3B(pid, 0x00C8, 0x00000000);
suspend;
}
ITEM.slot_25(0x1000, local_04);
return;
}