From de9c5d510175bba11ab8704e67be3a3a94f9149e Mon Sep 17 00:00:00 2001 From: MegaMech Date: Sun, 9 Nov 2025 19:07:44 -0700 Subject: Implement SpawnParams struct (#536) * Impl SpawnParams * Added json submodule * Update json * Update * Works * Remove comment * Works refactor * Snowman and thwomp working * Impl hot air balloon * More progress * All OObjects are done * cleanup * Refactor 2Dpath to normal path * Update nlohmann json & fix compile * Rest of actors * MORE CHANGES * Finish actors * Done PR, some fix to collision viewer * Impl falling rocks * Add const * wip editor refactor * Property work * continue * Overridable editor properties * Actor saving/loading works now * Fix light alignment * Clarification * Impl penguin * params impl signs * properties impl falling rock * More property impls * impl air balloon * Add spawnParams to OObject Translate * Snowman translate better * impl hedgehog properly * properties impl trophy * thwomp progress * Finish impl properties * Fix compile * Fix cursor collisions * Move registered actors * Rename pathPoint XYZ to xyz * Fix editor pause bug * Clean up * Review comments * Remove SpawnParams struct from actor classes * Rename * Player Label First Iteration * Work now * Working 3d text * Fix boo bug * Finish AText actor * Fix spawnparams compile * Register AText * Finish Text Actor * Fix thwomp interpolation * Fix compile * Fix crab and hedgehog * Fix loading flagpole * Fix Hot Air Balloon * Turn zbuffer on for AText * Update --------- Co-authored-by: MegaMech <7255464+MegaMech@users.noreply.github.com> --- src/code_80005FD0.h | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) (limited to 'src/code_80005FD0.h') diff --git a/src/code_80005FD0.h b/src/code_80005FD0.h index e0496a806..ec262131f 100644 --- a/src/code_80005FD0.h +++ b/src/code_80005FD0.h @@ -44,11 +44,6 @@ typedef struct { u16 unk6; } UnkStruct_46D0; -typedef struct { - s16 x; - s16 z; -} Path2D; - enum CpuItemStrategyEnum { CPU_STRATEGY_WAIT_NEXT_ITEM = 0, @@ -181,7 +176,7 @@ f32 func_80010FA0(f32, f32, f32, s32, s32); s32 func_80011014(TrackPathPoint*, TrackPathPoint*, s32, s32); s32 process_path_data(TrackPathPoint*, TrackPathPoint*); -s32 generate_2d_path(Path2D*, TrackPathPoint*, s32); +s32 generate_2d_path(TrackPathPoint*, TrackPathPoint*, s32); void copy_courses_cpu_behaviour(void); void reset_cpu_behaviour_none(s32); void reset_cpu_behaviour(s32); @@ -194,7 +189,7 @@ void generate_train_path(void); void generate_ferry_path(void); void spawn_vehicle_on_road(Vec3f position, Vec3s rotation, Vec3f velocity, s32 waypointIndex, s32 someMultiplierTheSequel, f32 speed); -void set_vehicle_pos_path_point(TrainCarStuff*, Path2D*, u16); +void set_vehicle_pos_path_point(TrainCarStuff*, TrackPathPoint*, u16); void init_vehicles_trains(size_t, size_t, f32); void sync_train_components(TrainCarStuff*, s16); void update_vehicle_trains(void); @@ -375,8 +370,10 @@ extern s16 D_801634EC; extern s32 D_801634F0; extern s32 D_801634F4; extern TrackPositionFactorInstruction gPlayerTrackPositionFactorInstruction[]; -extern Path2D* gVehicle2DPathPoint; -extern s32 gVehicle2DPathLength; +extern TrackPathPoint* gVehicle2DPathPoint; +extern s32 gVehicle2DPathSize; +extern TrackPathPoint* gVehiclePath; +extern size_t gVehiclePathSize; extern u16 isCrossingTriggeredByIndex[]; extern u16 sCrossingActiveTimer[]; extern s32 D_80163DD8[]; -- cgit v1.2.3