Build world/area_mac/machi for PAL (#967)

* Build machi and mac_00 for PAL

* Import `segtypes.common.asm`

* PAL rest of area_mac

* fixup

* tik

* Rename gMasterGfxPos to gMainGfxPos

* kgr

* kgr

* Use s32 for casts

* PAL area_kmr

* Cleanup

* Fix defines
This commit is contained in:
Marijn van der Werf 2023-03-13 00:08:06 +01:00 committed by GitHub
parent df10ef30c7
commit 9551b16d77
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
55 changed files with 10862 additions and 693 deletions

12
Jenkinsfile vendored
View File

@ -9,6 +9,7 @@ pipeline {
sh 'cp /usr/local/etc/roms/papermario.us.z64 ver/us/baserom.z64'
sh 'cp /usr/local/etc/roms/papermario.jp.z64 ver/jp/baserom.z64'
sh 'cp /usr/local/etc/roms/papermario.ique.z64 ver/ique/baserom.z64'
sh 'cp /usr/local/etc/roms/papermario.pal.z64 ver/pal/baserom.z64'
sh 'curl -L "https://github.com/pmret/gcc-papermario/releases/download/master/linux.tar.gz" | tar zx -C tools/build/cc/gcc'
sh 'curl -L "https://github.com/pmret/binutils-papermario/releases/download/master/linux.tar.gz" | tar zx -C tools/build/cc/gcc'
sh 'curl -L "https://github.com/decompals/ido-static-recomp/releases/download/v0.2/ido-5.3-recomp-ubuntu-latest.tar.gz" | tar zx -C tools/build/cc/ido5.3'
@ -35,6 +36,7 @@ pipeline {
def us_progress = sh(returnStdout: true, script: "python3 progress.py us --pr-comment").trim()
def jp_progress = sh(returnStdout: true, script: "python3 progress.py jp --pr-comment").trim()
def ique_progress = sh(returnStdout: true, script: "python3 progress.py ique --pr-comment").trim()
def pal_progress = sh(returnStdout: true, script: "python3 progress.py pal --pr-comment").trim()
def warnings = sh(returnStdout: true, script: "./tools/warnings_count/check_new_warnings.sh --jenkins").trim()
def comment_id = -1
@ -44,9 +46,9 @@ pipeline {
}
}
def message = "${us_progress}\n${jp_progress}\n${ique_progress}\n${warnings}"
def message = "${us_progress}\n${jp_progress}\n${ique_progress}\n${pal_progress}\n${warnings}"
if (message != "\n\n\n") {
if (message != "\n\n\n\n") {
if (comment_id == -1) {
echo message
pullRequest.comment(message)
@ -74,6 +76,9 @@ pipeline {
sh 'python3 progress.py ique --csv >> reports/progress_ique.csv'
sh 'python3 progress.py ique --shield-json > reports/progress_ique_shield.json'
sh 'python3 progress.py pal --csv >> reports/progress_pal.csv'
sh 'python3 progress.py pal --shield-json > reports/progress_pal_shield.json'
sh 'cat build_log.txt | grep warning | sort > tools/warnings_count/warnings.txt'
sh 'cp tools/warnings_count/warnings.txt reports/warnings.txt'
@ -98,6 +103,9 @@ pipeline {
sh 'cat reports/progress_ique.csv >> /var/www/papermar.io/html/reports/progress_ique.csv'
sh 'cat reports/progress_ique_shield.json > /var/www/papermar.io/html/reports/progress_ique_shield.json'
sh 'cat reports/progress_pal.csv >> /var/www/papermar.io/html/reports/progress_pal.csv'
sh 'cat reports/progress_pal_shield.json > /var/www/papermar.io/html/reports/progress_pal_shield.json'
sh 'cat reports/warnings.txt > /var/www/papermar.io/html/reports/warnings.txt'
}
}

View File

@ -2229,6 +2229,10 @@ typedef struct {
/* 0x00030 */ Mtx camPerspMatrix[8]; // could only be length 4, unsure
/* 0x00230 */ Gfx mainGfx[DISPLAYCONTEXT_GFX_COUNT];
/* 0x10630 */ Gfx backgroundGfx[0x200]; // used by gfx_task_background
#if VERSION_PAL
// TODO: find where this space belongs to
s32 pad[0x300];
#endif
/* 0x11630 */ Mtx matrixStack[0x200];
} DisplayContext; // size = 0x19630

View File

@ -2976,6 +2976,32 @@ enum DoorSounds {
#ifdef VERSION_US
#include "sprite/sprite_shading_profiles.h"
#elif VERSION_PAL
// TODO: remove and split shading profiles
enum ShadingProfile {
SHADING_NONE = 0xFFFFFFFF,
SHADING_TIK_01 = 0,
SHADING_TIK_02,
SHADING_TIK_03,
SHADING_TIK_04,
SHADING_TIK_05,
SHADING_TIK_06,
SHADING_TIK_07,
SHADING_TIK_08,
SHADING_TIK_09,
SHADING_TIK_10,
SHADING_TIK_12,
SHADING_TIK_14,
SHADING_TIK_15,
SHADING_TIK_18,
SHADING_TIK_20,
SHADING_TIK_21,
SHADING_TIK_22,
SHADING_TIK_23,
SHADING_TIK_24,
SHADING_TIK_25,
SHADING_KMR_30 = 0x10000,
};
#endif
enum LightSourceFlags {

View File

@ -227,4 +227,10 @@
#define VLA 0
#endif
#if VERSION_PAL
#define DT (50.0f/60.0f)
#else
#define DT (1.0f)
#endif
#endif

View File

@ -337,6 +337,7 @@ ApiStatus MakeLocalVertexCopy(Evt* script, s32 isInitialCall);
ApiStatus SetCustomGfx(Evt* script, s32 isInitialCall);
ApiStatus SetCustomGfxBuilders(Evt* script, s32 isInitialCall);
ApiStatus SetModelCustomGfx(Evt* script, s32 isInitialCall);
ApiStatus GetLanguage(Evt* script, s32 isInitialCall);
ApiStatus SetModelTexVariant(Evt* script, s32 isInitialCall);
ApiStatus SetNpcPaletteSwapMode(Evt* script, s32 isInitialCall);
ApiStatus SetNpcPaletteSwapLower(Evt* script, s32 isInitialCall);

View File

@ -135,6 +135,9 @@ typedef struct PopupMenu {
/* 0x328 */ s32 initialPos;
/* 0x32C */ s16 result;
/* 0x32E */ char unk_32E[0x2];
#if VERSION_PAL
/* 0x330 */ char unk_330[0x14];
#endif
} PopupMenu; // size = 0x330
typedef struct Shop {

View File

@ -31,6 +31,7 @@ enum {
enum {
MV_Unk_01 = MapVar(1),
MV_Unk_02 = MapVar(2),
};
#define NAMESPACE kmr_00

View File

@ -103,16 +103,30 @@ API_CALLABLE(N(func_802405F0_8AC580)) {
FUNC_STATE_3 = 3
};
#if VERSION_PAL
#define VAR_1 varTable[11]
#define VAR_2 varTable[12]
#else
#define VAR_1 functionTemp[3]
#define VAR_2 varTable[14]
#endif
Bytecode* args = script->ptrReadPos;
ApiStatus retVal = ApiStatus_BLOCK;
Npc* npc;
s32 var;
if (isInitialCall) {
script->functionTemp[1] = evt_get_variable(script, *args++);
script->functionTemp[2] = evt_get_variable(script, *args++);
script->varTable[15] = evt_get_variable(script, *args++);
script->functionTemp[0] = FUNC_STATE_0;
script->functionTemp[3] = 0;
script->VAR_1 = 0;
#if VERSION_PAL
script->varTable[13] = 0;
script->VAR_2 = 0;
script->varTable[14] = 0;
#endif
}
npc = get_npc_unsafe(script->functionTemp[1]);
@ -121,12 +135,12 @@ API_CALLABLE(N(func_802405F0_8AC580)) {
npc->pos.x = 0.0f;
npc->pos.y = NPC_DISPOSE_POS_Y;
npc->pos.z = -50.0f;
npc->moveToPos.x = script->functionTemp[3] * 3;
npc->moveToPos.x = script->VAR_1 * 3;
npc->moveToPos.y = 3.0f;
if (script->functionTemp[3] >= script->varTable[15]) {
if (script->VAR_1 >= script->varTable[15]) {
npc->pos.y = 100.0f;
add_vec2D_polar(&npc->pos.x, &npc->pos.z, 70.0f, npc->moveToPos.x + (script->functionTemp[2] * 51) + 153.0f);
npc->pos.y += (-npc->pos.z + -50.0f + 70.0f) * 0.15f;
add_vec2D_polar(&npc->pos.x, &npc->pos.z, 70.0f / DT, npc->moveToPos.x + (script->functionTemp[2] * 51) + 153.0f);
npc->pos.y += (-npc->pos.z + -50.0f + 70.0f / DT) * 0.15f;
sfx_play_sound_at_position(SOUND_B000001E, SOUND_SPACE_MODE_0, npc->pos.x, npc->pos.y, npc->pos.z);
fx_sparkles(FX_SPARKLES_0, npc->pos.x, npc->pos.y + 20.0f, npc->pos.z, 20.0f);
script->functionTemp[0] = FUNC_STATE_1;
@ -136,49 +150,65 @@ API_CALLABLE(N(func_802405F0_8AC580)) {
npc->pos.x = 0.0f;
npc->pos.z = -50.0f;
npc->pos.y = 100.0f;
add_vec2D_polar(&npc->pos.x, &npc->pos.z, 70.0f, npc->moveToPos.x + (script->functionTemp[2] * 51) + 153.0f);
npc->pos.y += (-npc->pos.z + -50.0f + 70.0f) * 0.15f;
if ((script->functionTemp[3] + script->functionTemp[2]) ==
(((script->functionTemp[3] + script->functionTemp[2]) / 13) * 13)) {
add_vec2D_polar(&npc->pos.x, &npc->pos.z, 70.0f / DT, npc->moveToPos.x + (script->functionTemp[2] * 51) + 153.0f);
npc->pos.y += (-npc->pos.z + -50.0f + 70.0f / DT) * 0.15f;
if ((script->VAR_1 + script->functionTemp[2]) ==
(((script->VAR_1 + script->functionTemp[2]) / 13) * 13)) {
fx_sparkles(FX_SPARKLES_3, npc->pos.x, npc->pos.y + 10.0f, npc->pos.z, 10.0f);
}
if (script->functionTemp[3] > 256) {
if (script->VAR_1 > 256) {
script->functionTemp[0] = FUNC_STATE_2;
script->varTable[14] = 0;
script->VAR_2 = 0;
}
break;
case FUNC_STATE_2:
npc->pos.x = 0.0f;
npc->pos.z = -50.0f;
npc->pos.y = 100.0f - (script->varTable[14] * 0.3f);
add_vec2D_polar(&npc->pos.x, &npc->pos.z, 70.0f, npc->moveToPos.x + (script->functionTemp[2] * 51) + 153.0f);
npc->pos.y += (-npc->pos.z + -50.0f + 70.0f) * 0.15f;
if ((script->functionTemp[3] + script->functionTemp[2]) ==
(((script->functionTemp[3] + script->functionTemp[2]) / 13) * 13)) {
npc->pos.y = 100.0f - (script->VAR_2 * 0.3f);
add_vec2D_polar(&npc->pos.x, &npc->pos.z, 70.0f / DT, npc->moveToPos.x + (script->functionTemp[2] * 51) + 153.0f);
npc->pos.y += (-npc->pos.z + -50.0f + 70.0f / DT) * 0.15f;
if ((script->VAR_1 + script->functionTemp[2]) ==
(((script->VAR_1 + script->functionTemp[2]) / 13) * 13)) {
fx_sparkles(FX_SPARKLES_3, npc->pos.x, npc->pos.y + 10.0f, npc->pos.z, 10.0f);
}
if (script->varTable[14]++ > 180) {
if (script->VAR_2++ > 180) {
script->functionTemp[0] = FUNC_STATE_3;
script->varTable[14] = 0;
script->VAR_2 = 0;
}
#if VERSION_PAL
script->varTable[14] += 0x10000;
script->VAR_2 = script->varTable[14] >> 16;
#endif
break;
case FUNC_STATE_3:
npc->moveToPos.y -= 0.03f;
npc->pos.x = 0.0f;
npc->pos.z = -50.0f;
npc->pos.y = 45.999996f;
add_vec2D_polar(&npc->pos.x, &npc->pos.z, 70.0f, npc->moveToPos.x + (script->functionTemp[2] * 51) + 153.0f);
npc->pos.y += (-npc->pos.z + -50.0f + 70.0f) * 0.15f;
if ((script->functionTemp[3] + script->functionTemp[2]) ==
(((script->functionTemp[3] + script->functionTemp[2]) / 13) * 13)) {
add_vec2D_polar(&npc->pos.x, &npc->pos.z, 70.0f / DT, npc->moveToPos.x + (script->functionTemp[2] * 51) + 153.0f);
npc->pos.y += (-npc->pos.z + -50.0f + 70.0f / DT) * 0.15f;
if ((script->VAR_1 + script->functionTemp[2]) ==
(((script->VAR_1 + script->functionTemp[2]) / 13) * 13)) {
fx_sparkles(FX_SPARKLES_3, npc->pos.x, npc->pos.y + 10.0f, npc->pos.z, 10.0f);
}
if (npc->moveToPos.y < 0.0f) {
#if VERSION_PAL
var = evt_get_variable(NULL, MV_Unk_02);
evt_set_variable(NULL, MV_Unk_02, var + 1);
#endif
retVal = ApiStatus_DONE2;
}
break;
}
#if VERSION_PAL
script->varTable[13] += 0x10000;
script->varTable[11] = script->varTable[13] >> 16;
#else
script->functionTemp[3]++;
#endif
npc->moveToPos.x += npc->moveToPos.y;
return retVal;
}
@ -205,6 +235,16 @@ API_CALLABLE(N(func_80240BD8_8ACB68)) {
return ApiStatus_BLOCK;
}
#if VERSION_PAL
API_CALLABLE(N(func_PAL_80240D08)) {
if (evt_get_variable(NULL, MV_Unk_02) == 7) {
return ApiStatus_DONE2;
}
return ApiStatus_BLOCK;
}
#endif
EvtScript N(EVS_Scene_MarioRevived) = {
EVT_IF_GE(GB_StoryProgress, STORY_CH0_WAKE_UP)
EVT_CALL(EnableModel, MODEL_reef_1, FALSE)
@ -239,63 +279,70 @@ EvtScript N(EVS_Scene_MarioRevived) = {
EVT_CALL(func_802D4D14, 180)
EVT_CALL(SetPlayerPos, 0, 2, 0)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Fallen)
EVT_WAIT(60)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(0.7))
EVT_WAIT(60 * DT)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(0.7 / DT))
EVT_CALL(SetCamDistance, CAM_DEFAULT, -350)
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_THREAD
EVT_WAIT(2)
EVT_SETF(LVar0, 0)
EVT_SETF(LVar1, 0)
EVT_LOOP(90)
EVT_LOOP(90 * DT)
EVT_CALL(TranslateModel, MODEL_reef_3, LVar0, 0, 0)
EVT_CALL(TranslateModel, MODEL_reef_4, LVar1, 0, 0)
EVT_ADDF(LVar0, EVT_FLOAT(-0.66))
EVT_ADDF(LVar1, EVT_FLOAT(0.66))
EVT_ADDF(LVar0, EVT_FLOAT(-0.66 / DT))
#if VERSION_PAL
EVT_ADDF(LVar1, EVT_FLOAT(0.79296875)) // 0.66 / DT rounds slightly off
#else
EVT_ADDF(LVar1, EVT_FLOAT(0.66 / DT))
#endif
EVT_WAIT(1)
EVT_END_LOOP
EVT_END_THREAD
EVT_THREAD
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_SETF(LVar0, 0)
EVT_SETF(LVar1, 0)
EVT_LOOP(120)
EVT_LOOP(120 * DT)
EVT_CALL(TranslateModel, MODEL_reef_1, LVar0, 0, 0)
EVT_CALL(TranslateModel, MODEL_reef_2, LVar1, 0, 0)
EVT_CALL(TranslateModel, MODEL_moku2, LVar1, 0, 0)
EVT_CALL(TranslateModel, MODEL_ha2_1, LVar1, 0, 0)
EVT_CALL(TranslateModel, MODEL_ha2_2, LVar1, 0, 0)
EVT_CALL(TranslateModel, MODEL_ha2_3, LVar1, 0, 0)
EVT_ADDF(LVar0, EVT_FLOAT(-0.75))
EVT_ADDF(LVar1, EVT_FLOAT(0.75))
EVT_ADDF(LVar0, EVT_FLOAT(-0.75 / DT))
EVT_ADDF(LVar1, EVT_FLOAT(0.75 / DT))
EVT_WAIT(1)
EVT_END_LOOP
EVT_END_THREAD
EVT_THREAD
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_SETF(LVar0, 0)
EVT_SETF(LVar1, 0)
EVT_LOOP(120)
EVT_LOOP(120 * DT)
EVT_CALL(TranslateModel, MODEL_moku1, LVar0, 0, 0)
EVT_CALL(TranslateModel, MODEL_ha1, LVar0, 0, 0)
EVT_CALL(TranslateModel, MODEL_ha2, LVar0, 0, 0)
EVT_CALL(RotateModel, MODEL_moku1, LVar1, 0, 1, 0)
EVT_CALL(RotateModel, MODEL_ha1, LVar1, 0, 1, 0)
EVT_CALL(RotateModel, MODEL_ha2, LVar1, 0, 1, 0)
EVT_ADDF(LVar0, EVT_FLOAT(-0.2))
EVT_ADDF(LVar1, EVT_FLOAT(-0.4))
EVT_ADDF(LVar0, EVT_FLOAT(-0.2 / DT))
EVT_ADDF(LVar1, EVT_FLOAT(-0.4 / DT))
EVT_WAIT(1)
EVT_END_LOOP
EVT_END_THREAD
EVT_WAIT(140)
EVT_WAIT(140 * DT)
EVT_CALL(N(func_80240584_8AC514))
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetMusicTrack, 0, SONG_STAR_SPIRIT_THEME, 0, 8)
EVT_THREAD
EVT_CALL(N(func_80240000_8ABF90), 50, 50, 50, 0, 0, 0, 50)
EVT_CALL(N(func_80240000_8ABF90), 50, 50, 50, 0, 0, 0, 50 * DT)
EVT_END_THREAD
EVT_WAIT(90)
EVT_WAIT(90 * DT)
EVT_CALL(func_802D4D88)
#if VERSION_PAL
EVT_SET(MV_Unk_02, 0)
#endif
EVT_THREAD
EVT_CALL(N(func_802405F0_8AC580), 1, 0, 180)
EVT_END_THREAD
@ -318,8 +365,8 @@ EvtScript N(EVS_Scene_MarioRevived) = {
EVT_CALL(N(func_802405F0_8AC580), 7, 6, 120)
EVT_END_THREAD
EVT_THREAD
EVT_WAIT(330)
EVT_CALL(MakeLerp, 6000, 12000, 120, EASING_LINEAR)
EVT_WAIT(330 * DT)
EVT_CALL(MakeLerp, 6000, 12000, 120 * DT, EASING_LINEAR)
EVT_LABEL(25)
EVT_CALL(UpdateLerp)
EVT_CALL(N(func_802404E8_8AC478))
@ -328,59 +375,65 @@ EvtScript N(EVS_Scene_MarioRevived) = {
EVT_GOTO(25)
EVT_END_IF
EVT_END_THREAD
EVT_WAIT(550)
EVT_WAIT(550 * DT)
#if VERSION_PAL
EVT_WAIT(15 * DT)
EVT_CALL(N(func_PAL_80240D08))
#endif
EVT_CALL(GetNpcPos, NPC_Kalmar, LVar6, LVar7, LVar8)
EVT_CALL(GetNpcPos, NPC_Mamar, LVar9, LVarA, LVarB)
#if !VERSION_PAL
EVT_WAIT(15)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(3.0))
#endif
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(3.0 / DT))
EVT_CALL(SetCamDistance, CAM_DEFAULT, -200)
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_THREAD
EVT_CALL(SetNpcAnimation, NPC_Kalmar, ANIM_WorldKalmar_LeanLeft)
EVT_CALL(NpcFlyTo, NPC_Kalmar, 20, 10, -5, 25, -10, EASING_QUADRATIC_OUT)
EVT_WAIT(10)
EVT_CALL(NpcFlyTo, NPC_Kalmar, 20, 10, -5, 25 * DT, -10, EASING_QUADRATIC_OUT)
EVT_WAIT(10 * DT)
EVT_CALL(SetNpcAnimation, NPC_Kalmar, ANIM_WorldKalmar_LeanLeftAlt)
EVT_WAIT(35)
EVT_WAIT(35 * DT)
EVT_CALL(SetNpcAnimation, NPC_Kalmar, ANIM_WorldKalmar_LeanRight)
EVT_END_THREAD
EVT_THREAD
EVT_LOOP(3)
EVT_CALL(N(func_80240530_8AC4C0), NPC_Kalmar)
EVT_WAIT(6)
EVT_WAIT(6 * DT)
EVT_END_LOOP
EVT_END_THREAD
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_THREAD
EVT_CALL(N(func_80240530_8AC4C0), NPC_Mamar)
EVT_CALL(SetNpcAnimation, NPC_Mamar, ANIM_WorldMamar_LeanLeft)
EVT_CALL(NpcFlyTo, NPC_Mamar, -20, 10, -5, 25, -10, EASING_QUADRATIC_OUT)
EVT_WAIT(5)
EVT_CALL(NpcFlyTo, NPC_Mamar, -20, 10, -5, 25 * DT, -10, EASING_QUADRATIC_OUT)
EVT_WAIT(5 * DT)
EVT_CALL(SetNpcAnimation, NPC_Mamar, ANIM_WorldMamar_LeanLeftAlt)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetNpcAnimation, NPC_Mamar, ANIM_WorldMamar_LeanRight)
EVT_END_THREAD
EVT_THREAD
EVT_LOOP(3)
EVT_CALL(N(func_80240530_8AC4C0), NPC_Mamar)
EVT_WAIT(6)
EVT_WAIT(6 * DT)
EVT_END_LOOP
EVT_END_THREAD
EVT_WAIT(35)
EVT_WAIT(35 * DT)
EVT_CALL(SpeakToPlayer, NPC_Mamar, ANIM_WorldMamar_TalkHappy, ANIM_WorldMamar_Idle, 5, MSG_CH0_0000)
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_CALL(SpeakToPlayer, NPC_Kalmar, ANIM_WorldMamar_TalkHappy, ANIM_WorldMamar_Idle, 5, MSG_CH0_0001)
EVT_WAIT(3)
EVT_THREAD
EVT_CALL(SetNpcAnimation, NPC_Kalmar, ANIM_WorldKalmar_LeanLeftAlt)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetNpcAnimation, NPC_Kalmar, ANIM_WorldKalmar_LeanRight)
EVT_WAIT(10)
EVT_CALL(NpcFlyTo, NPC_Kalmar, LVar6, LVar7, LVar8, 15, -10, EASING_CUBIC_OUT)
EVT_WAIT(10 * DT)
EVT_CALL(NpcFlyTo, NPC_Kalmar, LVar6, LVar7, LVar8, 15 * DT, -10, EASING_CUBIC_OUT)
EVT_CALL(SetNpcAnimation, NPC_Kalmar, ANIM_WorldKalmar_Idle)
EVT_END_THREAD
EVT_THREAD
EVT_WAIT(40)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(3.0))
EVT_WAIT(40 * DT)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(3.0 / DT))
EVT_CALL(SetCamDistance, CAM_DEFAULT, -350)
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_LOOP(3)
@ -390,28 +443,28 @@ EvtScript N(EVS_Scene_MarioRevived) = {
EVT_END_THREAD
EVT_THREAD
EVT_CALL(SetNpcAnimation, NPC_Mamar, ANIM_WorldMamar_LeanLeftAlt)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetNpcAnimation, NPC_Mamar, ANIM_WorldMamar_LeanRight)
EVT_WAIT(10)
EVT_CALL(NpcFlyTo, NPC_Mamar, LVar9, LVarA, LVarB, 15, -10, EASING_CUBIC_OUT)
EVT_WAIT(10 * DT)
EVT_CALL(NpcFlyTo, NPC_Mamar, LVar9, LVarA, LVarB, 15 * DT, -10, EASING_CUBIC_OUT)
EVT_CALL(SetNpcAnimation, NPC_Mamar, ANIM_WorldMamar_Idle)
EVT_END_THREAD
EVT_THREAD
EVT_WAIT(40)
EVT_WAIT(40 * DT)
EVT_LOOP(3)
EVT_CALL(N(func_80240530_8AC4C0), NPC_Mamar)
EVT_WAIT(4)
EVT_END_LOOP
EVT_END_THREAD
EVT_WAIT(90)
EVT_WAIT(90 * DT)
EVT_CALL(SpeakToPlayer, NPC_Eldstar, ANIM_WorldEldstar_Wave, ANIM_WorldEldstar_Wave, 5, MSG_CH0_0002)
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_THREAD
EVT_CALL(SetNpcFlagBits, NPC_Eldstar, NPC_FLAG_TOUCHES_GROUND, FALSE)
EVT_CALL(SetNpcAnimation, NPC_Eldstar, ANIM_WorldEldstar_Leap)
EVT_CALL(SetNpcJumpscale, NPC_Eldstar, EVT_FLOAT(3.2))
EVT_CALL(GetNpcPos, NPC_Eldstar, LVar6, LVar7, LVar8)
EVT_CALL(NpcJump0, NPC_Eldstar, LVar6, LVar7, LVar8, 5)
EVT_CALL(NpcJump0, NPC_Eldstar, LVar6, LVar7, LVar8, 5 * DT)
EVT_CALL(SetNpcAnimation, NPC_Eldstar, ANIM_WorldEldstar_Idle)
EVT_CALL(PlaySoundAtPlayer, SOUND_B000001F, SOUND_SPACE_MODE_0)
EVT_CALL(N(func_802403B8_8AC348), 0, 0, 0, 3, 10)
@ -422,7 +475,7 @@ EvtScript N(EVS_Scene_MarioRevived) = {
EVT_CALL(SetNpcFlagBits, NPC_Mamar, NPC_FLAG_TOUCHES_GROUND, FALSE)
EVT_CALL(SetNpcJumpscale, NPC_Mamar, EVT_FLOAT(3.2))
EVT_CALL(GetNpcPos, NPC_Mamar, LVar6, LVar7, LVar8)
EVT_CALL(NpcJump0, NPC_Mamar, LVar6, LVar7, LVar8, 5)
EVT_CALL(NpcJump0, NPC_Mamar, LVar6, LVar7, LVar8, 5 * DT)
EVT_CALL(SetNpcAnimation, NPC_Mamar, ANIM_WorldMamar_Idle)
EVT_END_THREAD
EVT_THREAD
@ -431,7 +484,7 @@ EvtScript N(EVS_Scene_MarioRevived) = {
EVT_CALL(SetNpcFlagBits, NPC_Skolar, NPC_FLAG_TOUCHES_GROUND, FALSE)
EVT_CALL(SetNpcJumpscale, NPC_Skolar, EVT_FLOAT(3.2))
EVT_CALL(GetNpcPos, NPC_Skolar, LVar6, LVar7, LVar8)
EVT_CALL(NpcJump0, NPC_Skolar, LVar6, LVar7, LVar8, 5)
EVT_CALL(NpcJump0, NPC_Skolar, LVar6, LVar7, LVar8, 5 * DT)
EVT_CALL(SetNpcAnimation, NPC_Skolar, ANIM_WorldSkolar_Idle)
EVT_END_THREAD
EVT_THREAD
@ -440,7 +493,7 @@ EvtScript N(EVS_Scene_MarioRevived) = {
EVT_CALL(SetNpcFlagBits, NPC_Muskular, NPC_FLAG_TOUCHES_GROUND, FALSE)
EVT_CALL(SetNpcJumpscale, NPC_Muskular, EVT_FLOAT(3.2))
EVT_CALL(GetNpcPos, NPC_Muskular, LVar6, LVar7, LVar8)
EVT_CALL(NpcJump0, NPC_Muskular, LVar6, LVar7, LVar8, 5)
EVT_CALL(NpcJump0, NPC_Muskular, LVar6, LVar7, LVar8, 5 * DT)
EVT_CALL(SetNpcAnimation, NPC_Muskular, ANIM_WorldMuskular_Idle)
EVT_END_THREAD
EVT_THREAD
@ -449,7 +502,7 @@ EvtScript N(EVS_Scene_MarioRevived) = {
EVT_CALL(SetNpcFlagBits, NPC_Misstar, NPC_FLAG_TOUCHES_GROUND, FALSE)
EVT_CALL(SetNpcJumpscale, NPC_Misstar, EVT_FLOAT(3.2))
EVT_CALL(GetNpcPos, NPC_Misstar, LVar6, LVar7, LVar8)
EVT_CALL(NpcJump0, NPC_Misstar, LVar6, LVar7, LVar8, 5)
EVT_CALL(NpcJump0, NPC_Misstar, LVar6, LVar7, LVar8, 5 * DT)
EVT_CALL(SetNpcAnimation, NPC_Misstar, ANIM_WorldMisstar_Idle)
EVT_END_THREAD
EVT_THREAD
@ -458,7 +511,7 @@ EvtScript N(EVS_Scene_MarioRevived) = {
EVT_CALL(SetNpcFlagBits, NPC_Klevar, NPC_FLAG_TOUCHES_GROUND, FALSE)
EVT_CALL(SetNpcJumpscale, NPC_Klevar, EVT_FLOAT(3.2))
EVT_CALL(GetNpcPos, NPC_Klevar, LVar6, LVar7, LVar8)
EVT_CALL(NpcJump0, NPC_Klevar, LVar6, LVar7, LVar8, 5)
EVT_CALL(NpcJump0, NPC_Klevar, LVar6, LVar7, LVar8, 5 * DT)
EVT_CALL(SetNpcAnimation, NPC_Klevar, ANIM_WorldKlevar_Idle)
EVT_END_THREAD
EVT_THREAD
@ -467,42 +520,42 @@ EvtScript N(EVS_Scene_MarioRevived) = {
EVT_CALL(SetNpcFlagBits, NPC_Kalmar, NPC_FLAG_TOUCHES_GROUND, FALSE)
EVT_CALL(SetNpcJumpscale, NPC_Kalmar, EVT_FLOAT(3.2))
EVT_CALL(GetNpcPos, NPC_Kalmar, LVar6, LVar7, LVar8)
EVT_CALL(NpcJump0, NPC_Kalmar, LVar6, LVar7, LVar8, 5)
EVT_CALL(NpcJump0, NPC_Kalmar, LVar6, LVar7, LVar8, 5 * DT)
EVT_CALL(SetNpcAnimation, NPC_Kalmar, ANIM_WorldKalmar_Idle)
EVT_END_THREAD
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_THREAD
EVT_WAIT(45)
EVT_WAIT(45 * DT)
EVT_CALL(PlaySoundAtPlayer, SOUND_188, SOUND_SPACE_MODE_0)
EVT_CALL(N(func_802404A0_8AC430))
EVT_END_THREAD
EVT_CALL(PlaySoundAtPlayer, SOUND_B000001F, SOUND_SPACE_MODE_0)
EVT_CALL(N(func_802403B8_8AC348), 0, 10, 10, 3, 10)
EVT_WAIT(6)
EVT_WAIT(6 * DT)
EVT_CALL(PlaySoundAtPlayer, SOUND_B000001F, SOUND_SPACE_MODE_0)
EVT_CALL(N(func_802403B8_8AC348), 0, 0, 10, 3, 15)
EVT_WAIT(6)
EVT_WAIT(6 * DT)
EVT_CALL(PlaySoundAtPlayer, SOUND_B000001F, SOUND_SPACE_MODE_0)
EVT_CALL(N(func_802403B8_8AC348), 0, -10, 10, 3, 20)
EVT_WAIT(6)
EVT_WAIT(6 * DT)
EVT_CALL(PlaySoundAtPlayer, SOUND_B000001F, SOUND_SPACE_MODE_0)
EVT_CALL(N(func_802403B8_8AC348), 0, 10, 10, 3, 25)
EVT_WAIT(6)
EVT_WAIT(6 * DT)
EVT_LOOP(3)
EVT_CALL(PlaySoundAtPlayer, SOUND_B000001F, SOUND_SPACE_MODE_0)
EVT_CALL(N(func_802403B8_8AC348), 0, 0, 10, 3, 30)
EVT_WAIT(6)
EVT_WAIT(6 * DT)
EVT_CALL(PlaySoundAtPlayer, SOUND_B000001F, SOUND_SPACE_MODE_0)
EVT_CALL(N(func_802403B8_8AC348), 0, -10, 10, 3, 30)
EVT_WAIT(6)
EVT_WAIT(6 * DT)
EVT_CALL(PlaySoundAtPlayer, SOUND_B000001F, SOUND_SPACE_MODE_0)
EVT_CALL(N(func_802403B8_8AC348), 0, 10, 10, 3, 30)
EVT_WAIT(6)
EVT_WAIT(6 * DT)
EVT_END_LOOP
EVT_WAIT(40)
EVT_WAIT(40 * DT)
EVT_CALL(SpeakToPlayer, NPC_Eldstar, ANIM_WorldEldstar_Wave, ANIM_WorldEldstar_Wave, 5, MSG_CH0_0003)
EVT_THREAD
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_CALL(N(func_80240BD8_8ACB68), 5)
EVT_WAIT(2)
EVT_CALL(N(func_80240BD8_8ACB68), 2)
@ -517,14 +570,14 @@ EvtScript N(EVS_Scene_MarioRevived) = {
EVT_WAIT(2)
EVT_CALL(N(func_80240BD8_8ACB68), 1)
EVT_END_THREAD
EVT_CALL(FadeOutMusic, 0, 0x00001388)
EVT_CALL(FadeOutMusic, 0, 5000 * DT)
EVT_THREAD
EVT_WAIT(90)
EVT_WAIT(90 * DT)
EVT_CALL(N(func_802405A8_8AC538))
EVT_END_THREAD
EVT_WAIT(60)
EVT_CALL(N(func_80240000_8ABF90), 255, 255, 255, 0, 0, 0, 50)
EVT_CALL(SetNpcSpeed, NPC_Goombaria, EVT_FLOAT(3.0))
EVT_WAIT(60 * DT)
EVT_CALL(N(func_80240000_8ABF90), 255, 255, 255, 0, 0, 0, 50 * DT)
EVT_CALL(SetNpcSpeed, NPC_Goombaria, EVT_FLOAT(3.0 / DT))
EVT_CALL(SetNpcFlagBits, NPC_Goombaria, NPC_FLAG_IGNORE_PLAYER_COLLISION | NPC_FLAG_GRAVITY, TRUE)
EVT_CALL(SetNpcFlagBits, NPC_Goombaria, NPC_FLAG_8 | NPC_FLAG_IGNORE_WORLD_COLLISION, FALSE)
EVT_CALL(EnableNpcShadow, NPC_Goombaria, TRUE)
@ -533,42 +586,42 @@ EvtScript N(EVS_Scene_MarioRevived) = {
EVT_CALL(NpcMoveTo, NPC_Goombaria, 110, 0, 0)
EVT_CALL(SetNpcAnimation, NPC_Goombaria, ANIM_Goombaria_Stand)
EVT_CALL(InterpNpcYaw, NPC_Goombaria, 90, 1)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(InterpNpcYaw, NPC_Goombaria, 270, 1)
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_CALL(InterpNpcYaw, NPC_Goombaria, 90, 1)
EVT_WAIT(18)
EVT_WAIT(18 * DT)
EVT_CALL(InterpNpcYaw, NPC_Goombaria, 270, 1)
EVT_WAIT(10)
EVT_WAIT(6)
EVT_WAIT(10 * DT)
EVT_WAIT(6 * DT)
EVT_CALL(SetCamDistance, CAM_DEFAULT, 200)
EVT_CALL(SetCamPitch, CAM_DEFAULT, 15, -12)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0))
EVT_CALL(GetNpcPos, NPC_Goombaria, LVar3, LVar4, LVar5)
EVT_ADD(LVar3, -20)
EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar3, LVar4, LVar5)
EVT_WAIT(25)
EVT_WAIT(25 * DT)
EVT_CALL(SetNpcAnimation, NPC_Goombaria, ANIM_Goombaria_LeanOver)
EVT_CALL(PlaySoundAtNpc, NPC_Goombaria, SOUND_263, SOUND_SPACE_MODE_0)
EVT_CALL(ShowEmote, NPC_Goombaria, EMOTE_QUESTION, 0, 20, EMOTER_NPC, 0, 0, 0, 0)
EVT_WAIT(25)
EVT_WAIT(25 * DT)
EVT_CALL(SetNpcAnimation, NPC_Goombaria, ANIM_Goombaria_Stand)
EVT_CALL(SpeakToPlayer, NPC_Goombaria, ANIM_Goombaria_Talk, ANIM_Goombaria_Stand, 5, MSG_CH0_0004)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, 1)
EVT_CALL(SetPanTarget, CAM_DEFAULT, 0, 0, 0)
EVT_CALL(SetNpcSpeed, NPC_Goombaria, EVT_FLOAT(3.0))
EVT_CALL(SetNpcSpeed, NPC_Goombaria, EVT_FLOAT(3.0 / DT))
EVT_CALL(SetNpcAnimation, NPC_Goombaria, ANIM_Goombaria_Run)
EVT_CALL(NpcMoveTo, NPC_Goombaria, 30, -10, 0)
EVT_WAIT(2)
EVT_CALL(SetNpcAnimation, NPC_Goombaria, ANIM_Goombaria_Inspect)
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_CALL(SpeakToPlayer, NPC_Goombaria, ANIM_Goombaria_Inspect, ANIM_Goombaria_Inspect, 5, MSG_CH0_0005)
EVT_CALL(SetNpcAnimation, NPC_Goombaria, ANIM_Goombaria_Talk)
EVT_CALL(NpcJump0, NPC_Goombaria, 30, 0, -10, 4)
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(SetNpcAnimation, NPC_Goombaria, ANIM_Goombaria_LeanOver)
EVT_CALL(NpcJump0, NPC_Goombaria, 30, 0, -10, 4)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_Goombaria, ANIM_Goombaria_Talk, ANIM_Goombaria_Stand, 5, MSG_CH0_0006)
EVT_CALL(SetNpcAnimation, NPC_Goombaria, ANIM_Goombaria_Run)
EVT_CALL(SetNpcSpeed, NPC_Goombaria, EVT_FLOAT(6.0))
@ -594,16 +647,16 @@ EvtScript N(EVS_Scene_MarioRevived) = {
EVT_CALL(NpcFacePlayer, NPC_Goombaria, 5)
EVT_CALL(SetNpcJumpscale, NPC_Goombaria, EVT_FLOAT(4.0))
EVT_CALL(NpcJump0, NPC_Goombaria, 33, 0, 5, 4)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(SpeakToPlayer, NPC_Goombaria, ANIM_Goombaria_Talk, ANIM_Goombaria_Stand, 5, MSG_CH0_0007)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_THREAD
EVT_CALL(SetNpcSpeed, NPC_Goombaria, EVT_FLOAT(4.0))
EVT_CALL(SetNpcSpeed, NPC_Goombaria, EVT_FLOAT(4.0 / DT))
EVT_CALL(NpcMoveTo, NPC_Goombaria, 450, 0, 0)
EVT_END_THREAD
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_CALL(SpeakToPlayer, NPC_Goombaria, ANIM_Goombaria_Talk, ANIM_Goombaria_Stand, 5, MSG_CH0_0008)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_SET(GB_StoryProgress, STORY_CH0_WAKE_UP)
EVT_CALL(DisablePlayerPhysics, FALSE)
EVT_CALL(N(func_802405CC_8AC55C))

View File

@ -39,8 +39,13 @@ enum {
enum {
MV_Unk_00 = MapVar(0),
MV_Unk_01 = MapVar(1),
#if VERSION_PAL
MV_Unk_04 = MapVar(5),
MV_Unk_05 = MapVar(6),
#else
MV_Unk_04 = MapVar(4),
MV_Unk_05 = MapVar(5),
#endif
};
enum {

View File

@ -50,7 +50,7 @@ EvtScript N(EVS_EnterMap) = {
EVT_EXEC(EnterWalk)
EVT_IF_EQ(GF_KMR02_ReturnedWithGoompa, FALSE)
EVT_CALL(DisablePlayerInput, TRUE)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(DisablePartnerAI, 0)
EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_Goompa_Talk, ANIM_Goompa_Idle, 4, MSG_CH0_001C)
EVT_CALL(EnablePartnerAI)

View File

@ -135,10 +135,10 @@ EvtScript N(EVS_NpcInteract_Goombario) = {
EVT_CASE_LT(STORY_CH0_GATE_CRUSHED)
EVT_IF_EQ(GF_KMR02_Met_Goombario, FALSE)
EVT_SET(GF_KMR02_Met_Goombario, TRUE)
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(5.0), 0, EVT_FLOAT(-275.0), EVT_FLOAT(15.2), EVT_FLOAT(-7.5))
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(5.0 * DT), 0, EVT_FLOAT(-275.0), EVT_FLOAT(15.2), EVT_FLOAT(-7.5))
EVT_CALL(SpeakToPlayer, NPC_Goombario, ANIM_WorldGoombario_Talk, ANIM_WorldGoombario_Idle, 5, MSG_CH0_004D)
EVT_THREAD
EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(4.0))
EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(4.0 * DT))
EVT_END_THREAD
EVT_ELSE
EVT_IF_EQ(GF_KMR02_Goombario_SwapDialogue, FALSE)
@ -402,7 +402,7 @@ EvtScript N(EVS_ReturnToVillage) = {
EVT_CALL(NpcMoveTo, NPC_PARTNER, -295, -30, 0)
EVT_CALL(SetNpcAnimation, NPC_PARTNER, ANIM_Goompa_WearyWalk)
EVT_CALL(PlaySoundAtNpc, NPC_PARTNER, SOUND_269, SOUND_SPACE_MODE_0)
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_CALL(PlaySoundAtCollider, COLLIDER_mm1, SOUND_1D2, SOUND_SPACE_MODE_0)
EVT_CALL(MakeLerp, 0, 120, 20, EASING_COS_IN_OUT)
EVT_LABEL(0)
@ -428,56 +428,56 @@ EvtScript N(EVS_ReturnToVillage) = {
EVT_CALL(UseSettingsFrom, CAM_DEFAULT, -189, 0, -40)
EVT_CALL(SetPanTarget, CAM_DEFAULT, -189, 0, -40)
EVT_CALL(SetCamDistance, CAM_DEFAULT, -350)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(1.3))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(1.3 / DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_THREAD
EVT_CALL(SetNpcSpeed, NPC_Goombario, EVT_FLOAT(4.0))
EVT_CALL(SetNpcSpeed, NPC_Goombario, EVT_FLOAT(4.0 / DT))
EVT_CALL(SetNpcAnimation, NPC_Goombario, ANIM_WorldGoombario_Run)
EVT_CALL(NpcMoveTo, NPC_Goombario, -109, -61, 0)
EVT_CALL(SetNpcAnimation, NPC_Goombario, ANIM_WorldGoombario_Idle)
EVT_END_THREAD
EVT_THREAD
EVT_CALL(SetNpcSpeed, NPC_Goombaria, EVT_FLOAT(4.0))
EVT_CALL(SetNpcSpeed, NPC_Goombaria, EVT_FLOAT(4.0 / DT))
EVT_CALL(SetNpcAnimation, NPC_Goombaria, ANIM_Goombaria_SadRun)
EVT_CALL(NpcMoveTo, NPC_Goombaria, -142, -95, 0)
EVT_CALL(SetNpcAnimation, NPC_Goombaria, ANIM_Goombaria_SadIdle)
EVT_END_THREAD
EVT_THREAD
EVT_CALL(SetPlayerSpeed, EVT_FLOAT(3.0))
EVT_CALL(SetPlayerSpeed, EVT_FLOAT(3.0 / DT))
EVT_CALL(PlayerMoveTo, -238, -33, 0)
EVT_END_THREAD
EVT_CALL(N(func_80242014_8B2084))
EVT_CALL(DisablePartnerAI, 0)
EVT_CALL(SetNpcSpeed, NPC_PARTNER, EVT_FLOAT(3.0))
EVT_CALL(SetNpcSpeed, NPC_PARTNER, EVT_FLOAT(3.0 / DT))
EVT_CALL(SetNpcAnimation, NPC_PARTNER, ANIM_Goompa_WearyWalk)
EVT_CALL(NpcMoveTo, NPC_PARTNER, -168, -15, 0)
EVT_CALL(SetNpcAnimation, NPC_PARTNER, ANIM_Goompa_WearyIdle)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_CALL(SpeakToNpc, NPC_Goombario, ANIM_WorldGoombario_Talk, ANIM_WorldGoombario_Idle, 0, NPC_PARTNER, MSG_CH0_001E)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToNpc, NPC_Goombaria, ANIM_Goombaria_SadTalk, ANIM_Goombaria_SadIdle, 0, NPC_PARTNER, MSG_CH0_001F)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToNpc, NPC_PARTNER, ANIM_Goompa_WearyTalk, ANIM_Goompa_WearyIdle, 0, NPC_Goombario, MSG_CH0_0020)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(UseSettingsFrom, CAM_DEFAULT, -79, 0, -10)
EVT_CALL(SetPanTarget, CAM_DEFAULT, -22, 0, 12)
EVT_CALL(SetCamDistance, CAM_DEFAULT, -350)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(0.4))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(0.4 / DT))
EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(15.0), EVT_FLOAT(-6.0))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_THREAD
EVT_WAIT(30)
EVT_CALL(SetPlayerSpeed, EVT_FLOAT(3.0))
EVT_WAIT(30 * DT)
EVT_CALL(SetPlayerSpeed, EVT_FLOAT(3.0 / DT))
EVT_CALL(PlayerMoveTo, -79, -10, 0)
EVT_END_THREAD
EVT_THREAD
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetNpcAnimation, NPC_Goombario, ANIM_WorldGoombario_Run)
EVT_CALL(NpcMoveTo, NPC_Goombario, -45, 40, 0)
EVT_CALL(SetNpcAnimation, NPC_Goombario, ANIM_WorldGoombario_Idle)
EVT_END_THREAD
EVT_THREAD
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetNpcAnimation, NPC_Goombaria, ANIM_Goombaria_SadRun)
EVT_CALL(NpcMoveTo, NPC_Goombaria, -23, -21, 0)
EVT_CALL(SetNpcAnimation, NPC_Goombaria, ANIM_Goombaria_SadIdle)
@ -486,10 +486,10 @@ EvtScript N(EVS_ReturnToVillage) = {
EVT_CALL(NpcMoveTo, NPC_PARTNER, 30, 35, 0)
EVT_CALL(SetNpcAnimation, NPC_PARTNER, ANIM_Goompa_WearyIdle)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_Goompa_WearyTalk, ANIM_Goompa_WearyIdle, 0, MSG_CH0_0021)
EVT_WAIT(10)
EVT_CALL(SetNpcSpeed, NPC_PARTNER, EVT_FLOAT(4.0))
EVT_WAIT(10 * DT)
EVT_CALL(SetNpcSpeed, NPC_PARTNER, EVT_FLOAT(4.0 / DT))
EVT_CALL(SetNpcAnimation, NPC_PARTNER, ANIM_Goompa_WearyWalk)
EVT_CALL(NpcMoveTo, NPC_PARTNER, 41, -147, 0)
EVT_CALL(SetNpcAnimation, NPC_PARTNER, ANIM_Goompa_WearyIdle)
@ -522,16 +522,16 @@ EvtScript N(EVS_ReturnToVillage) = {
EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2)
EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(-350.0))
EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(15.0), EVT_FLOAT(-6.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(2.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(2.0 / DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_END_THREAD
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(PlayerFaceNpc, NPC_Goombario, TRUE)
EVT_CALL(SpeakToPlayer, NPC_Goombario, ANIM_WorldGoombario_Talk, ANIM_WorldGoombario_Idle, 0, MSG_CH0_0022)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(ShowChoice, MSG_Choice_0011)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_SWITCH(LVar0)
EVT_CASE_EQ(0)
EVT_CALL(CloseMessage)
@ -540,28 +540,28 @@ EvtScript N(EVS_ReturnToVillage) = {
EVT_CALL(PlayerFaceNpc, NPC_Goombaria, TRUE)
EVT_CALL(PlayerMoveTo, -50, -24, 0)
EVT_CALL(InterpPlayerYaw, 94, 0)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_EXEC_WAIT(N(EVS_HandOverDolly))
EVT_CALL(SpeakToPlayer, NPC_Goombaria, ANIM_Goombaria_SadTalk, ANIM_Goombaria_SadIdle, 0, MSG_CH0_0024)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SetNpcAnimation, NPC_Goombaria, ANIM_Goombaria_Inspect)
EVT_CALL(InterpNpcYaw, NPC_Goombaria, 90, 1)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(InterpNpcYaw, NPC_Goombaria, 270, 1)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SetNpcAnimation, NPC_Goombaria, ANIM_Goombaria_Idle)
EVT_CALL(SpeakToPlayer, NPC_Goombaria, ANIM_Goombaria_Talk, ANIM_Goombaria_Idle, 0, MSG_CH0_0025)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_GIVE_STAR_PIECE()
EVT_CALL(SpeakToPlayer, NPC_Goombaria, ANIM_Goombaria_Talk, ANIM_Goombaria_Idle, 0, MSG_CH0_0026)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_EXEC(N(EVS_Goombaria_Kiss))
EVT_CALL(SetNpcJumpscale, NPC_Goombaria, EVT_FLOAT(1.0))
EVT_CALL(NpcJump0, NPC_Goombaria, -30, 0, -19, 10)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(func_802D2520, ANIM_Mario1_Idle, FOLD_TYPE_5, 1, 1, 1, 0)
EVT_WAIT(35)
EVT_CALL(SetNpcSpeed, NPC_Goombaria, EVT_FLOAT(3.0))
EVT_WAIT(35 * DT)
EVT_CALL(SetNpcSpeed, NPC_Goombaria, EVT_FLOAT(3.0 / DT))
EVT_CALL(SetNpcAnimation, NPC_Goombaria, ANIM_Goombaria_Walk)
EVT_CALL(NpcMoveTo, NPC_Goombaria, -23, -21, 0)
EVT_CALL(SetNpcAnimation, NPC_Goombaria, ANIM_Goombaria_Idle)
@ -569,30 +569,30 @@ EvtScript N(EVS_ReturnToVillage) = {
EVT_CALL(func_802D2520, ANIM_Mario1_Idle, FOLD_TYPE_NONE, 0, 0, 0, 0)
EVT_CALL(PlayerMoveTo, -85, -10, 0)
EVT_CALL(PlayerFaceNpc, NPC_Goombaria, TRUE)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CASE_EQ(1)
EVT_CALL(ContinueSpeech, NPC_Goombario, ANIM_WorldGoombario_Talk, ANIM_WorldGoombario_Idle, 0, MSG_CH0_0023)
EVT_SET(GF_KMR02_KeptDolly, TRUE)
EVT_WAIT(10)
EVT_END_SWITCH
EVT_THREAD
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(3.0), 30, EVT_FLOAT(-275.0), EVT_FLOAT(15.0), EVT_FLOAT(-6.0))
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(3.0 / DT), 30, EVT_FLOAT(-275.0), EVT_FLOAT(15.0), EVT_FLOAT(-6.0))
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_END_THREAD
EVT_WAIT(60)
EVT_WAIT(60 * DT)
EVT_ELSE
EVT_THREAD
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(3.0), 30, EVT_FLOAT(-275.0), EVT_FLOAT(15.0), EVT_FLOAT(-6.0))
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(3.0 / DT), 30, EVT_FLOAT(-275.0), EVT_FLOAT(15.0), EVT_FLOAT(-6.0))
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_END_THREAD
EVT_WAIT(60)
EVT_WAIT(60 * DT)
EVT_END_IF
EVT_CALL(SpeakToPlayer, NPC_Goombario, ANIM_WorldGoombario_Talk, ANIM_WorldGoombario_Idle, 0, MSG_CH0_0027)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_Goombaria, ANIM_Goombaria_Talk, ANIM_Goombaria_Idle, 0, MSG_CH0_0028)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_Goombario, ANIM_WorldGoombario_Talk, ANIM_WorldGoombario_Idle, 0, MSG_CH0_0029)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(PlaySoundAtCollider, COLLIDER_deilit5, SOUND_BASIC_DOOR_OPEN, SOUND_SPACE_MODE_0)
EVT_SET(LVar0, 0)
EVT_LOOP(10)
@ -602,7 +602,7 @@ EvtScript N(EVS_ReturnToVillage) = {
EVT_END_LOOP
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Idle)
EVT_THREAD
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(2.0), 40, EVT_FLOAT(-350.0), EVT_FLOAT(15.0), EVT_FLOAT(-7.0))
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(2.0 / DT), 40, EVT_FLOAT(-350.0), EVT_FLOAT(15.0), EVT_FLOAT(-7.0))
EVT_END_THREAD
EVT_CALL(SetNpcPos, NPC_PARTNER, 127, 0, -157)
EVT_CALL(SetNpcAnimation, NPC_PARTNER, ANIM_Goompa_Run)
@ -622,27 +622,27 @@ EvtScript N(EVS_ReturnToVillage) = {
EVT_END_LOOP
EVT_CALL(PlaySoundAtCollider, COLLIDER_deilit5, SOUND_BASIC_DOOR_CLOSE, SOUND_SPACE_MODE_0)
EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_Goompa_Talk, ANIM_Goompa_Idle, 0, MSG_CH0_002A)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToNpc, NPC_Goombario, ANIM_WorldGoombario_Talk, ANIM_WorldGoombario_Idle, 0, NPC_PARTNER, MSG_CH0_002B)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SetNpcAnimation, NPC_PARTNER, ANIM_Goompa_Run)
EVT_CALL(NpcMoveTo, NPC_PARTNER, 3, 9, 0)
EVT_CALL(SetNpcAnimation, NPC_PARTNER, ANIM_Goompa_Idle)
EVT_CALL(SetNpcFlagBits, NPC_PARTNER, NPC_FLAG_IGNORE_WORLD_COLLISION, FALSE)
EVT_CALL(PlayerFaceNpc, NPC_PARTNER, 3)
EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_Goompa_Talk, ANIM_Goompa_Idle, 0, MSG_CH0_002C)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SetNpcAnimation, NPC_PARTNER, ANIM_Goompa_Walk)
EVT_CALL(NpcMoveTo, NPC_PARTNER, -60, -14, 0)
EVT_CALL(SetNpcAnimation, NPC_PARTNER, ANIM_Goompa_Idle)
EVT_CALL(SetNpcFlagBits, NPC_PARTNER, NPC_FLAG_IGNORE_WORLD_COLLISION, FALSE)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_GIVE_BADGE_REWARD(ITEM_POWER_JUMP)
EVT_CALL(SetNpcAnimation, NPC_PARTNER, ANIM_Goompa_Walk)
EVT_CALL(NpcMoveTo, NPC_PARTNER, 3, 9, 0)
EVT_CALL(SetNpcAnimation, NPC_PARTNER, ANIM_Goompa_Idle)
EVT_CALL(SetNpcFlagBits, NPC_PARTNER, NPC_FLAG_IGNORE_WORLD_COLLISION, FALSE)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_EXEC_WAIT(N(EVS_PromptForBadgeTutorial))
EVT_CALL(EnableNpcAI, NPC_Goombario, FALSE)
EVT_CALL(EnableNpcAI, NPC_Goombaria, FALSE)
@ -650,20 +650,20 @@ EvtScript N(EVS_ReturnToVillage) = {
EVT_CALL(EnableNpcAI, NPC_Goomama, FALSE)
EVT_CALL(N(LoadHeartBlockMsgImg))
EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_Goompa_Talk, ANIM_Goompa_Idle, 0, MSG_CH0_0031)
EVT_WAIT(10)
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(3.0), 30, EVT_FLOAT(-275.0), EVT_FLOAT(15.0), EVT_FLOAT(-6.0))
EVT_WAIT(10 * DT)
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(3.0 / DT), 30, EVT_FLOAT(-275.0), EVT_FLOAT(15.0), EVT_FLOAT(-6.0))
EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_Goompa_Talk, ANIM_Goompa_Idle, 0, MSG_CH0_0032)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_THREAD
EVT_CALL(NpcFacePlayer, NPC_Goombaria, 3)
EVT_END_THREAD
EVT_CALL(NpcFacePlayer, NPC_Goombario, 3)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_NodYes)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Idle)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_Goombario, ANIM_WorldGoombario_Talk, ANIM_WorldGoombario_Idle, 0, MSG_CH0_0033)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_THREAD
EVT_CALL(GetAngleBetweenNPCs, NPC_Goombaria, NPC_PARTNER, LVar0)
EVT_CALL(InterpNpcYaw, NPC_Goombaria, LVar0, 3)
@ -671,32 +671,32 @@ EvtScript N(EVS_ReturnToVillage) = {
EVT_CALL(GetAngleBetweenNPCs, NPC_Goombario, NPC_PARTNER, LVar0)
EVT_CALL(InterpNpcYaw, NPC_Goombario, LVar0, 3)
EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_Goompa_Talk, ANIM_Goompa_Idle, 0, MSG_CH0_0034)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(NpcFacePlayer, NPC_Goombario, 3)
EVT_CALL(SpeakToPlayer, NPC_Goombario, ANIM_WorldGoombario_Talk, ANIM_WorldGoombario_Idle, 0, MSG_CH0_0035)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(NpcFacePlayer, NPC_Goombaria, 3)
EVT_CALL(SpeakToPlayer, NPC_Goombaria, ANIM_Goombaria_Talk, ANIM_Goombaria_Idle, 0, MSG_CH0_0036)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(GetAngleBetweenNPCs, NPC_Goombario, NPC_PARTNER, LVar0)
EVT_CALL(InterpNpcYaw, NPC_Goombario, LVar0, 3)
EVT_CALL(SpeakToNpc, NPC_PARTNER, ANIM_Goompa_Talk, ANIM_Goompa_Idle, 0, NPC_Goombario, MSG_CH0_0037)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SetNpcJumpscale, NPC_Goombario, EVT_FLOAT(1.2))
EVT_CALL(GetNpcPos, NPC_Goombario, LVar0, LVar1, LVar2)
EVT_CALL(NpcJump0, NPC_Goombario, LVar0, LVar1, LVar2, 7)
EVT_CALL(NpcJump0, NPC_Goombario, LVar0, LVar1, LVar2, 7 * DT)
EVT_CALL(SpeakToNpc, NPC_Goombario, ANIM_WorldGoombario_Talk, ANIM_WorldGoombario_Idle, 0, NPC_PARTNER, MSG_CH0_0038)
EVT_CALL(N(LoadPartyImage))
EVT_EXEC(N(EVS_PushNewPartnerSong))
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(ShowMessageAtScreenPos, MSG_Menus_0189, 160, 40)
EVT_EXEC(N(EVS_PopSong))
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToNpc, NPC_Goombaria, ANIM_Goombaria_Talk, ANIM_Goombaria_Idle, 0, NPC_Goombario, MSG_CH0_0039)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_Goompa_Talk, ANIM_Goompa_Idle, 0, MSG_CH0_003A)
EVT_WAIT(10)
EVT_CALL(SetNpcSpeed, NPC_PARTNER, EVT_FLOAT(3.0))
EVT_WAIT(10 * DT)
EVT_CALL(SetNpcSpeed, NPC_PARTNER, EVT_FLOAT(3.0 / DT))
EVT_CALL(SetNpcAnimation, NPC_PARTNER, ANIM_Goompa_Run)
EVT_CALL(NpcMoveTo, NPC_PARTNER, 41, -143, 0)
EVT_CALL(SetNpcAnimation, NPC_PARTNER, ANIM_Goompa_Idle)
@ -729,7 +729,7 @@ EvtScript N(EVS_ReturnToVillage) = {
EVT_CALL(SpeakToPlayer, NPC_Goombario, ANIM_WorldGoombario_Talk, ANIM_WorldGoombario_Idle, 0, MSG_CH0_003C)
EVT_END_IF
EVT_CALL(N(ChangeNpcToPartner), NPC_Goombario, PARTNER_GOOMBARIO)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SetNpcPos, NPC_Goombario, NPC_DISPOSE_LOCATION)
EVT_CALL(SetNpcFlagBits, NPC_Goombario, NPC_FLAG_GRAVITY, FALSE)
EVT_CALL(SetNpcPos, NPC_Gooma, 115, 0, -309)
@ -743,7 +743,7 @@ EvtScript N(EVS_ReturnToVillage) = {
EVT_CALL(EnableNpcAI, NPC_Gooma, TRUE)
EVT_CALL(EnableNpcAI, NPC_Goomama, TRUE)
EVT_THREAD
EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(4.0))
EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(4.0 / DT))
EVT_END_THREAD
EVT_CALL(SetNpcFlagBits, NPC_Goombaria, NPC_FLAG_IGNORE_PLAYER_COLLISION, FALSE)
EVT_CALL(EnablePartnerAI)
@ -850,14 +850,14 @@ EvtScript N(EVS_NpcInteract_Goompa) = {
EVT_SWITCH(GB_StoryProgress)
EVT_CASE_LT(STORY_CH0_GATE_CRUSHED)
EVT_IF_EQ(GF_KMR02_Met_Goompa, FALSE)
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(5.0), 0, EVT_FLOAT(-275.0), EVT_FLOAT(20.0), EVT_FLOAT(-8.5))
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(5.0 * DT), 0, EVT_FLOAT(-275.0), EVT_FLOAT(20.0), EVT_FLOAT(-8.5))
EVT_EXEC_WAIT(N(EVS_Goompa_TurnAround))
EVT_CALL(SpeakToPlayer, NPC_Goompa, ANIM_Goompa_Talk, ANIM_Goompa_Idle, 0, MSG_CH0_0019)
EVT_EXEC_WAIT(N(EVS_Goompa_TurnBack))
EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 499, 0, -378)
EVT_CALL(SetPanTarget, CAM_DEFAULT, 499, 70, -378)
EVT_CALL(SetCamDistance, CAM_DEFAULT, 370)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0 * DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_SET(GF_KMR02_Met_Goompa, TRUE)
EVT_SET(GB_StoryProgress, STORY_CH0_MET_GOOMPA)
@ -943,7 +943,7 @@ EvtScript N(EVS_NpcInit_Goompa) = {
EvtScript N(D_8024BEF8_8BBF68) = {
EVT_CALL(SetNpcAnimation, NPC_Goompapa, ANIM_Goompapa_Walk)
EVT_CALL(NpcMoveTo, NPC_Goompapa, 272, 281, 20)
EVT_CALL(NpcMoveTo, NPC_Goompapa, 272, 281, 20 * DT)
EVT_CALL(GetNpcYaw, NPC_Goompapa, LVar3)
EVT_SET(LVar4, LVar3)
EVT_ADD(LVar4, 180)
@ -951,7 +951,7 @@ EvtScript N(D_8024BEF8_8BBF68) = {
EVT_WAIT(7)
EVT_CALL(InterpNpcYaw, NPC_Goompapa, LVar3, 0)
EVT_WAIT(7)
EVT_CALL(NpcMoveTo, NPC_Goompapa, 266, 228, 20)
EVT_CALL(NpcMoveTo, NPC_Goompapa, 266, 228, 20 * DT)
EVT_CALL(GetNpcYaw, NPC_Goompapa, LVar3)
EVT_SET(LVar4, LVar3)
EVT_ADD(LVar4, 180)
@ -1219,10 +1219,10 @@ EvtScript N(EVS_NpcInteract_Gooma) = {
EVT_CASE_LT(STORY_CH0_GATE_CRUSHED)
EVT_IF_EQ(GF_KMR02_Met_Gooma, FALSE)
EVT_SET(GF_KMR02_Met_Gooma, TRUE)
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(5.0), 0, EVT_FLOAT(-275.5), EVT_FLOAT(15.5), EVT_FLOAT(-10.0))
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(5.0 * DT), 0, EVT_FLOAT(-275.5), EVT_FLOAT(15.5), EVT_FLOAT(-10.0))
EVT_CALL(SpeakToPlayer, NPC_Gooma, ANIM_Gooma_Talk, ANIM_Gooma_Idle, 5, MSG_CH0_009C)
EVT_THREAD
EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(4.0))
EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(4.0 * DT))
EVT_END_THREAD
EVT_ELSE
EVT_CALL(SpeakToPlayer, NPC_Gooma, ANIM_Gooma_Talk, ANIM_Gooma_Idle, 5, MSG_CH0_009D)
@ -1446,7 +1446,7 @@ EvtScript N(EVS_Scene_EldstarsPlea) = {
EVT_CALL(InterpPlayerYaw, 143, 0)
EVT_CALL(SetPlayerAnimation, ANIM_MarioW2_LayingDown)
EVT_CALL(GetPlayerPos, -220, 33, -342)
EVT_WAIT(90)
EVT_WAIT(90 * DT)
EVT_CALL(PlaySoundAtNpc, NPC_Eldstar_02, SOUND_2041, SOUND_SPACE_MODE_0)
EVT_PLAY_EFFECT(EFFECT_SPARKLES, 0, -198, 115, -272, 10)
EVT_CALL(SetNpcPos, NPC_Eldstar_02, -198, 140, -272)
@ -1454,7 +1454,7 @@ EvtScript N(EVS_Scene_EldstarsPlea) = {
EVT_SETF(MV_Unk_00, 0)
EVT_CALL(BindNpcAI, NPC_Eldstar_02, EVT_PTR(N(EVS_NpcAI_Eldstar_02)))
EVT_THREAD
EVT_CALL(MakeLerp, 0, 120, 80, EASING_LINEAR)
EVT_CALL(MakeLerp, 0, 120, 80 * DT, EASING_LINEAR)
EVT_LABEL(0)
EVT_CALL(UpdateLerp)
EVT_CALL(func_802CFD30, NPC_Eldstar_02, FOLD_TYPE_7, LVar0, 0, 0, 0)
@ -1464,7 +1464,7 @@ EvtScript N(EVS_Scene_EldstarsPlea) = {
EVT_END_IF
EVT_END_THREAD
EVT_THREAD
EVT_CALL(MakeLerp, 0, 2880, 80, EASING_QUADRATIC_OUT)
EVT_CALL(MakeLerp, 0, 2880, 80 * DT, EASING_QUADRATIC_OUT)
EVT_LABEL(1)
EVT_CALL(UpdateLerp)
EVT_CALL(SetNpcRotation, NPC_Eldstar_02, 0, LVar0, 0)
@ -1474,7 +1474,7 @@ EvtScript N(EVS_Scene_EldstarsPlea) = {
EVT_END_IF
EVT_END_THREAD
EVT_THREAD
EVT_CALL(MakeLerp, 140, 60, 80, EASING_QUADRATIC_OUT)
EVT_CALL(MakeLerp, 140, 60, 80 * DT, EASING_QUADRATIC_OUT)
EVT_LABEL(2)
EVT_CALL(UpdateLerp)
EVT_CALL(SetNpcPos, NPC_Eldstar_02, -198, LVar0, -272)
@ -1483,7 +1483,7 @@ EvtScript N(EVS_Scene_EldstarsPlea) = {
EVT_GOTO(2)
EVT_END_IF
EVT_END_THREAD
EVT_WAIT(100)
EVT_WAIT(100 * DT)
EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2)
EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2)
EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2)
@ -1494,7 +1494,7 @@ EvtScript N(EVS_Scene_EldstarsPlea) = {
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_CALL(SpeakToPlayer, NPC_Eldstar_02, ANIM_WorldEldstar_Wave, ANIM_WorldEldstar_Idle, 0, MSG_CH0_0009)
EVT_CALL(MakeLerp, 120, 60, 20, EASING_LINEAR)
EVT_CALL(MakeLerp, 120, 60, 20 * DT, EASING_LINEAR)
EVT_LABEL(5)
EVT_CALL(UpdateLerp)
EVT_SET(MV_Unk_01, LVar0)
@ -1512,9 +1512,9 @@ EvtScript N(EVS_Scene_EldstarsPlea) = {
EVT_CALL(SetCamPosB, CAM_DEFAULT, EVT_FLOAT(-190.0), EVT_FLOAT(-310.0))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_THREAD
EVT_CALL(MakeLerp, 60, 0, 40, EASING_LINEAR)
EVT_CALL(MakeLerp, 60, 0, 40 * DT, EASING_LINEAR)
EVT_LABEL(6)
EVT_CALL(UpdateLerp)
EVT_CALL(func_802CFD30, NPC_Eldstar_02, FOLD_TYPE_7, LVar0, 0, 0, 0)
@ -1526,19 +1526,19 @@ EvtScript N(EVS_Scene_EldstarsPlea) = {
EVT_CALL(BindNpcAI, NPC_Eldstar_02, EVT_PTR(N(EVS_NpcAI_Eldstar_02_NoAI)))
EVT_CALL(GetNpcPos, NPC_Eldstar_02, LVar0, LVar1, LVar2)
EVT_ADD(LVar1, 20)
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_CALL(PlaySoundAtNpc, NPC_Eldstar_02, SOUND_2041, SOUND_SPACE_MODE_0)
EVT_PLAY_EFFECT(EFFECT_SPARKLES, 0, LVar0, LVar1, LVar2, 10)
EVT_CALL(SetNpcPos, NPC_Eldstar_02, NPC_DISPOSE_LOCATION)
EVT_WAIT(60)
EVT_WAIT(60 * DT)
EVT_EXEC(N(EVS_FadeOutMusic))
EVT_THREAD
EVT_CALL(N(func_80242F08_8B2F78))
EVT_CALL(N(func_80242BC0_8B2C30), 255, 255, 255, 0, 0, 0, 50)
EVT_CALL(N(func_80242BC0_8B2C30), 255, 255, 255, 0, 0, 0, 50 * DT)
EVT_END_THREAD
EVT_WAIT(110)
EVT_WAIT(110 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_MarioW2_SitIdle)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetGroupVisibility, MODEL_Root, MODEL_GROUP_VISIBLE)
EVT_CALL(N(func_80242F28_8B2F98))
EVT_CALL(EnableModel, MODEL_o561, FALSE)
@ -1548,28 +1548,28 @@ EvtScript N(EVS_Scene_EldstarsPlea) = {
EVT_CALL(PlayerJump, -180, 19, -335, 10)
EVT_CALL(InterpPlayerYaw, 143, 0)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Idle)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_LookUp)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(InterpPlayerYaw, 143, 3)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(InterpPlayerYaw, 323, 3)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(InterpPlayerYaw, 143, 3)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(InterpPlayerYaw, 323, 3)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(InterpPlayerYaw, 143, 3)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(InterpPlayerYaw, 323, 3)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_LookUp)
EVT_CALL(SetNpcPos, NPC_Toad, -197, 39, -188)
EVT_CALL(SetNpcAnimation, NPC_Toad, ANIM_Toad_Red_Walk)
EVT_CALL(SetNpcFlagBits, NPC_Toad, NPC_FLAG_GRAVITY, TRUE)
EVT_THREAD
EVT_CALL(PlaySoundAtCollider, COLLIDER_deilit7, SOUND_BASIC_DOOR_OPEN, SOUND_SPACE_MODE_0)
EVT_CALL(MakeLerp, 0, 90, 10, EASING_LINEAR)
EVT_CALL(MakeLerp, 0, 90, 10 * DT, EASING_LINEAR)
EVT_LABEL(10)
EVT_CALL(UpdateLerp)
EVT_CALL(RotateModel, MODEL_o275, LVar0, 0, 1, 0)
@ -1577,8 +1577,8 @@ EvtScript N(EVS_Scene_EldstarsPlea) = {
EVT_IF_EQ(LVar1, 1)
EVT_GOTO(10)
EVT_END_IF
EVT_WAIT(10)
EVT_CALL(MakeLerp, 90, 0, 10, EASING_LINEAR)
EVT_WAIT(10 * DT)
EVT_CALL(MakeLerp, 90, 0, 10 * DT, EASING_LINEAR)
EVT_LABEL(11)
EVT_CALL(UpdateLerp)
EVT_CALL(RotateModel, MODEL_o275, LVar0, 0, 1, 0)
@ -1588,61 +1588,61 @@ EvtScript N(EVS_Scene_EldstarsPlea) = {
EVT_END_IF
EVT_CALL(PlaySoundAtCollider, COLLIDER_deilit7, SOUND_BASIC_DOOR_CLOSE, SOUND_SPACE_MODE_0)
EVT_END_THREAD
EVT_CALL(NpcMoveTo, NPC_Toad, -192, -230, 20)
EVT_CALL(NpcMoveTo, NPC_Toad, -192, -230, 20 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Idle)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_Toad, ANIM_Toad_Red_Talk, ANIM_Toad_Red_Idle, 0, MSG_CH0_000A)
EVT_WAIT(5)
EVT_CALL(NpcMoveTo, NPC_Toad, -160, -310, 33)
EVT_WAIT(5 * DT)
EVT_CALL(NpcMoveTo, NPC_Toad, -160, -310, 33 * DT)
EVT_CALL(SetNpcAnimation, NPC_Toad, ANIM_Toad_Red_Idle)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_Toad, ANIM_Toad_Red_Talk, ANIM_Toad_Red_Idle, 0, MSG_CH0_000B)
EVT_CALL(SetPlayerAnimation, ANIM_MarioW2_SpeakUp)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(SpeakToPlayer, NPC_Toad, ANIM_Toad_Red_Talk, ANIM_Toad_Red_Idle, 0, MSG_CH0_000C)
EVT_CALL(SetPlayerAnimation, ANIM_MarioW2_JoltAwake)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SpeakToPlayer, NPC_Toad, ANIM_Toad_Red_Talk, ANIM_Toad_Red_Idle, 0, MSG_CH0_000D)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Thinking)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(4.0), 0, EVT_FLOAT(-300.0), EVT_FLOAT(20.0), EVT_FLOAT(-10.0))
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_CALL(PlaySoundAtPlayer, SOUND_262, SOUND_SPACE_MODE_0)
EVT_CALL(ShowEmote, 0, EMOTE_EXCLAMATION, 0, 30, EMOTER_PLAYER, 0, 0, 0, 0)
EVT_CALL(SetPlayerAnimation, ANIM_MarioW2_Surprise)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_MarioW2_SpeakUp)
EVT_WAIT(40)
EVT_WAIT(40 * DT)
EVT_CALL(SpeakToPlayer, NPC_Toad, ANIM_Toad_Red_Talk, ANIM_Toad_Red_Idle, 0, MSG_CH0_000E)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_NodYes)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(SpeakToPlayer, NPC_Toad, ANIM_Toad_Red_Talk, ANIM_Toad_Red_Idle, 0, MSG_CH0_000F)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Question)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(PlaySoundAtPlayer, SOUND_263, SOUND_SPACE_MODE_0)
EVT_CALL(ShowEmote, 0, EMOTE_QUESTION, 0, 60, EMOTER_PLAYER, 0, 0, 0, 0)
EVT_WAIT(55)
EVT_WAIT(55 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Idle)
EVT_CALL(SpeakToPlayer, NPC_Toad, ANIM_Toad_Red_Talk, ANIM_Toad_Red_Idle, 0, MSG_CH0_0010)
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Thinking)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Idle)
EVT_CALL(SpeakToPlayer, NPC_Toad, ANIM_Toad_Red_Talk, ANIM_Toad_Red_Idle, 0, MSG_CH0_0011)
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2)
EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2)
EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2)
EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(-375.0))
EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(20.0), EVT_FLOAT(-9.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0 / DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Jump)
EVT_CALL(SetPlayerJumpscale, EVT_FLOAT(2.0))
EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2)
EVT_CALL(PlayerJump, LVar0, LVar1, LVar2, 10)
EVT_CALL(PlayerJump, LVar0, LVar1, LVar2, 10 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Idle)
EVT_CALL(BindNpcInteract, NPC_Toad, EVT_PTR(N(EVS_NpcInteract_Toad)))
EVT_SET(GB_StoryProgress, STORY_CH0_MET_INNKEEPER)

