diff --git a/game/src/camera.h b/game/src/camera.h index e20f163..74de122 100644 --- a/game/src/camera.h +++ b/game/src/camera.h @@ -2,8 +2,6 @@ #include -#include "util.h" - void camera_get_direction (vec3 dest); void camera_get_right (vec3 dest); void camera_get_view (mat4 dest); diff --git a/game/src/chunk/chunkman.c b/game/src/chunk/chunkman.c index 560cde9..e589529 100644 --- a/game/src/chunk/chunkman.c +++ b/game/src/chunk/chunkman.c @@ -7,7 +7,7 @@ int n_frame_chunks; static GHashTable *chunks; static GHashTable *chunk_meshes; -static bool bound = false; +static gboolean bound = false; guint chunkman_ivec2_hash (gconstpointer key) diff --git a/game/src/chunk/chunkmesh.c b/game/src/chunk/chunkmesh.c index 74a1f6c..71f1fb3 100644 --- a/game/src/chunk/chunkmesh.c +++ b/game/src/chunk/chunkmesh.c @@ -114,7 +114,7 @@ ChunkMesh_bind (ChunkMesh *mesh) } void -ChunkMesh_render (ChunkMesh *mesh, bool wireframe) +ChunkMesh_render (ChunkMesh *mesh, gboolean wireframe) { glBindBuffer (GL_ARRAY_BUFFER, mesh->hbo); diff --git a/game/src/chunk/chunkmesh.h b/game/src/chunk/chunkmesh.h index 525f3fe..fa1a610 100644 --- a/game/src/chunk/chunkmesh.h +++ b/game/src/chunk/chunkmesh.h @@ -21,4 +21,4 @@ typedef struct ChunkMesh ChunkMesh *ChunkMesh_build (Chunk *chunk, Chunk *nr, Chunk *nd, Chunk *nc); void ChunkMesh_bind (ChunkMesh *mesh); -void ChunkMesh_render (ChunkMesh *mesh, bool wireframe); +void ChunkMesh_render (ChunkMesh *mesh, gboolean wireframe); diff --git a/game/src/entity/entity.h b/game/src/entity/entity.h index 0f37673..6ee3230 100644 --- a/game/src/entity/entity.h +++ b/game/src/entity/entity.h @@ -8,24 +8,22 @@ #include #include -#include - typedef struct Entity { enum { MESH_QUAD1, MESH_QUAD2, MESH_QUAD_X } mesh_type; enum { ORIGIN_CENTER, ORIGIN_BOTTOM } origin; enum { RENDER_NORMAL, RENDER_BILLBOARD_Y, RENDER_BILLBOARD } render_type; - bool visible; - bool dont_cull; + gboolean visible; + gboolean dont_cull; /* 100 means as far as the terrain goes, less than 100, for example 50, means half as far as the terrain goes. */ unsigned int cull_distance; - bool wavy; + gboolean wavy; void *userdata; void (*on_tick) (struct Entity *self); - bool tick_me_i_dont_care; /* Tick this entity regardless of the + gboolean tick_me_i_dont_care; /* Tick this entity regardless of the distance and other predicates. Useful for NPCs. */ diff --git a/game/src/event/evtman.c b/game/src/event/evtman.c index 6976658..87a8172 100644 --- a/game/src/event/evtman.c +++ b/game/src/event/evtman.c @@ -4,21 +4,21 @@ extern vec3 camera_rotation; static GList *handlers = NULL; -bool +gboolean evt_pred_key (SDL_Event *event, void *data) { unsigned int expected_key = GPOINTER_TO_INT (data); return event->key.key == expected_key; } -bool +gboolean evt_pred_mouse (SDL_Event *event, void *data) { unsigned int expected_button = GPOINTER_TO_INT (data); return event->button.button == expected_button; } -bool +gboolean evt_pred_flag (SDL_Event *event, void *data) { UNUSED (event); @@ -26,14 +26,14 @@ evt_pred_flag (SDL_Event *event, void *data) return flags_get (flag); } -bool +gboolean evt_cpred_and (SDL_Event *event, void *data) { CompositePredicate *cp = data; return cp->a (event, cp->a_data) && cp->b (event, cp->b_data); } -bool +gboolean evt_cpred_or (SDL_Event *event, void *data) { CompositePredicate *cp = data; @@ -41,8 +41,8 @@ evt_cpred_or (SDL_Event *event, void *data) } CompositePredicate * -evt_pred_compose (bool (*a) (SDL_Event *sdl_event, void *userdata), void *a_data, - bool (*b) (SDL_Event *sdl_event, void *userdata), void *b_data) +evt_pred_compose (gboolean (*a) (SDL_Event *sdl_event, void *userdata), void *a_data, + gboolean (*b) (SDL_Event *sdl_event, void *userdata), void *b_data) { CompositePredicate *out = g_new (CompositePredicate, 1); out->a = a; @@ -52,7 +52,7 @@ evt_pred_compose (bool (*a) (SDL_Event *sdl_event, void *userdata), void *a_data return out; } -bool +gboolean evt_cb_rotate_camera (SDL_Event *event, void *userdata) { UNUSED (userdata); @@ -63,7 +63,7 @@ evt_cb_rotate_camera (SDL_Event *event, void *userdata) return true; } -bool +gboolean evt_cb_flag_off (SDL_Event *event, void *data) { UNUSED (event); @@ -72,7 +72,7 @@ evt_cb_flag_off (SDL_Event *event, void *data) return true; } -bool +gboolean evt_cb_flag_on (SDL_Event *event, void *data) { UNUSED (event); @@ -81,7 +81,7 @@ evt_cb_flag_on (SDL_Event *event, void *data) return true; } -bool +gboolean evt_cb_flag_switch (SDL_Event *event, void *data) { UNUSED (event); @@ -127,9 +127,9 @@ evtman_init () void evtman_add_handler (int priority, unsigned int filter, - bool (*predicate) (SDL_Event *sdl_event, void *userdata), + gboolean (*predicate) (SDL_Event *sdl_event, void *userdata), void *predicate_data, - bool (*callback) (SDL_Event *sdl_event, void *userdata), + gboolean (*callback) (SDL_Event *sdl_event, void *userdata), void *callback_data) { EventHandler *h = g_new (EventHandler, 1); diff --git a/game/src/event/evtman.h b/game/src/event/evtman.h index 377b0fc..d7720cc 100644 --- a/game/src/event/evtman.h +++ b/game/src/event/evtman.h @@ -11,17 +11,17 @@ typedef struct CompositePredicate { - bool (*a) (SDL_Event *sdl_event, void *userdata); + gboolean (*a) (SDL_Event *sdl_event, void *userdata); void *a_data; - bool (*b) (SDL_Event *sdl_event, void *userdata); + gboolean (*b) (SDL_Event *sdl_event, void *userdata); void *b_data; } CompositePredicate; void evtman_init (); void evtman_add_handler (int priority, unsigned int filter, - bool (*predicate) (SDL_Event *sdl_event, void *userdata), + gboolean (*predicate) (SDL_Event *sdl_event, void *userdata), void *predicate_data, - bool (*callback) (SDL_Event *sdl_event, void *userdata), + gboolean (*callback) (SDL_Event *sdl_event, void *userdata), void *callback_data); void evtman_handle_SDL_Event (SDL_Event *event); diff --git a/game/src/event/handler.h b/game/src/event/handler.h index 45c95fa..43e5984 100644 --- a/game/src/event/handler.h +++ b/game/src/event/handler.h @@ -1,13 +1,12 @@ #pragma once #include - -#include +#include typedef struct { unsigned int filter; int priority; void *predicate_data, *callback_data; - bool (*predicate) (SDL_Event *sdl_event, void *userdata); - bool (*callback) (SDL_Event *sdl_event, void *userdata); + gboolean (*predicate) (SDL_Event *sdl_event, void *userdata); + gboolean (*callback) (SDL_Event *sdl_event, void *userdata); } EventHandler; diff --git a/game/src/flags.c b/game/src/flags.c index 1b42cbc..c21f466 100644 --- a/game/src/flags.c +++ b/game/src/flags.c @@ -15,12 +15,12 @@ flags_switch (char *flag) } void -flags_set (char *flag, bool value) +flags_set (char *flag, gboolean value) { g_hash_table_replace (flags, flag, GINT_TO_POINTER (value)); } -bool +gboolean flags_get (char *flag) { return GPOINTER_TO_INT (g_hash_table_lookup (flags, flag)); diff --git a/game/src/flags.h b/game/src/flags.h index d56c754..7b86b94 100644 --- a/game/src/flags.h +++ b/game/src/flags.h @@ -1,7 +1,5 @@ #pragma once -#include - #include /* @@ -15,11 +13,16 @@ moving_left moving_right + flight_enabled + flying_up + flying_down + flying_fast + ui_has_focus */ void flags_init (); void flags_switch (char *flag); -void flags_set (char *flag, bool value); -bool flags_get (char *flag); +void flags_set (char *flag, gboolean value); +gboolean flags_get (char *flag); diff --git a/game/src/gl/mesh.c b/game/src/gl/mesh.c index a4c31ed..950a9ab 100644 --- a/game/src/gl/mesh.c +++ b/game/src/gl/mesh.c @@ -23,7 +23,7 @@ SimpleMesh_bind (SimpleMesh *mesh) } void -SimpleMesh_render (SimpleMesh *mesh, bool wireframe) +SimpleMesh_render (SimpleMesh *mesh, gboolean wireframe) { glDrawElements (wireframe ? GL_LINES : GL_TRIANGLES, mesh->indices_len, GL_UNSIGNED_INT, 0); } diff --git a/game/src/gl/mesh.h b/game/src/gl/mesh.h index ca5802a..7b25c2e 100644 --- a/game/src/gl/mesh.h +++ b/game/src/gl/mesh.h @@ -14,7 +14,7 @@ typedef struct SimpleMesh } SimpleMesh; void SimpleMesh_bind (SimpleMesh *mesh); -void SimpleMesh_render (SimpleMesh *mesh, bool wireframe); +void SimpleMesh_render (SimpleMesh *mesh, gboolean wireframe); SimpleMesh SimpleMesh_make_quad1 (); SimpleMesh SimpleMesh_make_quad2 (); diff --git a/game/src/main.c b/game/src/main.c index dc0951b..12fc81c 100644 --- a/game/src/main.c +++ b/game/src/main.c @@ -1,8 +1,6 @@ #define SDL_MAIN_USE_CALLBACKS 1 #include -#include - #include "event/evtman.h" #include "chunk/chunkman.h" #include "entity/templates.h" diff --git a/game/src/ui/uielement.c b/game/src/ui/uielement.c index 9fb31b8..6597803 100644 --- a/game/src/ui/uielement.c +++ b/game/src/ui/uielement.c @@ -32,7 +32,7 @@ UIElement_root_new () } UIElement * -UIElement_container_new (bool horizontal) +UIElement_container_new (gboolean horizontal) { UIElement *e = ui_el_new_internal (UI_KIND_CONTAINER); e->container.horizontal = horizontal; @@ -212,7 +212,7 @@ UIElement_render_with_model (UIElement *element, mat3 parent_model) } } -static bool +static gboolean UIElement_hit_test (UIElement *element, mat3 parent_model, vec2 point) { mat3 model; diff --git a/game/src/ui/uielement.h b/game/src/ui/uielement.h index 6bedb4b..ebd694e 100644 --- a/game/src/ui/uielement.h +++ b/game/src/ui/uielement.h @@ -1,9 +1,5 @@ #pragma once -/* TODO: Seperate userdata for each callback. */ - -#include - #include #include @@ -22,7 +18,7 @@ typedef enum UIKind typedef struct UIContainer { - bool horizontal; + gboolean horizontal; } UIContainer; typedef struct UILabel @@ -42,8 +38,8 @@ typedef struct UIElement vec2 scale; vec4 background_color, hover_background_color; unsigned int texture; - bool visible; - bool hovered; + gboolean visible; + gboolean hovered; void (*on_left_click) (struct UIElement *, void *); void *left_click_data; @@ -61,7 +57,7 @@ typedef struct UIElement void ui_element_mesh_init (); UIElement *UIElement_root_new (); -UIElement *UIElement_container_new (bool horizontal); +UIElement *UIElement_container_new (gboolean horizontal); UIElement *UIElement_label_new (const char *text); void UIElement_add_child (UIElement *parent, UIElement *child); diff --git a/game/src/ui/uiman.c b/game/src/ui/uiman.c index ea2b5a6..061e431 100644 --- a/game/src/ui/uiman.c +++ b/game/src/ui/uiman.c @@ -88,7 +88,7 @@ screen_to_ui_coords (int mouse_x, int mouse_y, int screen_w, int screen_h, vec2 out_coords[1] = 1.0 - (float) mouse_y / (float) screen_h * 2.0; } -bool +gboolean uiman_cb_switch_focus (SDL_Event *event, void *data) { UNUSED (event, data); @@ -97,21 +97,21 @@ uiman_cb_switch_focus (SDL_Event *event, void *data) return true; } -bool +gboolean uiman_cb_key_down (SDL_Event *event, void *data) { UNUSED (event, data); return false; } -bool +gboolean uiman_cb_key_up (SDL_Event *event, void *data) { UNUSED (event, data); return false; } -bool +gboolean uiman_cb_mouse_motion (SDL_Event *event, void *data) { /* What even is in data at this point? No fucking idea. */ @@ -144,7 +144,7 @@ uiman_cb_mouse_motion (SDL_Event *event, void *data) return true; } -bool +gboolean uiman_cb_button_down (SDL_Event *event, void *data) { UNUSED (data); @@ -175,21 +175,21 @@ uiman_cb_button_down (SDL_Event *event, void *data) return false; } -bool +gboolean uiman_cb_button_up (SDL_Event *event, void *data) { UNUSED (event, data); return false; } -bool +gboolean uiman_cb_mouse_wheel (SDL_Event *event, void *data) { UNUSED (event, data); return false; } -bool +gboolean uiman_cb_text_input (SDL_Event *event, void *data) { UNUSED (event, data); diff --git a/game/src/ui/uiman.h b/game/src/ui/uiman.h index 42e4d01..54efe11 100644 --- a/game/src/ui/uiman.h +++ b/game/src/ui/uiman.h @@ -9,12 +9,12 @@ void uiman_init (); void uiman_tick (); void uiman_render (); -bool uiman_cb_switch_focus (SDL_Event *event, void *data); +gboolean uiman_cb_switch_focus (SDL_Event *event, void *data); -bool uiman_cb_key_down (SDL_Event *event, void *data); -bool uiman_cb_key_up (SDL_Event *event, void *data); -bool uiman_cb_mouse_motion (SDL_Event *event, void *data); -bool uiman_cb_button_down (SDL_Event *event, void *data); -bool uiman_cb_button_up (SDL_Event *event, void *data); -bool uiman_cb_mouse_wheel (SDL_Event *event, void *data); -bool uiman_cb_text_input (SDL_Event *event, void *data); +gboolean uiman_cb_key_down (SDL_Event *event, void *data); +gboolean uiman_cb_key_up (SDL_Event *event, void *data); +gboolean uiman_cb_mouse_motion (SDL_Event *event, void *data); +gboolean uiman_cb_button_down (SDL_Event *event, void *data); +gboolean uiman_cb_button_up (SDL_Event *event, void *data); +gboolean uiman_cb_mouse_wheel (SDL_Event *event, void *data); +gboolean uiman_cb_text_input (SDL_Event *event, void *data);