From c7fd7f0d25d536c9d0ee4a727bbfff770a6d572e Mon Sep 17 00:00:00 2001 From: = <=> Date: Thu, 12 Mar 2026 15:03:33 -0400 Subject: [PATCH] added circle case for collider rendering --- tools.py | 28 ++++++++++++++++++++-------- 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/tools.py b/tools.py index 7f6d2e9..622836b 100644 --- a/tools.py +++ b/tools.py @@ -1,6 +1,9 @@ import pygame as pg from queue import Queue +from collider.types import CircleCollider, ConvexCollider, BaseCollider +from transform import Transform + def _debug(fn): def wrapper(self: 'Debug', *args, **kwargs): if not self.enabled: return @@ -48,15 +51,24 @@ class Debug: @_debug - def draw_collider(self, collider, t): + def draw_collider(self, collider: BaseCollider, t: Transform): def _draw_collider(): - h = collider.hull(t) - pg.draw.lines( - self._screen, - color=(0,255,255), - points=[v for v in h.vertices()], - closed=True - ) + if isinstance(collider, ConvexCollider): + h = collider.hull(t) + pg.draw.lines( + self._screen, + color=(0,255,255), + points=[v for v in h.vertices()], + closed=True + ) + if isinstance(collider, CircleCollider): + pg.draw.circle( + self._screen, + color=(0,255,255), + center=t.position, + radius=collider.radius, + width=1 + ) self._debug_queue.put(_draw_collider)