mirror of
https://github.com/zoriya/Gamacon.git
synced 2026-06-02 03:35:43 +00:00
Now handling events
This commit is contained in:
@@ -5,8 +5,9 @@
|
||||
## Makefile
|
||||
##
|
||||
|
||||
SRC = src/engine.c \
|
||||
src/engine_internal.c \
|
||||
SRC = src/engine/engine.c \
|
||||
src/engine/engine_internal.c \
|
||||
src/engine/event_handler.c \
|
||||
src/component.c \
|
||||
src/components/movable_component.c
|
||||
|
||||
@@ -35,4 +36,7 @@ fclean: clean
|
||||
|
||||
re: fclean all
|
||||
|
||||
dbg: CFLAGS += -g
|
||||
dbg: re
|
||||
|
||||
.PHONY: all build clean fclean
|
||||
+2
-1
@@ -15,11 +15,12 @@ typedef struct gcEngine
|
||||
{
|
||||
gcRenderer renderer;
|
||||
gcScene *scene;
|
||||
bool (*is_open)();
|
||||
bool (*is_open)(struct gcEngine *engine);
|
||||
int (*game_loop)(struct gcEngine *engine);
|
||||
int (*change_scene)(struct gcEngine *engine, gcScene *scene);
|
||||
} gcEngine;
|
||||
|
||||
gcEngine *create_engine(char *title);
|
||||
bool engine_is_open(gcEngine *engine);
|
||||
void handle_events(gcEngine *engine);
|
||||
int change_scene(gcEngine *engine, gcScene *scene);
|
||||
@@ -11,6 +11,7 @@
|
||||
|
||||
int game_loop(gcEngine *engine)
|
||||
{
|
||||
handle_events(engine);
|
||||
(void)engine;
|
||||
return (0);
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
/*
|
||||
** EPITECH PROJECT, 2019
|
||||
** MUL_my_runner_2019
|
||||
** File description:
|
||||
** event_handler
|
||||
*/
|
||||
|
||||
#include "engine.h"
|
||||
|
||||
void handle_events(gcEngine *engine)
|
||||
{
|
||||
sfEvent event;
|
||||
|
||||
while (sfRenderWindow_pollEvent(engine->renderer.window, &event)) {
|
||||
if (event.type == sfEvtClosed)
|
||||
sfRenderWindow_close(engine->renderer.window);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user