63 lines
1.5 KiB
Text
63 lines
1.5 KiB
Text
|
|
/* synthesized appendix for ALARMBOX */
|
|
/* sparse lines above preserve recovered debugger line numbers where available */
|
|
|
|
/* ===== slot 0x01 use ===== */
|
|
function alarmbox_use() /* entry=262 class_id=0x0477 slot=0x01 */
|
|
{
|
|
set_info(0x0207, *(arg_06));
|
|
process_exclude();
|
|
if (!World.getAlertActive()) {
|
|
spawn FREE.slot_45(0x00000000);
|
|
if (Item.getMapNum(arg_06) == 0) {
|
|
spawn TRIGGER.slot_20(pid, 1, *(arg_06), arg_06);
|
|
suspend;
|
|
}
|
|
}
|
|
return;
|
|
}
|
|
|
|
/* ===== slot 0x0A equip ===== */
|
|
function alarmbox_equip() /* entry=262 class_id=0x0477 slot=0x0A */
|
|
{
|
|
set_info(0x0211, *(arg_06));
|
|
process_exclude();
|
|
if (!arg_0A) {
|
|
if (World.getAlertActive()) {
|
|
spawn FREE.slot_44(0x00000000);
|
|
}
|
|
local_02 = Item.getStatus(arg_06);
|
|
if ((local_02 & 4) == 0) {
|
|
if (Item.getMapNum(arg_06) == 0) {
|
|
spawn TRIGGER.slot_20(pid, 0, *(arg_06), arg_06);
|
|
suspend;
|
|
}
|
|
}
|
|
return;
|
|
}
|
|
else if (!World.getAlertActive()) {
|
|
spawn FREE.slot_45(0x00000000);
|
|
if (Item.getMapNum(arg_06) == 0) {
|
|
spawn TRIGGER.slot_20(pid, 1, *(arg_06), arg_06);
|
|
suspend;
|
|
}
|
|
}
|
|
return;
|
|
}
|
|
|
|
/* ===== slot 0x0F enterFastArea ===== */
|
|
function alarmbox_enterFastArea() /* entry=262 class_id=0x0477 slot=0x0F */
|
|
{
|
|
set_info(0x021B, *(arg_06));
|
|
process_exclude();
|
|
if (!World.getAlertActive()) {
|
|
return;
|
|
}
|
|
else if (Item.getFrame(arg_06) == 2) {
|
|
return;
|
|
}
|
|
else if (Item.getFrame(arg_06) == 3) {
|
|
return;
|
|
}
|
|
return;
|
|
}
|