From f00440ff8cb28b9574efd2eb13218b1a47f3eacc Mon Sep 17 00:00:00 2001 From: Sara Date: Wed, 25 Sep 2024 17:16:12 +0200 Subject: [PATCH] feat: renamed test object to player controller --- src/main.c | 2 +- src/{test_object.c => player_controller.c} | 46 +++++++++++----------- src/player_controller.h | 39 ++++++++++++++++++ src/test_object.h | 39 ------------------ 4 files changed, 63 insertions(+), 63 deletions(-) rename src/{test_object.c => player_controller.c} (63%) create mode 100644 src/player_controller.h delete mode 100644 src/test_object.h diff --git a/src/main.c b/src/main.c index 9896aee..51e8f61 100644 --- a/src/main.c +++ b/src/main.c @@ -1,5 +1,5 @@ #include "raylib.h" -#include "test_object.h" +#include "player_controller.h" #include "camera_controller.h" #include "core/input.h" #include "core/camera_node.h" diff --git a/src/test_object.c b/src/player_controller.c similarity index 63% rename from src/test_object.c rename to src/player_controller.c index 95f0940..7b177a5 100644 --- a/src/test_object.c +++ b/src/player_controller.c @@ -1,43 +1,43 @@ -#include "test_object.h" +#include "player_controller.h" #include "core/render.h" #include "utils/debug.h" #include "core/input.h" #include "raylib.h" -START_REFLECT(TestObject); -REFLECT_TYPECLASS(TestObject, Drop); -REFLECT_TYPECLASS(TestObject, SceneNodeEntity); -REFLECT_TYPECLASS(TestObject, Renderable); -END_REFLECT(TestObject); +START_REFLECT(PlayerController); +REFLECT_TYPECLASS(PlayerController, Drop); +REFLECT_TYPECLASS(PlayerController, SceneNodeEntity); +REFLECT_TYPECLASS(PlayerController, Renderable); +END_REFLECT(PlayerController); -impl_Drop_for(TestObject, +impl_Drop_for(PlayerController, DestroyTestObject ) -impl_Renderable_for(TestObject, +impl_Renderable_for(PlayerController, TestObjectDraw ) -impl_SceneNodeEntity_for(TestObject, +impl_SceneNodeEntity_for(PlayerController, TestObjectEnterTree, TestObjectExitTree, TestObjectTick ) SceneNode *CreateTestObject() { - TestObject *self = new(TestObject); + PlayerController *self = new(PlayerController); self->rotation = self->fly_input = Vector2Zero(); self->stopped = false; - return CreateSceneNode(TestObject_as_SceneNodeEntity(self)); + return CreateSceneNode(PlayerController_as_SceneNodeEntity(self)); } -void DestroyTestObject(TestObject *self) { +void DestroyTestObject(PlayerController *self) { free(self); } -void TestObjectEnterTree(TestObject *self) { +void TestObjectEnterTree(PlayerController *self) { self->transform = TC_CAST(self->node->parent->entity, Transformable); - AddRenderable(TestObject_as_Renderable(self)); + AddRenderable(PlayerController_as_Renderable(self)); AddListener("pitch_up", ButtonInputListener(self, TestObjectUpInput)); AddListener("pitch_down", ButtonInputListener(self, TestObjectDownInput)); AddListener("roll_left", ButtonInputListener(self, TestObjectLeftInput)); @@ -45,14 +45,14 @@ void TestObjectEnterTree(TestObject *self) { AddListener("stop", ButtonInputListener(self, TestObjectStopInput)); } -void TestObjectExitTree(TestObject *self) { - RemoveRenderable(TestObject_as_Renderable(self)); +void TestObjectExitTree(PlayerController *self) { + RemoveRenderable(PlayerController_as_Renderable(self)); } -void TestObjectDraw(TestObject *self) { +void TestObjectDraw(PlayerController *self) { } -void TestObjectTick(TestObject *self, double delta) { +void TestObjectTick(PlayerController *self, double delta) { if(self->stopped) return; Vector2 diff = Vector2Subtract(self->fly_input, self->rotation); float const length = Vector2Length(diff); @@ -67,22 +67,22 @@ void TestObjectTick(TestObject *self, double delta) { } -void TestObjectLeftInput(TestObject *self, bool value) { +void TestObjectLeftInput(PlayerController *self, bool value) { self->fly_input.x += value ? -1 : +1; } -void TestObjectRightInput(TestObject *self, bool value) { +void TestObjectRightInput(PlayerController *self, bool value) { self->fly_input.x += value ? +1 : -1; } -void TestObjectUpInput(TestObject *self, bool value) { +void TestObjectUpInput(PlayerController *self, bool value) { self->fly_input.y += value ? -1 : +1; } -void TestObjectDownInput(TestObject *self, bool value) { +void TestObjectDownInput(PlayerController *self, bool value) { self->fly_input.y += value ? +1 : -1; } -void TestObjectStopInput(TestObject *self, bool value) { +void TestObjectStopInput(PlayerController *self, bool value) { self->stopped = value; } diff --git a/src/player_controller.h b/src/player_controller.h new file mode 100644 index 0000000..ff2a3b3 --- /dev/null +++ b/src/player_controller.h @@ -0,0 +1,39 @@ +#ifndef TEST_OBJECT_H +#define TEST_OBJECT_H + +#include "core/scene.h" +#include "core/scene_node_entity.h" +#include "core/transformable.h" +#include "core/renderable.h" +#include "utils/drop.h" +#include "utils/mirror.h" + +// Test object created to generally test game features +typedef struct PlayerController { + SceneNode *node; + Transformable transform; + Vector2 fly_input; + Vector2 rotation; + bool stopped; +} PlayerController; + +SceneNode *CreateTestObject(); +void DestroyTestObject(PlayerController *self); + +extern void TestObjectEnterTree(PlayerController *self); +extern void TestObjectExitTree(PlayerController *self); +extern void TestObjectDraw(PlayerController *self); +extern void TestObjectTick(PlayerController *self, double delta); + +extern void TestObjectLeftInput(PlayerController *self, bool value); +extern void TestObjectRightInput(PlayerController *self, bool value); +extern void TestObjectUpInput(PlayerController *self, bool value); +extern void TestObjectDownInput(PlayerController *self, bool value); +extern void TestObjectStopInput(PlayerController *self, bool value); + +DECL_REFLECT(PlayerController); +decl_typeclass_impl(SceneNodeEntity, PlayerController); +decl_typeclass_impl(Drop, PlayerController); +decl_typeclass_impl(Renderable, PlayerController); + +#endif // !TEST_OBJECT_H diff --git a/src/test_object.h b/src/test_object.h deleted file mode 100644 index 73579de..0000000 --- a/src/test_object.h +++ /dev/null @@ -1,39 +0,0 @@ -#ifndef TEST_OBJECT_H -#define TEST_OBJECT_H - -#include "core/scene.h" -#include "core/scene_node_entity.h" -#include "core/transformable.h" -#include "core/renderable.h" -#include "utils/drop.h" -#include "utils/mirror.h" - -// Test object created to generally test game features -typedef struct TestObject { - SceneNode *node; - Transformable transform; - Vector2 fly_input; - Vector2 rotation; - bool stopped; -} TestObject; - -SceneNode *CreateTestObject(); -void DestroyTestObject(TestObject *self); - -extern void TestObjectEnterTree(TestObject *self); -extern void TestObjectExitTree(TestObject *self); -extern void TestObjectDraw(TestObject *self); -extern void TestObjectTick(TestObject *self, double delta); - -extern void TestObjectLeftInput(TestObject *self, bool value); -extern void TestObjectRightInput(TestObject *self, bool value); -extern void TestObjectUpInput(TestObject *self, bool value); -extern void TestObjectDownInput(TestObject *self, bool value); -extern void TestObjectStopInput(TestObject *self, bool value); - -DECL_REFLECT(TestObject); -decl_typeclass_impl(SceneNodeEntity, TestObject); -decl_typeclass_impl(Drop, TestObject); -decl_typeclass_impl(Renderable, TestObject); - -#endif // !TEST_OBJECT_H