townengine/apps/template/game.c

28 lines
729 B
C

#include "townengine/game_api.h"
#include "state.h"
#include <malloc.h>
void game_tick(void) {
/* do state initialization when engine asks for it */
/* it could happen multiple times per application run, as game code is reloadable */
if (ctx.initialization_needed) {
/* application data could be stored in ctx.udata and retrieved anywhere */
if (!ctx.udata)
ctx.udata = ccalloc(1, sizeof (struct state));
}
/* a lot of data is accessible from `ctx`, look into `townengine/context.h` for more */
struct state *state = ctx.udata;
++state->counter;
}
void game_end(void) {
/* do your deinitialization here */
struct state *state = ctx.udata;
free(state);
}