Initial idea for the interactive devices thing but I kind of hate it. Going to try another idea that will be simpler.

This commit is contained in:
Zed A. Shaw 2025-01-16 14:33:07 -05:00
parent e30c18fbdf
commit 8defc0bedf
8 changed files with 48 additions and 26 deletions

19
devices.hpp Normal file
View file

@ -0,0 +1,19 @@
#pragma once
#include "dinkyecs.hpp"
#include <nlohmann/json.hpp>
#include <vector>
namespace components {
using namespace nlohmann;
typedef std::function<void(DinkyECS::Entity ent, json &config, DinkyECS::World &world)> Action;
void StairsDown(DinkyECS::Entity player_ent, json &data, DinkyECS::World &world);
void StairsUp(DinkyECS::Entity player_ent, json &data, DinkyECS::World &world);
struct Device {
json config;
std::vector<Action> actions;
void hit(DinkyECS::Entity ent, DinkyECS::World &world);
};
}