From ccadd3c51a7040532fe26cf185140b05a2bdcbe4 Mon Sep 17 00:00:00 2001 From: arngo <27396817+arngo@users.noreply.github.com> Date: Thu, 25 May 2023 21:26:37 -0400 Subject: implemented 2d collision system --- include/rodeo/collision.h | 24 +++++++++++++++++++----- include/rodeo/collision_t.h | 2 ++ 2 files changed, 21 insertions(+), 5 deletions(-) (limited to 'include') diff --git a/include/rodeo/collision.h b/include/rodeo/collision.h index 9e7b856..a8ec07f 100644 --- a/include/rodeo/collision.h +++ b/include/rodeo/collision.h @@ -7,7 +7,9 @@ rodeo_collision_2d_world_t rodeo_collision_2d_world_create(void); void -rodeo_collision_2d_world_destroy(void); +rodeo_collision_2d_world_destroy( + rodeo_collision_2d_world_t *world +); cvec_collision_2d_world_item_value* rodeo_collision_2d_world_item_create( @@ -21,15 +23,27 @@ rodeo_collision_2d_world_item_destroy( cvec_collision_2d_world_item_value* cvec_value ); +rodeo_collision_2d_world_item_t* +rodeo_collision_2d_world_item_get_by_id( + rodeo_collision_2d_world_t *world, + uint32_t id +); + void rodeo_collision_2d_world_compare_self( - rodeo_collision_2d_world_t *world - // resolve function? + rodeo_collision_2d_world_t *world, + void (*resolve)( + rodeo_collision_2d_world_item_t *a, + rodeo_collision_2d_world_item_t *b + ) ); void rodeo_collision_2d_world_compare_other( rodeo_collision_2d_world_t *world_a, - rodeo_collision_2d_world_t *world_b - // resolve function? + rodeo_collision_2d_world_t *world_b, + void (*resolve)( + rodeo_collision_2d_world_item_t *a, + rodeo_collision_2d_world_item_t *b + ) ); diff --git a/include/rodeo/collision_t.h b/include/rodeo/collision_t.h index e51386c..19f5dbe 100644 --- a/include/rodeo/collision_t.h +++ b/include/rodeo/collision_t.h @@ -18,6 +18,7 @@ struct } rodeo_collision_2d_world_item_t; + int rodeo_collision_2d_item_cmp( const rodeo_collision_2d_world_item_t* a, const rodeo_collision_2d_world_item_t* b @@ -28,4 +29,5 @@ int rodeo_collision_2d_item_cmp( #define i_type cvec_collision_2d_world_item #include "stc/cvec.h" + typedef cvec_collision_2d_world_item rodeo_collision_2d_world_t; -- cgit v1.2.3