View File

@ -102,7 +102,7 @@ EvtScript N(EVS_RoomListener_Verdana) = {
EVT_CASE_EQ(ROOM_UPDATE_ENTER_BEGIN)
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0)
EVT_CASE_EQ(ROOM_UPDATE_ENTER_DONE)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetGroupVisibility, MODEL_monohoshi, MODEL_GROUP_HIDDEN)
EVT_CASE_EQ(ROOM_UPDATE_EXIT_BEGIN)
EVT_IF_GT(GB_StoryProgress, STORY_CH0_GATE_CRUSHED)
@ -137,29 +137,29 @@ EvtScript N(EVS_RoomListener_Verdana) = {
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Thinking)
EVT_LOOP(3)
EVT_CALL(SetGroupVisibility, MODEL_monohoshi, MODEL_GROUP_VISIBLE)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SetGroupVisibility, MODEL_monohoshi, MODEL_GROUP_HIDDEN)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_END_LOOP
EVT_CALL(FadeOutMusic, 0, 0)
EVT_CALL(SetPlayerAnimation, ANIM_MarioW2_Surprise)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Idle)
EVT_CALL(InterpPlayerYaw, 233, 1)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(InterpPlayerYaw, 53, 1)
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_CALL(InterpPlayerYaw, 233, 1)
EVT_WAIT(3)
EVT_WAIT(3 * DT)
EVT_CALL(InterpPlayerYaw, 53, 1)
EVT_WAIT(3)
EVT_WAIT(10)
EVT_WAIT(3 * DT)
EVT_WAIT(10 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_MarioW2_Flail)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_SET(GB_StoryProgress, STORY_CH0_FELL_OFF_CLIFF)
EVT_END_IF
EVT_CALL(SetPlayerAnimation, ANIM_MarioW2_PanicStill)
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(2.0))
EVT_CALL(GetCamPosition, CAM_DEFAULT, LVar0, LVar1, LVar2)
EVT_SUB(LVar1, 150)
@ -171,7 +171,7 @@ EvtScript N(EVS_RoomListener_Verdana) = {
EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2)
EVT_THREAD
EVT_LOOP(0)
EVT_SUB(LVar1, 16)
EVT_SUB(LVar1, 16 / DT)
EVT_CALL(SetPlayerPos, LVar0, LVar1, LVar2)
EVT_WAIT(1)
EVT_END_LOOP
@ -180,15 +180,15 @@ EvtScript N(EVS_RoomListener_Verdana) = {
EVT_CALL(GetNpcPos, NPC_PARTNER, LVar0, LVar1, LVar2)
EVT_THREAD
EVT_LOOP(0)
EVT_SUB(LVar1, 16)
EVT_SUB(LVar1, 16 / DT)
EVT_CALL(SetNpcPos, NPC_PARTNER, LVar0, LVar1, LVar2)
EVT_WAIT(1)
EVT_END_LOOP
EVT_END_THREAD
EVT_END_IF
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(GotoMap, EVT_PTR("kmr_03"), kmr_03_ENTRY_2)
EVT_WAIT(100)
EVT_WAIT(100 * DT)
EVT_END_IF
EVT_END_IF
EVT_END_SWITCH

View File

@ -50,13 +50,13 @@ API_CALLABLE(N(AnimateBlockScale)) {
EvtScript N(EVS_OnSmash_GateBlock) = {
EVT_CALL(DisablePlayerInput, TRUE)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(SpeakToPlayer, NPC_Goompapa, ANIM_Goompapa_Talk, ANIM_Goompapa_Idle, 0, MSG_CH0_0066)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(N(PlayerHasBadgeEquipped))
EVT_IF_EQ(LVar0, FALSE)
EVT_CALL(SpeakToPlayer, NPC_Goompapa, ANIM_Goompapa_Talk, ANIM_Goompapa_Idle, 0, MSG_CH0_0067)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_END_IF
EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_tt2, COLLIDER_FLAGS_UPPER_MASK)
EVT_SET(GB_StoryProgress, STORY_CH0_SMASHED_GATE_BLOCK)
@ -69,16 +69,16 @@ EvtScript N(EVS_SummonGateBlock) = {
EVT_CALL(PlaySoundAt, SOUND_207A, SOUND_SPACE_MODE_0, 373, 88, 255)
EVT_CALL(GetNpcPos, NPC_Kammy, LVar0, LVar1, LVar2)
EVT_PLAY_EFFECT(EFFECT_GATHER_ENERGY_PINK, 0, 373, 88, 255, 1, 100)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(PlaySoundAt, SOUND_207B, SOUND_SPACE_MODE_0, 326, 150, 261)
EVT_PLAY_EFFECT(EFFECT_GATHER_ENERGY_PINK, 1, 326, 150, 261, 1, 60)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_PLAY_EFFECT(EFFECT_GATHER_ENERGY_PINK, 1, 326, 150, 261, 1, 60)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_PLAY_EFFECT(EFFECT_GATHER_ENERGY_PINK, 1, 326, 150, 261, 1, 60)
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_PLAY_EFFECT(EFFECT_GATHER_ENERGY_PINK, 1, 326, 150, 261, 1, 60)
EVT_WAIT(3)
EVT_WAIT(3 * DT)
EVT_PLAY_EFFECT(EFFECT_GATHER_ENERGY_PINK, 1, 326, 150, 261, 1, 60)
EVT_CALL(MakeEntity, EVT_PTR(Entity_Hammer1Block), 326, 120, 261, 148, MAKE_ENTITY_END)
EVT_SET(LVarA, LVar0)
@ -86,7 +86,7 @@ EvtScript N(EVS_SummonGateBlock) = {
EVT_CALL(N(AnimateBlockScale))
EVT_SET(LVar9, LVarA)
EVT_CALL(N(GetEntityPosition), LVar9, LVar2, LVar3, LVar4)
EVT_CALL(MakeLerp, LVar3, 300, 20, EASING_QUADRATIC_IN)
EVT_CALL(MakeLerp, LVar3, 300, 20 * DT, EASING_QUADRATIC_IN)
EVT_LABEL(10)
EVT_CALL(UpdateLerp)
EVT_CALL(N(SetEntityPositionF), LVar9, LVar2, LVar0, LVar4)
@ -95,14 +95,14 @@ EvtScript N(EVS_SummonGateBlock) = {
EVT_GOTO(10)
EVT_END_IF
EVT_CALL(PlaySoundAt, SOUND_207C, SOUND_SPACE_MODE_0, LVar2, LVar0, LVar4)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(SetNpcAnimation, NPC_Kammy, ANIM_WorldKammy_Anim0F)
EVT_THREAD
EVT_WAIT(15)
EVT_PLAY_EFFECT(EFFECT_LANDING_DUST, 4, LVar2, 0, LVar4, 0)
EVT_END_THREAD
EVT_CALL(PlaySoundAt, SOUND_207D, SOUND_SPACE_MODE_0, LVar2, LVar0, LVar4)
EVT_CALL(MakeLerp, 300, 0, 20, EASING_CUBIC_IN)
EVT_CALL(MakeLerp, 300, 0, 20 * DT, EASING_CUBIC_IN)
EVT_LABEL(20)
EVT_CALL(UpdateLerp)
EVT_CALL(N(SetEntityPositionF), LVar9, LVar2, LVar0, LVar4)
@ -114,7 +114,7 @@ EvtScript N(EVS_SummonGateBlock) = {
EVT_CALL(EnableGroup, MODEL_1, FALSE)
EVT_CALL(PlaySoundAt, SOUND_DD, SOUND_SPACE_MODE_0, LVar2, LVar0, LVar4)
EVT_THREAD
EVT_CALL(ShakeCam, CAM_DEFAULT, 0, 15, EVT_FLOAT(1.0))
EVT_CALL(ShakeCam, CAM_DEFAULT, 0, 15 * DT, EVT_FLOAT(1.0))
EVT_END_THREAD
EVT_RETURN
EVT_END

View File

@ -45,7 +45,7 @@ Vec3f N(FlightPath_KammyDepart)[] = {
EvtScript N(EVS_PlayKammyFlightSounds) = {
EVT_LOOP(0)
EVT_CALL(PlaySoundAtNpc, NPC_Kammy, SOUND_295, SOUND_SPACE_MODE_0)
EVT_WAIT(4)
EVT_WAIT(4 * DT)
EVT_END_LOOP
EVT_RETURN
EVT_END
@ -91,7 +91,7 @@ EvtScript N(EVS_Scene_KammyStrikes) = {
EVT_THREAD
EVT_EXEC_GET_TID(N(EVS_PlayKammyFlightSounds), MV_Unk_04)
EVT_EXEC_GET_TID(N(EVS_MakeNpcsFaceKammy), MV_Unk_05)
EVT_CALL(LoadPath, 40, EVT_PTR(N(FlightPath_KammyAppear)), ARRAY_COUNT(N(FlightPath_KammyAppear)), EASING_LINEAR)
EVT_CALL(LoadPath, 40 * DT, EVT_PTR(N(FlightPath_KammyAppear)), ARRAY_COUNT(N(FlightPath_KammyAppear)), EASING_LINEAR)
EVT_LABEL(10)
EVT_CALL(GetNextPathPos)
EVT_CALL(SetNpcPos, NPC_Kammy, LVar1, LVar2, LVar3)
@ -100,9 +100,9 @@ EvtScript N(EVS_Scene_KammyStrikes) = {
EVT_GOTO(10)
EVT_END_IF
EVT_END_THREAD
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_MarioW2_Shocked)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Idle)
EVT_CALL(SetCamType, CAM_DEFAULT, 4, FALSE)
EVT_CALL(SetCamPitch, CAM_DEFAULT, 3, 0)
@ -113,7 +113,7 @@ EvtScript N(EVS_Scene_KammyStrikes) = {
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_LookUp)
EVT_CALL(LoadPath, 120, EVT_PTR(N(FlightPath_ToGate1)), ARRAY_COUNT(N(FlightPath_ToGate1)), EASING_LINEAR)
EVT_CALL(LoadPath, 120 * DT, EVT_PTR(N(FlightPath_ToGate1)), ARRAY_COUNT(N(FlightPath_ToGate1)), EASING_LINEAR)
EVT_LABEL(20)
EVT_CALL(GetNextPathPos)
EVT_CALL(SetNpcPos, NPC_Kammy, LVar1, LVar2, LVar3)
@ -121,7 +121,7 @@ EvtScript N(EVS_Scene_KammyStrikes) = {
EVT_IF_EQ(LVar0, 1)
EVT_GOTO(20)
EVT_END_IF
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SetCamType, CAM_DEFAULT, 4, FALSE)
EVT_CALL(SetCamPitch, CAM_DEFAULT, 8, -10)
EVT_CALL(SetCamPosA, CAM_DEFAULT, 41, 729)
@ -138,7 +138,7 @@ EvtScript N(EVS_Scene_KammyStrikes) = {
EVT_CALL(SetPlayerPos, 220, 0, 213)
EVT_CALL(SetNpcPos, NPC_Goompapa, 255, 0, 232)
EVT_CALL(SetNpcPos, NPC_Goombaria, 190, 0, 212)
EVT_CALL(LoadPath, 10, EVT_PTR(N(FlightPath_ToGate2)), ARRAY_COUNT(N(FlightPath_ToGate2)), EASING_LINEAR)
EVT_CALL(LoadPath, 10 * DT, EVT_PTR(N(FlightPath_ToGate2)), ARRAY_COUNT(N(FlightPath_ToGate2)), EASING_LINEAR)
EVT_LABEL(30)
EVT_CALL(GetNextPathPos)
EVT_CALL(SetNpcPos, NPC_Kammy, LVar1, LVar2, LVar3)
@ -180,7 +180,7 @@ EvtScript N(EVS_Scene_KammyStrikes) = {
EVT_IF_EQ(LVar0, 1)
EVT_GOTO(40)
EVT_END_IF
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetNpcAnimation, NPC_Kammy, ANIM_WorldKammy_Anim13)
EVT_CALL(SpeakToPlayer, NPC_Kammy, ANIM_WorldKammy_Anim16, ANIM_WorldKammy_Anim13, 512, MSG_CH0_005A)
EVT_CALL(SetCamType, CAM_DEFAULT, 4, FALSE)
@ -210,26 +210,26 @@ EvtScript N(EVS_Scene_KammyStrikes) = {
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(SetNpcAnimation, NPC_Kammy, ANIM_WorldKammy_Anim0E)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(GetNpcPos, NPC_Kammy, LVar0, LVar1, LVar2)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_EXEC_WAIT(N(EVS_SummonGateBlock))
EVT_THREAD
EVT_CALL(SetPlayerAnimation, ANIM_MarioW2_PanicHoverStill)
EVT_CALL(func_802D286C, 256)
EVT_CALL(func_802D2520, ANIM_MarioW2_PanicHoverStill, 5, 0, 1, 1, 0)
EVT_WAIT(13)
EVT_WAIT(13 * DT)
EVT_CALL(func_802D2520, ANIM_MarioW2_PanicHoverStill, 0, 0, 0, 0, 0)
EVT_CALL(SetPlayerAnimation, ANIM_MarioW2_PanicHover)
EVT_CALL(func_802D286C, 256)
EVT_CALL(func_802D2520, ANIM_MarioW2_PanicHover, 5, 0, 1, 1, 0)
EVT_WAIT(13)
EVT_WAIT(13 * DT)
EVT_CALL(func_802D2520, ANIM_MarioW2_PanicHover, 0, 0, 0, 0, 0)
EVT_END_THREAD
EVT_THREAD
EVT_CALL(SetPlayerJumpscale, EVT_FLOAT(0.8))
EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2)
EVT_CALL(PlayerJump1, LVar0, LVar1, LVar2, 25)
EVT_CALL(PlayerJump1, LVar0, LVar1, LVar2, 25 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_LookUp)
EVT_END_THREAD
EVT_THREAD
@ -238,7 +238,7 @@ EvtScript N(EVS_Scene_KammyStrikes) = {
EVT_CALL(func_802CFD30, NPC_Goombaria, FOLD_TYPE_5, 0, 1, 1, 0)
EVT_CALL(SetNpcJumpscale, NPC_Goombaria, EVT_FLOAT(1.5))
EVT_CALL(GetNpcPos, NPC_Goombaria, LVar0, LVar1, LVar2)
EVT_CALL(NpcJump0, NPC_Goombaria, LVar0, LVar1, LVar2, 25)
EVT_CALL(NpcJump0, NPC_Goombaria, LVar0, LVar1, LVar2, 25 * DT)
EVT_CALL(SetNpcAnimation, NPC_Goombaria, ANIM_Goombaria_LookUp)
EVT_CALL(func_802CFD30, NPC_Goombaria, FOLD_TYPE_NONE, 0, 0, 0, 0)
EVT_END_THREAD
@ -247,10 +247,10 @@ EvtScript N(EVS_Scene_KammyStrikes) = {
EVT_CALL(SetNpcAnimation, NPC_Goompapa, ANIM_Goompapa_Shock)
EVT_CALL(SetNpcJumpscale, NPC_Goompapa, EVT_FLOAT(1.2))
EVT_CALL(GetNpcPos, NPC_Goompapa, LVar0, LVar1, LVar2)
EVT_CALL(NpcJump0, NPC_Goompapa, LVar0, LVar1, LVar2, 25)
EVT_CALL(NpcJump0, NPC_Goompapa, LVar0, LVar1, LVar2, 25 * DT)
EVT_CALL(SetNpcAnimation, NPC_Goompapa, ANIM_Goompapa_LookUp)
EVT_CALL(func_802CFD30, NPC_Goompapa, FOLD_TYPE_NONE, 0, 0, 0, 0)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SetNpcAnimation, NPC_Kammy, ANIM_WorldKammy_Anim13)
EVT_CALL(SetCamType, CAM_DEFAULT, 4, FALSE)
EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(6.0), EVT_FLOAT(-6.0))
@ -260,7 +260,7 @@ EvtScript N(EVS_Scene_KammyStrikes) = {
EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(275.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(SpeakToPlayer, NPC_Kammy, ANIM_WorldKammy_Anim16, ANIM_WorldKammy_Anim13, 512, MSG_CH0_005D)
EVT_CALL(SetCamType, CAM_DEFAULT, 4, FALSE)
EVT_CALL(SetCamPitch, CAM_DEFAULT, 3, 0)
@ -268,10 +268,10 @@ EvtScript N(EVS_Scene_KammyStrikes) = {
EVT_CALL(SetCamPosB, CAM_DEFAULT, 159, 0)
EVT_CALL(SetCamPosC, CAM_DEFAULT, 0, EVT_FLOAT(109.7))
EVT_CALL(SetCamDistance, CAM_DEFAULT, 1220)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(1.0 / DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_THREAD
EVT_LOOP(150)
EVT_LOOP(150 * DT)
EVT_CALL(PlayerFaceNpc, NPC_Kammy, FALSE)
EVT_CALL(GetAngleBetweenNPCs, NPC_Goombaria, NPC_Kammy, LVar0)
EVT_CALL(InterpNpcYaw, NPC_Goombaria, LVar0, 0)
@ -282,11 +282,11 @@ EvtScript N(EVS_Scene_KammyStrikes) = {
EVT_END_THREAD
EVT_CALL(SetNpcAnimation, NPC_Kammy, ANIM_WorldKammy_Anim15)
EVT_EXEC_GET_TID(N(EVS_MakeNpcsFaceKammy), MV_Unk_05)
EVT_WAIT(40)
EVT_WAIT(40 * DT)
EVT_CALL(SpeakToPlayer, NPC_Kammy, ANIM_WorldKammy_Anim16, ANIM_WorldKammy_Anim13, 0x200, MSG_CH0_005E)
EVT_CALL(FadeOutMusic, 0, 3000)
EVT_CALL(FadeOutMusic, 0, 3000 * DT)
EVT_EXEC_GET_TID(N(EVS_PlayKammyFlightSounds), MV_Unk_04)
EVT_CALL(LoadPath, 90, EVT_PTR(N(FlightPath_KammyDepart)), ARRAY_COUNT(N(FlightPath_KammyDepart)), EASING_QUADRATIC_IN)
EVT_CALL(LoadPath, 90 * DT, EVT_PTR(N(FlightPath_KammyDepart)), ARRAY_COUNT(N(FlightPath_KammyDepart)), EASING_QUADRATIC_IN)
EVT_LABEL(70)
EVT_CALL(GetNextPathPos)
EVT_CALL(SetNpcPos, NPC_Kammy, LVar1, LVar2, LVar3)
@ -296,7 +296,7 @@ EvtScript N(EVS_Scene_KammyStrikes) = {
EVT_END_IF
EVT_KILL_THREAD(MV_Unk_04)
EVT_KILL_THREAD(MV_Unk_05)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_EXEC(N(EVS_SetupMusic))
EVT_CALL(SetNpcAnimation, NPC_Goompapa, ANIM_Goompapa_Angry)
EVT_CALL(SetNpcAnimation, NPC_Goombaria, ANIM_Goombaria_Idle)
@ -306,19 +306,19 @@ EvtScript N(EVS_Scene_KammyStrikes) = {
EVT_CALL(GetAngleToPlayer, NPC_Goombaria, LVar0)
EVT_CALL(InterpNpcYaw, NPC_Goombaria, LVar0, 0)
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(90.0), 0, EVT_FLOAT(-300.0), EVT_FLOAT(12.0), EVT_FLOAT(-8.5))
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_Goompapa, ANIM_Goompapa_AngryTalk, ANIM_Goompapa_Angry, 0, MSG_CH0_005F)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_MarioW2_SpeakUp)
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_CALL(SetNpcAnimation, NPC_Goompapa, ANIM_Goompapa_Idle)
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_CALL(SpeakToPlayer, NPC_Goompapa, ANIM_Goompapa_Talk, ANIM_Goompapa_Idle, 0, MSG_CH0_0060)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_Goombaria, ANIM_Goombaria_Talk, ANIM_Goombaria_Idle, 0, MSG_CH0_0061)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_Goompapa, ANIM_Goompapa_Talk, ANIM_Goompapa_Idle, 0, MSG_CH0_0062)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SetNpcSpeed, NPC_Goombario, EVT_FLOAT(2.0))
EVT_CALL(EnableNpcAI, NPC_Goombario, TRUE)
EVT_CALL(EnableNpcAI, NPC_Goomama, TRUE)
@ -333,7 +333,7 @@ EvtScript N(EVS_Scene_KammyStrikes) = {
EVT_CALL(EnableNpcShadow, NPC_Goompa, FALSE)
EVT_SET(GB_StoryProgress, STORY_CH0_GATE_CRUSHED)
EVT_THREAD
EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(3.0))
EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(3.0 / DT))
EVT_END_THREAD
EVT_CALL(DisablePlayerPhysics, FALSE)
EVT_CALL(DisablePlayerInput, FALSE)

View File

@ -65,39 +65,39 @@ EvtScript N(EVS_NpcAI_Goompa) = {
EVT_CALL(SetNpcAux, NPC_Goompa, 0)
EVT_CALL(PlaySoundAtNpc, NPC_Goompa, SOUND_262, SOUND_SPACE_MODE_0)
EVT_CALL(ShowEmote, NPC_Goompa, EMOTE_EXCLAMATION, 45, 15, EMOTER_NPC, 0, 0, 0, 0)
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_CALL(NpcFacePlayer, NPC_SELF, 5)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_Goompa, ANIM_Goompa_Talk, ANIM_Goompa_Idle, 0, MSG_CH0_00A6)
EVT_CALL(UseSettingsFrom, CAM_DEFAULT, -220, 20, -72)
EVT_CALL(SetPanTarget, CAM_DEFAULT, -20, 0, 68)
EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(15.0), EVT_FLOAT(-8.5))
EVT_CALL(SetCamDistance, CAM_DEFAULT, 275)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(1.5))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(1.5 / DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_THREAD
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(SetPlayerSpeed, EVT_FLOAT(2.0))
EVT_CALL(PlayerMoveTo, -38, 68, 0)
EVT_END_THREAD
EVT_CALL(GetNpcPos, NPC_Goompa, LVar7, LVar8, LVar9)
EVT_CALL(SetNpcSpeed, NPC_Goompa, EVT_FLOAT(4.0))
EVT_CALL(SetNpcSpeed, NPC_Goompa, EVT_FLOAT(4.0 / DT))
EVT_CALL(SetNpcAnimation, NPC_Goompa, ANIM_Goompa_Run)
EVT_CALL(NpcMoveTo, NPC_Goompa, 0, 70, 0)
EVT_CALL(SetNpcAnimation, NPC_Goompa, ANIM_Goompa_Idle)
EVT_CALL(InterpNpcYaw, NPC_Goompa, 276, 20)
EVT_WAIT(30)
EVT_CALL(InterpNpcYaw, NPC_Goompa, 276, 20 * DT)
EVT_WAIT(30 * DT)
EVT_CALL(SpeakToPlayer, NPC_Goompa, ANIM_Goompa_Talk, ANIM_Goompa_Idle, 0, MSG_CH0_00A7)
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_MarioW2_SpeakUp)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SpeakToPlayer, NPC_Goompa, ANIM_Goompa_Talk, ANIM_Goompa_Idle, 0, MSG_CH0_00A8)
EVT_CALL(N(ChangeNpcToPartner), 0, 5)
EVT_SET(GB_StoryProgress, STORY_CH0_GOOMPA_JOINED_PARTY)
EVT_CALL(UseSettingsFrom, CAM_DEFAULT, -220, 20, -72)
EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2)
EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(3.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(3.0 / DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0)

View File

@ -11,7 +11,7 @@ EvtScript N(EVS_Scene_FallingDown) = {
EVT_CALL(DisablePlayerInput, TRUE)
EVT_CALL(SetPlayerPos, -224, 20, -80)
EVT_CALL(SetNpcPos, NPC_PARTNER, -224, 20, -80)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(3.0))
EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2)
EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2)
@ -26,17 +26,17 @@ EvtScript N(EVS_Scene_FallingDown) = {
EVT_CALL(DisablePlayerPhysics, TRUE)
EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2)
EVT_CALL(SetPlayerPos, LVar0, NPC_DISPOSE_POS_Y, LVar2)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetCamDistance, CAM_DEFAULT, 220)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(1.0 / DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_THREAD
EVT_WAIT(18)
EVT_WAIT(18 * DT)
EVT_CALL(PlaySoundAtPlayer, SOUND_175, SOUND_SPACE_MODE_0)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(PlaySoundAtPlayer, SOUND_176, SOUND_SPACE_MODE_0)
EVT_WAIT(28)
EVT_WAIT(28 * DT)
EVT_CALL(PlaySoundAtPlayer, SOUND_175, SOUND_SPACE_MODE_0)
EVT_END_THREAD
EVT_CALL(HidePlayerShadow, TRUE)
@ -46,33 +46,37 @@ EvtScript N(EVS_Scene_FallingDown) = {
EVT_LABEL(0)
EVT_WAIT(1)
EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2)
#if VERSION_PAL
EVT_ADDF(LVar1, EVT_FLOAT(-2 * DT))
#else
EVT_ADD(LVar1, -2)
#endif
EVT_CALL(SetPlayerPos, LVar0, LVar1, LVar2)
EVT_IF_GT(LVar1, 86)
EVT_GOTO(0)
EVT_END_IF
EVT_CALL(SetPlayerPos, -310, 20, -80)
EVT_THREAD
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(SetPanTarget, CAM_DEFAULT, -310, 20, -80)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(0.2))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(0.2 / DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_END_THREAD
EVT_CALL(func_802D286C, 0x00002800)
EVT_CALL(func_802D2520, ANIM_Mario1_Idle, 5, 5, 1, 1, 0)
EVT_WAIT(100)
EVT_WAIT(100 * DT)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_CALL(func_802D2520, ANIM_Mario1_Idle, 0, 0, 0, 0, 0)
EVT_CALL(HidePlayerShadow, FALSE)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_BeforeJump)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Jump)
EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2)
EVT_CALL(SetPlayerJumpscale, EVT_FLOAT(1.0))
EVT_CALL(PlayerJump, LVar0, LVar1, LVar2, 10)
EVT_CALL(PlayerJump, LVar0, LVar1, LVar2, 10 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Idle)
EVT_THREAD
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(3.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(3.0 * DT))
EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2)
EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2)
EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2)
@ -80,7 +84,7 @@ EvtScript N(EVS_Scene_FallingDown) = {
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0)
EVT_END_THREAD
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(DisablePlayerPhysics, FALSE)
EVT_CALL(DisablePlayerInput, FALSE)
EVT_RETURN

