diff options
| author | MegaMech <7255464+MegaMech@users.noreply.github.com> | 2024-12-11 20:58:18 -0700 |
|---|---|---|
| committer | MegaMech <7255464+MegaMech@users.noreply.github.com> | 2024-12-11 20:58:18 -0700 |
| commit | 95b8cca50025f7fa10e47ca24ac5f71f9813a2e3 (patch) | |
| tree | dcb7bc04eb38b8f98b6348f4b15a46124aa51faf /src/engine/World.h | |
| parent | a4890f9dfcc993f3001d491395294f6836cdc0dc (diff) | |
Reimplementing objects
Diffstat (limited to 'src/engine/World.h')
| -rw-r--r-- | src/engine/World.h | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/src/engine/World.h b/src/engine/World.h index 0df9e7278..2ae4462f4 100644 --- a/src/engine/World.h +++ b/src/engine/World.h @@ -1,16 +1,17 @@ #pragma once #include <libultraship.h> -//#include "objects/GameObject.h" +#include "objects/GameObject.h" #include "Cup.h" #include "vehicles/Vehicle.h" #include "vehicles/Train.h" #include "vehicles/Car.h" -#include "objects/OBombKart.h" +#include "objects/BombKart.h" #include "vehicles/Train.h" #include "TrainCrossing.h" -#include "objects/OThwomp.h" -#include "objects/OPenguin.h" +#include "objects/Thwomp.h" +#include "objects/Penguin.h" +#include "objects/Seagull.h" #include <memory> #include "Actor.h" @@ -20,7 +21,7 @@ extern "C" { #include "engine/Engine.h" }; -//class GameObject; +class GameObject; class Cup; // <-- Forward declaration class Course; class AVehicle; @@ -28,6 +29,7 @@ class ATrain; class ACar; class TrainCrossing; class OThwomp; +class OSeagull; class World { @@ -93,7 +95,7 @@ public: AActor* ConvertActorToAActor(Actor* actor); Actor* ConvertAActorToActor(AActor* actor); -// Object* AddObject(std::unique_ptr<GameObject> object); + GameObject* AddObject(GameObject* object); CProperties* GetCourseProps(); void TickObjects(); @@ -129,7 +131,7 @@ public: size_t CupIndex = 1; std::vector<AActor*> Actors; -// std::vector<std::unique_ptr<GameObject>> GameObjects; + std::vector<GameObject*> Objects; /** Actors */ void AddBoat(f32 speed, uint32_t waypoint); @@ -151,6 +153,9 @@ public: std::vector<std::shared_ptr<OPenguin>> Penguins; std::shared_ptr<OPenguin> AddPenguin(Vec3f pos, u16 direction, OPenguin::PenguinType type, OPenguin::Behaviour behaviour); + std::vector<std::shared_ptr<OSeagull>> Seagulls; + std::shared_ptr<OSeagull> AddSeagull(Vec3f pos); + TrainCrossing* AddCrossing(Vec3f position, u32 waypointMin, u32 waypointMax, f32 approachRadius, f32 exitRadius); std::vector<std::shared_ptr<TrainCrossing>> Crossings; |
