diff options
Diffstat (limited to 'src/platform.odin')
| -rw-r--r-- | src/platform.odin | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/platform.odin b/src/platform.odin index b837355..150d96c 100644 --- a/src/platform.odin +++ b/src/platform.odin @@ -1,21 +1,24 @@ package demonchime import "draw" +import "phys" Platform :: struct { handle: Entity_Handle, - rect: Rect, + body: phys.Body_Handle, } make_platform :: proc(rect: Rect) -> (Entity_Handle, ^Platform) { + handle, body := phys.make_body(&state.physics_world, transmute(phys.Rect)rect) return make_entity(&state.platform_list, Platform { - rect = rect, + body = handle, }) } draw_platforms :: proc() { iter := iter_entity_list(state.platform_list) for p in entity_list_iter(&iter) { - draw.rect(&state.renderer, cast(draw.Rect)p.rect) + body := phys.get_body(state.physics_world, p.body) + draw.rect(&state.renderer, cast(draw.Rect)body.rect) } } |