View File

@ -44,14 +44,14 @@ EvtScript N(EVS_NpcAI_Goompa) = {
EVT_CALL(func_802CF56C, 0)
EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2)
EVT_ADD(LVar0, 30)
EVT_CALL(SetNpcSpeed, NPC_PARTNER, EVT_FLOAT(2.0))
EVT_CALL(SetNpcSpeed, NPC_PARTNER, EVT_FLOAT(2.0 / DT))
EVT_CALL(NpcMoveTo, LVar0, LVar1, LVar2, 0)
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(DisablePartnerAI, 0)
EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_Goompa_Talk, ANIM_Goompa_Idle, 0, MSG_CH0_00A9)
EVT_CALL(SetNpcAnimation, NPC_PARTNER, ANIM_Goompa_Idle)
EVT_CALL(EnablePartnerAI)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(DisablePlayerInput, FALSE)
EVT_SET(GB_StoryProgress, STORY_CH0_LOOKING_FOR_HAMMER)
EVT_CASE_EQ(STORY_CH0_FOUND_HAMMER)
@ -79,14 +79,14 @@ EvtScript N(EVS_NpcAI_Goompa) = {
EVT_CALL(SetNpcSpeed, NPC_PARTNER, EVT_FLOAT(3.0))
EVT_CALL(NpcMoveTo, NPC_PARTNER, 420, 6, 0)
EVT_THREAD
EVT_WAIT(3)
EVT_WAIT(3 * DT)
EVT_CALL(PlayerFaceNpc, NPC_PARTNER, 3)
EVT_END_THREAD
EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_Goompa_Talk, ANIM_Goompa_Idle, 0, MSG_CH0_00AC)
EVT_CALL(SetNpcAnimation, NPC_PARTNER, ANIM_Goompa_Idle)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_THREAD
EVT_CALL(SetPlayerSpeed, EVT_FLOAT(3.0))
EVT_CALL(SetPlayerSpeed, EVT_FLOAT(3.0 / DT))
EVT_CALL(PlayerMoveTo, 395, 0, 0)
EVT_CALL(InterpPlayerYaw, 90, 0)
EVT_END_THREAD
@ -98,11 +98,11 @@ EvtScript N(EVS_NpcAI_Goompa) = {
EVT_CALL(SetNpcFlagBits, NPC_PARTNER, NPC_FLAG_8, FALSE)
EVT_CALL(PlaySoundAtNpc, NPC_PARTNER, SOUND_61, SOUND_SPACE_MODE_0)
EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_Goompa_Talk, ANIM_Goompa_Idle, 0, MSG_CH0_00AD)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_THREAD
EVT_SET(LVar0, 0)
EVT_CALL(SetNpcRotationPivot, NPC_PARTNER, 10)
EVT_LOOP(60)
EVT_LOOP(60 * DT)
EVT_ADD(LVar0, 53)
EVT_CALL(SetNpcRotation, NPC_PARTNER, 0, 0, LVar0)
EVT_CALL(PlayerFaceNpc, NPC_PARTNER, FALSE)
@ -112,15 +112,15 @@ EvtScript N(EVS_NpcAI_Goompa) = {
EVT_CALL(SetNpcRotation, NPC_PARTNER, 0, 0, 0)
EVT_END_THREAD
EVT_THREAD
EVT_CALL(ShakeCam, CAM_DEFAULT, 0, 15, EVT_FLOAT(1.0))
EVT_CALL(ShakeCam, CAM_DEFAULT, 0, 15 * DT, EVT_FLOAT(1.0))
EVT_END_THREAD
EVT_PLAY_EFFECT(EFFECT_DAMAGE_STARS, 1, 495, 15, 9, 460, 15, 9, 6)
EVT_CALL(SetNpcAnimation, NPC_PARTNER, ANIM_Goompa_Injured)
EVT_CALL(NpcMoveTo, NPC_PARTNER, 250, 6, 60)
EVT_CALL(NpcMoveTo, NPC_PARTNER, 250, 6, 60 * DT)
EVT_CALL(SetNpcAnimation, NPC_PARTNER, ANIM_Goompa_Injured)
EVT_CALL(SetNpcRotation, NPC_PARTNER, 0, 0, 0)
EVT_THREAD
EVT_LOOP(20)
EVT_LOOP(20 * DT)
EVT_CALL(SetNpcPos, NPC_PARTNER, 250, 0, 6)
EVT_WAIT(3)
EVT_CALL(SetNpcPos, NPC_PARTNER, 250, 0, 0)
@ -155,13 +155,13 @@ EvtScript N(EVS_NpcIdle_JrTroopa) = {
EVT_CASE_EQ(1)
EVT_EXEC(N(EVS_SetJrTroopaMusic))
EVT_THREAD
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2)
EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2)
EVT_CALL(SetPanTarget, CAM_DEFAULT, 430, LVar1, LVar2)
EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(275.0))
EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(17.5), EVT_FLOAT(-7.5))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(2.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(2.0 / DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_END_THREAD
@ -169,18 +169,18 @@ EvtScript N(EVS_NpcIdle_JrTroopa) = {
EVT_CALL(EnableNpcShadow, NPC_SELF, TRUE)
EVT_WAIT(1)
EVT_CALL(PlayerFaceNpc, NPC_JrTroopa, 3)
EVT_CALL(SetNpcSpeed, NPC_JrTroopa, EVT_FLOAT(3.0))
EVT_CALL(SetNpcSpeed, NPC_JrTroopa, EVT_FLOAT(3.0 / DT))
EVT_CALL(SetNpcAnimation, NPC_JrTroopa, ANIM_JrTroopa_Run)
EVT_CALL(NpcMoveTo, NPC_JrTroopa, 465, 0, 0)
EVT_CALL(SetNpcAnimation, NPC_JrTroopa, ANIM_JrTroopa_PointIdle)
EVT_CALL(PlayerFaceNpc, NPC_JrTroopa, 3)
EVT_CALL(SpeakToPlayer, NPC_JrTroopa, ANIM_JrTroopa_PointTalk, ANIM_JrTroopa_PointIdle, 0, MSG_CH0_00AE)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_THREAD
EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2)
EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2)
EVT_CALL(SetPanTarget, CAM_DEFAULT, 430, LVar1, LVar2)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0 / DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0)
@ -214,11 +214,11 @@ EvtScript N(EVS_NpcDefeat_JrTroopa) = {
EVT_CALL(PlayerFaceNpc, NPC_SELF, FALSE)
EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_JrTroopa_Hurt)
EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_JrTroopa_Hurt, ANIM_JrTroopa_Hurt, 0, MSG_CH0_00B5)
EVT_CALL(SetNpcSpeed, NPC_SELF, EVT_FLOAT(6.0))
EVT_CALL(SetNpcSpeed, NPC_SELF, EVT_FLOAT(6.0 / DT))
EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_JrTroopa_Run)
EVT_CALL(NpcMoveTo, NPC_SELF, 564, 10, 0)
EVT_CALL(SetNpcPos, NPC_SELF, NPC_DISPOSE_LOCATION)
EVT_WAIT(60)
EVT_WAIT(60 * DT)
EVT_CALL(SetNpcPos, NPC_SELF, 564, 0, 10)
EVT_CALL(NpcMoveTo, NPC_SELF, 435, 10, 0)
EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_JrTroopa_PointTalk, ANIM_JrTroopa_PointIdle, 0, MSG_CH0_00B6)
@ -226,7 +226,11 @@ EvtScript N(EVS_NpcDefeat_JrTroopa) = {
EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_JrTroopa_Idle)
EVT_CALL(SetNpcPos, NPC_SELF, NPC_DISPOSE_LOCATION)
EVT_THREAD
#if VERSION_PAL
EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(4 * DT))
#else
EVT_CALL(ResetCam, CAM_DEFAULT, 4)
#endif
EVT_END_THREAD
EVT_EXEC(N(EVS_SetNormalMusic))
EVT_SET(AB_KMR_0, 0)

