118 lines
3.7 KiB
C++
118 lines
3.7 KiB
C++
AbandonedShip_HiddenFloorRooms_MapScripts::
|
|
map_script MAP_SCRIPT_ON_FRAME_TABLE, AbandonedShip_HiddenFloorRooms_OnFrame
|
|
.byte 0
|
|
|
|
AbandonedShip_HiddenFloorRooms_OnFrame:
|
|
map_script_2 VAR_TEMP_1, 0, AbandonedShip_HiddenFloorRooms_EventScript_DoHiddenItemSparkle
|
|
.2byte 0
|
|
|
|
@ After the below calculation, VAR_TEMP_4 is the room number of the door the player entered
|
|
@ Bottom row, left column (Rm 1)
|
|
@ Bottom row, middle column (Rm 2)
|
|
@ Bottom row, right column (Rm 3)
|
|
@ Upper row, left column (Rm 4)
|
|
@ Upper row, middle column (Rm 5)
|
|
@ Upper row, right column (Rm 6)
|
|
AbandonedShip_HiddenFloorRooms_EventScript_DoHiddenItemSparkle::
|
|
setvar VAR_TEMP_1, 1
|
|
getplayerxy VAR_TEMP_2, VAR_TEMP_3
|
|
setvar VAR_TEMP_4, 1
|
|
call_if_eq VAR_TEMP_2, 21, AbandonedShip_HiddenFloorRooms_EventScript_InMiddleRoomColumn
|
|
call_if_eq VAR_TEMP_2, 36, AbandonedShip_HiddenFloorRooms_EventScript_InRightRoomColumn
|
|
call_if_eq VAR_TEMP_3, 2, AbandonedShip_HiddenFloorRooms_EventScript_InUpperRoomRow
|
|
switch VAR_TEMP_4
|
|
case 1, AbandonedShip_HiddenFloorRooms_EventScript_EnterRm1
|
|
case 2, AbandonedShip_HiddenFloorRooms_EventScript_EnterRm2
|
|
case 3, AbandonedShip_HiddenFloorRooms_EventScript_EnterRm3
|
|
case 4, AbandonedShip_HiddenFloorRooms_EventScript_EnterRm4
|
|
case 5, AbandonedShip_HiddenFloorRooms_EventScript_EnterRm5
|
|
case 6, AbandonedShip_HiddenFloorRooms_EventScript_EnterRm6
|
|
end
|
|
|
|
AbandonedShip_HiddenFloorRooms_EventScript_InMiddleRoomColumn::
|
|
addvar VAR_TEMP_4, 1
|
|
return
|
|
|
|
AbandonedShip_HiddenFloorRooms_EventScript_InRightRoomColumn::
|
|
addvar VAR_TEMP_4, 2
|
|
return
|
|
|
|
AbandonedShip_HiddenFloorRooms_EventScript_InUpperRoomRow::
|
|
addvar VAR_TEMP_4, 3
|
|
return
|
|
|
|
AbandonedShip_HiddenFloorRooms_EventScript_EnterRm1::
|
|
delay 20
|
|
dofieldeffectsparkle 10, 10, 0
|
|
specialvar VAR_RESULT, FoundAbandonedShipRoom4Key
|
|
call_if_eq VAR_RESULT, FALSE, AbandonedShip_HiddenFloorRooms_EventScript_Rm4KeySparkle
|
|
waitfieldeffect FLDEFF_SPARKLE
|
|
delay 10
|
|
end
|
|
|
|
AbandonedShip_HiddenFloorRooms_EventScript_EnterRm2::
|
|
end
|
|
|
|
AbandonedShip_HiddenFloorRooms_EventScript_EnterRm3::
|
|
specialvar VAR_RESULT, FoundAbandonedShipRoom1Key
|
|
goto_if_eq VAR_RESULT, TRUE, AbandonedShip_HiddenFloorRooms_EventScript_Rm3NoSparkle
|
|
delay 20
|
|
call_if_eq VAR_RESULT, FALSE, AbandonedShip_HiddenFloorRooms_EventScript_Rm1KeySparkle
|
|
waitfieldeffect FLDEFF_SPARKLE
|
|
delay 10
|
|
end
|
|
|
|
AbandonedShip_HiddenFloorRooms_EventScript_Rm3NoSparkle::
|
|
end
|
|
|
|
AbandonedShip_HiddenFloorRooms_EventScript_EnterRm4::
|
|
delay 20
|
|
dofieldeffectsparkle 8, 5, 0
|
|
dofieldeffectsparkle 11, 3, 0
|
|
specialvar VAR_RESULT, FoundAbandonedShipRoom6Key
|
|
call_if_eq VAR_RESULT, FALSE, AbandonedShip_HiddenFloorRooms_EventScript_Rm6KeySparkle
|
|
waitfieldeffect FLDEFF_SPARKLE
|
|
delay 10
|
|
end
|
|
|
|
AbandonedShip_HiddenFloorRooms_EventScript_EnterRm5::
|
|
delay 20
|
|
dofieldeffectsparkle 16, 3, 0
|
|
dofieldeffectsparkle 25, 2, 0
|
|
dofieldeffectsparkle 24, 6, 0
|
|
specialvar VAR_RESULT, FoundAbandonedShipRoom2Key
|
|
call_if_eq VAR_RESULT, FALSE, AbandonedShip_HiddenFloorRooms_EventScript_Rm2KeySparkle
|
|
waitfieldeffect FLDEFF_SPARKLE
|
|
delay 10
|
|
end
|
|
|
|
AbandonedShip_HiddenFloorRooms_EventScript_EnterRm6::
|
|
end
|
|
|
|
AbandonedShip_HiddenFloorRooms_EventScript_Rm1KeySparkle::
|
|
dofieldeffectsparkle 42, 10, 0
|
|
return
|
|
|
|
AbandonedShip_HiddenFloorRooms_EventScript_Rm2KeySparkle::
|
|
dofieldeffectsparkle 20, 5, 0
|
|
return
|
|
|
|
AbandonedShip_HiddenFloorRooms_EventScript_Rm4KeySparkle::
|
|
dofieldeffectsparkle 1, 12, 0
|
|
return
|
|
|
|
AbandonedShip_HiddenFloorRooms_EventScript_Rm6KeySparkle::
|
|
dofieldeffectsparkle 1, 2, 0
|
|
return
|
|
|
|
AbandonedShip_HiddenFloorRooms_EventScript_Trash::
|
|
lockall
|
|
msgbox AbandonedShip_HiddenFloorRooms_Text_BrightShinyTrash, MSGBOX_DEFAULT
|
|
releaseall
|
|
end
|
|
|
|
AbandonedShip_HiddenFloorRooms_Text_BrightShinyTrash:
|
|
.string "It's bright and shiny!\n"
|
|
.string "But it's just trash…$"
|
|
|