Crusader_Decomp/USECODE/REGRET/WSHOCKEW.unk

78 lines
2.1 KiB
Text

/* synthesized appendix for WSHOCKEW */
/* sparse lines above preserve recovered debugger line numbers where available */
/* ===== slot 0x06 gotHit ===== */
function wshockew_gotHit() /* entry=249 class_id=0x044E slot=0x06 */
{
set_info(0x020C, *(arg_06));
process_exclude();
local_02 = arg_0A;
if (!Item.isNpc(local_02)) {
local_04 = local_02;
while (Item.overlaps(arg_0A, arg_06) == 1) {
local_06 = Item.getX(arg_06);
local_08 = Item.getCY(arg_06);
local_0A = Item.getY(arg_06);
local_0C = Item.getCZ(local_02);
local_0E = Item.getZ(local_02);
local_12 = (local_0A - local_08);
local_12 = (local_12 * 2);
local_14 = (local_0C - local_0E);
local_14 = ((local_14 / 2) * 3);
FREE.slot_20(2);
local_16 = (retval + 1);
while (local_16 == 0) {
FREE.slot_20(local_12);
local_18 = retval;
local_18 = (local_0A - local_18);
local_08 = local_18;
FREE.slot_20(local_14);
local_1A = retval;
local_1A = (local_1A + local_0E);
local_0C = local_1A;
if (!Item.create(0, 0x045A, local_10)) {
local_16 = 1;
local_1C = (1 + local_1C);
}
FREE.slot_20(pid, 30);
spawn FREE.slot_3B(retval, 0x00000000);
suspend;
local_16 = (local_16 - 1);
}
spawn FREE.slot_3B(pid, 60, 0x00000000);
suspend;
}
spawn FREE.slot_3B(pid, 2, 0x00000000);
suspend;
}
return;
}
/* ===== slot 0x0B unequip ===== */
function wshockew_unequip() /* entry=249 class_id=0x044E slot=0x0B */
{
set_info(0x0212, *(arg_06));
process_exclude();
/* loop_selector local_02 in nearby_items(family=6, origin=arg_06) */
while (!condition) {
if (!Item.isNpc(local_02)) {
if (Item.overlaps(local_02, arg_06) == 1) {
spawn WSHOCKEW.gotHit(0, local_02, arg_06);
return;
}
}
/* loopnext */
}
spawn FREE.slot_3B(pid, 2, 0x00000000);
suspend;
return;
}
/* ===== slot 0x13 avatarStoleSomething ===== */
function wshockew_avatarStoleSomething() /* entry=249 class_id=0x044E slot=0x13 */
{
set_info(0x022E, *(arg_06));
process_exclude();
return;
}