View File

@ -48,7 +48,7 @@ EvtScript N(EVS_GotHammer) = {
EVT_PLAY_EFFECT(EFFECT_RADIAL_SHIMMER, 9, LVar5, LVar6, LVar7, EVT_FLOAT(1.0), 100)
EVT_EXEC(N(EVS_PlayUpgradeSong))
EVT_THREAD
EVT_WAIT(4)
EVT_WAIT(4 * DT)
EVT_CALL(GetPlayerPos, LVar3, LVar4, LVar5)
EVT_ADD(LVar4, 50)
EVT_ADD(LVar5, 2)
@ -75,19 +75,23 @@ EvtScript N(EVS_OnSearch_HammerBush) = {
EVT_SET(MF_Unk_12, FALSE)
EVT_EXEC(N(EVS_GotHammer))
EVT_CALL(N(GiveWoodenHammer))
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(N(SetMessageImage_HammerBlock))
EVT_CALL(ShowMessageAtScreenPos, MSG_Menus_Inspect_FoundHammer, 160, 40)
EVT_SET(MF_Unk_12, TRUE)
EVT_CALL(DisablePartnerAI, 0)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_Goompa_Talk, ANIM_Goompa_Idle, 0, MSG_CH0_00AA)
EVT_CALL(SetNpcAnimation, NPC_PARTNER, ANIM_Goompa_Idle)
EVT_SET(GB_StoryProgress, STORY_CH0_FOUND_HAMMER)
EVT_CALL(ClearPartnerMoveHistory, NPC_PARTNER)
EVT_CALL(EnablePartnerAI)
EVT_THREAD
#if VERSION_PAL
EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(3 * DT))
#else
EVT_CALL(ResetCam, CAM_DEFAULT, 3)
#endif
EVT_END_THREAD
EVT_RETURN
EVT_END
@ -109,7 +113,7 @@ EvtScript N(EVS_OnSearchBush8) = {
EVT_RETURN
EVT_END_IF
EVT_CALL(DisablePlayerInput, TRUE)
EVT_CALL(MakeLerp, 0, 85, 20, EASING_COS_IN_OUT)
EVT_CALL(MakeLerp, 0, 85, 20 * DT, EASING_COS_IN_OUT)
EVT_LABEL(0)
EVT_CALL(UpdateLerp)
EVT_CALL(RotateModel, MODEL_o213, LVar0, 1, 0, 0)
@ -118,7 +122,7 @@ EvtScript N(EVS_OnSearchBush8) = {
EVT_GOTO(0)
EVT_END_IF
EVT_EXEC_WAIT(N(EVS_OnSearch_HammerBush))
EVT_CALL(MakeLerp, 85, 0, 20, EASING_COS_IN_OUT)
EVT_CALL(MakeLerp, 85, 0, 20 * DT, EASING_COS_IN_OUT)
EVT_LABEL(10)
EVT_CALL(UpdateLerp)
EVT_CALL(RotateModel, MODEL_o213, LVar0, 1, 0, 0)

View File

@ -6,8 +6,8 @@
EvtScript N(EVS_GoompaRemark) = {
EVT_CALL(DisablePlayerInput, TRUE)
EVT_WAIT(10)
EVT_CALL(SetPlayerSpeed, EVT_FLOAT(3.0))
EVT_WAIT(10 * DT)
EVT_CALL(SetPlayerSpeed, EVT_FLOAT(3.0 / DT))
EVT_CALL(PlayerMoveTo, -60, -19, 0)
EVT_CALL(DisablePartnerAI, 0)
EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_Goompa_Talk, ANIM_Goompa_Idle, 0, MSG_CH0_00B7)

View File

@ -46,11 +46,11 @@ EvtScript N(EVS_NpcIdle_GoombaBros_Red) = {
EVT_CALL(SetPanTarget, CAM_DEFAULT, 360, 80, 35)
EVT_CALL(SetCamDistance, CAM_DEFAULT, 300)
EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(15.0), EVT_FLOAT(-7.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(2.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(2.0 / DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_THREAD
EVT_CALL(SetNpcSpeed, NPC_GoombaBros_Red, EVT_FLOAT(6.0))
EVT_CALL(SetNpcSpeed, NPC_GoombaBros_Red, EVT_FLOAT(6.0 / DT))
EVT_CALL(SetNpcAnimation, NPC_GoombaBros_Red, ANIM_GoombaBros_Red_Walk)
EVT_SET(LVar0, 0)
EVT_EXEC_GET_TID(N(EVS_PlayWalkingSounds), LVarA)
@ -59,7 +59,7 @@ EvtScript N(EVS_NpcIdle_GoombaBros_Red) = {
EVT_CALL(SetNpcAnimation, NPC_GoombaBros_Red, ANIM_GoombaBros_Red_Idle)
EVT_END_THREAD
EVT_CALL(SetNpcAnimation, NPC_GoombaBros_Blue, ANIM_GoombaBros_Blue_Walk)
EVT_CALL(SetNpcSpeed, NPC_GoombaBros_Blue, EVT_FLOAT(6.0))
EVT_CALL(SetNpcSpeed, NPC_GoombaBros_Blue, EVT_FLOAT(6.0 / DT))
EVT_CALL(SetNpcAnimation, NPC_GoombaBros_Blue, ANIM_GoombaBros_Blue_Walk)
EVT_SET(LVar0, 1)
EVT_EXEC_GET_TID(N(EVS_PlayWalkingSounds), LVarA)
@ -67,37 +67,37 @@ EvtScript N(EVS_NpcIdle_GoombaBros_Red) = {
EVT_KILL_THREAD(LVarA)
EVT_CALL(SetNpcAnimation, NPC_GoombaBros_Blue, ANIM_GoombaBros_Blue_Idle)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_LookUp)
EVT_CALL(SpeakToPlayer, NPC_GoombaBros_Red, ANIM_GoombaBros_Red_Talk, ANIM_GoombaBros_Red_Idle, 0, MSG_CH0_00BC)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SetPanTarget, CAM_DEFAULT, 270, 80, 45)
EVT_CALL(SetCamDistance, CAM_DEFAULT, 450)
EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(15.0), EVT_FLOAT(-3.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0 / DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_CALL(SpeakToPlayer, NPC_GoombaBros_Red, ANIM_GoombaBros_Red_Talk, ANIM_GoombaBros_Red_Idle, 0, MSG_CH0_00BD)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_GoombaBros_Blue, ANIM_GoombaBros_Blue_Talk, ANIM_GoombaBros_Blue_Idle, 0, MSG_CH0_00BE)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_THREAD
EVT_WAIT(5)
EVT_CALL(SetNpcJumpscale, NPC_GoombaBros_Blue, EVT_FLOAT(0.8))
EVT_CALL(SetNpcAnimation, NPC_GoombaBros_Blue, ANIM_GoombaBros_Blue_Walk)
EVT_CALL(PlaySoundAtNpc, NPC_GoombaBros_Blue, SOUND_10F, SOUND_SPACE_MODE_0)
EVT_CALL(NpcJump0, NPC_GoombaBros_Blue, 267, 0, 28, 30)
EVT_CALL(NpcJump0, NPC_GoombaBros_Blue, 267, 0, 28, 30 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_LookUp)
EVT_END_THREAD
EVT_THREAD
EVT_CALL(SetNpcJumpscale, NPC_GoombaBros_Red, EVT_FLOAT(0.8))
EVT_CALL(SetNpcAnimation, NPC_GoombaBros_Red, ANIM_GoombaBros_Red_Walk)
EVT_CALL(PlaySoundAtNpc, NPC_GoombaBros_Red, SOUND_10F, SOUND_SPACE_MODE_0)
EVT_CALL(NpcJump0, NPC_GoombaBros_Red, 276, 0, 55, 30)
EVT_CALL(NpcJump0, NPC_GoombaBros_Red, 276, 0, 55, 30 * DT)
EVT_END_THREAD
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Idle)
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0)
EVT_CALL(DisablePlayerInput, FALSE)
EVT_CALL(StartBossBattle, SONG_SPECIAL_BATTLE)
@ -107,7 +107,7 @@ EvtScript N(EVS_NpcIdle_GoombaBros_Red) = {
EvtScript N(EVS_NpcDefeat_GoombaBros_Red) = {
EVT_THREAD
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(SetMusicTrack, 0, SONG_GOOMBA_BROS_RETREAT, 0, 8)
EVT_END_THREAD
EVT_CALL(GetBattleOutcome, LVar0)
@ -123,12 +123,12 @@ EvtScript N(EVS_NpcDefeat_GoombaBros_Red) = {
EVT_CALL(SetNpcJumpscale, NPC_GoombaBros_Blue, EVT_FLOAT(1.8))
EVT_CALL(SetNpcAnimation, NPC_GoombaBros_Blue, ANIM_GoombaBros_Blue_CryWalk)
EVT_CALL(PlaySoundAtNpc, NPC_GoombaBros_Blue, SOUND_10F, SOUND_SPACE_MODE_0)
EVT_CALL(NpcJump0, NPC_GoombaBros_Blue, 307, 25, 49, 20)
EVT_CALL(NpcJump0, NPC_GoombaBros_Blue, 307, 25, 49, 20 * DT)
EVT_CALL(N(PlaySpringReboundAnimation))
EVT_CALL(PlaySoundAtNpc, NPC_GoombaBros_Blue, SOUND_2086, SOUND_SPACE_MODE_0)
EVT_CALL(NpcJump0, NPC_GoombaBros_Blue, 401, 80, 25, 30)
EVT_WAIT(5)
EVT_CALL(SetNpcSpeed, NPC_GoombaBros_Blue, EVT_FLOAT(6.0))
EVT_CALL(NpcJump0, NPC_GoombaBros_Blue, 401, 80, 25, 30 * DT)
EVT_WAIT(5 * DT)
EVT_CALL(SetNpcSpeed, NPC_GoombaBros_Blue, EVT_FLOAT(6.0 / DT))
EVT_SET(LVar0, 1)
EVT_EXEC_GET_TID(N(EVS_PlayWalkingSounds), LVarA)
EVT_CALL(NpcMoveTo, NPC_GoombaBros_Blue, 616, -47, 0)
@ -137,16 +137,16 @@ EvtScript N(EVS_NpcDefeat_GoombaBros_Red) = {
EVT_CALL(SetNpcPos, NPC_GoombaBros_Blue, NPC_DISPOSE_LOCATION)
EVT_WAIT(1)
EVT_END_THREAD
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetNpcJumpscale, NPC_GoombaBros_Red, EVT_FLOAT(1.8))
EVT_CALL(SetNpcAnimation, NPC_GoombaBros_Red, ANIM_GoombaBros_Red_CryWalk)
EVT_CALL(PlaySoundAtNpc, NPC_GoombaBros_Red, SOUND_10F, SOUND_SPACE_MODE_0)
EVT_CALL(NpcJump0, NPC_GoombaBros_Red, 307, 25, 49, 20)
EVT_CALL(NpcJump0, NPC_GoombaBros_Red, 307, 25, 49, 20 * DT)
EVT_CALL(N(PlaySpringReboundAnimation))
EVT_CALL(PlaySoundAtNpc, NPC_GoombaBros_Red, SOUND_2086, SOUND_SPACE_MODE_0)
EVT_CALL(NpcJump0, NPC_GoombaBros_Red, 401, 80, 25, 30)
EVT_WAIT(5)
EVT_CALL(SetNpcSpeed, NPC_GoombaBros_Red, EVT_FLOAT(6.0))
EVT_CALL(NpcJump0, NPC_GoombaBros_Red, 401, 80, 25, 30 * DT)
EVT_WAIT(5 * DT)
EVT_CALL(SetNpcSpeed, NPC_GoombaBros_Red, EVT_FLOAT(6.0 / DT))
EVT_SET(LVar0, 0)
EVT_EXEC_GET_TID(N(EVS_PlayWalkingSounds), LVarA)
EVT_CALL(NpcMoveTo, NPC_GoombaBros_Red, 616, -47, 0)

View File

@ -207,17 +207,17 @@ EvtScript N(EVS_Scene_SelfDestruct) = {
EVT_CALL(SetCamPosA, CAM_DEFAULT, -389, -12)
EVT_CALL(SetCamPosB, CAM_DEFAULT, -469, 156)
EVT_CALL(SetPanTarget, CAM_DEFAULT, -389, 120, -12)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0 * DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_CALL(SetNpcPos, NPC_GoombaKing, -380, 0, -42)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(SetNpcJumpscale, NPC_GoombaKing, EVT_FLOAT(0.8))
EVT_CALL(NpcFacePlayer, NPC_GoombaKing, 0)
EVT_CALL(PlaySoundAtNpc, NPC_GoombaKing, SOUND_3E7, SOUND_SPACE_MODE_0)
EVT_CALL(NpcJump1, NPC_GoombaKing, -380, 120, -42, 25)
EVT_CALL(NpcJump1, NPC_GoombaKing, -380, 120, -42, 25 * DT)
EVT_CALL(ShakeCam, CAM_DEFAULT, 0, 5, EVT_FLOAT(1.0))
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SetPlayerPos, -497, 0, 130)
EVT_CALL(InterpPlayerYaw, 270, 0)
EVT_CALL(SetNpcPos, NPC_PARTNER, -534, 0, 127)
@ -230,7 +230,7 @@ EvtScript N(EVS_Scene_SelfDestruct) = {
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(0.7))
EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 0, -100, 0)
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_WAIT(60)
EVT_WAIT(60 * DT)
EVT_CALL(SpeakToPlayer, NPC_GoombaKing, ANIM_GoombaKing_Idle, ANIM_GoombaKing_Idle, 0, MSG_CH0_00D9)
EVT_LOOP(100)
EVT_CALL(GetNpcPos, NPC_GoombaKing, LVar0, LVar1, LVar2)
@ -315,16 +315,16 @@ EvtScript N(EVS_BouncePlayerAndPartner) = {
EvtScript N(EVS_Scene_MeetGoombaKing_Impl) = {
EVT_CALL(DisablePlayerInput, TRUE)
EVT_EXEC_WAIT(N(EVS_FocusCam_FortressExterior))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(0.3))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(0.3 / DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, EVT_FLOAT(0.5), 1)
EVT_WAIT(170)
EVT_WAIT(170 * DT)
EVT_CALL(SetNpcPos, NPC_BlueGoombaBro, -830, 0, -70)
EVT_CALL(SetNpcPos, NPC_RedGoombaBro, -800, 0, -20)
EVT_CALL(SetNpcAnimation, NPC_BlueGoombaBro, ANIM_GoombaBros_Blue_CryRun)
EVT_CALL(SetNpcAnimation, NPC_RedGoombaBro, ANIM_GoombaBros_Red_CryRun)
EVT_CALL(SetNpcSpeed, NPC_BlueGoombaBro, EVT_FLOAT(4.0))
EVT_CALL(SetNpcSpeed, NPC_RedGoombaBro, EVT_FLOAT(4.0))
EVT_WAIT(50)
EVT_CALL(SetNpcSpeed, NPC_BlueGoombaBro, EVT_FLOAT(4.0 / DT))
EVT_CALL(SetNpcSpeed, NPC_RedGoombaBro, EVT_FLOAT(4.0 / DT))
EVT_WAIT(50 * DT)
EVT_THREAD
EVT_CALL(NpcMoveTo, NPC_BlueGoombaBro, -521, -100, 0)
EVT_END_THREAD
@ -361,15 +361,15 @@ EvtScript N(EVS_Scene_MeetGoombaKing_Impl) = {
EVT_PLAY_EFFECT(EFFECT_DROP_LEAVES, 0, -617, 108, -137, 100)
EVT_CALL(ShakeCam, CAM_DEFAULT, 0, 5, EVT_FLOAT(0.5))
EVT_CALL(SetPlayerPos, -920, 0, -35)
EVT_CALL(SetPlayerSpeed, EVT_FLOAT(3.0))
EVT_CALL(SetPlayerSpeed, EVT_FLOAT(3.0 / DT))
EVT_CALL(PlayerMoveTo, -575, -60, 0)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(DisablePartnerAI, 0)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(PlayerFaceNpc, NPC_PARTNER, FALSE)
EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_WorldGoombario_Talk, ANIM_WorldGoombario_Idle, 0, MSG_CH0_00C5)
EVT_CALL(InterpPlayerYaw, 90, 0)
EVT_WAIT(40)
EVT_WAIT(40 * DT)
EVT_CALL(PlaySoundAt, SOUND_20EC, SOUND_SPACE_MODE_0, -330, 0, -130)
EVT_CALL(PlaySoundAt, SOUND_20B4, SOUND_SPACE_MODE_0, -330, 0, -130)
EVT_PLAY_EFFECT(EFFECT_DROP_LEAVES, 0, -725, 117, -137, 100)
@ -377,7 +377,7 @@ EvtScript N(EVS_Scene_MeetGoombaKing_Impl) = {
EVT_CALL(ShakeCam, CAM_DEFAULT, 0, 5, EVT_FLOAT(0.2))
EVT_SET(LVar3, 2)
EVT_EXEC(N(EVS_BouncePlayerAndPartner))
EVT_WAIT(60)
EVT_WAIT(60 * DT)
EVT_CALL(PlaySoundAt, SOUND_20EC, SOUND_SPACE_MODE_0, -330, 0, -130)
EVT_CALL(PlaySoundAt, SOUND_20B4, SOUND_SPACE_MODE_0, -330, 0, -130)
EVT_PLAY_EFFECT(EFFECT_DROP_LEAVES, 0, -725, 117, -137, 100)
@ -385,7 +385,7 @@ EvtScript N(EVS_Scene_MeetGoombaKing_Impl) = {
EVT_CALL(ShakeCam, CAM_DEFAULT, 0, 5, EVT_FLOAT(0.6))
EVT_SET(LVar3, 4)
EVT_EXEC(N(EVS_BouncePlayerAndPartner))
EVT_WAIT(60)
EVT_WAIT(60 * DT)
EVT_CALL(PlaySoundAt, SOUND_20EC, SOUND_SPACE_MODE_0, -330, 0, -130)
EVT_CALL(PlaySoundAt, SOUND_20B4, SOUND_SPACE_MODE_0, -330, 0, -130)
EVT_PLAY_EFFECT(EFFECT_DROP_LEAVES, 0, -725, 117, -137, 100)
@ -393,7 +393,7 @@ EvtScript N(EVS_Scene_MeetGoombaKing_Impl) = {
EVT_CALL(ShakeCam, CAM_DEFAULT, 0, 5, EVT_FLOAT(1.0))
EVT_SET(LVar3, 6)
EVT_EXEC(N(EVS_BouncePlayerAndPartner))
EVT_WAIT(60)
EVT_WAIT(60 * DT)
EVT_CALL(PlaySoundAt, SOUND_20EC, SOUND_SPACE_MODE_0, -330, 0, -130)
EVT_CALL(PlaySoundAt, SOUND_20B4, SOUND_SPACE_MODE_0, -330, 0, -130)
EVT_PLAY_EFFECT(EFFECT_DROP_LEAVES, 0, -725, 117, -137, 100)
@ -401,9 +401,9 @@ EvtScript N(EVS_Scene_MeetGoombaKing_Impl) = {
EVT_CALL(ShakeCam, CAM_DEFAULT, 0, 5, EVT_FLOAT(1.5))
EVT_SET(LVar3, 8)
EVT_EXEC(N(EVS_BouncePlayerAndPartner))
EVT_WAIT(28)
EVT_WAIT(28 * DT)
EVT_CALL(SetMusicTrack, 0, SONG_GOOMBA_KING_THEME, 0, 8)
EVT_WAIT(32)
EVT_WAIT(32 * DT)
EVT_CALL(SetNpcAnimation, NPC_BlueGoombaBro, ANIM_GoombaBros_Blue_Idle)
EVT_CALL(SetNpcAnimation, NPC_RedGoombaBro, ANIM_GoombaBros_Red_Idle)
EVT_CALL(SetNpcJumpscale, NPC_BlueGoombaBro, EVT_FLOAT(0.8))
@ -411,17 +411,17 @@ EvtScript N(EVS_Scene_MeetGoombaKing_Impl) = {
EVT_THREAD
EVT_CALL(SetNpcPos, NPC_BlueGoombaBro, -400, 0, -162)
EVT_CALL(PlaySoundAtNpc, NPC_BlueGoombaBro, SOUND_10F, SOUND_SPACE_MODE_0)
EVT_CALL(NpcJump0, NPC_BlueGoombaBro, -432, 130, -146, 30)
EVT_CALL(NpcJump0, NPC_BlueGoombaBro, -432, 130, -146, 30 * DT)
EVT_END_THREAD
EVT_CALL(SetNpcPos, NPC_RedGoombaBro, -400, 0, -41)
EVT_CALL(PlaySoundAtNpc, NPC_RedGoombaBro, SOUND_10F, SOUND_SPACE_MODE_0)
EVT_CALL(NpcJump0, NPC_RedGoombaBro, -412, 130, -35, 30)
EVT_WAIT(10)
EVT_CALL(NpcJump0, NPC_RedGoombaBro, -412, 130, -35, 30 * DT)
EVT_WAIT(10 * DT)
EVT_THREAD
EVT_CALL(SetNpcJumpscale, NPC_GoombaKing, EVT_FLOAT(0.8))
EVT_CALL(SetNpcPos, NPC_GoombaKing, -405, 0, -91)
EVT_CALL(PlaySoundAtNpc, NPC_GoombaKing, SOUND_3E7, SOUND_SPACE_MODE_0)
EVT_CALL(NpcJump0, NPC_GoombaKing, -419, 119, -91, 30)
EVT_CALL(NpcJump0, NPC_GoombaKing, -419, 119, -91, 30 * DT)
EVT_CALL(PlaySoundAt, SOUND_20EC, SOUND_SPACE_MODE_0, -330, 0, -130)
EVT_CALL(PlaySoundAt, SOUND_20B4, SOUND_SPACE_MODE_0, -330, 0, -130)
EVT_PLAY_EFFECT(EFFECT_DROP_LEAVES, 0, -725, 117, -137, 100)
@ -431,7 +431,7 @@ EvtScript N(EVS_Scene_MeetGoombaKing_Impl) = {
EVT_EXEC_WAIT(N(EVS_FocusCam_Battlement))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_WAIT(55)
EVT_WAIT(55 * DT)
EVT_CALL(SpeakToPlayer, NPC_GoombaKing, ANIM_GoombaKing_Idle, ANIM_GoombaKing_Idle, 0, MSG_CH0_00C6)
EVT_CALL(SpeakToPlayer, NPC_RedGoombaBro, ANIM_GoombaBros_Red_Walk, ANIM_GoombaBros_Red_Idle, 0, MSG_CH0_00C7)
EVT_CALL(SpeakToPlayer, NPC_BlueGoombaBro, ANIM_GoombaBros_Blue_Walk, ANIM_GoombaBros_Blue_Idle, 0, MSG_CH0_00C8)
@ -439,16 +439,16 @@ EvtScript N(EVS_Scene_MeetGoombaKing_Impl) = {
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(DisablePartnerAI, 0)
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_WorldGoombario_Talk, ANIM_WorldGoombario_Idle, 0, MSG_CH0_00C9)
EVT_CALL(DisablePartnerAI, 0)
EVT_EXEC_WAIT(N(EVS_FocusCam_Battlement))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(SpeakToPlayer, NPC_GoombaKing, ANIM_GoombaKing_Idle, ANIM_GoombaKing_Idle, 0, MSG_CH0_00CA)
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetNpcVar, NPC_GoombaKing, 0, 1)
EVT_RETURN
EVT_END

View File

@ -19,7 +19,7 @@ EvtScript N(EVS_NpcIdle_GoombaKing) = {
EVT_CALL(GetNpcPos, NPC_GoombaKing, LVar0, LVar1, LVar2)
EVT_CALL(AwaitPlayerApproach, LVar0, LVar2, 300)
EVT_CALL(DisablePlayerInput, TRUE)
EVT_CALL(SetPlayerSpeed, EVT_FLOAT(3.0))
EVT_CALL(SetPlayerSpeed, EVT_FLOAT(3.0 / DT))
EVT_CALL(PlayerMoveTo, -564, -64, 0)
EVT_ELSE
EVT_LABEL(0)
@ -40,23 +40,23 @@ EvtScript N(EVS_NpcIdle_GoombaKing) = {
EVT_CALL(GetAngleToPlayer, NPC_RedGoombaBro, LVar3)
EVT_CALL(AddVectorPolar, LVar0, LVar2, EVT_FLOAT(100.0), LVar3)
EVT_CALL(PlaySoundAtNpc, NPC_RedGoombaBro, SOUND_10F, SOUND_SPACE_MODE_0)
EVT_CALL(NpcJump0, NPC_RedGoombaBro, LVar0, 0, LVar2, 30)
EVT_CALL(NpcJump0, NPC_RedGoombaBro, LVar0, 0, LVar2, 30 * DT)
EVT_END_THREAD
EVT_THREAD
EVT_CALL(GetNpcPos, NPC_BlueGoombaBro, LVar0, LVar1, LVar2)
EVT_CALL(GetAngleToPlayer, NPC_BlueGoombaBro, LVar3)
EVT_CALL(AddVectorPolar, LVar0, LVar2, EVT_FLOAT(100.0), LVar3)
EVT_CALL(PlaySoundAtNpc, NPC_BlueGoombaBro, SOUND_10F, SOUND_SPACE_MODE_0)
EVT_CALL(NpcJump0, NPC_BlueGoombaBro, LVar0, 0, LVar2, 30)
EVT_CALL(NpcJump0, NPC_BlueGoombaBro, LVar0, 0, LVar2, 30 * DT)
EVT_END_THREAD
EVT_THREAD
EVT_CALL(GetNpcPos, NPC_GoombaKing, LVar0, LVar1, LVar2)
EVT_CALL(GetAngleToPlayer, NPC_GoombaKing, LVar3)
EVT_CALL(AddVectorPolar, LVar0, LVar2, EVT_FLOAT(100.0), LVar3)
EVT_CALL(PlaySoundAtNpc, NPC_GoombaKing, SOUND_3E7, SOUND_SPACE_MODE_0)
EVT_CALL(NpcJump0, NPC_GoombaKing, LVar0, 0, LVar2, 30)
EVT_CALL(NpcJump0, NPC_GoombaKing, LVar0, 0, LVar2, 30 * DT)
EVT_END_THREAD
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_CALL(StartBossBattle, SONG_GOOMBA_KING_BATTLE)
EVT_RETURN
EVT_END
@ -74,9 +74,9 @@ EvtScript N(EVS_Scene_BossDefeated) = {
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_CALL(N(SetCameraVFov), 25)
EVT_CALL(SpeakToPlayer, NPC_GoombaKing, ANIM_GoombaKing_Walk, ANIM_GoombaKing_Idle, 0, MSG_CH0_00D1)
EVT_CALL(SetNpcSpeed, NPC_BlueGoombaBro, EVT_FLOAT(6.0))
EVT_CALL(SetNpcSpeed, NPC_RedGoombaBro, EVT_FLOAT(6.0))
EVT_CALL(SetNpcSpeed, NPC_GoombaKing, EVT_FLOAT(6.0))
EVT_CALL(SetNpcSpeed, NPC_BlueGoombaBro, EVT_FLOAT(6.0 / DT))
EVT_CALL(SetNpcSpeed, NPC_RedGoombaBro, EVT_FLOAT(6.0 / DT))
EVT_CALL(SetNpcSpeed, NPC_GoombaKing, EVT_FLOAT(6.0 / DT))
EVT_CALL(SetNpcAnimation, NPC_BlueGoombaBro, ANIM_GoombaBros_Blue_Run)
EVT_CALL(SetNpcAnimation, NPC_RedGoombaBro, ANIM_GoombaBros_Red_Run)
EVT_CALL(SetNpcAnimation, NPC_GoombaKing, ANIM_GoombaKing_Run)
@ -102,7 +102,7 @@ EvtScript N(EVS_Scene_BossDefeated) = {
EVT_IF_EQ(LVar1, 1)
EVT_GOTO(0)
EVT_END_IF
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(MakeLerp, 90, 0, 20, EASING_COS_IN_OUT)
EVT_LABEL(1)
EVT_CALL(UpdateLerp)
@ -116,16 +116,16 @@ EvtScript N(EVS_Scene_BossDefeated) = {
EVT_CALL(ShakeCam, CAM_DEFAULT, 0, 5, EVT_FLOAT(2.0))
EVT_SET(GB_StoryProgress, STORY_CH0_DEFEATED_GOOMBA_KING)
EVT_EXEC(N(EVS_SetupMusic))
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(4.0), 0, EVT_FLOAT(250.0), EVT_FLOAT(15.0), EVT_FLOAT(-7.5))
EVT_WAIT(10)
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(4.0 / DT), 0, EVT_FLOAT(250.0), EVT_FLOAT(15.0), EVT_FLOAT(-7.5))
EVT_WAIT(10 * DT)
EVT_CALL(DisablePartnerAI, 0)
EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_WorldGoombario_Talk, ANIM_WorldGoombario_Idle, 0, MSG_CH0_00D2)
EVT_CALL(EnablePartnerAI)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(DisablePlayerInput, TRUE)
EVT_THREAD
EVT_WAIT(40)
EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(4.0))
EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(4.0 / DT))
EVT_CALL(DisablePlayerInput, FALSE)
EVT_END_THREAD
EVT_CALL(SetNpcPos, NPC_BlueGoombaBro, NPC_DISPOSE_LOCATION)

View File

@ -50,10 +50,10 @@ EvtScript N(EVS_Interact_SwitchBush) = {
EVT_CALL(SetNpcFlagBits, NPC_BlueGoombaBro, NPC_FLAG_HAS_NO_SPRITE, TRUE)
EVT_EXEC_GET_TID(N(EVS_TetherSwitchToBlueGoomba), LVarB)
EVT_CALL(SetNpcJumpscale, NPC_BlueGoombaBro, EVT_FLOAT(2.0))
EVT_CALL(NpcJump0, NPC_BlueGoombaBro, -445, 0, 92, 15)
EVT_CALL(NpcJump0, NPC_BlueGoombaBro, -445, 0, 92, 15 * DT)
EVT_CALL(PlaySoundAt, SOUND_48, SOUND_SPACE_MODE_0, -469, 1, 92)
EVT_CALL(SetNpcJumpscale, NPC_BlueGoombaBro, EVT_FLOAT(2.0))
EVT_CALL(NpcJump0, NPC_BlueGoombaBro, -469, 0, 92, 7)
EVT_CALL(NpcJump0, NPC_BlueGoombaBro, -469, 0, 92, 7 * DT)
EVT_KILL_THREAD(LVarB)
EVT_CALL(SetNpcPos, NPC_BlueGoombaBro, NPC_DISPOSE_LOCATION)
EVT_SET(GB_StoryProgress, STORY_CH0_FOUND_GATEHOUSE_SWITCH)

View File

@ -19,22 +19,22 @@ EvtScript N(EVS_Scene_KammyWatching) = {
EVT_CALL(SetCamPitch, CAM_DEFAULT, 8, -5)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_WAIT(60)
EVT_WAIT(60 * DT)
EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 100, 0, -220)
EVT_CALL(SetPanTarget, CAM_DEFAULT, 100, 190, -353)
EVT_CALL(SetCamDistance, CAM_DEFAULT, 250)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 100, 0, -220)
EVT_CALL(SetPanTarget, CAM_DEFAULT, 100, 190, -353)
EVT_CALL(SetCamDistance, CAM_DEFAULT, 1000)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(0.65))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(0.65 / DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_THREAD
EVT_CALL(GetNpcPos, NPC_Kammy, LVar7, LVar8, LVar9)
EVT_CALL(LoadPath, 80, EVT_PTR(N(FlightPath_Away)), ARRAY_COUNT(N(FlightPath_Away)), EASING_LINEAR)
EVT_CALL(LoadPath, 80 * DT, EVT_PTR(N(FlightPath_Away)), ARRAY_COUNT(N(FlightPath_Away)), EASING_LINEAR)
EVT_LABEL(0)
EVT_CALL(GetNextPathPos)
EVT_ADD(LVar1, LVar7)
@ -47,12 +47,12 @@ EvtScript N(EVS_Scene_KammyWatching) = {
EVT_END_IF
EVT_END_THREAD
EVT_THREAD
EVT_LOOP(24)
EVT_LOOP(24 * DT)
EVT_CALL(PlaySoundAtNpc, NPC_Kammy, SOUND_295, SOUND_SPACE_MODE_0)
EVT_WAIT(4)
EVT_END_LOOP
EVT_END_THREAD
EVT_WAIT(110)
EVT_WAIT(110 * DT)
EVT_EXEC_WAIT(N(EVS_BadExit_kmr_24_0))
EVT_RETURN
EVT_END

View File

@ -195,7 +195,7 @@ s32* N(UnknownLists)[] = {
EvtScript N(EVS_Scene_BeginGame) = {
EVT_CALL(DisablePlayerInput, TRUE)
EVT_THREAD
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(SetMusicTrack, 0, SONG_MAIL_CALL, 0, 8)
EVT_END_THREAD
EVT_CALL(InterpPlayerYaw, 90, 0)
@ -216,8 +216,8 @@ EvtScript N(EVS_Scene_BeginGame) = {
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(0.7))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_THREAD
EVT_WAIT(10)
EVT_CALL(MakeLerp, 0, 70, 60, EASING_LINEAR)
EVT_WAIT(10 * DT)
EVT_CALL(MakeLerp, 0, 70, 60 * DT, EASING_LINEAR)
EVT_LOOP(0)
EVT_CALL(UpdateLerp)
EVT_CALL(TranslateGroup, MODEL_g108, LVar0, 0, 0)
@ -231,8 +231,8 @@ EvtScript N(EVS_Scene_BeginGame) = {
EVT_END_LOOP
EVT_END_THREAD
EVT_THREAD
EVT_WAIT(30)
EVT_CALL(MakeLerp, 0, 50, 40, EASING_LINEAR)
EVT_WAIT(30 * DT)
EVT_CALL(MakeLerp, 0, 50, 40 * DT, EASING_LINEAR)
EVT_LOOP(0)
EVT_CALL(UpdateLerp)
EVT_CALL(TranslateGroup, MODEL_g109, LVar0, 0, 0)
@ -246,8 +246,8 @@ EvtScript N(EVS_Scene_BeginGame) = {
EVT_END_LOOP
EVT_END_THREAD
EVT_THREAD
EVT_WAIT(50)
EVT_CALL(MakeLerp, 0, 50, 40, EASING_LINEAR)
EVT_WAIT(50 * DT)
EVT_CALL(MakeLerp, 0, 50, 40 * DT, EASING_LINEAR)
EVT_LOOP(0)
EVT_CALL(UpdateLerp)
EVT_CALL(TranslateGroup, MODEL_g105, LVar0, 0, 0)
@ -263,10 +263,10 @@ EvtScript N(EVS_Scene_BeginGame) = {
EVT_WAIT(1)
EVT_END_LOOP
EVT_END_THREAD
EVT_WAIT(120)
EVT_CALL(NpcFlyTo, NPC_Scene_Parakarry, 430, 20, -165, 60, -10, EASING_LINEAR)
EVT_WAIT(120 * DT)
EVT_CALL(NpcFlyTo, NPC_Scene_Parakarry, 430, 20, -165, 60 * DT, -10, EASING_LINEAR)
EVT_CALL(InterpNpcYaw, NPC_Scene_Parakarry, 45, 10)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(PlaySoundAtNpc, NPC_Scene_Parakarry, SOUND_E0, SOUND_SPACE_MODE_0)
EVT_THREAD
EVT_CALL(TranslateModel, MODEL_o222, 2, 0, 0)
@ -289,23 +289,23 @@ EvtScript N(EVS_Scene_BeginGame) = {
EVT_CALL(TranslateModel, MODEL_o223, 0, 0, 0)
EVT_CALL(TranslateModel, MODEL_o224, 0, 0, 0)
EVT_END_THREAD
EVT_WAIT(35)
EVT_WAIT(35 * DT)
EVT_CALL(InterpNpcYaw, NPC_Scene_Parakarry, 220, 5)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_Scene_Parakarry, ANIM_WorldParakarry_Talk, ANIM_WorldParakarry_Idle, 5, MSG_Intro_001E)
EVT_WAIT(10)
EVT_CALL(NpcFlyTo, NPC_Scene_Parakarry, 360, 260, 60, 60, -10, EASING_LINEAR)
EVT_WAIT(30)
EVT_WAIT(10 * DT)
EVT_CALL(NpcFlyTo, NPC_Scene_Parakarry, 360, 260, 60, 60 * DT, -10, EASING_LINEAR)
EVT_WAIT(30 * DT)
EVT_EXEC(N(EVS_OpenAndCloseDoor_Intro))
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SetNpcAnimation, NPC_Scene_Luigi, ANIM_Luigi_Run)
EVT_EXEC_GET_TID(N(EVS_Luigi_PlayWalkSounds_Intro), LVarA)
EVT_CALL(SetNpcSpeed, NPC_Scene_Luigi, EVT_FLOAT(4.0))
EVT_CALL(SetNpcSpeed, NPC_Scene_Luigi, EVT_FLOAT(4.0 / DT))
EVT_CALL(NpcMoveTo, NPC_Scene_Luigi, 450, -80, 0)
EVT_CALL(NpcMoveTo, NPC_Scene_Luigi, 430, -165, 0)
EVT_CALL(SetNpcAnimation, NPC_Scene_Luigi, ANIM_Luigi_Idle)
EVT_KILL_THREAD(LVarA)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(PlaySoundAtNpc, NPC_Scene_Luigi, SOUND_E0, SOUND_SPACE_MODE_0)
EVT_THREAD
EVT_CALL(TranslateModel, MODEL_o222, 1, 0, 0)
@ -330,7 +330,7 @@ EvtScript N(EVS_Scene_BeginGame) = {
EVT_END_THREAD
EVT_WAIT(2)
EVT_CALL(SetNpcAnimation, NPC_Scene_Luigi, ANIM_Luigi_IdleLetter)
EVT_WAIT(40)
EVT_WAIT(40 * DT)
EVT_CALL(InterpNpcYaw, NPC_Scene_Luigi, 270, 5)
EVT_CALL(SetNpcAnimation, NPC_Scene_Luigi, ANIM_Luigi_RunLetter)
EVT_EXEC_GET_TID(N(EVS_Luigi_PlayWalkSounds_Intro), LVarA)
@ -355,12 +355,12 @@ EvtScript N(EVS_Scene_BeginGame) = {
EVT_WAIT(10)
EVT_CALL(SetNpcAnimation, NPC_Scene_Luigi, ANIM_Luigi_WalkLetter)
EVT_EXEC_GET_TID(N(EVS_Luigi_PlayWalkSounds_Intro), LVarA)
EVT_CALL(SetNpcSpeed, NPC_Scene_Luigi, EVT_FLOAT(2.0))
EVT_CALL(SetNpcSpeed, NPC_Scene_Luigi, EVT_FLOAT(2.0 / DT))
EVT_CALL(NpcMoveTo, NPC_Scene_Luigi, 240, -80, 0)
EVT_CALL(SetNpcAnimation, NPC_Scene_Luigi, ANIM_Luigi_IdleLetter)
EVT_KILL_THREAD(LVarA)
EVT_CALL(SpeakToPlayer, NPC_Scene_Luigi, ANIM_Luigi_TalkLetter, ANIM_Luigi_IdleLetter, 0, MSG_Intro_001F)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_EXEC(N(EVS_TetherCamToLuigi))
EVT_THREAD
EVT_CALL(SetNpcAnimation, NPC_Scene_Luigi, ANIM_Luigi_WalkLetter)
@ -371,24 +371,24 @@ EvtScript N(EVS_Scene_BeginGame) = {
EVT_KILL_THREAD(LVarA)
EVT_CALL(SetNpcVar, NPC_Scene_Luigi, 0, 0)
EVT_END_THREAD
EVT_WAIT(20)
EVT_CALL(func_802D1270, 70, -80, EVT_FLOAT(2.0))
EVT_CALL(func_802D1270, 70, -110, EVT_FLOAT(2.0))
EVT_WAIT(10)
EVT_WAIT(20 * DT)
EVT_CALL(func_802D1270, 70, -80, EVT_FLOAT(2.0 / DT))
EVT_CALL(func_802D1270, 70, -110, EVT_FLOAT(2.0 / DT))
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_Scene_Luigi, ANIM_Luigi_TalkLetter, ANIM_Luigi_IdleLetter, 0, MSG_Intro_0020)
EVT_CALL(SetNpcAnimation, NPC_Scene_Luigi, ANIM_Luigi_OpenLetter)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(SetNpcAnimation, NPC_Scene_Luigi, ANIM_Luigi_IdleRead)
EVT_CALL(SpeakToPlayer, NPC_Scene_Luigi, ANIM_Luigi_TalkRead, ANIM_Luigi_IdleRead, 0, MSG_Intro_0021)
EVT_CALL(SetNpcAnimation, NPC_Scene_Luigi, ANIM_Luigi_ReadLetter)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SetMusicTrack, 0, SONG_PRISONER_PEACH_THEME, 0, 8)
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(ClearAmbientSounds, 250)
EVT_CALL(GotoMapSpecial, EVT_PTR("osr_00"), osr_00_ENTRY_3, TRANSITION_7)
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_CALL(ClearAmbientSounds, 250)
EVT_WAIT(100)
EVT_WAIT(100 * DT)
EVT_RETURN
EVT_END
};
@ -401,12 +401,12 @@ EvtScript N(EVS_Scene_SettingOff) = {
EVT_CALL(SetPanTarget, CAM_DEFAULT, 320, 30, -70)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_WAIT(60)
EVT_WAIT(60 * DT)
EVT_CALL(SetMusicTrack, 0, SONG_PEACHS_CASTLE_PARTY, 1, 8)
EVT_EXEC(N(EVS_OpenAndCloseDoor_Intro))
EVT_THREAD
EVT_WAIT(10)
EVT_CALL(SetNpcSpeed, NPC_Scene_Luigi, EVT_FLOAT(3.0))
EVT_WAIT(10 * DT)
EVT_CALL(SetNpcSpeed, NPC_Scene_Luigi, EVT_FLOAT(3.0 / DT))
EVT_CALL(SetNpcAnimation, NPC_Scene_Luigi, ANIM_Luigi_Run)
EVT_EXEC_GET_TID(N(EVS_Luigi_PlayWalkSounds_Intro), LVarA)
EVT_CALL(NpcMoveTo, NPC_Scene_Luigi, 320, -70, 0)
@ -415,25 +415,25 @@ EvtScript N(EVS_Scene_SettingOff) = {
EVT_CALL(SetNpcAnimation, NPC_Scene_Luigi, ANIM_Luigi_Idle)
EVT_KILL_THREAD(LVarA)
EVT_END_THREAD
EVT_CALL(func_802D1270, 320, -70, EVT_FLOAT(3.0))
EVT_CALL(func_802D1270, 320, -70, EVT_FLOAT(3.0 / DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0)
EVT_CALL(func_802D1270, 460, -70, EVT_FLOAT(3.0))
EVT_CALL(func_802D1270, 570, -170, EVT_FLOAT(3.0))
EVT_CALL(func_802D1270, 460, -70, EVT_FLOAT(3.0 / DT))
EVT_CALL(func_802D1270, 570, -170, EVT_FLOAT(3.0 / DT))
EVT_CALL(SetPlayerJumpscale, EVT_FLOAT(1.0))
EVT_CALL(PlayerJump, 594, 30, -216, 15)
EVT_CALL(PlayerJump, 594, 30, -216, 15 * DT)
EVT_EXEC_WAIT(N(EVS_Player_EnterPipe_Intro))
EVT_CALL(SetNpcAnimation, NPC_Scene_Luigi, ANIM_Luigi_JumpStance)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_THREAD
EVT_CALL(SetNpcAnimation, NPC_Scene_Luigi, ANIM_Luigi_Jump)
EVT_CALL(PlaySoundAtNpc, NPC_Scene_Luigi, SOUND_JUMP_2081, SOUND_SPACE_MODE_0)
EVT_WAIT(7)
EVT_WAIT(7)
EVT_WAIT(7 * DT)
EVT_WAIT(7 * DT)
EVT_CALL(SetNpcAnimation, NPC_Scene_Luigi, ANIM_Luigi_Idle)
EVT_CALL(PlaySoundAtNpc, NPC_Scene_Luigi, SOUND_SOFT_LAND, SOUND_SPACE_MODE_0)
EVT_END_THREAD
EVT_CALL(SetNpcJumpscale, NPC_Scene_Luigi, EVT_FLOAT(1.0))
EVT_CALL(NpcJump0, NPC_Scene_Luigi, 594, 30, -216, 15)
EVT_CALL(NpcJump0, NPC_Scene_Luigi, 594, 30, -216, 15 * DT)
EVT_EXEC_WAIT(N(EVS_Luigi_EnterPipe_Intro))
EVT_EXEC(N(EVS_FadeOutAmbientSounds))
EVT_CALL(GotoMap, EVT_PTR("mac_00"), mac_00_ENTRY_5)

View File

@ -60,6 +60,12 @@ s32 N(RecipeFoundVars)[] = {
void N(appendGfx_records_impl)(GameRecords* records, s32 alpha) {
s32 width;
#if VERSION_PAL
#define CHARSET (1)
#else
#define CHARSET (0)
#endif
if (alpha > 0) {
gSPDisplayList(gMainGfxPos++, N(records_screen_gfx));
gDPPipeSync(gMainGfxPos++);
@ -68,22 +74,22 @@ void N(appendGfx_records_impl)(GameRecords* records, s32 alpha) {
gDPPipeSync(gMainGfxPos++);
msg_draw_frame(30, 40, 260, 155, MSG_STYLE_INSPECT, MSG_PAL_WHITE, TRUE, alpha * 0.55, alpha);
draw_msg(MSG_CH0_00FC, 206 - get_msg_width(MSG_CH0_00FC, 0), 50, alpha, MSG_PAL_WHITE, DRAW_MSG_STYLE_MENU);
draw_msg(MSG_CH0_00FC, 206 - get_msg_width(MSG_CH0_00FC, CHARSET), 50, alpha, MSG_PAL_WHITE, DRAW_MSG_STYLE_MENU);
draw_number(gPlayerData.totalCoinsEarned, 216, 51, 1, MSG_PAL_WHITE, alpha, 2);
draw_msg(MSG_CH0_00FD, 206 - get_msg_width(MSG_CH0_00FD, 0), 65, alpha, MSG_PAL_WHITE, DRAW_MSG_STYLE_MENU);
draw_msg(MSG_CH0_00FD, 206 - get_msg_width(MSG_CH0_00FD, CHARSET), 65, alpha, MSG_PAL_WHITE, DRAW_MSG_STYLE_MENU);
draw_number(records->equippedBadges, 231, 66, 1, MSG_PAL_WHITE, alpha, 3);
draw_msg(MSG_MenuTip_0034, 232, 63, alpha, MSG_PAL_WHITE, 0);
draw_number(80, 244, 66, 1, MSG_PAL_WHITE, alpha, 2);
if (gPlayerData.starPiecesCollected == 0) {
draw_msg(MSG_CH0_00FA, 109, 80, alpha, MSG_PAL_WHITE, 1);
} else {
draw_msg(MSG_CH0_00FB, 206 - get_msg_width(MSG_CH0_00FB, 0), 80, alpha, MSG_PAL_WHITE, DRAW_MSG_STYLE_MENU);
draw_msg(MSG_CH0_00FB, 206 - get_msg_width(MSG_CH0_00FB, CHARSET), 80, alpha, MSG_PAL_WHITE, DRAW_MSG_STYLE_MENU);
draw_number(gPlayerData.starPiecesCollected, 231, 81, 1, MSG_PAL_WHITE, alpha, 3);
draw_msg(MSG_MenuTip_0034, 232, 78, alpha, MSG_PAL_WHITE, 0);
draw_number(160, 244, 80, 1, MSG_PAL_WHITE, alpha, 2);
}
width = get_msg_width(MSG_CH0_00FE, 0);
width = get_msg_width(MSG_CH0_00FE, CHARSET);
if (records->recipesFoundCount == 0) {
draw_msg(MSG_CH0_00FA, 110, 95, alpha, MSG_PAL_WHITE, DRAW_MSG_STYLE_MENU);
} else {
@ -101,27 +107,29 @@ void N(appendGfx_records_impl)(GameRecords* records, s32 alpha) {
if (gPlayerData.quizzesAnswered == 0) {
draw_msg(MSG_CH0_00FA, 109, 110, alpha, MSG_PAL_WHITE, DRAW_MSG_STYLE_MENU);
} else {
draw_msg(MSG_CH0_00FF, 206 - get_msg_width(MSG_CH0_00FF, 0), 110, alpha, MSG_PAL_WHITE, DRAW_MSG_STYLE_MENU);
draw_msg(MSG_CH0_00FF, 206 - get_msg_width(MSG_CH0_00FF, CHARSET), 110, alpha, MSG_PAL_WHITE, DRAW_MSG_STYLE_MENU);
draw_number(gPlayerData.quizzesCorrect, 231, 111, 1, MSG_PAL_WHITE, alpha, 3);
draw_msg(MSG_MenuTip_0034, 232, 108, alpha, MSG_PAL_WHITE, 0);
draw_number(gPlayerData.quizzesAnswered, 244, 111, 1, MSG_PAL_WHITE, alpha, 2);
}
draw_msg(MSG_CH0_00F4, 206 - get_msg_width(MSG_CH0_00F4, 0), 125, alpha, MSG_PAL_WHITE, DRAW_MSG_STYLE_MENU);
draw_msg(MSG_CH0_00F4, 206 - get_msg_width(MSG_CH0_00F4, CHARSET), 125, alpha, MSG_PAL_WHITE, DRAW_MSG_STYLE_MENU);
draw_number(gPlayerData.battlesCount, 216, 126, 1, MSG_PAL_WHITE, alpha, 2);
width = get_msg_width(MSG_CH0_00F7, 0);
width = get_msg_width(MSG_CH0_00F7, CHARSET);
draw_msg(MSG_CH0_00F7, 206 - width, 140, alpha, MSG_PAL_WHITE, DRAW_MSG_STYLE_MENU);
draw_number(gPlayerData.playerFirstStrikes, 216, 141, 1, MSG_PAL_WHITE, alpha, 2);
draw_msg(MSG_CH0_00F8, 206 - get_msg_width(MSG_CH0_00F8, 0), 155, alpha, MSG_PAL_WHITE, DRAW_MSG_STYLE_MENU);
draw_msg(MSG_CH0_00F8, 206 - get_msg_width(MSG_CH0_00F8, CHARSET), 155, alpha, MSG_PAL_WHITE, DRAW_MSG_STYLE_MENU);
draw_number(gPlayerData.enemyFirstStrikes, 216, 156, 1, MSG_PAL_WHITE, alpha, 2);
if (gPlayerData.powerBounces == 0) {
draw_msg(MSG_CH0_00FA, 109, 170, alpha, MSG_PAL_WHITE, DRAW_MSG_STYLE_MENU);
} else {
draw_msg(MSG_CH0_00F9, 206 - get_msg_width(MSG_CH0_00F9, 0), 170, alpha, MSG_PAL_WHITE, DRAW_MSG_STYLE_MENU);
draw_msg(MSG_CH0_00F9, 206 - get_msg_width(MSG_CH0_00F9, CHARSET), 170, alpha, MSG_PAL_WHITE, DRAW_MSG_STYLE_MENU);
draw_number(gPlayerData.powerBounces, 216, 171, 1, MSG_PAL_WHITE, alpha, 2);
}
}
#undef CHARSET
}
void N(appendGfx_records)(void* data) {

View File

@ -17,7 +17,7 @@ extern HudScript HES_Item_Unused_08C;
extern HudScript HES_Item_Unused_08C_disabled;
BSS PopupMenu N(ChooseDocumentPopupMenu);
BSS IMG_BIN N(LetterBackgroundImg)[0x3D86];
BSS IMG_BIN N(LetterBackgroundImg)[0x3D86] ALIGNED(16);
BSS PAL_BIN N(LetterBackgroundPal)[0x100];
BSS char N(static_pad)[0x8]; // padding
BSS IMG_BIN N(LetterPhotoImg)[0x3D86];

View File

@ -68,6 +68,7 @@ API_CALLABLE(N(LoadTitleImage)) {
return ApiStatus_DONE2;
}
#if !VERSION_PAL
API_CALLABLE(N(AwaitConfirmInput)) {
u32 pressedButtons = gGameStatusPtr->pressedButtons[0];
if (pressedButtons & (BUTTON_A | BUTTON_START)) {
@ -76,6 +77,7 @@ API_CALLABLE(N(AwaitConfirmInput)) {
return ApiStatus_BLOCK;
}
}
#endif
API_CALLABLE(N(SetTitlePrimAlpha)) {
TitlePrimAlpha = script->varTable[0];
@ -89,9 +91,9 @@ API_CALLABLE(N(SetTitlePosY)) {
EvtScript N(EVS_Scene_ShowTitle) = {
EVT_CALL(N(LoadTitleImage))
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_THREAD
EVT_CALL(MakeLerp, 0, 255, 100, EASING_CUBIC_OUT)
EVT_CALL(MakeLerp, 0, 255, 100 * DT, EASING_CUBIC_OUT)
EVT_LOOP(0)
EVT_CALL(UpdateLerp)
EVT_CALL(N(SetTitlePrimAlpha))
@ -101,7 +103,7 @@ EvtScript N(EVS_Scene_ShowTitle) = {
EVT_END_IF
EVT_END_LOOP
EVT_END_THREAD
EVT_CALL(MakeLerp, 106, 56, 100, EASING_CUBIC_OUT)
EVT_CALL(MakeLerp, 106, 56, 100 * DT, EASING_CUBIC_OUT)
EVT_LOOP(0)
EVT_CALL(UpdateLerp)
EVT_CALL(N(SetTitlePosY))
@ -110,8 +112,8 @@ EvtScript N(EVS_Scene_ShowTitle) = {
EVT_BREAK_LOOP
EVT_END_IF
EVT_END_LOOP
EVT_WAIT(30)
EVT_CALL(MakeLerp, 255, 0, 50, EASING_QUADRATIC_IN)
EVT_WAIT(30 * DT)
EVT_CALL(MakeLerp, 255, 0, 50 * DT, EASING_QUADRATIC_IN)
EVT_LOOP(0)
EVT_CALL(UpdateLerp)
EVT_CALL(N(SetTitlePrimAlpha))
@ -120,9 +122,9 @@ EvtScript N(EVS_Scene_ShowTitle) = {
EVT_BREAK_LOOP
EVT_END_IF
EVT_END_LOOP
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_CALL(GotoMapSpecial, EVT_PTR("kmr_22"), kmr_22_ENTRY_0, TRANSITION_6)
EVT_WAIT(100)
EVT_WAIT(100 * DT)
EVT_RETURN
EVT_END
};

View File

@ -4,11 +4,25 @@
BSS EffectInstance* N(ChapterEffect);
BSS s32 N(ChapterEffectTime);
s16 N(AnimTextOffsets)[] = {
#if VERSION_PAL
#define CHUNK_SIZE (8)
#else
#define CHUNK_SIZE (10)
#endif
s16 N(AnimTextOffsets)[CHUNK_SIZE * 2] = {
#if VERSION_PAL
310, 270, 240, 210,
180, 150, 120, 100,
80, 50, 24, 12,
5, 3, 2, 1,
#else
310, 290, 270, 250, 230,
210, 190, 170, 150, 130,
110, 90, 70, 50, 32,
16, 8, 4, 2, 1,
#endif
};
API_CALLABLE(N(ManageEffects)) {
@ -29,7 +43,7 @@ API_CALLABLE(N(ManageEffects)) {
x = xOffset + 117;
if (N(ChapterEffectTime) >= 0) {
if (N(ChapterEffectTime) < 20) {
if (N(ChapterEffectTime) < 2 * CHUNK_SIZE) {
x -= N(AnimTextOffsets)[N(ChapterEffectTime)];
}
} else {
@ -40,9 +54,9 @@ API_CALLABLE(N(ManageEffects)) {
N(ChapterEffect)->data.chapterChange->chapterPos.y = y;
x = xOffset + 117;
if (N(ChapterEffectTime) >= 10) {
if (N(ChapterEffectTime) < 30) {
y -= N(AnimTextOffsets)[N(ChapterEffectTime) - 10];
if (N(ChapterEffectTime) >= CHUNK_SIZE) {
if (N(ChapterEffectTime) < 3 * CHUNK_SIZE) {
y -= N(AnimTextOffsets)[N(ChapterEffectTime) - CHUNK_SIZE];
}
} else {
y = -252;
@ -51,9 +65,9 @@ API_CALLABLE(N(ManageEffects)) {
N(ChapterEffect)->data.chapterChange->endOfPos.y = y;
x = 280;
if (N(ChapterEffectTime) >= 20) {
if (N(ChapterEffectTime) < 40) {
x += N(AnimTextOffsets)[N(ChapterEffectTime) - 20];
if (N(ChapterEffectTime) >= 2 * CHUNK_SIZE) {
if (N(ChapterEffectTime) < 4 * CHUNK_SIZE) {
x += N(AnimTextOffsets)[N(ChapterEffectTime) - 2 * CHUNK_SIZE];
}
} else {
x = 590;

View File

@ -468,23 +468,23 @@ EvtScript N(EVS_Scene_EndOfChapter) = {
EVT_END_THREAD
EVT_WAIT(1)
EVT_THREAD
EVT_CALL(N(AddCardAngularVelocity), 10)
EVT_CALL(N(AddCardAngularVelocity), 10 / DT)
EVT_END_THREAD
EVT_THREAD
EVT_CALL(N(AccelerateCardSpin), 20, 150)
EVT_CALL(N(AccelerateCardSpin), 20, 150 * DT)
EVT_END_THREAD
EVT_CALL(N(MakeCardFloatUpward), 5, 0, 60, 150)
EVT_WAIT(30)
EVT_CALL(N(ShowRadialShimmer), 1, 120)
EVT_CALL(N(FadeInSpiritNpc), 60)
EVT_CALL(N(MakeCardFloatUpward), 5, 0, 60, 150 * DT)
EVT_WAIT(30)
EVT_CALL(N(ShowRadialShimmer), 1, 120 * DT)
EVT_CALL(N(FadeInSpiritNpc), 60 * DT)
EVT_WAIT(30 * DT)
EVT_CALL(N(FlashScreenWhite))
EVT_CALL(N(SpinDownStarSpirit), 1800, 100)
EVT_CALL(N(SpinDownStarSpirit), 1800, 100 * DT)
EVT_CALL(N(EndOfChapterBounceIn), 36, 0, 55, 60)
EVT_THREAD
EVT_CALL(N(AddCardAngularVelocity), 0)
EVT_END_THREAD
EVT_WAIT(60)
EVT_WAIT(60 * DT)
EVT_SET(MF_Unk_0B, TRUE)
EVT_WAIT(1)
EVT_CALL(SetNpcAnimation, NPC_StarSpirit, ENEMY_ANIM_8)
@ -510,7 +510,7 @@ EvtScript N(EVS_Scene_EndOfChapter) = {
EVT_END_SWITCH
EVT_CALL(ShowMessageAtScreenPos, LVar1, 160, 40)
EVT_CALL(N(ShowMessagesBehindCurtains))
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_SET(AF_JAN01_TreeDrop_StarPiece, TRUE)
EVT_RETURN
EVT_END

View File

@ -31,34 +31,34 @@ EvtScript N(EVS_Scene_ToadTownGreeting) = {
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_THREAD
EVT_WAIT(35)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(2.1))
EVT_WAIT(35 * DT)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(2.1 / DT))
EVT_CALL(UseSettingsFrom, CAM_DEFAULT, -225, 0, -300)
EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(300.0))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(InterpNpcYaw, NPC_Toad_04, 230, 0)
EVT_CALL(SetNpcJumpscale, NPC_Toad_04, EVT_FLOAT(1.5))
EVT_CALL(GetNpcPos, NPC_Toad_04, LVar0, LVar1, LVar2)
EVT_CALL(NpcJump0, NPC_Toad_04, LVar0, LVar1, LVar2, 5)
EVT_WAIT(10)
EVT_CALL(NpcJump0, NPC_Toad_04, LVar0, LVar1, LVar2, 5 * DT)
EVT_WAIT(10 * DT)
EVT_CALL(SetNpcAnimation, NPC_Toad_04, ANIM_Toad_Red_Run)
EVT_CALL(NpcMoveTo, NPC_Toad_04, -185, -295, 15)
EVT_CALL(NpcMoveTo, NPC_Toad_04, -185, -295, 15 * DT)
EVT_CALL(SetNpcAnimation, NPC_Toad_04, ANIM_Toad_Red_Idle)
EVT_END_THREAD
EVT_WAIT(2)
EVT_CALL(PlayerMoveTo, -225, -300, 80)
EVT_CALL(SetPlayerPos, -225, 0, -300)
EVT_WAIT(50)
EVT_WAIT(50 * DT)
EVT_THREAD
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_MarioW2_SpeakUp)
EVT_END_THREAD
EVT_CALL(SpeakToPlayer, NPC_Toad_04, ANIM_Toad_Red_Talk, ANIM_Toad_Red_Idle, 0, MSG_MAC_Gate_007E)
EVT_CALL(DisablePlayerInput, FALSE)
EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(400.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0 / DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0)

View File

@ -54,38 +54,38 @@ EvtScript N(EVS_Scene_Intro) = {
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_THREAD
EVT_EXEC_WAIT(N(EVS_PlayerExitPipe_Intro))
EVT_WAIT(10)
EVT_CALL(func_802D1270, -60, -320, EVT_FLOAT(4.0))
EVT_WAIT(63)
EVT_CALL(func_802D1270, 80, -60, EVT_FLOAT(4.0))
EVT_CALL(func_802D1270, 180, 0, EVT_FLOAT(4.0))
EVT_CALL(func_802D1270, 650, 0, EVT_FLOAT(4.0))
EVT_WAIT(10 * DT)
EVT_CALL(func_802D1270, -60, -320, EVT_FLOAT(4.0 / DT))
EVT_WAIT(63 * DT)
EVT_CALL(func_802D1270, 80, -60, EVT_FLOAT(4.0 / DT))
EVT_CALL(func_802D1270, 180, 0, EVT_FLOAT(4.0 / DT))
EVT_CALL(func_802D1270, 650, 0, EVT_FLOAT(4.0 / DT))
EVT_END_THREAD
EVT_THREAD
EVT_WAIT(70)
EVT_WAIT(70 * DT)
EVT_EXEC_WAIT(N(EVS_LuigiExitPipe_Intro))
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SetNpcFlagBits, NPC_Luigi_Intro, NPC_FLAG_GRAVITY, TRUE)
EVT_CALL(SetNpcAnimation, NPC_Luigi_Intro, ANIM_Luigi_Run)
EVT_CALL(SetNpcSpeed, NPC_Luigi_Intro, EVT_FLOAT(4.0))
EVT_CALL(SetNpcSpeed, NPC_Luigi_Intro, EVT_FLOAT(4.0 / DT))
EVT_CALL(NpcMoveTo, NPC_Luigi_Intro, 80, -60, 0)
EVT_CALL(NpcMoveTo, NPC_Luigi_Intro, 180, 0, 0)
EVT_CALL(NpcMoveTo, NPC_Luigi_Intro, 650, 0, 0)
EVT_END_THREAD
EVT_WAIT(70)
EVT_WAIT(70 * DT)
EVT_CALL(SetPanTarget, CAM_DEFAULT, -60, 0, -320)
EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(600.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(2.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(2.0 / DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 400, 0, 0)
EVT_CALL(SetPanTarget, CAM_DEFAULT, 400, 0, 0)
EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(450.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(0.5))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(0.5 / DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_CALL(GotoMap, EVT_PTR("mac_01"), mac_01_ENTRY_4)
EVT_WAIT(100)
EVT_WAIT(100 * DT)
EVT_CALL(DisablePlayerInput, FALSE)
EVT_RETURN
EVT_END

View File

@ -72,6 +72,10 @@ EvtScript N(EVS_Main) = {
EVT_SET(GB_WorldLocation, LOCATION_TOAD_TOWN)
EVT_CALL(SetSpriteShading, SHADING_NONE)
EVT_SETUP_CAMERA_NO_LEAD()
#if VERSION_PAL
EVT_CALL(GetLanguage, LocalVar(0))
EVT_CALL(SetModelTexVariant, 10, LocalVar(0))
#endif
EVT_IF_GE(GB_StoryProgress, STORY_CH0_KAMMY_RETURNED_TO_BOWSER)
EVT_SET(GF_MAP_ToadTown, TRUE)
EVT_END_IF

View File

@ -26,13 +26,13 @@ EvtScript N(EVS_Scene_IntroWalking) = {
EVT_CALL(SetNpcPos, NPC_Luigi, -460, 0, 0)
EVT_CALL(SetNpcYaw, NPC_Luigi, 90)
EVT_THREAD
EVT_CALL(func_802D1270, -100, 0, EVT_FLOAT(4.0))
EVT_CALL(func_802D1270, -25, -25, EVT_FLOAT(4.0))
EVT_CALL(func_802D1270, 0, -100, EVT_FLOAT(4.0))
EVT_CALL(func_802D1270, 0, -400, EVT_FLOAT(4.0))
EVT_CALL(func_802D1270, -100, 0, EVT_FLOAT(4.0 / DT))
EVT_CALL(func_802D1270, -25, -25, EVT_FLOAT(4.0 / DT))
EVT_CALL(func_802D1270, 0, -100, EVT_FLOAT(4.0 / DT))
EVT_CALL(func_802D1270, 0, -400, EVT_FLOAT(4.0 / DT))
EVT_END_THREAD
EVT_THREAD
EVT_CALL(SetNpcSpeed, NPC_Luigi, EVT_FLOAT(4.0))
EVT_CALL(SetNpcSpeed, NPC_Luigi, EVT_FLOAT(4.0 / DT))
EVT_CALL(SetNpcAnimation, NPC_Luigi, ANIM_Luigi_Run)
EVT_CALL(NpcMoveTo, NPC_Luigi, -100, 0, 0)
EVT_CALL(SetNpcAnimation, NPC_Luigi, ANIM_Luigi_RunBack)
@ -42,7 +42,7 @@ EvtScript N(EVS_Scene_IntroWalking) = {
EVT_CALL(SetNpcAnimation, NPC_Luigi, ANIM_Luigi_IdleBack)
EVT_END_THREAD
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0))
EVT_CALL(MakeLerp, 300, 400, 100, EASING_LINEAR)
EVT_CALL(MakeLerp, 300, 400, 100 * DT, EASING_LINEAR)
EVT_LOOP(0)
EVT_CALL(UpdateLerp)
EVT_CALL(GetPlayerPos, LVar2, LVar3, LVar4)
@ -54,9 +54,9 @@ EvtScript N(EVS_Scene_IntroWalking) = {
EVT_END_IF
EVT_END_LOOP
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0)
EVT_WAIT(75)
EVT_WAIT(75 * DT)
EVT_CALL(GotoMap, EVT_PTR("osr_00"), osr_00_ENTRY_4)
EVT_WAIT(100)
EVT_WAIT(100 * DT)
EVT_CALL(DisablePlayerInput, FALSE)
EVT_RETURN
EVT_END

View File

@ -117,6 +117,10 @@ EvtScript N(EVS_Main) = {
EVT_CALL(SetCamBGColor, CAM_DEFAULT, 0, 0, 0)
EVT_CALL(SetCamEnabled, CAM_DEFAULT, TRUE)
EVT_CALL(SetCamLeadPlayer, CAM_DEFAULT, FALSE)
#if VERSION_PAL
EVT_CALL(GetLanguage, LocalVar(0))
EVT_CALL(SetModelTexVariant, 68, LocalVar(0))
#endif
EVT_SET(AF_MAC_0E, FALSE)
EVT_SET(AF_MAC_0F, FALSE)
EVT_SET(AF_MAC_10, FALSE)

View File

@ -413,14 +413,14 @@ EvtScript N(EVS_MerlonBargeOut) = {
EVT_WAIT(1)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Hurt)
EVT_CALL(SetPlayerJumpscale, EVT_FLOAT(1.0))
EVT_CALL(PlayerJump1, -222, 20, -158, 8)
EVT_WAIT(5)
EVT_CALL(PlayerJump1, -222, 20, -158, 8 * DT)
EVT_WAIT(5 * DT)
EVT_CALL(SetPlayerFlagBits, PS_FLAG_NO_FLIPPING, FALSE)
EVT_CALL(N(KnockDownPlayerB), 1, 37)
EVT_CALL(N(KnockDownPlayerD), -215, 20, -158)
EVT_WAIT(1)
EVT_CALL(SetPlayerPos, -215, 1000, -158)
EVT_CALL(MakeLerp, 0, 90, 10, EASING_QUADRATIC_IN)
EVT_CALL(MakeLerp, 0, 90, 10 * DT, EASING_QUADRATIC_IN)
EVT_LOOP(0)
EVT_CALL(UpdateLerp)
EVT_CALL(N(KnockDownPlayerE), LVar0, 0, 0)
@ -432,16 +432,16 @@ EvtScript N(EVS_MerlonBargeOut) = {
EVT_CALL(N(KnockDownPlayerD), -215, 21, -158)
EVT_CALL(PlaySoundAtPlayer, SOUND_162, SOUND_SPACE_MODE_0)
EVT_END_THREAD
EVT_WAIT(50)
EVT_WAIT(50 * DT)
EVT_CALL(SetNpcPos, NPC_Merlon, -241, 20, -270)
EVT_CALL(SetNpcAnimation, NPC_Merlon, ANIM_Merlon_Walk)
EVT_CALL(NpcMoveTo, NPC_Merlon, -168, -198, 20)
EVT_CALL(NpcMoveTo, NPC_Merlon, -168, -198, 20 * DT)
EVT_CALL(SetNpcAnimation, NPC_Merlon, ANIM_Merlon_Idle)
EVT_CALL(GetAngleToPlayer, NPC_Merlon, LVar0)
EVT_CALL(InterpNpcYaw, NPC_Merlon, LVar0, 5)
EVT_CALL(SpeakToPlayer, NPC_Merlon, ANIM_Merlon_Talk, ANIM_Merlon_Idle, 0, MSG_MAC_Plaza_0021)
EVT_CALL(N(KnockDownPlayerD), -215, 20, -158)
EVT_CALL(MakeLerp, 90, 0, 15, EASING_QUADRATIC_OUT)
EVT_CALL(MakeLerp, 90, 0, 15 * DT, EASING_QUADRATIC_OUT)
EVT_LOOP(0)
EVT_CALL(UpdateLerp)
EVT_CALL(N(KnockDownPlayerE), LVar0, 0, 0)
@ -456,21 +456,21 @@ EvtScript N(EVS_MerlonBargeOut) = {
EVT_CALL(SetPlayerActionState, ACTION_STATE_JUMP)
EVT_CALL(SetPlayerJumpscale, EVT_FLOAT(1.0))
EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2)
EVT_CALL(PlayerJump, LVar0, LVar1, LVar2, 15)
EVT_CALL(PlayerJump, LVar0, LVar1, LVar2, 15 * DT)
EVT_CALL(SetPlayerActionState, ACTION_STATE_LAND)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_Merlon, ANIM_Merlon_Talk, ANIM_Merlon_Idle, 0, MSG_MAC_Plaza_0022)
EVT_THREAD
EVT_CALL(SetNpcAnimation, NPC_Merlon, ANIM_Merlon_Walk)
EVT_CALL(NpcMoveTo, NPC_Merlon, -275, -305, 30)
EVT_CALL(NpcMoveTo, NPC_Merlon, -275, -305, 30 * DT)
EVT_CALL(SetNpcAnimation, NPC_Merlon, ANIM_Merlon_Idle)
EVT_CALL(SetNpcPos, NPC_Merlon, -337, 20, -360)
EVT_CALL(SetNpcYaw, NPC_Merlon, 135)
EVT_END_THREAD
EVT_CALL(PlayerMoveTo, -168, -198, 20)
EVT_CALL(PlayerMoveTo, -275, -305, 30)
EVT_CALL(PlayerMoveTo, -168, -198, 20 * DT)
EVT_CALL(PlayerMoveTo, -275, -305, 30 * DT)
EVT_EXEC(N(D_8024E7F0_80F070))
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(SetNpcPos, NPC_PARTNER, -240, 20, -284)
EVT_CALL(N(func_802447E0_805060))
EVT_THREAD
@ -484,32 +484,32 @@ EvtScript N(EVS_MerlonBargeOut) = {
EVT_CALL(UseSettingsFrom, CAM_DEFAULT, -250, 20, -280)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(N(func_80244848_8050C8))
EVT_CALL(InterpNpcYaw, NPC_Merlon, 135, 5)
EVT_CALL(SpeakToPlayer, NPC_Merlon, ANIM_Merlon_Talk, ANIM_Merlon_Idle, 0, MSG_MAC_Plaza_0023)
EVT_CALL(N(func_802447E0_805060))
EVT_WAIT(60)
EVT_WAIT(60 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_MarioW2_SleepStanding)
EVT_THREAD
EVT_CALL(N(func_80244848_8050C8))
EVT_END_THREAD
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(ContinueSpeech, NPC_Merlon, ANIM_Merlon_Talk, ANIM_Merlon_Idle, 0, MSG_MAC_Plaza_0024)
EVT_CALL(SetPlayerAnimation, ANIM_MarioW2_JoltAwake)
EVT_WAIT(10)
EVT_CALL(SetPlayerAnimation, ANIM_MarioW2_NodYesTwice)
EVT_WAIT(50)
EVT_WAIT(50 * DT)
EVT_CALL(GetNpcPos, NPC_Merlon, LVar0, LVar1, LVar2)
EVT_CALL(SetCamType, CAM_DEFAULT, 0, FALSE)
EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2)
EVT_CALL(SetCamDistance, CAM_DEFAULT, 200)
EVT_CALL(SetCamPitch, CAM_DEFAULT, 15, -10)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0))
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_Merlon, ANIM_Merlon_Talk, ANIM_Merlon_Idle, 0, MSG_MAC_Plaza_0025)
EVT_SET(GB_StoryProgress, STORY_CH1_SPOKE_WITH_MERLIN)
EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(5.0))
EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(5.0 / DT))
EVT_THREAD
EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_CLEAR_BITS, COLLIDER_o336, COLLIDER_FLAGS_UPPER_MASK)
EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_o335, COLLIDER_FLAGS_UPPER_MASK)
@ -540,7 +540,7 @@ EvtScript N(EVS_Scene_KoopaBrosUnmasked) = {
EVT_CALL(func_802CF56C, 2)
EVT_THREAD
EVT_CALL(SetNpcAnimation, NPC_Merlon, ANIM_Merlon_Walk)
EVT_CALL(SetNpcSpeed, NPC_Merlon, EVT_FLOAT(4.0))
EVT_CALL(SetNpcSpeed, NPC_Merlon, EVT_FLOAT(4.0 / DT))
EVT_CALL(NpcMoveTo, NPC_Merlon, 410, 0, 0)
EVT_CALL(SetNpcAnimation, NPC_Merlon, ANIM_Merlon_Idle)
EVT_CALL(InterpNpcYaw, NPC_Merlon, 90, 0)
@ -556,19 +556,19 @@ EvtScript N(EVS_Scene_KoopaBrosUnmasked) = {
EVT_END_LOOP
EVT_CALL(SetCamProperties, CAM_DEFAULT, EVT_FLOAT(4.0), 410, 0, 0, 320, 15, -6)
EVT_THREAD
EVT_WAIT(5)
EVT_CALL(SetPlayerSpeed, EVT_FLOAT(3.0))
EVT_WAIT(5 * DT)
EVT_CALL(SetPlayerSpeed, EVT_FLOAT(3.0 / DT))
EVT_CALL(PlayerMoveTo, 460, 0, 0)
EVT_CALL(PlayerFaceNpc, NPC_Merlon, FALSE)
EVT_END_THREAD
EVT_CALL(SetNpcAnimation, NPC_Merlon, ANIM_Merlon_Idle)
EVT_CALL(SpeakToPlayer, NPC_Merlon, ANIM_Merlon_Talk, ANIM_Merlon_Idle, 0, MSG_MAC_Plaza_002B)
EVT_CALL(SetPanTarget, CAM_DEFAULT, 480, 0, 0)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(2.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(2.0 / DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_THREAD
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(PlayerFaceNpc, NPC_DarkToad_01, FALSE)
EVT_END_THREAD
EVT_CALL(SpeakToPlayer, NPC_DarkToad_03, ANIM_DarkToad_Yellow_Dismiss, ANIM_DarkToad_Yellow_Idle, 0, MSG_MAC_Plaza_002C)
@ -578,25 +578,25 @@ EvtScript N(EVS_Scene_KoopaBrosUnmasked) = {
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_THREAD
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(PlayerFaceNpc, NPC_Merlon, FALSE)
EVT_END_THREAD
EVT_CALL(SpeakToPlayer, NPC_Merlon, ANIM_Merlon_Talk, ANIM_Merlon_Idle, 0, MSG_MAC_Plaza_002E)
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(5.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(5.0 / DT))
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_CALL(PlaySoundAtNpc, NPC_Merlon, SOUND_209, SOUND_SPACE_MODE_0)
EVT_CALL(SetNpcAnimation, NPC_Merlon, ANIM_Merlon_Gather1)
EVT_CALL(GetNpcPos, NPC_Merlon, LVar0, LVar1, LVar2)
EVT_ADD(LVar1, 10)
EVT_PLAY_EFFECT(EFFECT_RADIAL_SHIMMER, 12, LVar0, LVar1, LVar2, 1, 50)
EVT_WAIT(60)
EVT_WAIT(60 * DT)
EVT_CALL(SetNpcAnimation, NPC_Merlon, ANIM_Merlon_RaiseArms)
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_PLAY_EFFECT(EFFECT_ENERGY_ORB_WAVE, 6, LVar0, LVar1, LVar2, 1, 20)
EVT_ADD(LVar1, 180)
EVT_CALL(PlayerFaceNpc, NPC_DarkToad_01, FALSE)
EVT_CALL(SetCamProperties, CAM_DEFAULT, EVT_FLOAT(4.0), 480, 0, 0, 320, 15, -6)
EVT_CALL(SetCamProperties, CAM_DEFAULT, EVT_FLOAT(4.0 / DT), 480, 0, 0, 320, 15, -6)
EVT_CALL(PushSong, SONG_KOOPA_BROS_THEME, 0)
EVT_THREAD
EVT_SET(MF_KoopaBrosSceneLock, FALSE)
@ -611,64 +611,64 @@ EvtScript N(EVS_Scene_KoopaBrosUnmasked) = {
EVT_PLAY_EFFECT(EFFECT_LIGHTNING_BOLT, 0, LVar0, LVar1, LVar2, LVar3, LVar4, LVar5, 2, 20)
EVT_PLAY_EFFECT(EFFECT_SHIMMER_BURST, 1, LVar3, LVar4, LVar5, 1, 30)
EVT_CALL(SetNpcAnimation, NPC_DarkToad_01, ANIM_DarkToad_Red_Hurt)
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(PlaySoundAtNpc, NPC_DarkToad_01, SOUND_2049, SOUND_SPACE_MODE_0)
EVT_CALL(GetNpcPos, NPC_DarkToad_01, LVar3, LVar4, LVar5)
EVT_CALL(SetNpcPos, NPC_DarkToad_01, LVar3, NPC_DISPOSE_POS_Y, LVar2)
EVT_CALL(SetNpcPos, NPC_KoopaBros_01, LVar3, LVar4, LVar5)
EVT_CALL(SetNpcJumpscale, NPC_KoopaBros_01, EVT_FLOAT(1.0))
EVT_CALL(SetNpcAnimation, NPC_KoopaBros_01, ANIM_KoopaBros_Red_Anim0B)
EVT_CALL(NpcJump0, NPC_KoopaBros_01, LVar3, LVar4, LVar5, 10)
EVT_CALL(NpcJump0, NPC_KoopaBros_01, LVar3, LVar4, LVar5, 10 * DT)
EVT_END_THREAD
EVT_THREAD
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(PlaySoundAtNpc, NPC_DarkToad_01, SOUND_20A, SOUND_SPACE_MODE_0)
EVT_CALL(GetNpcPos, NPC_DarkToad_02, LVar3, LVar4, LVar5)
EVT_ADD(LVar5, 5)
EVT_PLAY_EFFECT(EFFECT_LIGHTNING_BOLT, 0, LVar0, LVar1, LVar2, LVar3, LVar4, LVar5, 2, 20)
EVT_PLAY_EFFECT(EFFECT_SHIMMER_BURST, 1, LVar3, LVar4, LVar5, 1, 30)
EVT_CALL(SetNpcAnimation, NPC_DarkToad_02, ANIM_DarkToad_Black_Hurt)
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(PlaySoundAtNpc, NPC_DarkToad_02, SOUND_2049, SOUND_SPACE_MODE_0)
EVT_CALL(GetNpcPos, NPC_DarkToad_02, LVar3, LVar4, LVar5)
EVT_CALL(SetNpcPos, NPC_DarkToad_02, LVar3, NPC_DISPOSE_POS_Y, LVar2)
EVT_CALL(SetNpcPos, NPC_KoopaBros_02, LVar3, LVar4, LVar5)
EVT_CALL(SetNpcJumpscale, NPC_KoopaBros_02, EVT_FLOAT(1.0))
EVT_CALL(SetNpcAnimation, NPC_KoopaBros_02, ANIM_KoopaBros_Black_Anim0B)
EVT_CALL(NpcJump0, NPC_KoopaBros_02, LVar3, LVar4, LVar5, 10)
EVT_CALL(NpcJump0, NPC_KoopaBros_02, LVar3, LVar4, LVar5, 10 * DT)
EVT_END_THREAD
EVT_THREAD
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(PlaySoundAtNpc, NPC_DarkToad_01, SOUND_20A, SOUND_SPACE_MODE_0)
EVT_CALL(GetNpcPos, NPC_DarkToad_03, LVar3, LVar4, LVar5)
EVT_ADD(LVar5, 5)
EVT_PLAY_EFFECT(EFFECT_LIGHTNING_BOLT, 0, LVar0, LVar1, LVar2, LVar3, LVar4, LVar5, 2, 20)
EVT_PLAY_EFFECT(EFFECT_SHIMMER_BURST, 1, LVar3, LVar4, LVar5, 1, 30)
EVT_CALL(SetNpcAnimation, NPC_DarkToad_03, ANIM_DarkToad_Yellow_Hurt)
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(PlaySoundAtNpc, NPC_DarkToad_03, SOUND_2049, SOUND_SPACE_MODE_0)
EVT_CALL(GetNpcPos, NPC_DarkToad_03, LVar3, LVar4, LVar5)
EVT_CALL(SetNpcPos, NPC_DarkToad_03, LVar3, NPC_DISPOSE_POS_Y, LVar2)
EVT_CALL(SetNpcPos, NPC_KoopaBros_03, LVar3, LVar4, LVar5)
EVT_CALL(SetNpcJumpscale, NPC_KoopaBros_03, EVT_FLOAT(1.0))
EVT_CALL(SetNpcAnimation, NPC_KoopaBros_03, ANIM_KoopaBros_Yellow_Anim0B)
EVT_CALL(NpcJump0, NPC_KoopaBros_03, LVar3, LVar4, LVar5, 10)
EVT_CALL(NpcJump0, NPC_KoopaBros_03, LVar3, LVar4, LVar5, 10 * DT)
EVT_END_THREAD
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(PlaySoundAtNpc, NPC_DarkToad_01, SOUND_20A, SOUND_SPACE_MODE_0)
EVT_CALL(GetNpcPos, NPC_DarkToad_04, LVar3, LVar4, LVar5)
EVT_ADD(LVar5, 5)
EVT_PLAY_EFFECT(EFFECT_LIGHTNING_BOLT, 0, LVar0, LVar1, LVar2, LVar3, LVar4, LVar5, 2, 20)
EVT_PLAY_EFFECT(EFFECT_SHIMMER_BURST, 1, LVar3, LVar4, LVar5, 1, 30)
EVT_CALL(SetNpcAnimation, NPC_DarkToad_04, ANIM_DarkToad_Green_Hurt)
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(PlaySoundAtNpc, NPC_DarkToad_04, SOUND_2049, SOUND_SPACE_MODE_0)
EVT_CALL(GetNpcPos, NPC_DarkToad_04, LVar3, LVar4, LVar5)
EVT_CALL(SetNpcPos, NPC_DarkToad_04, LVar3, NPC_DISPOSE_POS_Y, LVar2)
EVT_CALL(SetNpcPos, NPC_KoopaBros_04, LVar3, LVar4, LVar5)
EVT_CALL(SetNpcJumpscale, NPC_KoopaBros_04, EVT_FLOAT(1.0))
EVT_CALL(SetNpcAnimation, NPC_KoopaBros_04, ANIM_KoopaBros_Green_Anim0B)
EVT_CALL(NpcJump0, NPC_KoopaBros_04, LVar3, LVar4, LVar5, 10)
EVT_CALL(NpcJump0, NPC_KoopaBros_04, LVar3, LVar4, LVar5, 10 * DT)
EVT_CALL(SetNpcAnimation, NPC_Merlon, ANIM_Merlon_Idle)
EVT_LOOP(0)
EVT_IF_EQ(MF_KoopaBrosSceneLock, TRUE)
@ -681,10 +681,10 @@ EvtScript N(EVS_Scene_KoopaBrosUnmasked) = {
EVT_CALL(SetNpcAnimation, NPC_KoopaBros_03, ANIM_KoopaBros_Yellow_Anim04)
EVT_CALL(SetNpcAnimation, NPC_KoopaBros_04, ANIM_KoopaBros_Green_Anim04)
EVT_CALL(SpeakToPlayer, NPC_Merlon, ANIM_Merlon_Talk, ANIM_Merlon_Idle, 0, MSG_MAC_Plaza_0030)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_KoopaBros_01, ANIM_KoopaBros_Red_Anim14, ANIM_KoopaBros_Red_Anim04, 0, MSG_MAC_Plaza_0031)
EVT_CALL(InterpNpcYaw, NPC_KoopaBros_01, 90, 0)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_KoopaBros_01, ANIM_KoopaBros_Red_Anim14, ANIM_KoopaBros_Red_Anim04, 5, MSG_MAC_Plaza_0032)
EVT_CALL(InterpNpcYaw, NPC_KoopaBros_01, 90, 0)
EVT_CALL(InterpNpcYaw, NPC_KoopaBros_02, 90, 0)
@ -694,27 +694,27 @@ EvtScript N(EVS_Scene_KoopaBrosUnmasked) = {
EVT_CALL(SetNpcAnimation, NPC_KoopaBros_02, ANIM_KoopaBros_Black_Anim03)
EVT_CALL(SetNpcAnimation, NPC_KoopaBros_03, ANIM_KoopaBros_Yellow_Anim03)
EVT_CALL(SetNpcAnimation, NPC_KoopaBros_04, ANIM_KoopaBros_Green_Anim03)
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_CALL(PlaySoundAtNpc, NPC_KoopaBros_03, SOUND_174, SOUND_SPACE_MODE_0)
EVT_THREAD
EVT_CALL(SetNpcSpeed, NPC_KoopaBros_01, EVT_FLOAT(8.0))
EVT_CALL(SetNpcSpeed, NPC_KoopaBros_01, EVT_FLOAT(8.0 / DT))
EVT_CALL(NpcMoveTo, NPC_KoopaBros_01, 700, 0, 0)
EVT_END_THREAD
EVT_THREAD
EVT_CALL(SetNpcSpeed, NPC_KoopaBros_02, EVT_FLOAT(8.0))
EVT_CALL(SetNpcSpeed, NPC_KoopaBros_02, EVT_FLOAT(8.0 / DT))
EVT_CALL(NpcMoveTo, NPC_KoopaBros_02, 700, 0, 0)
EVT_END_THREAD
EVT_THREAD
EVT_CALL(SetNpcSpeed, NPC_KoopaBros_03, EVT_FLOAT(8.0))
EVT_CALL(SetNpcSpeed, NPC_KoopaBros_03, EVT_FLOAT(8.0 / DT))
EVT_CALL(NpcMoveTo, NPC_KoopaBros_03, 700, 0, 0)
EVT_END_THREAD
EVT_WAIT(1)
EVT_CALL(SetNpcSpeed, NPC_KoopaBros_04, EVT_FLOAT(8.0))
EVT_CALL(SetNpcSpeed, NPC_KoopaBros_04, EVT_FLOAT(8.0 / DT))
EVT_CALL(NpcMoveTo, NPC_KoopaBros_04, 700, 0, 0)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(PopSong)
EVT_CALL(SetPanTarget, CAM_DEFAULT, 410, 0, 0)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(2.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(2.0 / DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_THREAD
@ -722,21 +722,25 @@ EvtScript N(EVS_Scene_KoopaBrosUnmasked) = {
EVT_CALL(PlayerFaceNpc, NPC_Merlon, FALSE)
EVT_END_THREAD
EVT_CALL(SpeakToPlayer, NPC_Merlon, ANIM_Merlon_Talk, ANIM_Merlon_Idle, 0, MSG_MAC_Plaza_0033)
EVT_CALL(SetNpcSpeed, NPC_Merlon, EVT_FLOAT(3.0))
EVT_CALL(SetNpcSpeed, NPC_Merlon, EVT_FLOAT(3.0 / DT))
EVT_CALL(GetNpcPos, NPC_Merlon, LVar0, LVar1, LVar2)
EVT_SET(LVar3, LVar0)
EVT_ADD(LVar3, -50)
EVT_CALL(SetNpcAnimation, NPC_Merlon, ANIM_Merlon_Walk)
EVT_CALL(NpcMoveTo, NPC_Merlon, LVar3, LVar2, 0)
EVT_CALL(SetNpcAnimation, NPC_Merlon, ANIM_Merlon_Idle)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SetNpcAnimation, NPC_Merlon, ANIM_Merlon_Walk)
EVT_CALL(NpcMoveTo, NPC_Merlon, LVar0, LVar2, 0)
EVT_CALL(SetNpcAnimation, NPC_Merlon, ANIM_Merlon_Idle)
EVT_CALL(SpeakToPlayer, NPC_Merlon, ANIM_Merlon_Talk, ANIM_Merlon_Idle, 0, MSG_MAC_Plaza_0034)
EVT_THREAD
EVT_WAIT(10)
EVT_WAIT(10 * DT)
#if VERSION_PAL
EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(1.6669921875))
#else
EVT_CALL(ResetCam, CAM_DEFAULT, 2)
#endif
EVT_END_THREAD
EVT_CALL(GetNpcPos, NPC_Merlon, LVar0, LVar1, LVar2)
EVT_ADD(LVar0, -150)
@ -777,7 +781,7 @@ EvtScript N(EVS_NpcInteract_Merlon) = {
EVT_END_CHILD_THREAD
EVT_CALL(SetNpcFlagBits, NPC_Merlon, NPC_FLAG_IGNORE_PLAYER_COLLISION, TRUE)
EVT_CALL(SetNpcAnimation, NPC_Merlon, ANIM_Merlon_Walk)
EVT_CALL(SetNpcSpeed, NPC_Merlon, EVT_FLOAT(4.0))
EVT_CALL(SetNpcSpeed, NPC_Merlon, EVT_FLOAT(4.0 / DT))
EVT_CALL(NpcMoveTo, NPC_Merlon, -350, -280, 0)
EVT_CALL(NpcMoveTo, NPC_Merlon, -230, -270, 0)
EVT_CALL(SetNpcAnimation, NPC_Merlon, ANIM_Merlon_Idle)
@ -927,13 +931,17 @@ EvtScript N(EVS_NpcInteract_DarkToad_01) = {
EVT_CALL(SpeakToPlayer, NPC_DarkToad_03, ANIM_DarkToad_Yellow_Talk, ANIM_DarkToad_Yellow_Idle, 0, MSG_MAC_Plaza_004F)
EVT_CALL(SpeakToPlayer, NPC_DarkToad_04, ANIM_DarkToad_Green_Talk, ANIM_DarkToad_Green_Idle, 0, MSG_MAC_Plaza_0050)
EVT_CASE_LT(STORY_CH1_TOLD_MERLIN_ABOUT_DARK_TOADS)
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(4.0), 0, 300, EVT_FLOAT(15.0), EVT_FLOAT(-7.5))
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(4.0 / DT), 0, 300, EVT_FLOAT(15.0), EVT_FLOAT(-7.5))
EVT_CALL(SpeakToPlayer, NPC_DarkToad_01, ANIM_DarkToad_Red_Talk, ANIM_DarkToad_Red_Idle, 0, MSG_MAC_Plaza_0051)
EVT_CALL(SpeakToPlayer, NPC_DarkToad_02, ANIM_DarkToad_Black_Talk, ANIM_DarkToad_Black_Idle, 0, MSG_MAC_Plaza_0052)
EVT_CALL(SpeakToPlayer, NPC_DarkToad_03, ANIM_DarkToad_Yellow_Talk, ANIM_DarkToad_Yellow_Idle, 0, MSG_MAC_Plaza_0053)
EVT_CALL(SpeakToPlayer, NPC_DarkToad_04, ANIM_DarkToad_Green_Talk, ANIM_DarkToad_Green_Idle, 0, MSG_MAC_Plaza_0054)
EVT_SET(GF_MAC01_Merlon_HintFromDarkToads, TRUE)
#if VERSION_PAL
EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(5.0 / DT))
#else
EVT_CALL(ResetCam, CAM_DEFAULT, 5)
#endif
EVT_END_SWITCH
EVT_RETURN
EVT_END
@ -993,20 +1001,28 @@ EvtScript N(EVS_Scene_MerlonAndNinji) = {
EVT_CALL(SetNpcPos, NPC_Ninji, -278, 20, -376)
EVT_CALL(SetNpcYaw, NPC_Ninji, 0)
EVT_WAIT(40)
EVT_CALL(SetPlayerSpeed, EVT_FLOAT(3.0))
EVT_CALL(SetPlayerSpeed, EVT_FLOAT(3.0 / DT))
EVT_CALL(PlayerMoveTo, -276, -305, 0)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_Merlon, ANIM_Merlon_Talk, ANIM_Merlon_Idle, 0, MSG_MAC_Plaza_0047)
EVT_CALL(NpcFacePlayer, NPC_Ninji, 5)
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_CALL(GetNpcPos, NPC_Ninji, LVar0, LVar1, LVar2)
#if VERSION_PAL
EVT_CALL(SetCamProperties, CAM_DEFAULT, EVT_FLOAT(4.0 / DT), LVar0, LVar1, LVar2, 250, 15, -9)
#else
EVT_CALL(SetCamProperties, CAM_DEFAULT, 4, LVar0, LVar1, LVar2, 250, 15, -9)
#endif
EVT_CALL(SpeakToPlayer, NPC_Ninji, ANIM_Ninji_Talk, ANIM_Ninji_Idle, 0, MSG_MAC_Plaza_0048)
EVT_CALL(GetNpcPos, NPC_Merlon, LVar0, LVar1, LVar2)
EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_Merlon, ANIM_Merlon_Talk, ANIM_Merlon_Idle, 0, MSG_MAC_Plaza_0049)
#if VERSION_PAL
EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(5.0 / DT))
#else
EVT_CALL(ResetCam, CAM_DEFAULT, 5)
#endif
EVT_CALL(SpeakToPlayer, NPC_Ninji, ANIM_Ninji_Talk, ANIM_Ninji_Idle, 0, MSG_MAC_Plaza_004A)
EVT_THREAD
EVT_CALL(SetNpcAnimation, NPC_Ninji, ANIM_Ninji_Walk)
@ -1015,7 +1031,7 @@ EvtScript N(EVS_Scene_MerlonAndNinji) = {
EVT_CALL(SetNpcPos, NPC_Ninji, NPC_DISPOSE_LOCATION)
EVT_END_THREAD
EVT_THREAD
EVT_WAIT(25)
EVT_WAIT(25 * DT)
EVT_CALL(PlaySoundAtCollider, COLLIDER_deilitud, SOUND_BASIC_DOOR_OPEN, SOUND_SPACE_MODE_0)
EVT_SET(LVar0, 0)
EVT_LOOP(10)
@ -1023,7 +1039,7 @@ EvtScript N(EVS_Scene_MerlonAndNinji) = {
EVT_CALL(RotateModel, MODEL_door, LVar0, 0, -1, 0)
EVT_WAIT(1)
EVT_END_LOOP
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_LOOP(10)
EVT_ADD(LVar0, -8)
EVT_CALL(RotateModel, MODEL_door, LVar0, 0, -1, 0)
@ -1031,7 +1047,7 @@ EvtScript N(EVS_Scene_MerlonAndNinji) = {
EVT_END_LOOP
EVT_CALL(PlaySoundAtCollider, COLLIDER_deilitud, SOUND_BASIC_DOOR_CLOSE, SOUND_SPACE_MODE_0)
EVT_END_THREAD
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(SpeakToPlayer, NPC_Merlon, ANIM_Merlon_Talk, ANIM_Merlon_Idle, 0, MSG_MAC_Plaza_004B)
EVT_SET(GB_StoryProgress, STORY_CH7_INVITED_TO_STARBORN_VALLEY)
EVT_CALL(DisablePlayerInput, FALSE)
@ -1274,7 +1290,7 @@ EvtScript N(EVS_NpcIdle_Toad_04) = {
EVT_CALL(WaitForPlayerInputEnabled)
EVT_CALL(DisablePlayerInput, TRUE)
EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2)
EVT_CALL(NpcJump0, NPC_SELF, LVar0, LVar1, LVar2, 10)
EVT_CALL(NpcJump0, NPC_SELF, LVar0, LVar1, LVar2, 10 * DT)
EVT_CALL(SpeakToPlayer, NPC_Toad_04, ANIM_Toad_Red_Talk, ANIM_Toad_Red_Idle, 0, MSG_MAC_Plaza_007D)
EVT_SET(GB_StoryProgress, STORY_CH0_RETURNED_TO_TOAD_TOWN)
EVT_CALL(DisablePlayerInput, FALSE)
@ -1954,23 +1970,23 @@ EvtScript N(EVS_NpcIdle_Twink) = {
EVT_END_LOOP
EVT_CALL(SetMusicTrack, 0, SONG_TWINK_THEME, 0, 8)
EVT_CALL(DisablePlayerInput, TRUE)
EVT_CALL(SetPlayerSpeed, EVT_FLOAT(3.0))
EVT_CALL(SetPlayerSpeed, EVT_FLOAT(3.0 / DT))
EVT_CALL(PlayerMoveTo, 500, -20, 0)
EVT_CALL(WaitForPlayerMoveToComplete)
EVT_CALL(InterpPlayerYaw, 270, 0)
EVT_CALL(ShowMessageAtScreenPos, MSG_MAC_Plaza_00DB, 160, 40)
EVT_LOOP(2)
EVT_CALL(InterpPlayerYaw, 90, 7)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(InterpPlayerYaw, 270, 7)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_END_LOOP
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(GetPlayerPos, LVar4, LVar5, LVar6)
EVT_SUBF(LVar4, EVT_FLOAT(50.0))
EVT_ADDF(LVar5, EVT_FLOAT(40.0))
EVT_CALL(InterpNpcYaw, NPC_Twink, 90, 0)
EVT_CALL(LoadPath, 35, EVT_PTR(N(FlightPath_TwinkArrive)), ARRAY_COUNT(N(FlightPath_TwinkArrive)), EASING_COS_IN_OUT)
EVT_CALL(LoadPath, 35 * DT, EVT_PTR(N(FlightPath_TwinkArrive)), ARRAY_COUNT(N(FlightPath_TwinkArrive)), EASING_COS_IN_OUT)
EVT_LOOP(0)
EVT_CALL(GetNextPathPos)
EVT_ADDF(LVar1, LVar4)
@ -1982,28 +1998,28 @@ EvtScript N(EVS_NpcIdle_Twink) = {
EVT_END_IF
EVT_END_LOOP
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_LookUp)
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(3.0), -10, -300, 15, -9)
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(3.0/ DT), -10, -300, 15, -9)
EVT_CALL(SpeakToPlayer, NPC_Twink, ANIM_Twink_Talk, ANIM_Twink_Idle, 0, MSG_MAC_Plaza_00DC)
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_MarioW2_SpeakUp)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_LookUp)
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_CALL(SetNpcJumpscale, NPC_Twink, EVT_FLOAT(1.0))
EVT_CALL(GetNpcPos, NPC_Twink, LVar0, LVar1, LVar2)
EVT_CALL(NpcJump0, NPC_Twink, LVar0, LVar1, LVar2, 10)
EVT_CALL(NpcJump0, NPC_Twink, LVar0, LVar1, LVar2, 10 * DT)
EVT_CALL(SpeakToPlayer, NPC_Twink, ANIM_Twink_Talk, ANIM_Twink_Idle, 0, MSG_MAC_Plaza_00DD)
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Chuckle)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_LookUp)
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(3.0), -40, -200, 15, -15)
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(3.0 / DT), -40, -200, 15, -15)
EVT_CALL(SpeakToPlayer, NPC_Twink, ANIM_Twink_Talk, ANIM_Twink_Idle, 0, MSG_MAC_Plaza_00DE)
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0)
EVT_CALL(InterpNpcYaw, NPC_Twink, 270, 0)
EVT_CALL(GetNpcPos, NPC_Twink, LVar4, LVar5, LVar6)
EVT_CALL(LoadPath, 35, EVT_PTR(N(FlightPath_TwinkDepart)), ARRAY_COUNT(N(FlightPath_TwinkDepart)), EASING_QUADRATIC_IN)
EVT_CALL(LoadPath, 35 * DT, EVT_PTR(N(FlightPath_TwinkDepart)), ARRAY_COUNT(N(FlightPath_TwinkDepart)), EASING_QUADRATIC_IN)
EVT_LOOP(0)
EVT_CALL(GetNextPathPos)
EVT_ADD(LVar1, LVar4)

View File

@ -266,7 +266,11 @@ EvtScript N(EVS_FadeOutFlowerGateGlowAlpha) = {
};
EvtScript N(EVS_Scene_FlowerGateAppears) = {
#if VERSION_PAL
EVT_CALL(SetCamProperties, CAM_DEFAULT, EVT_FLOAT(1.0 / DT), 266, 27, 373, 300, 15, -6)
#else
EVT_CALL(SetCamProperties, CAM_DEFAULT, 1, 266, 27, 373, 300, 15, -6)
#endif
EVT_EXEC(N(EVS_PlayFlowerGateSong))
EVT_PLAY_EFFECT(EFFECT_LIGHT_RAYS, 0, 266, 50, 338, 1, LVar9)
EVT_CALL(PlaySoundAtCollider, COLLIDER_deilitf, SOUND_2A2, SOUND_SPACE_MODE_0)
@ -281,7 +285,7 @@ EvtScript N(EVS_Scene_FlowerGateAppears) = {
EVT_END_THREAD
EVT_SET(LVar0, 3)
EVT_EXEC_GET_TID(N(EVS_ModulateFlowerGateGlowAlpha), LVar2)
EVT_WAIT(30)
EVT_WAIT(30 / DT)
EVT_CALL(EnableModel, MODEL_r_door, TRUE)
EVT_CALL(PlaySoundAtCollider, COLLIDER_deilitf, SOUND_2A3, SOUND_SPACE_MODE_0)
EVT_CALL(MakeLerp, 0, 3060, 80, EASING_LINEAR)
@ -309,7 +313,11 @@ EvtScript N(EVS_Scene_FlowerGateAppears) = {
EVT_END_IF
EVT_END_LOOP
EVT_EXEC_WAIT(N(EVS_FadeOutFlowerGateGlowAlpha))
#if VERSION_PAL
EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(1 * DT))
#else
EVT_CALL(ResetCam, CAM_DEFAULT, 1)
#endif
EVT_EXEC(N(EVS_SetupMusic))
EVT_RETURN
EVT_END
@ -331,10 +339,14 @@ s32 N(ItemList_MagicalSeeds)[] = {
EvtScript N(EVS_MinhT_PlantSeed) = {
EVT_CALL(SetNpcFlagBits, NPC_SELF, NPC_FLAG_IGNORE_PLAYER_COLLISION, TRUE)
EVT_CALL(SpeakToPlayer, NPC_MinhT, ANIM_MinhT_Talk, ANIM_MinhT_Idle, 0, LVar4)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 266, 27, 373)
EVT_CALL(SetPanTarget, CAM_DEFAULT, 266, 27, 373)
#if VERSION_PAL
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(1.0 / DT))
#else
EVT_CALL(SetCamSpeed, CAM_DEFAULT, 1)
#endif
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(InterpNpcYaw, NPC_SELF, 90, 1)
EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_MinhT_Run)
@ -354,7 +366,7 @@ EvtScript N(EVS_MinhT_PlantSeed) = {
EVT_CALL(NpcMoveTo, NPC_SELF, 330, 407, 0)
EVT_END_SWITCH
EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_MinhT_Cheer)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_2A1, SOUND_SPACE_MODE_0)
EVT_SWITCH(LVar5)
EVT_CASE_EQ(0)

View File

@ -37,7 +37,7 @@ EvtScript N(EVS_NpcIdle_Bootler) = {
EVT_THREAD
EVT_CALL(SetNpcPos, NPC_SELF, 430, 60, -40)
EVT_CALL(SetNpcAnimation, NPC_Bootler, ANIM_Bootler_Walk)
EVT_CALL(SetNpcSpeed, NPC_SELF, EVT_FLOAT(3.0))
EVT_CALL(SetNpcSpeed, NPC_SELF, EVT_FLOAT(3.0 / DT))
EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_293, SOUND_SPACE_MODE_0)
EVT_CALL(NpcMoveTo, NPC_SELF, 580, -40, 0)
EVT_CALL(SetNpcPos, NPC_SELF, NPC_DISPOSE_LOCATION)
@ -46,14 +46,14 @@ EvtScript N(EVS_NpcIdle_Bootler) = {
EVT_CALL(SetPanTarget, CAM_DEFAULT, 430, 1, 35)
EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(275.0))
EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(18.5), EVT_FLOAT(-10.5))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0 / DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_CALL(SetPlayerSpeed, EVT_FLOAT(4.0))
EVT_CALL(SetPlayerSpeed, EVT_FLOAT(4.0 / DT))
EVT_CALL(PlayerMoveTo, 430, -40, 0)
EVT_CALL(InterpPlayerYaw, 315, 0)
EVT_CALL(DisablePartnerAI, 0)
EVT_CALL(NpcMoveTo, NPC_PARTNER, 455, -40, 20)
EVT_CALL(NpcMoveTo, NPC_PARTNER, 455, -40, 20 * DT)
EVT_CALL(InterpNpcYaw, NPC_PARTNER, 315, 0)
EVT_CALL(EnablePartnerAI)
EVT_CALL(SpeakToPlayer, NPC_FiceT, ANIM_FiceT_Afraid, ANIM_FiceT_Afraid, 0, MSG_MAC_Bridge_0023)
@ -64,22 +64,22 @@ EvtScript N(EVS_NpcIdle_Bootler) = {
EVT_SET(LVar1, MSG_MAC_Bridge_0025)
EVT_END_IF
EVT_CALL(ContinueSpeech, NPC_FiceT, ANIM_FiceT_Afraid, ANIM_FiceT_Afraid, 0, LVar1)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_SETF(LVar0, EVT_FLOAT(0.0))
EVT_CALL(SetNpcAnimation, NPC_Bootler, ANIM_Bootler_Spook)
EVT_CALL(func_802CFD30, NPC_SELF, FOLD_TYPE_7, 0, 0, 0, 0)
EVT_CALL(SetNpcYaw, NPC_SELF, 270)
EVT_CALL(SetNpcPos, NPC_SELF, 500, 50, 30)
EVT_EXEC_WAIT(N(D_8024ACA4_82DF64))
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_FiceT, ANIM_FiceT_Afraid, ANIM_FiceT_Afraid, 5, MSG_MAC_Bridge_0026)
EVT_EXEC_WAIT(N(D_8024ACA4_82DF64))
EVT_CALL(InterpPlayerYaw, 90, 0)
EVT_CALL(InterpNpcYaw, NPC_PARTNER, 90, 0)
EVT_WAIT(25)
EVT_WAIT(25 * DT)
EVT_CALL(PlaySoundAtPlayer, SOUND_263, SOUND_SPACE_MODE_0)
EVT_CALL(ShowEmote, 0, EMOTE_QUESTION, 0, 30, EMOTER_PLAYER, 0, 0, 0, 0)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetNpcScale, NPC_Bootler, EVT_FLOAT(2.0), EVT_FLOAT(2.0), EVT_FLOAT(2.0))
EVT_CALL(SetNpcYaw, NPC_SELF, 90)
EVT_CALL(SetNpcPos, NPC_SELF, 360, 20, 30)
@ -88,31 +88,31 @@ EvtScript N(EVS_NpcIdle_Bootler) = {
EVT_EXEC_WAIT(N(D_8024ACA4_82DF64))
EVT_CALL(InterpPlayerYaw, 270, 0)
EVT_CALL(InterpNpcYaw, NPC_PARTNER, 270, 0)
EVT_WAIT(25)
EVT_WAIT(25 * DT)
EVT_CALL(PlaySoundAtPlayer, SOUND_263, SOUND_SPACE_MODE_0)
EVT_CALL(ShowEmote, 0, EMOTE_QUESTION, 0, 30, EMOTER_PLAYER, 0, 0, 0, 0)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetNpcAnimation, NPC_Bootler, ANIM_Bootler_Walk)
EVT_CALL(SetNpcScale, NPC_Bootler, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0))
EVT_CALL(SetNpcPos, NPC_SELF, 480, 70, 10)
EVT_EXEC_WAIT(N(D_8024ACA4_82DF64))
EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_293, SOUND_SPACE_MODE_0)
EVT_CALL(NpcFlyTo, NPC_SELF, 550, 40, 10, 40, 10, EASING_LINEAR)
EVT_CALL(NpcFlyTo, NPC_SELF, 550, 40, 10, 40 * DT, 10, EASING_LINEAR)
EVT_CALL(SetNpcPos, NPC_SELF, NPC_DISPOSE_LOCATION)
EVT_CALL(SpeakToPlayer, NPC_FiceT, ANIM_FiceT_Afraid, ANIM_FiceT_Afraid, 5, MSG_MAC_Bridge_0028)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(InterpPlayerYaw, 90, 0)
EVT_CALL(InterpNpcYaw, NPC_PARTNER, 90, 0)
EVT_WAIT(25)
EVT_WAIT(25 * DT)
EVT_CALL(PlaySoundAtPlayer, SOUND_263, SOUND_SPACE_MODE_0)
EVT_CALL(ShowEmote, 0, EMOTE_QUESTION, 0, 30, EMOTER_PLAYER, 0, 0, 0, 0)
EVT_WAIT(40)
EVT_WAIT(40 * DT)
EVT_CALL(InterpPlayerYaw, 270, 0)
EVT_CALL(InterpNpcYaw, NPC_PARTNER, 270, 0)
EVT_CALL(SpeakToPlayer, NPC_FiceT, ANIM_FiceT_Afraid, ANIM_FiceT_Afraid, 0, MSG_MAC_Bridge_0029)
EVT_EXEC(N(EVS_SetupMusicTriggers))
EVT_SET(GB_StoryProgress, STORY_CH3_SAW_BOO_ENTER_FOREST)
EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(4.0))
EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(4.0 / DT))
EVT_CALL(DisablePlayerInput, FALSE)
EVT_RETURN
EVT_END

View File

@ -547,18 +547,18 @@ API_CALLABLE(N(TayceT_MakeItemList)) {
EvtScript N(EVS_Scene_TayceTCooking) = {
EVT_CALL(SetNpcFlagBits, NPC_TayceT, NPC_FLAG_IGNORE_PLAYER_COLLISION, TRUE)
EVT_CALL(SetNpcAnimation, NPC_TayceT, ANIM_TayceT_Walk)
EVT_CALL(NpcMoveTo, NPC_TayceT, -186, -381, 20)
EVT_CALL(NpcMoveTo, NPC_TayceT, -220, -425, 30)
EVT_CALL(NpcMoveTo, NPC_TayceT, -186, -381, 20 * DT)
EVT_CALL(NpcMoveTo, NPC_TayceT, -220, -425, 30 * DT)
EVT_CALL(SetNpcAnimation, NPC_TayceT, ANIM_TayceT_Cooking)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_TayceT, ANIM_TayceT_Cooking, ANIM_TayceT_Cooking, 5, MSG_MAC_Bridge_000E)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(SetNpcAnimation, NPC_TayceT, ANIM_TayceT_TurnBack)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetNpcYaw, NPC_TayceT, 90)
EVT_CALL(SetNpcAnimation, NPC_TayceT, ANIM_TayceT_Walk)
EVT_CALL(NpcMoveTo, NPC_TayceT, -186, -381, 20)
EVT_CALL(NpcMoveTo, NPC_TayceT, -236, -318, 20)
EVT_CALL(NpcMoveTo, NPC_TayceT, -186, -381, 20 * DT)
EVT_CALL(NpcMoveTo, NPC_TayceT, -236, -318, 20 * DT)
EVT_CALL(SetNpcAnimation, NPC_TayceT, ANIM_TayceT_Idle)
EVT_CALL(SetNpcFlagBits, NPC_TayceT, NPC_FLAG_IGNORE_PLAYER_COLLISION, FALSE)
EVT_RETURN

View File

@ -60,6 +60,10 @@ EvtScript N(EVS_Main) = {
EVT_SET(GB_WorldLocation, LOCATION_TOAD_TOWN)
EVT_CALL(SetSpriteShading, SHADING_NONE)
EVT_SETUP_CAMERA_NO_LEAD()
#if VERSION_PAL
EVT_CALL(GetLanguage, LocalVar(0))
EVT_CALL(SetModelTexVariant, 57, LocalVar(0))
#endif
EVT_SET(AF_MAC_20, FALSE)
EVT_SET(AF_MAC_21, FALSE)
EVT_SET(AF_MAC_22, FALSE)

View File

@ -40,20 +40,24 @@ EvtScript N(EVS_Scene_RescuedMuskular) = {
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(WaitForPlayerInputEnabled)
EVT_CALL(DisablePlayerInput, TRUE)
EVT_WAIT(40)
EVT_WAIT(40 * DT)
EVT_CALL(SpeakToPlayer, NPC_Muskular, ANIM_WorldMuskular_Talk, ANIM_WorldMuskular_Idle, 512, MSG_MAC_Housing_00C5)
EVT_CALL(GetNpcPos, NPC_Muskular, LVar0, LVar1, LVar2)
EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2)
EVT_CALL(SetCamDistance, CAM_DEFAULT, -300)
EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(17.5), -9)
#if VERSION_PAL
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(3.6))
#else
EVT_CALL(SetCamSpeed, CAM_DEFAULT, 3)
#endif
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_Muskular, ANIM_WorldMuskular_Talk, ANIM_WorldMuskular_Idle, 512, MSG_MAC_Housing_00C6)
EVT_CALL(SetPanTarget, CAM_DEFAULT, -470, 20, 250)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_CALL(MakeLerp, 0, 360, 10, EASING_LINEAR)
EVT_CALL(MakeLerp, 0, 360, 10 * DT, EASING_LINEAR)
EVT_LOOP(0)
EVT_CALL(UpdateLerp)
EVT_CALL(SetNpcRotation, NPC_Muskular, 0, LVar0, 0)
@ -64,7 +68,7 @@ EvtScript N(EVS_Scene_RescuedMuskular) = {
EVT_END_LOOP
EVT_CALL(EnableNpcAI, NPC_Muskular, FALSE)
EVT_CALL(SetNpcAnimation, NPC_Muskular, ANIM_WorldMuskular_Leap)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_UsePower)
EVT_CALL(PlaySoundAtPlayer, SOUND_139, SOUND_SPACE_MODE_0)
EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2)
@ -75,22 +79,22 @@ EvtScript N(EVS_Scene_RescuedMuskular) = {
EVT_ADD(LVar3, 30)
EVT_LOOP(5)
EVT_PLAY_EFFECT(EFFECT_SPARKLES, 3, LVar0, LVar1, LVar2, 20)
EVT_WAIT(6)
EVT_WAIT(6 * DT)
EVT_PLAY_EFFECT(EFFECT_SPARKLES, 1, LVar0, LVar3, LVar2, 20)
EVT_WAIT(6)
EVT_WAIT(6 * DT)
EVT_END_LOOP
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(PlaySoundAtPlayer, SOUND_188, SOUND_SPACE_MODE_0)
EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2)
EVT_ADD(LVar1, 20)
EVT_PLAY_EFFECT(EFFECT_ENERGY_ORB_WAVE, 4, LVar0, LVar1, LVar2, 1, 30)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Idle)
EVT_CALL(SetNpcAnimation, NPC_Muskular, ANIM_WorldMuskular_Idle)
EVT_CALL(EnableNpcAI, NPC_Muskular, TRUE)
EVT_CALL(N(UpgradeStarPowerCh4))
EVT_CALL(ShowMessageAtScreenPos, MSG_Menus_0194, 160, 40)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_Muskular, ANIM_WorldMuskular_Talk, ANIM_WorldMuskular_Idle, 512, MSG_MAC_Housing_00C7)
EVT_CALL(ShowMessageAtScreenPos, MSG_MAC_Housing_00C8, 160, 40)
EVT_CALL(SetPanTarget, CAM_DEFAULT, -470, 20, 250)
@ -103,8 +107,8 @@ EvtScript N(EVS_Scene_RescuedMuskular) = {
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_LookUp)
EVT_CALL(SpeakToPlayer, NPC_Twink, ANIM_Twink_Talk, ANIM_Twink_Idle, 0, MSG_MAC_Housing_00C9)
EVT_CALL(InterpNpcYaw, NPC_Twink, 270, 0)
EVT_WAIT(20)
EVT_CALL(NpcJump1, NPC_Twink, -460, 45, 220, 10)
EVT_WAIT(20 * DT)
EVT_CALL(NpcJump1, NPC_Twink, -460, 45, 220, 10 * DT)
EVT_CALL(SpeakToNpc, NPC_Twink, ANIM_Twink_Talk, ANIM_Twink_Idle, 512, NPC_Muskular, MSG_MAC_Housing_00CA)
EVT_CALL(SetCamDistance, CAM_DEFAULT, -300)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Idle)
@ -117,27 +121,27 @@ EvtScript N(EVS_Scene_RescuedMuskular) = {
EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2)
EVT_CALL(SetCamDistance, CAM_DEFAULT, -300)
EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(17.5), -9)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(1.0 / DT))
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1)
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToNpc, NPC_Muskular, ANIM_WorldMuskular_Talk, ANIM_WorldMuskular_Idle, 512, NPC_Twink, MSG_MAC_Housing_00CF)
EVT_CALL(SetPanTarget, CAM_DEFAULT, -450, 20, 250)
EVT_CALL(SetCamDistance, CAM_DEFAULT, -400)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0 / DT))
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_CALL(SetNpcFlagBits, NPC_Muskular, NPC_FLAG_IGNORE_CAMERA_FOR_YAW, TRUE)
EVT_THREAD
EVT_LOOP(25)
EVT_CALL(GetNpcPos, NPC_Muskular, LVar0, LVar1, LVar2)
EVT_PLAY_EFFECT(EFFECT_SPARKLES, 4, LVar0, LVar1, LVar2, 20)
EVT_WAIT(4)
EVT_WAIT(4 * DT)
EVT_END_LOOP
EVT_END_THREAD
EVT_THREAD
EVT_SET(LVar2, 0)
EVT_SET(LVar3, 1800)
EVT_CALL(MakeLerp, LVar2, LVar3, 100, EASING_CUBIC_IN)
EVT_CALL(MakeLerp, LVar2, LVar3, 100 * DT, EASING_CUBIC_IN)
EVT_LOOP(0)
EVT_CALL(UpdateLerp)
EVT_CALL(SetNpcRotation, NPC_Muskular, 0, LVar0, 0)
@ -151,7 +155,7 @@ EvtScript N(EVS_Scene_RescuedMuskular) = {
EVT_CALL(GetNpcPos, NPC_Muskular, LVar2, LVar3, LVar4)
EVT_SET(LVar5, LVar3)
EVT_ADD(LVar5, 180)
EVT_CALL(MakeLerp, LVar3, LVar5, 100, EASING_CUBIC_IN)
EVT_CALL(MakeLerp, LVar3, LVar5, 100 * DT, EASING_CUBIC_IN)
EVT_LOOP(0)
EVT_CALL(UpdateLerp)
EVT_CALL(SetNpcPos, NPC_Muskular, LVar2, LVar0, LVar4)
@ -163,32 +167,36 @@ EvtScript N(EVS_Scene_RescuedMuskular) = {
EVT_CALL(SetNpcPos, NPC_Muskular, NPC_DISPOSE_LOCATION)
EVT_END_THREAD
EVT_THREAD
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_CALL(PlaySoundAtNpc, NPC_Muskular, SOUND_2045, SOUND_SPACE_MODE_0)
EVT_END_THREAD
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_LookUp)
EVT_WAIT(115)
EVT_WAIT(115 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Idle)
EVT_CALL(SetMusicTrack, 0, SONG_TWINK_THEME, 0, 8)
EVT_CALL(SetPanTarget, CAM_DEFAULT, -450, 20, 250)
EVT_CALL(SetCamDistance, CAM_DEFAULT, -350)
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(3.0))
EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(3.0 / DT))
EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0))
EVT_CALL(SetNpcSpeed, NPC_Twink, 4)
#if VERSION_PAL
EVT_CALL(SetNpcSpeed, NPC_Twink, EVT_FLOAT(4.8))
#else
EVT_CALL(SetNpcSpeed, NPC_Twink, 4)
#endif
EVT_CALL(NpcFlyTo, NPC_Twink, -480, 40, 270, 0, 10, EASING_LINEAR)
EVT_CALL(SpeakToPlayer, NPC_Twink, ANIM_Twink_Talk, ANIM_Twink_Idle, 0, MSG_MAC_Housing_00D0)
EVT_CALL(InterpNpcYaw, NPC_Twink, 270, 0)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(NpcFacePlayer, NPC_Twink, 0)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SpeakToPlayer, NPC_Twink, ANIM_Twink_Talk, ANIM_Twink_Idle, 0, MSG_MAC_Housing_00D1)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Question)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Idle)
EVT_CALL(SpeakToPlayer, NPC_Twink, ANIM_Twink_Talk, ANIM_Twink_Idle, 0, MSG_MAC_Housing_00D2)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_NodYes)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SpeakToPlayer, NPC_Twink, ANIM_Twink_Talk, ANIM_Twink_Idle, 0, MSG_MAC_Housing_00D3)
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0)
EVT_CALL(NpcFlyTo, NPC_Twink, -600, 200, 350, 0, -10, EASING_LINEAR)

View File

@ -65,33 +65,33 @@ EvtScript N(D_80248298_84AE68) = {
};
EvtScript N(D_802483B8_84AF88) = {
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(SetNpcFlagBits, NPC_ShyGuy_01, NPC_FLAG_IGNORE_PLAYER_COLLISION, TRUE)
EVT_CALL(SpeakToPlayer, NPC_ShyGuy_01, ANIM_ShyGuy_Pink_Anim11, ANIM_ShyGuy_Pink_Anim01, 5, MSG_MAC_Housing_00B3)
EVT_CALL(SetNpcAnimation, NPC_ShyGuy_01, ANIM_ShyGuy_Pink_Anim02)
EVT_WAIT(4)
EVT_WAIT(4 * DT)
EVT_CALL(SetNpcAnimation, NPC_ShyGuy_01, ANIM_ShyGuy_Pink_Anim03)
EVT_WAIT(4)
EVT_WAIT(4 * DT)
EVT_CALL(SetNpcAnimation, NPC_ShyGuy_01, ANIM_ShyGuy_Pink_Anim04)
EVT_WAIT(4)
EVT_CALL(NpcMoveTo, NPC_ShyGuy_01, -440, 3, 50)
EVT_WAIT(4 * DT)
EVT_CALL(NpcMoveTo, NPC_ShyGuy_01, -440, 3, 50 * DT)
EVT_CALL(SetNpcAnimation, NPC_ShyGuy_01, ANIM_ShyGuy_Pink_Anim01)
EVT_WAIT(8)
EVT_WAIT(8 * DT)
EVT_CALL(SetNpcAnimation, NPC_ShyGuy_01, ANIM_ShyGuy_Pink_Anim00)
EVT_CALL(InterpNpcYaw, NPC_ShyGuy_01, 180, 10)
EVT_CALL(InterpNpcYaw, NPC_ShyGuy_01, 0, 10)
EVT_CALL(InterpNpcYaw, NPC_ShyGuy_01, 180, 10)
EVT_CALL(InterpNpcYaw, NPC_ShyGuy_01, 0, 10)
EVT_CALL(InterpNpcYaw, NPC_ShyGuy_01, 180, 10 * DT)
EVT_CALL(InterpNpcYaw, NPC_ShyGuy_01, 0, 10 * DT)
EVT_CALL(InterpNpcYaw, NPC_ShyGuy_01, 180, 10 * DT)
EVT_CALL(InterpNpcYaw, NPC_ShyGuy_01, 0, 10 * DT)
EVT_CALL(SpeakToPlayer, NPC_ShyGuy_01, ANIM_ShyGuy_Pink_Anim11, ANIM_ShyGuy_Pink_Anim01, 5, MSG_MAC_Housing_00B4)
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(SetNpcAnimation, NPC_ShyGuy_01, ANIM_ShyGuy_Pink_Anim08)
EVT_WAIT(4)
EVT_WAIT(4 * DT)
EVT_CALL(SetNpcAnimation, NPC_ShyGuy_01, ANIM_ShyGuy_Pink_Anim09)
EVT_WAIT(4)
EVT_WAIT(4 * DT)
EVT_CALL(SetNpcAnimation, NPC_ShyGuy_01, ANIM_ShyGuy_Pink_Anim0A)
EVT_EXEC(N(D_80248298_84AE68))
EVT_CALL(SetNpcJumpscale, NPC_ShyGuy_01, EVT_FLOAT(0.5))
EVT_CALL(NpcJump0, NPC_ShyGuy_01, -440, 20, -75, 20)
EVT_CALL(NpcJump0, NPC_ShyGuy_01, -440, 20, -75, 20 * DT)
EVT_CALL(SetNpcAnimation, NPC_ShyGuy_01, ANIM_ShyGuy_Pink_Anim00)
EVT_IF_LT(GB_StoryProgress, STORY_CH4_FOUND_HIDDEN_DOOR)
EVT_SET(GB_StoryProgress, STORY_CH4_FOUND_HIDDEN_DOOR)
@ -105,19 +105,19 @@ EvtScript N(D_80248624_84B1F4) = {
EVT_CALL(PlaySoundAtNpc, NPC_ShyGuy_01, SOUND_203E, SOUND_SPACE_MODE_0)
EVT_CALL(PlaySoundAtNpc, NPC_ShyGuy_01, SOUND_262, SOUND_SPACE_MODE_0)
EVT_CALL(ShowEmote, NPC_ShyGuy_01, EMOTE_EXCLAMATION, 0, 20, EMOTER_NPC, 0, 0, 0, 0)
EVT_WAIT(20)
EVT_WAIT(20 * DT)
EVT_CALL(SpeakToPlayer, NPC_ShyGuy_01, ANIM_ShyGuy_Pink_Anim11, ANIM_ShyGuy_Pink_Anim01, 0, MSG_MAC_Housing_00B2)
EVT_CALL(InterpNpcYaw, NPC_ShyGuy_01, 180, 10)
EVT_CALL(SetNpcAnimation, NPC_ShyGuy_01, ANIM_ShyGuy_Pink_Anim02)
EVT_WAIT(4)
EVT_WAIT(4 * DT)
EVT_CALL(SetNpcAnimation, NPC_ShyGuy_01, ANIM_ShyGuy_Pink_Anim03)
EVT_WAIT(4)
EVT_WAIT(4 * DT)
EVT_CALL(SetNpcAnimation, NPC_ShyGuy_01, ANIM_ShyGuy_Pink_Anim04)
EVT_WAIT(4)
EVT_WAIT(4 * DT)
EVT_EXEC_WAIT(N(D_80248128_84ACF8))
EVT_SET(LVar0, 14)
EVT_EXEC_GET_TID(N(D_802480E0_84ACB0), LVarA)
EVT_CALL(NpcMoveTo, NPC_ShyGuy_01, -501, 223, 15)
EVT_CALL(NpcMoveTo, NPC_ShyGuy_01, -501, 223, 15 * DT)
EVT_KILL_THREAD(LVarA)
EVT_EXEC_WAIT(N(D_802481E0_84ADB0))
EVT_RETURN
@ -129,7 +129,7 @@ EvtScript N(D_80248798_84B368) = {
EVT_IF_NE(GB_StoryProgress, STORY_CH4_MET_WITH_TWINK)
EVT_RETURN
EVT_END_IF
EVT_LOOP(150)
EVT_LOOP(150 * DT)
EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2)
EVT_IF_GT(LVar2, 200)
EVT_RETURN
@ -165,7 +165,7 @@ EvtScript N(D_80248798_84B368) = {
EVT_EXEC_WAIT(N(D_80248624_84B1F4))
EVT_CALL(N(GetFloorCollider), LVar0)
EVT_THREAD
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_EXEC(N(D_80248798_84B368))
EVT_END_THREAD
EVT_END_IF

View File

@ -28,7 +28,7 @@ EvtScript N(EVS_NpcIdle_TwinkStartCh4) = {
EVT_SUBF(LVar4, EVT_FLOAT(50.0))
EVT_ADDF(LVar5, EVT_FLOAT(40.0))
EVT_CALL(InterpNpcYaw, NPC_Twink, 90, 0)
EVT_CALL(LoadPath, 35, EVT_PTR(N(FlightPath_TwinkArrive)), ARRAY_COUNT(N(FlightPath_TwinkArrive)), EASING_COS_IN_OUT)
EVT_CALL(LoadPath, 35 * DT, EVT_PTR(N(FlightPath_TwinkArrive)), ARRAY_COUNT(N(FlightPath_TwinkArrive)), EASING_COS_IN_OUT)
EVT_LOOP(0)
EVT_CALL(GetNextPathPos)
EVT_ADDF(LVar1, LVar4)
@ -40,32 +40,32 @@ EvtScript N(EVS_NpcIdle_TwinkStartCh4) = {
EVT_END_IF
EVT_END_LOOP
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_LookUp)
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(3.0), -10, -300, 15, -9)
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(3.0 / DT), -10, -300, 15, -9)
EVT_CALL(SpeakToPlayer, NPC_Twink, ANIM_Twink_Talk, ANIM_Twink_Idle, 0, MSG_MAC_Bridge_0090)
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_MarioW2_SpeakUp)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_LookUp)
EVT_WAIT(15)
EVT_WAIT(15 * DT)
EVT_CALL(SetNpcJumpscale, NPC_Twink, EVT_FLOAT(1.0))
EVT_CALL(GetNpcPos, NPC_Twink, LVar0, LVar1, LVar2)
EVT_CALL(NpcJump0, NPC_Twink, LVar0, LVar1, LVar2, 10)
EVT_CALL(NpcJump0, NPC_Twink, LVar0, LVar1, LVar2, 10 * DT)
EVT_CALL(SpeakToPlayer, NPC_Twink, ANIM_Twink_Talk, ANIM_Twink_Idle, 0, MSG_MAC_Bridge_0091)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Chuckle)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_LookUp)
EVT_CALL(SpeakToPlayer, NPC_Twink, ANIM_Twink_Talk, ANIM_Twink_Idle, 0, MSG_MAC_Bridge_0092)
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Thinking)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_LookUp)
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(3.0), -40, -200, 15, -15)
EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(3.0 / DT), -40, -200, 15, -15)
EVT_CALL(SpeakToPlayer, NPC_Twink, ANIM_Twink_Talk, ANIM_Twink_Idle, 0, MSG_MAC_Bridge_0093)
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0)
EVT_CALL(InterpNpcYaw, NPC_Twink, 270, 0)
EVT_CALL(GetNpcPos, NPC_Twink, LVar4, LVar5, LVar6)
EVT_CALL(LoadPath, 35, EVT_PTR(N(FlightPath_TwinkDepart)), ARRAY_COUNT(N(FlightPath_TwinkDepart)), EASING_QUADRATIC_IN)
EVT_CALL(LoadPath, 35 * DT, EVT_PTR(N(FlightPath_TwinkDepart)), ARRAY_COUNT(N(FlightPath_TwinkDepart)), EASING_QUADRATIC_IN)
EVT_LOOP(0)
EVT_CALL(GetNextPathPos)
EVT_ADD(LVar1, LVar4)

View File

@ -1114,16 +1114,16 @@ EvtScript N(EVS_NpcIdle_Kolorado) = {
EVT_WAIT(10)
EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Kolorado_Talk, ANIM_Kolorado_Idle, 0, MSG_MAC_Port_00B3)
EVT_THREAD
EVT_WAIT(15)
EVT_CALL(PlayerMoveTo, -340, 380, 20)
EVT_WAIT(15 * DT)
EVT_CALL(PlayerMoveTo, -340, 380, 20 * DT)
EVT_CALL(InterpPlayerYaw, 45, 0)
EVT_END_THREAD
EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Kolorado_Run)
EVT_CALL(SetNpcSpeed, NPC_SELF, EVT_FLOAT(8.0))
EVT_CALL(SetNpcSpeed, NPC_SELF, EVT_FLOAT(8.0 / DT))
EVT_CALL(NpcMoveTo, NPC_SELF, -280, 280, 0)
EVT_CALL(NpcMoveTo, NPC_SELF, -340, 70, 0)
EVT_CALL(NpcMoveTo, NPC_SELF, -260, -140, 0)
EVT_CALL(SetNpcSpeed, NPC_SELF, EVT_FLOAT(7.0))
EVT_CALL(SetNpcSpeed, NPC_SELF, EVT_FLOAT(7.0 / DT))
EVT_CALL(NpcMoveTo, NPC_SELF, 150, -140, 0)
EVT_CALL(SetNpcPos, NPC_SELF, NPC_DISPOSE_LOCATION)
EVT_SET(GB_StoryProgress, STORY_CH5_RETURNED_TO_TOAD_TOWN)
@ -1852,18 +1852,18 @@ EvtScript N(EVS_NpcInteract_ArtistToad) = {
EVT_CALL(SetMusicTrack, 0, SONG_POP_DIVA_SONG, 0, 8)
EVT_CALL(SetNpcAnimation, NPC_Bartender, ANIM_Bartender_StrumGuitar)
EVT_CALL(SetNpcAnimation, NPC_Chanterelle, ANIM_Chanterelle_Idle)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_CALL(SetNpcAnimation, NPC_Chanterelle, ANIM_Chanterelle_Sing)
EVT_WAIT(150)
EVT_WAIT(150)
EVT_WAIT(150)
EVT_WAIT(150 * DT)
EVT_WAIT(150 * DT)
EVT_WAIT(150 * DT)
EVT_CALL(SetNpcAnimation, NPC_Chanterelle, ANIM_Chanterelle_Idle)
EVT_CALL(SetNpcAnimation, NPC_Bartender, ANIM_Bartender_Idle)
EVT_WAIT(40)
EVT_WAIT(40 * DT)
EVT_CALL(SetNpcAnimation, NPC_Toad_02, ANIM_Toad_Red_Idle)
EVT_CALL(SetNpcAnimation, NPC_ArtistToad, ANIM_Musician_Poet_Idle)
EVT_CALL(SetPlayerAnimation, ANIM_Mario1_Idle)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_EXEC(N(EVS_802442E8))
EVT_THREAD
EVT_CALL(SetNpcAnimation, NPC_Bartender, ANIM_Bartender_Walk)

View File

@ -31,6 +31,10 @@
extern s16 MessagePlural;
extern s16 MessageSingular;
#if VERSION_PAL
extern u8 MessagePlural_de[];
#endif
BSS s32 N(Quizmo_Worker);
// needed for kmr_02
#ifndef QUIZMO_PRE_STATIC_PAD
@ -1112,7 +1116,16 @@ EvtScript N(EVS_Quizmo_QuizMain) = {
EVT_IF_EQ(GB_CompletedQuizzes, 1)
EVT_CALL(SetMessageText, EVT_PTR(MessageSingular), 1)
EVT_ELSE
#if VERSION_PAL
EVT_CALL(GetLanguage, LocalVar(0))
EVT_IF_EQ(LocalVar(0), 1)
EVT_CALL(SetMessageText, EVT_PTR(MessagePlural_de), 1)
EVT_ELSE
EVT_CALL(SetMessageText, EVT_PTR(MessagePlural), 1)
EVT_END_IF
#else
EVT_CALL(SetMessageText, EVT_PTR(MessagePlural), 1)
#endif
EVT_END_IF
EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_ChuckQuizmo_Talk, ANIM_ChuckQuizmo_Idle, 0, MSG_MGM_000F)
EVT_END_IF

View File

@ -296,7 +296,7 @@ API_CALLABLE(N(SuperBlock_AnimateEnergyOrbs)) {
userData = (EnergyOrbSet*)script->userData;
switch (userData->scatterState) {
case 0:
t1 = update_lerp(EASING_CUBIC_OUT, 0.0f, 50.0f, userData->scatterStateTime, 20);
t1 = update_lerp(EASING_CUBIC_OUT, 0.0f, 50.0f, userData->scatterStateTime, 20 * DT);
for (i = 0; i < SUPER_BLOCK_NUM_ORBS; i++) {
x = userData->posY[i] = 0.0f;
add_vec2D_polar(&x, &userData->posY[i], t1, N(SuperBlock_UpgradeOrbAngles)[i]);
@ -305,7 +305,7 @@ API_CALLABLE(N(SuperBlock_AnimateEnergyOrbs)) {
}
userData->scatterStateTime++;
if (userData->scatterStateTime >= 21) {
if (userData->scatterStateTime >= (s32)(21 * DT)) {
userData->scatterState = 1;
userData->scatterStateTime = 0;
}
@ -320,14 +320,14 @@ API_CALLABLE(N(SuperBlock_AnimateEnergyOrbs)) {
}
userData->scatterStateTime++;
if (userData->scatterStateTime > 15) {
userData->scatterStateTime = 15;
if (userData->scatterStateTime > (s32)(15 * DT)) {
userData->scatterStateTime = 15 * DT;
userData->scatterState = 2;
}
break;
case 2:
userData->scatterStateTime++;
if (userData->scatterStateTime > 30) {
if (userData->scatterStateTime > (s32)(30 * DT)) {
for (i = 0; i < SUPER_BLOCK_NUM_ORBS; i++) {
userData->orbEffects[i]->flags |= EFFECT_INSTANCE_FLAG_10;
}
@ -339,20 +339,20 @@ API_CALLABLE(N(SuperBlock_AnimateEnergyOrbs)) {
switch (userData->gatherState) {
case 0:
userData->gatherStateTime++;
if (userData->gatherStateTime > 15) {
if (userData->gatherStateTime > (s32)(15 * DT)) {
userData->gatherState = 1;
userData->gatherStateTime = 0;
}
break;
case 1:
for (i = 0; i < SUPER_BLOCK_NUM_ORBS; i++) {
userData->posX[i] += update_lerp(EASING_QUADRATIC_IN, 0.0f, userData->partnerPosX[i], userData->gatherStateTime, 20);
userData->posY[i] += update_lerp(EASING_QUADRATIC_IN, 0.0f, userData->partnerPosY[i], userData->gatherStateTime, 20);
userData->posZ[i] += update_lerp(EASING_QUADRATIC_IN, 0.0f, userData->partnerPosZ[i], userData->gatherStateTime, 20);
userData->posX[i] += update_lerp(EASING_QUADRATIC_IN, 0.0f, userData->partnerPosX[i], userData->gatherStateTime, 20 * DT);
userData->posY[i] += update_lerp(EASING_QUADRATIC_IN, 0.0f, userData->partnerPosY[i], userData->gatherStateTime, 20 * DT);
userData->posZ[i] += update_lerp(EASING_QUADRATIC_IN, 0.0f, userData->partnerPosZ[i], userData->gatherStateTime, 20 * DT);
}
userData->gatherStateTime++;
if (userData->gatherStateTime > 20) {
if (userData->gatherStateTime > (s32)(20 * DT)) {
userData->gatherState = 2;
userData->gatherStateTime = 0;
}
@ -436,14 +436,14 @@ API_CALLABLE(N(SuperBlock_WaitForPlayerToLand)) {
}
EvtScript N(SuperBlock_ShowUpgradeEffects) = {
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(PlaySound, SOUND_212D)
EVT_CALL(N(SuperBlock_GatherEnergyFX), SUPER_BLOCK_MAPVAR)
EVT_WAIT(85)
EVT_WAIT(85 * DT)
EVT_THREAD
EVT_CALL(PlaySound, SOUND_212E)
EVT_CALL(N(SuperBlock_WhiteScreenFlash), 70, 70)
EVT_WAIT(27)
EVT_WAIT(27 * DT)
EVT_CALL(PlaySound, SOUND_208E)
EVT_CALL(N(SuperBlock_WhiteScreenFlash), 50, 50)
EVT_END_THREAD
@ -452,17 +452,17 @@ EvtScript N(SuperBlock_ShowUpgradeEffects) = {
EVT_CALL(N(SuperBlock_HideBlockContent), SUPER_BLOCK_MAPVAR)
EVT_END_THREAD
EVT_THREAD
EVT_WAIT(47)
EVT_WAIT(47 * DT)
EVT_CALL(N(SuperBlock_RadiateFaintEnergyFX))
EVT_CALL(N(SuperBlock_PartnerSparkles2))
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(N(SuperBlock_PartnerSparkles4))
EVT_WAIT(5)
EVT_WAIT(5 * DT)
EVT_CALL(N(SuperBlock_PartnerSparkles2))
EVT_END_THREAD
EVT_WAIT(3)
EVT_CALL(N(SuperBlock_AnimateEnergyOrbs), SUPER_BLOCK_MAPVAR)
EVT_WAIT(30)
EVT_WAIT(30 * DT)
EVT_RETURN
EVT_END
};
@ -521,7 +521,7 @@ EvtScript N(SuperBlock_OnHit) = {
EVT_ELSE
EVT_CALL(func_802CF56C, 2)
EVT_END_IF
EVT_WAIT(10)
EVT_WAIT(10 * DT)
EVT_CALL(ShowMessageAtScreenPos, MSG_Menus_00DF, 160, 40)
EVT_CALL(ShowChoice, MSG_Choice_000D)
EVT_CALL(CloseMessage)

View File

@ -10,7 +10,7 @@ import ninja_syntax
from glob import glob
# Configuration:
VERSIONS = ["us", "jp", "ique"]
VERSIONS = ["us", "jp", "ique", "pal"]
DO_SHA1_CHECK = True
# Paths:
@ -333,6 +333,7 @@ class Configure:
def write_ninja(self, ninja: ninja_syntax.Writer, skip_outputs: Set[str], non_matching: bool, modern_gcc: bool):
import segtypes
import segtypes.common.data
import segtypes.common.asm
import segtypes.n64.yay0
assert self.linker_entries is not None

File diff suppressed because it is too large Load Diff

16
ver/pal/asm/header.s Normal file
View File

@ -0,0 +1,16 @@
.section .data
.word 0x80371240 /* PI BSB Domain 1 register */
.word 0x0000000F /* Clockrate setting */
.word 0x80125C00 /* Entrypoint address */
.word 0x00000144 /* Revision */
.word 0x19AB29AF /* Checksum 1 */
.word 0xC71BCD28 /* Checksum 2 */
.word 0x00000000 /* Unknown 1 */
.word 0x00000000 /* Unknown 2 */
.ascii "PAPER MARIO " /* Internal name */
.word 0x00000000 /* Unknown 3 */
.word 0x0000004E /* Cartridge */
.ascii "MQ" /* Cartridge ID */
.ascii "P" /* Country code */
.byte 0x00 /* Version */

1
ver/pal/checksum.sha1 Normal file
View File

@ -0,0 +1 @@
2111d39265a317414d359e35a7d971c4dfa5f9e1 ver/pal/build/papermario.z64

1368
ver/pal/splat.yaml Normal file

File diff suppressed because it is too large Load Diff

15
ver/pal/symbol_addrs.txt Normal file
View File

@ -0,0 +1,15 @@
mac_01_toad_house_blanket_vtx = 0x8024B5F0; // rom:0x877F80 size:0x15E0
mac_01_toad_house_blanket_gfx = 0x8024CBD0; // rom:0x879560
mac_01_toad_house_blanket_img = 0x8024CD38; // rom:0x8796C8
kmr_02_heart_block_img = 0x80257B50; // rom:0x933F00
kmr_02_heart_block_pal = 0x80257D50; // rom:0x934100
kmr_04_hammer_block_message_img = 0x80241BF0; // rom:0x938880
kmr_04_hammer_block_message_pal = 0x80242070; // rom:0x938D00
kmr_20_records_screen_gfx = 0x80252D50; // rom:0x96AF00
D_80241900 = 0x80241900; // rom:0x96D2E0
D_80241D00 = 0x80241D00; // rom:0x96D6E0
kmr_22_lava_piranha_vine_gfx = 0x80241F00; // rom:0x96D8E0
kmr_23_window_ul_img = 0x802416C8; // rom:0x975468
kmr_23_window_ur_img = 0x80241708; // rom:0x9754A8
kmr_23_window_ll_img = 0x80241748; // rom:0x9754E8
kmr_23_window_lr_img = 0x80241788; // rom:0x975528

View File

519
ver/pal/undefined_syms.txt Normal file
View File

@ -0,0 +1,519 @@
Entity_ScriptSpring_AnimLaunch = 0x1E4;
Entity_SimpleSpring_AnimLaunch = 0x1E4;
transform_point = 0x800295A0;
dma_copy = 0x800296BC;
rand_int = 0x8002997C;
clamp_angle = 0x80029AA4;
get_clamped_angle_diff = 0x80029BA8;
atan2 = 0x80029C00;
dist2D = 0x80029E54;
add_vec2D_polar = 0x80029F1C;
sin_rad = 0x8002A0EC;
cos_rad = 0x8002A150;
sin_cos_deg = 0x8002A1B4;
sin_deg = 0x8002A26C;
cos_deg = 0x8002A2D0;
update_lerp = 0x8002A334;
general_heap_malloc = 0x8002ABA8;
general_heap_free = 0x8002ABF8;
heap_malloc = 0x8002AC64;
heap_free = 0x8002ACAC;
fio_save_game = 0x8002B41C;
set_curtain_scale_goal = 0x8002C1EC;
set_curtain_draw_callback = 0x8002C214;
get_screen_coords = 0x8002E858;
set_game_mode = 0x80033810;
set_map_change_fade_rate = 0x80035CF0;
get_npc_by_index = 0x80038FCC;
npc_move_heading = 0x8003AF44;
get_npc_unsafe = 0x8003AFDC;
get_npc_safe = 0x8003B038;
disable_npc_shadow = 0x8003B0EC;
enable_npc_blur = 0x8003B214;
set_npc_yaw = 0x8003B830;
npc_set_palswap_mode_A = 0x8003B8C0;
npc_set_palswap_1 = 0x8003B93C;
npc_set_palswap_2 = 0x8003B954;
spawn_surface_effects = 0x8003DB50;
spawn_surface_effects = 0x8003DB50;
kill_enemy = 0x8003EC9C;
get_enemy = 0x8003F1D8;
get_enemy_safe = 0x8003F258;
SetEncounterStatusFlags = 0x80044670;
IsStartingConversation = 0x800446E0;
MakeNpcs = 0x80044788;
RemoveNpc = 0x80044830;
RemoveEncounter = 0x80044968;
GetBattleOutcome = 0x80044A6C;
func_800445D4 = 0x80044AC4;
GetOwnerEncounterTrigger = 0x80044AF0;
DoNpcDefeat = 0x80044B1C;
StartBattle = 0x80044D30;
StartBattleWith = 0x80044D50;
StartBossBattle = 0x80044D8C;
BindNpcAI = 0x80044F68;
BindNpcIdle = 0x8004509C;
RestartNpcAI = 0x8004511C;
EnableNpcAI = 0x800451E0;
SetNpcAux = 0x80045294;
BindNpcAux = 0x800453A8;
BindNpcInteract = 0x80045594;
BindNpcHit = 0x80045630;
BindNpcDefeat = 0x800456CC;
SetSelfVar = 0x8004574C;
GetSelfVar = 0x800457B0;
SetNpcVar = 0x80045810;
GetNpcVar = 0x800458AC;
SetSelfEnemyFlagBits = 0x80045A14;
SelfEnemyOverrideSyncPos = 0x80045A70;
GetSelfNpcID = 0x80045B04;
ClearDefeatedEnemies = 0x80045B30;
SetEnemyFlagBits = 0x80045B78;
SetTattleMessage = 0x80045F48;
is_point_within_region = 0x800495B4;
basic_ai_check_player_dist = 0x80049694;
ai_enemy_play_sound = 0x80049AA0;
basic_ai_wander_init = 0x80049B80;
basic_ai_wander = 0x80049C98;
basic_ai_loiter_init = 0x8004A124;
basic_ai_loiter = 0x8004A1E4;
BasicAI_Main = 0x8004AA5C;
basic_ai_suspend = 0x8004AD1C;
snd_start_sound = 0x800557C0;
snd_ambient_stop_slow = 0x80055AC8;
snd_ambient_pause = 0x80055B1C;
snd_ambient_resume = 0x80055B70;
snd_ambient_set_volume = 0x80055C4C;
remove_effect = 0x8005AA30;
get_current_map_settings = 0x8005B308;
get_map_IDs_by_name = 0x8005B318;
load_asset_by_name = 0x8005B408;
get_collider_center = 0x8005C530;
npc_follow_init = 0x8005E5EC;
npc_update_npc_tracking = 0x8005E6F4;
npc_follow_npc = 0x8005E84C;
osVirtualToPhysical = 0x80062D00;
sqrtf = 0x80062D60;
guLookAtHiliteF = 0x80063730;
sprintf = 0x80066360;
guMtxIdentF = 0x80068320;
guMtxF2L = 0x80068380;
guMtxCatF = 0x80068480;
guScaleF = 0x80068640;
guTranslateF = 0x80068780;
guRotateF = 0x800689A0;
decode_yay0 = 0x8006FD90;
gGameStatusPtr = 0x800714AC;
gMatrixListPos = 0x80071500;
gCurrentCameraID = 0x80073730;
EnemyNpcHit = 0x80074310;
EnemyNpcDefeat = 0x8007443C;
HES_Item_Unused_08B = 0x8007E698;
HES_Item_Unused_08B_disabled = 0x8007E6C8;
HES_Item_Unused_08C = 0x8007E6F8;
HES_Item_Unused_08C_disabled = 0x8007E728;
gItemTable = 0x80083C80;
gItemHudScripts = 0x80086A20;
gItemIconRasterOffsets = 0x8008A778;
gItemIconPaletteOffsets = 0x8008ACEC;
D_8008EEC0 = 0x8008B260;
gPartnerPopupProperties = 0x8008B2C0;
gMoveTable = 0x8008B400;
nuGfxZBuffer = 0x800969B0;
gCurrentCamID = 0x80096A0C;
nuGfxCfb_ptr = 0x80096A24;
gOverrideFlags = 0x80096A28;
gMainGfxPos = 0x80096A44;
gDisplayContext = 0x80096A4C;
gCurrentEncounter = 0x800AF5E0;
gCameras = 0x800B0460;
wMapHitName = 0x800D5938;
wMapShapeName = 0x800D5988;
wMapBgName = 0x800D5DD8;
npc_raycast_down_around = 0x800D8EE8;
npc_raycast_down_sides = 0x800D92EC;
npc_test_move_simple_with_slipping = 0x800DA3B4;
get_xz_dist_to_player = 0x800DC7F8;
get_player_data = 0x800E3CD4;
get_item_count = 0x800E3D5C;
get_item_empty_count = 0x800E3D90;
enforce_hpfp_limits = 0x800E3FDC;
hide_coin_counter_immediately = 0x800E5F20;
ShowCoinCounter = 0x800E5F50;
open_status_menu_long = 0x800E5FB8;
close_status_menu = 0x800E6010;
status_menu_ignore_changes = 0x800E60EC;
status_menu_respond_to_changes = 0x800E611C;
sync_status_menu = 0x800E63C4;
set_max_SP = 0x800E6A30;
switch_to_partner = 0x800E79B8;
func_800EB2A4 = 0x800E7AF4;
partner_suspend_ability_script = 0x800E8068;
partner_resume_ability_script = 0x800E80B0;
func_800EF300 = 0x800EBB50;
partner_set_tether_distance = 0x800EBBE4;
partner_reset_tether_distance = 0x800EBBF4;
partner_set_goal_pos = 0x800EBC10;
func_800EF3D4 = 0x800EBC24;
partner_clear_player_tracking = 0x800EBCAC;
hide_popup_menu = 0x800EDC00;
destroy_popup_menu = 0x800EDD88;
create_standard_popup_menu = 0x800F1270;
draw_box = 0x800F1710;
gPlayerStatusPtr = 0x800F3F60;
wPartnerHudScripts = 0x800F4330;
wDisabledPartnerHudScripts = 0x800F4370;
wPartnerNpc = 0x8010B420;
NpcHitQueryColliderID = 0x8010B468;
gPartnerActionStatus = 0x8010D6B0;
gPlayerStatus = 0x8010DAC8;
gPlayerData = 0x8010DD90;
exec_entity_commandlist = 0x8010E868;
get_entity_by_index = 0x8010F0E8;
get_shadow_by_index = 0x8010F104;
MakeEntity = 0x80110838;
SetEntityCullMode = 0x8011099C;
UseDynamicShadow = 0x80110A2C;
AssignScript = 0x80110AB0;
AssignSwitchFlag = 0x80110AF8;
AssignBlockFlag = 0x80110B6C;
AssignChestFlag = 0x80110BB8;
AssignPanelFlag = 0x80110C14;
create_shadow_type = 0x80110D60;
entity_raycast_down = 0x801110E8;
set_standard_shadow_scale = 0x8011135C;
get_model_from_list_index = 0x80119830;
get_model_list_index_from_tree_index = 0x80119B10;
func_8011B950 = 0x8011A450;
enable_world_fog = 0x8011A650;
set_world_fog_dist = 0x8011A674;
set_world_fog_color = 0x8011A688;
set_main_pan_u = 0x8011A71C;
set_main_pan_v = 0x8011A734;
set_aux_pan_u = 0x8011A74C;
set_aux_pan_v = 0x8011A764;
set_mdl_custom_gfx_set = 0x8011A77C;
set_background_color_blend = 0x8011A95C;
get_background_color_blend = 0x8011A980;
set_model_fog_color_parameters = 0x8011A9B4;
set_model_env_color_parameters = 0x8011AA98;
get_model_env_color_parameters = 0x8011AAD4;
mdl_get_copied_vertices = 0x8011ADB0;
mdl_get_copied_gfx = 0x8011ADEC;
mdl_draw_hidden_panel_surface = 0x8011C22C;
mdl_set_all_fog_mode = 0x8011C32C;
queue_render_task = 0x8011C410;
play_model_animation = 0x8011EC48;
create_worker_world = 0x80121C58;
create_worker_frontUI = 0x80121D3C;
free_worker = 0x801220C0;
set_message_images = 0x8012464C;
set_message_msg = 0x8012465C;
get_msg_width = 0x80124F94;
draw_msg = 0x8012500C;
draw_number = 0x801261BC;
msg_draw_frame = 0x8012C6F8;
draw_ci_image_with_clipping = 0x8012D540;
get_item_entity = 0x8012FAF8;
set_item_entity_flags = 0x80132CE8;
clear_item_entity_flags = 0x80132D28;
set_item_entity_position = 0x80132DAC;
set_screen_overlay_params_front = 0x80136928;
set_screen_overlay_params_back = 0x80136944;
set_screen_overlay_color = 0x801369B0;
set_screen_overlay_center = 0x801369EC;
set_screen_overlay_center_worldpos = 0x80136A60;
set_screen_overlay_alpha = 0x80136C74;
set_map_transition_effect = 0x80136E40;
update_exit_map_screen_overlay = 0x80136E4C;
func_8013A704 = 0x801392A4;
func_8013A854 = 0x801393F4;
fold_update = 0x8013963C;
fold_appendGfx_component = 0x80139B10;
set_global_byte = 0x801440D0;
get_global_byte = 0x801440E8;
sfx_adjust_env_sound_pos = 0x8014859C;
sfx_play_sound = 0x80148864;
sfx_play_sound_at_position = 0x8014890C;
bgm_adjust_proximity = 0x80149604;
bgm_set_track_volumes = 0x801496BC;
bgm_clear_track_volumes = 0x80149710;
func_8014AD40 = 0x801498F0;
MessagePlural = 0x8014AE40;
MessagePlural_de = 0x8014AE44;
MessageSingular = 0x8014AE48;
gBackgroundFogModePtr = 0x8014FEC0;
gEntityHideMode = 0x8014FEE0;
gCollisionStatus = 0x80159110;
gBackgroundImage = 0x80200000;
MakeShop = 0x80281878;
MakeShopOwner = 0x80281BF0;
CreateMapRoom = 0x80281CBC;
CreatePushBlockGrid = 0x802832F0;
SetPushBlock = 0x8028348C;
ItemShopInteract = 0x80284064;
EnterWalk = 0x80285970;
EnterPostPipe = 0x80285C60;
EnterSavePoint = 0x80285CC0;
ExitWalk = 0x80285D04;
ExitDoubleDoor = 0x80285E5C;
EnterDoubleDoor = 0x80285E84;
BaseExitDoor = 0x80285EFC;
Entity_Padlock = 0x802BCD68;
Entity_BoardedFloor = 0x802BCE84;
Entity_BombableRock = 0x802BCF00;
does_script_exist = 0x802C7164;
evt_get_variable = 0x802CAABC;
evt_set_variable = 0x802CB098;
evt_get_float_variable = 0x802CB42C;
evt_set_float_variable = 0x802CB640;
TranslateModel = 0x802CBB60;
RotateModel = 0x802CBC64;
ScaleModel = 0x802CBD88;
CloneModel = 0x802CBF28;
GetModelCenter = 0x802CBF80;
SetTexPanner = 0x802CC000;
SetModelCustomGfx = 0x802CC0FC;
SetModelTexVariant = 0x802CC1A4;
EnableTexPanning = 0x802CC208;
EnableModel = 0x802CC288;
SetGroupVisibility = 0x802CC308;
SetTexPanOffset = 0x802CC364;
SetCustomGfxBuilders = 0x802CC4A0;
SetModelFlags = 0x802CC518;
TranslateGroup = 0x802CC7B4;
RotateGroup = 0x802CC8D8;
ScaleGroup = 0x802CCA1C;
EnableGroup = 0x802CCB98;
MakeLocalVertexCopy = 0x802CCC70;
ModifyColliderFlags = 0x802CCDCC;
ResetFromLava = 0x802CCED8;
ParentColliderToModel = 0x802CD114;
UpdateColliderTransform = 0x802CD188;
GotoMap = 0x802CD400;
GotoMapSpecial = 0x802CD420;
GetEntryID = 0x802CD460;
GetLoadType = 0x802CD4C0;
SetRenderMode = 0x802CD4F4;
PlaySoundAtModel = 0x802CD558;
PlaySoundAtCollider = 0x802CD614;
SetCamEnabled = 0x802CD6C0;
SetCamPerspective = 0x802CD828;
func_802CA988 = 0x802CD988;
SetCamBGColor = 0x802CDD98;
SetCamTarget = 0x802CDF2C;
InterpCamTargetPos = 0x802CE008;
ShakeCam = 0x802CE2A8;
SetCamLeadPlayer = 0x802CE680;
PanToTarget = 0x802CE79C;
UseSettingsFrom = 0x802CE860;
SetCamType = 0x802CEAB4;
SetCamPitch = 0x802CEB48;
SetCamDistance = 0x802CEBE4;
SetCamPosA = 0x802CEC58;
SetCamPosB = 0x802CECF4;
SetCamPosC = 0x802CED90;
SetPanTarget = 0x802CEE2C;
SetCamSpeed = 0x802CEEF0;
GetCamType = 0x802CEF64;
GetCamPitch = 0x802CEFF4;
GetCamDistance = 0x802CF084;
GetCamPosition = 0x802CF2A4;
WaitForCam = 0x802CF354;
SetCamProperties = 0x802CF3EC;
AdjustCam = 0x802CF660;
ResetCam = 0x802CF8C8;
InitAnimatedModels = 0x802CFCB0;
LoadAnimatedModel = 0x802CFCEC;
PlayModelAnimation = 0x802CFE6C;
SetAnimatedModelRootPosition = 0x802CFFE4;
SetAnimatedModelRenderMode = 0x802D0348;
DeleteAnimatedModel = 0x802D03C0;
SetAnimatorFlags = 0x802D0418;
GetAnimatedPositionByTreeIndex = 0x802D07D8;
GetAnimatedRotationByTreeIndex = 0x802D08F8;
resolve_npc = 0x802D0AC0;
GetNpcPointer = 0x802D0C58;
SetNpcPos = 0x802D0CB0;
SetNpcRotation = 0x802D0DB0;
SetNpcRotationPivot = 0x802D0E68;
SetNpcScale = 0x802D0ED4;
SetNpcCollisionSize = 0x802D0F8C;
SetNpcSpeed = 0x802D101C;
SetNpcJumpscale = 0x802D1088;
SetNpcAnimation = 0x802D10F4;
GetNpcAnimation = 0x802D1160;
NpcMoveTo = 0x802D122C;
NpcJump0 = 0x802D16C4;
NpcJump1 = 0x802D16E0;
NpcFlyTo = 0x802D16FC;
GetNpcYaw = 0x802D1A10;
SetNpcYaw = 0x802D1A84;
InterpNpcYaw = 0x802D1B04;
NpcFacePlayer = 0x802D1CC8;
NpcFaceNpc = 0x802D1E80;
SetNpcFlagBits = 0x802D2060;
GetNpcPos = 0x802D20F4;
SetNpcSprite = 0x802D2208;
EnableNpcShadow = 0x802D2268;
EnableNpcBlur = 0x802D22EC;
ClearPartnerMoveHistory = 0x802D2370;
DisablePartnerAI = 0x802D24E8;
EnablePartnerAI = 0x802D252C;
func_802CF56C = 0x802D256C;
BringPartnerOut = 0x802D25B8;
PutPartnerAway = 0x802D2988;
GetCurrentPartnerID = 0x802D2C74;
PartnerCanUseAbility = 0x802D2CA0;
func_802CFD30 = 0x802D2D30;
func_802CFE2C = 0x802D2E2C;
PlaySoundAtNpc = 0x802D31AC;
SpeakToPlayer = 0x802D32B0;
EndSpeech = 0x802D32CC;
ContinueSpeech = 0x802D32E8;
SpeakToNpc = 0x802D3304;
ShowMessageAtScreenPos = 0x802D3894;
CloseMessage = 0x802D3A98;
ShowChoice = 0x802D3B6C;
CloseChoice = 0x802D3BF8;
SetMessageText = 0x802D3CEC;
SetMessageValue = 0x802D3D44;
HidePlayerShadow = 0x802D3DA0;
DisablePlayerPhysics = 0x802D3DE4;
DisablePlayerInput = 0x802D3E28;
SetPlayerPos = 0x802D3EF0;
SetPlayerSpeed = 0x802D4024;
SetPlayerJumpscale = 0x802D4054;
SetPlayerAnimation = 0x802D4084;
SetPlayerActionState = 0x802D40D8;
PlayerMoveTo = 0x802D4134;
func_802D1270 = 0x802D4270;
PlayerJump = 0x802D48E8;
PlayerJump1 = 0x802D4904;
InterpPlayerYaw = 0x802D493C;
PlayerFaceNpc = 0x802D4B04;
GetPlayerTargetYaw = 0x802D4D28;
SetPlayerFlagBits = 0x802D4D60;
GetPlayerActionState = 0x802D4DD0;
GetPlayerPos = 0x802D4DFC;
FullyRestoreHPandFP = 0x802D4EC0;
FullyRestoreSP = 0x802D4EE0;
UseExitHeading = 0x802D516C;
IsPlayerOnValidFloor = 0x802D549C;
WaitForPlayerMoveToComplete = 0x802D54F4;
WaitForPlayerInputEnabled = 0x802D5508;
func_802D2520 = 0x802D5520;
func_802D286C = 0x802D586C;
FacePlayerTowardPoint = 0x802D5884;
GetPartnerInUse = 0x802D5B0C;
InterruptUsePartner = 0x802D5B6C;
func_802D2C14 = 0x802D5C14;
PlaySoundAtPlayer = 0x802D5CD8;
MakeLerp = 0x802D75B0;
UpdateLerp = 0x802D762C;
RandInt = 0x802D76B0;
GetAngleBetweenNPCs = 0x802D7708;
GetAngleToNPC = 0x802D77B4;
GetAngleToPlayer = 0x802D7830;
AwaitPlayerApproach = 0x802D78AC;
AwaitPlayerLeave = 0x802D7A5C;
AddVectorPolar = 0x802D7B14;
func_802D4D14 = 0x802D7D14;
func_802D4D88 = 0x802D7D88;
LoadPath = 0x802D8430;
GetNextPathPos = 0x802D8524;
SetTimeFreezeMode = 0x802D8830;
ModifyGlobalOverrideFlags = 0x802D885C;
SetValueByRef = 0x802D88E0;
GetValueByRef = 0x802D893C;
EnableStatusMenu = 0x802D8998;
GetLanguage = 0x802D8B04;
FadeOutMusic = 0x802D8D00;
SetMusicTrack = 0x802D8D6C;
FadeInMusic = 0x802D8E14;
EnableMusicProximityMix = 0x802D8F00;
AdjustMusicProximityMix = 0x802D8F48;
PopSong = 0x802D8FF8;
PushSong = 0x802D9018;
ClearAmbientSounds = 0x802D9108;
PlayAmbientSounds = 0x802D913C;
PlaySound = 0x802D9170;
PlaySoundWithVolume = 0x802D919C;
PlaySoundAt = 0x802D91FC;
StopSound = 0x802D92D8;
func_802D62E4 = 0x802D9304;
UseDoorSounds = 0x802D9334;
UseRoomDoorSounds = 0x802D9360;
PlaySoundAtF = 0x802D938C;
ShowKeyChoicePopup = 0x802D9440;
ShowConsumableChoicePopup = 0x802D965C;
RemoveKeyItemAt = 0x802D9878;
RemoveItemAt = 0x802D98AC;
AddKeyItem = 0x802D98E8;
CloseChoicePopup = 0x802D9974;
HasKeyItem = 0x802D99BC;
FindKeyItem = 0x802D9A34;
AddItem = 0x802D9AB8;
RemoveItem = 0x802D9BBC;
MakeItemEntity = 0x802D9CE0;
DropItemEntity = 0x802D9DE0;
DropResizableItemEntity = 0x802D9EE0;
RemoveItemEntity = 0x802D9FEC;
AddBadge = 0x802DA018;
SetItemPos = 0x802DA0F0;
AddCoin = 0x802DA298;
AddStarPieces = 0x802DA310;
ShowGotItem = 0x802DA3C4;
ShowEmote = 0x802DA8C0;
func_802D7B10 = 0x802DAB30;
func_802D7B44 = 0x802DAB64;
ShowSweat = 0x802DAE28;
PlayEffect = 0x802DB2BC;
SetSpriteShading = 0x802DC720;
GetDemoState = 0x802DCAB0;
DemoSetButtons = 0x802DCB54;
DemoJoystickXY = 0x802DCC30;
fx_emote = 0x802DD2C0;
fx_sparkles = 0x802DD320;
fx_lens_flare = 0x802DD680;
fx_rising_bubble = 0x802DD9E0;
fx_radial_shimmer = 0x802DDFE0;
fx_3D = 0x802DE3A0;
fx_quizmo_stage = 0x802DEA00;
fx_quizmo_answer = 0x802DEAC0;
fx_motion_blur_flame = 0x802DEB20;
fx_energy_orb_wave = 0x802DEB80;
fx_quizmo_audience = 0x802DEC40;
fx_misc_particles = 0x802DF780;
fx_chapter_change = 0x802DFA20;
fx_spirit_card = 0x802DFAE0;
fx_lil_oink = 0x802DFB40;
fx_quizmo_assistant = 0x802DFCC0;
fx_sun = 0x802DFD80;
spr_update_player_sprite = 0x802E3D6C;
spr_draw_player_sprite = 0x802E3F20;
spr_get_player_raster_info = 0x802E4324;
entity_upgrade_block_hide_content = 0x802EB990;
Entity_SavePoint = 0x802EFD18;
Entity_RedSwitch = 0x802EFEB0;
Entity_BlueSwitch = 0x802EFED4;
Entity_HugeBlueSwitch = 0x802EFEF8;
Entity_GreenStompSwitch = 0x802EFF1C;
Entity_BrickBlock = 0x802F03C4;
Entity_MulticoinBlock = 0x802F03E8;
Entity_Hammer1Block = 0x802F040C;
Entity_Hammer1Block_WideX = 0x802F0430;
Entity_Hammer2Block = 0x802F049C;
Entity_Hammer3Block = 0x802F052C;
Entity_YellowBlock = 0x802F0864;
Entity_HiddenYellowBlock = 0x802F0888;
Entity_RedBlock = 0x802F08AC;
Entity_HeartBlock = 0x802F0AE0;
Entity_SuperBlock = 0x802F0C10;
Entity_ScriptSpring = 0x802F0D30;
Entity_SimpleSpring = 0x802F0D54;
Entity_HiddenPanel = 0x802F0E04;
Entity_GiantChest = 0x802F110C;
Entity_Chest = 0x802F1130;
Entity_BlueWarpPipe = 0x802F1280;
Entity_Signpost = 0x802F12DC;

View File