Copy3DEngine/include/C3D/game.h
2024-10-09 16:43:10 +02:00

48 lines
715 B
C

// Voir README.md pour license précise, par Fcalva 2023-2024 et est sous GPLv3
// See README.md for the exact licensing, by ...
#ifndef game__h
#define game__h
#include "utils.h"
#include "map.h"
typedef struct {
V2d pos;
V2d dir;
V2d plane;
} RcActor;
typedef struct {
uint8_t exit;
} RcFlags;
typedef struct {
RcActor player;
int logic_time;
uint8_t *current_map;
RcFlags flags;
} RcGame;
typedef int (RcLogicFunc)(RcGame *);
//Returns non-zero on failure (likely max hook count was reached)
int add_logic_hook(RcLogicFunc *func);
//Retruns non-zero on failure
int remove_logic_hook(RcLogicFunc *func);
void clear_logic_hooks();
void do_logic(RcGame *game, int delta);
#endif