diff options
| author | MegaMech <MegaMech@users.noreply.github.com> | 2024-10-15 13:09:43 -0600 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-10-15 13:09:43 -0600 |
| commit | a0862b6a159373f2e1554e489ecb5bb08d89654e (patch) | |
| tree | b5c33fc7f65b438ee74898dd9ed7ba25b0fa108a /src/actors | |
| parent | 58d56fcba848e8545052c1d85ef27d0b02841538 (diff) | |
[modding] Implement Vehicles & Fix Animations (#109)
* Train works
* Fix minimap
* Fix highway
* Fix
* Refactor train and boat
* Update
* Implement Trucks
* Fix tanker
* Finish implementing vehicles
* Fix animations
* Fix spawn players
* Fix spawn players
* Fix loading custom data
---------
Co-authored-by: MegaMech <7255464+MegaMech@users.noreply.github.com>
Diffstat (limited to 'src/actors')
| -rw-r--r-- | src/actors/falling_rock/update.inc.c | 19 | ||||
| -rw-r--r-- | src/actors/railroad_crossing/render.inc.c | 2 | ||||
| -rw-r--r-- | src/actors/railroad_crossing/update.inc.c | 2 |
3 files changed, 9 insertions, 14 deletions
diff --git a/src/actors/falling_rock/update.inc.c b/src/actors/falling_rock/update.inc.c index b6a4f541b..97d9a2a6b 100644 --- a/src/actors/falling_rock/update.inc.c +++ b/src/actors/falling_rock/update.inc.c @@ -5,7 +5,7 @@ void func_8029CF0C(struct ActorSpawnData* spawnData, struct FallingRock* rock) { #ifndef TARGET_N64 - struct ActorSpawnData* temp_v0 = (struct ActorSpawnData*) LOAD_ASSET(spawnData); + struct ActorSpawnData* temp_v0 = spawnData; #else s32 segment = SEGMENT_NUMBER2(spawnData); s32 offset = SEGMENT_OFFSET(spawnData); @@ -24,21 +24,16 @@ void func_8029CF0C(struct ActorSpawnData* spawnData, struct FallingRock* rock) { } /** - * @brief Spawns falling rocks. + * @brief Spawns falling sRockSpawnData. * Used in Choco Mountain. * * @param spawnData */ -struct ActorSpawnData* rocks; -void spawn_falling_rocks(const char* spawnData) { +static struct ActorSpawnData* sRockSpawnData; +void spawn_falling_rocks(struct ActorSpawnData* spawnData) { #ifndef TARGET_N64 - struct ActorSpawnData* temp_s0; - if (GetCourse() == GetTestCourse()) { - temp_s0 = (struct ActorSpawnData*) spawnData; - } else { - temp_s0 = (struct ActorSpawnData*) LOAD_ASSET(spawnData); - } - rocks = temp_s0; + struct ActorSpawnData* temp_s0 = spawnData; + sRockSpawnData = spawnData; #else s32 addr = SEGMENT_NUMBER2(spawnData); s32 offset = SEGMENT_OFFSET(spawnData); @@ -82,7 +77,7 @@ void update_actor_falling_rocks(struct FallingRock* rock) { return; } if (rock->pos[1] < D_8015F8E4) { - func_8029CF0C(rocks, rock); + func_8029CF0C(sRockSpawnData, rock); } rock->rot[0] += (s16) ((rock->velocity[2] * 5461.0f) / 20.0f); rock->rot[2] += (s16) ((rock->velocity[0] * 5461.0f) / 20.0f); diff --git a/src/actors/railroad_crossing/render.inc.c b/src/actors/railroad_crossing/render.inc.c index e91f56438..adbe7a7e5 100644 --- a/src/actors/railroad_crossing/render.inc.c +++ b/src/actors/railroad_crossing/render.inc.c @@ -27,7 +27,7 @@ void render_actor_railroad_crossing(Camera* arg0, struct RailroadCrossing* rr_cr gSPSetGeometryMode(gDisplayListHead++, G_LIGHTING); gSPClearGeometryMode(gDisplayListHead++, G_CULL_BACK); - if (isCrossingTriggeredByIndex[rr_crossing->crossingId]) { + if (CourseManager_GetCrossingOnTriggered(rr_crossing->crossingTrigger)) { if (rr_crossing->someTimer < 20) { gSPDisplayList(gDisplayListHead++, d_course_kalimari_desert_dl_crossing_right_active); diff --git a/src/actors/railroad_crossing/update.inc.c b/src/actors/railroad_crossing/update.inc.c index f65376674..5e1c54ca1 100644 --- a/src/actors/railroad_crossing/update.inc.c +++ b/src/actors/railroad_crossing/update.inc.c @@ -9,7 +9,7 @@ */ void update_actor_railroad_crossing(struct RailroadCrossing* crossing) { // If train close? - if (isCrossingTriggeredByIndex[crossing->crossingId] != 0) { + if (CourseManager_GetCrossingOnTriggered(crossing->crossingTrigger)) { // Timer++ crossing->someTimer++; // Reset timer |
