aboutsummaryrefslogtreecommitdiff
path: root/src/example
diff options
context:
space:
mode:
authorJAROWMR <jarorutjes07@gmail.com>2024-11-23 19:50:01 +0100
committerJAROWMR <jarorutjes07@gmail.com>2024-11-23 19:50:01 +0100
commit444ec7306c8ef43d36f7c6d6e767571b30d10484 (patch)
tree9d4b68f9104b60cd0060f7a67aba6d6202c86e41 /src/example
parentb6d255762de0bfd5dd096f7eae295a6b1b357bbb (diff)
Fixing PR
Diffstat (limited to 'src/example')
-rw-r--r--src/example/events.cpp113
-rw-r--r--src/example/rendering.cpp59
2 files changed, 0 insertions, 172 deletions
diff --git a/src/example/events.cpp b/src/example/events.cpp
deleted file mode 100644
index e6d91aa..0000000
--- a/src/example/events.cpp
+++ /dev/null
@@ -1,113 +0,0 @@
-#include <iostream>
-
-#include <crepe/ComponentManager.h>
-#include <crepe/system/ScriptSystem.h>
-#include <crepe/util/Log.h>
-
-#include <crepe/api/BehaviorScript.h>
-#include <crepe/api/Config.h>
-#include <crepe/api/Event.h>
-#include <crepe/api/EventManager.h>
-#include <crepe/api/GameObject.h>
-#include <crepe/api/IKeyListener.h>
-#include <crepe/api/IMouseListener.h>
-#include <crepe/api/KeyCodes.h>
-#include <crepe/api/Script.h>
-#include <crepe/api/Transform.h>
-
-using namespace crepe;
-using namespace std;
-
-class MyScript : public Script, public IKeyListener, public IMouseListener {
- void update() {
- // Retrieve component from the same GameObject this script is on
- Transform & test = get_component<Transform>();
- dbg_logf("Transform(%.2f, %.2f)", test.position.x, test.position.y);
- }
-
- bool on_key_pressed(const KeyPressEvent & event) override {
- std::cout << "KeyPressed function" << std::endl;
- this->deactivate_keys();
- return false;
- }
- bool on_key_released(const KeyReleaseEvent & event) override {
- std::cout << "KeyRelease function" << std::endl;
- return false;
- }
- bool on_mouse_clicked(const MouseClickEvent & event) override {
- std::cout << "MouseClick function" << std::endl;
- return false;
- }
- bool on_mouse_pressed(const MousePressEvent & event) override {
- std::cout << "MousePress function" << std::endl;
- return false;
- }
- bool on_mouse_released(const MouseReleaseEvent & event) override {
- std::cout << "MouseRelease function" << std::endl;
- return false;
- }
- bool on_mouse_moved(const MouseMoveEvent & event) override {
- std::cout << "MouseMove function" << std::endl;
- return false;
- }
-};
-class TestKeyListener : public IKeyListener {
-public:
- bool on_key_pressed(const KeyPressEvent & event) override {
- std::cout << "TestKeyListener: Key Pressed - Code: "
- << static_cast<int>(event.key) << std::endl;
- return true; // Return true if the listener should remain active
- }
- bool on_key_released(const KeyReleaseEvent & event) override {
- std::cout << "TestKeyListener: Key Released - Code: "
- << static_cast<int>(event.key) << std::endl;
- return true;
- }
-};
-int main() {
- EventManager & evmgr = EventManager::get_instance();
- ComponentManager mgr{};
- ScriptSystem sys{mgr};
-
- // two events to trigger
- KeyPressEvent key_press;
- key_press.key = Keycode::A;
- key_press.repeat = 0;
- MouseClickEvent click_event;
- click_event.button = MouseButton::LEFT_MOUSE;
- click_event.mouse_x = 100;
- click_event.mouse_y = 200;
- // queue events to test queue
- evmgr.queue_event<KeyPressEvent>(std::move(key_press), 0);
- evmgr.queue_event<MouseClickEvent>(std::move(click_event), 0);
- {
- TestKeyListener test_listener;
- test_listener.set_channel(1);
- auto obj = mgr.new_object("name", "tag", Vector2{1.2, 3.4}, 0, 1);
- obj.add_component<BehaviorScript>().set_script<MyScript>();
-
- sys.update();
-
- // Trigger the events while `testListener` is in scope
- evmgr.trigger_event<KeyPressEvent>(key_press, 1);
- evmgr.trigger_event(MouseClickEvent{
- .mouse_x = 100,
- .mouse_y = 100,
- .button = MouseButton::LEFT_MOUSE,
- },1);
- }
- // custom lambda event handler
- EventHandler<KeyPressEvent> event_handler = [](const KeyPressEvent & e) {
- std::cout << "lambda test" << std::endl;
- return false;
- };
- evmgr.subscribe<KeyPressEvent>(std::move(event_handler), 0);
- // testing trigger with testListener not in scope (unsubscribed)
- evmgr.trigger_event<KeyPressEvent>(key_press, 0);
- evmgr.trigger_event<MouseClickEvent>(click_event, 0);
- // dispatching queued events
- evmgr.dispatch_events();
-
- evmgr.unsubscribe<KeyPressEvent>(event_handler, 0);
- return EXIT_SUCCESS;
-}
diff --git a/src/example/rendering.cpp b/src/example/rendering.cpp
deleted file mode 100644
index 9e3c8cc..0000000
--- a/src/example/rendering.cpp
+++ /dev/null
@@ -1,59 +0,0 @@
-#include "api/Camera.h"
-#include <crepe/ComponentManager.h>
-#include <crepe/api/GameObject.h>
-#include <crepe/system/RenderSystem.h>
-#include <crepe/util/Log.h>
-
-#include <crepe/api/AssetManager.h>
-#include <crepe/api/Color.h>
-#include <crepe/api/Sprite.h>
-#include <crepe/api/Texture.h>
-#include <crepe/api/Transform.h>
-#include <crepe/api/Vector2.h>
-
-#include <chrono>
-#include <memory>
-
-using namespace std;
-using namespace crepe;
-
-int main() {
- dbg_trace();
-
- ComponentManager mgr{};
- RenderSystem sys{mgr};
-
- GameObject obj = mgr.new_object("name", "tag", Vector2{0, 0}, 1, 1);
- GameObject obj1 = mgr.new_object("name", "tag", Vector2{500, 0}, 1, 0.1);
- GameObject obj2 = mgr.new_object("name", "tag", Vector2{800, 0}, 1, 0.1);
-
- // Normal adding components
- {
- Color color(0, 0, 0, 0);
- obj.add_component<Sprite>(make_shared<Texture>("../asset/texture/green_square.png"), color,
- FlipSettings{false, false});
- obj.add_component<Camera>(Color::RED);
- }
- {
- Color color(0, 0, 0, 0);
- obj1.add_component<Sprite>(make_shared<Texture>("../asset/texture/green_square.png"), color,
- FlipSettings{true, true});
- }
-
- /*
- {
- Color color(0, 0, 0, 0);
- auto img = mgr.cache<Texture>("../asset/texture/second.png");
- obj2.add_component<Sprite>(img, color, FlipSettings{true, true});
- }
- */
-
- sys.update();
- /*
-
- auto start = std::chrono::steady_clock::now();
- while (std::chrono::steady_clock::now() - start < std::chrono::seconds(5)) {
- sys.update();
- }
- */
-}