added new tool, changed main debug
This commit is contained in:
12
main.py
12
main.py
@@ -1,7 +1,9 @@
|
|||||||
import pygame as pg
|
import pygame as pg
|
||||||
from math import pi
|
from math import pi
|
||||||
from rigidbody import *
|
from rigidbody import *
|
||||||
from collider import LineCollider, CircleCollider
|
from collider import RectCollider
|
||||||
|
|
||||||
|
from tools import debug
|
||||||
|
|
||||||
|
|
||||||
class Ball:
|
class Ball:
|
||||||
@@ -46,13 +48,14 @@ def main():
|
|||||||
pg.init()
|
pg.init()
|
||||||
clock=pg.time.Clock()
|
clock=pg.time.Clock()
|
||||||
screen = pg.display.set_mode((500,500))
|
screen = pg.display.set_mode((500,500))
|
||||||
|
debug.enabled = True
|
||||||
|
debug._screen = screen
|
||||||
|
|
||||||
physics = PhysicsSystem()
|
physics = PhysicsSystem()
|
||||||
|
|
||||||
linecollider = RectCollider((495, 1))
|
linecollider = RectCollider((495, 1))
|
||||||
|
|
||||||
ball_transform = Transform(position=pg.Vector2(250,250), rotation=pi/8.0)
|
ball_transform = Transform(position=pg.Vector2(250,440), rotation=pi/8.0)
|
||||||
square_transform = Transform(position=pg.Vector2(250, 100))
|
square_transform = Transform(position=pg.Vector2(250, 460))
|
||||||
#ball2_transform = Transform(position=pg.Vector2(250, 50))
|
#ball2_transform = Transform(position=pg.Vector2(250, 50))
|
||||||
|
|
||||||
ball = Square(ball_transform, 20)
|
ball = Square(ball_transform, 20)
|
||||||
@@ -133,6 +136,7 @@ def main():
|
|||||||
physics.update(dt)
|
physics.update(dt)
|
||||||
ball.draw(screen)
|
ball.draw(screen)
|
||||||
ball2.draw(screen)
|
ball2.draw(screen)
|
||||||
|
debug.debug()
|
||||||
#ball3.draw(screen)
|
#ball3.draw(screen)
|
||||||
pg.display.flip()
|
pg.display.flip()
|
||||||
for event in pg.event.get():
|
for event in pg.event.get():
|
||||||
|
|||||||
14
tools.py
14
tools.py
@@ -1,7 +1,6 @@
|
|||||||
import pygame as pg
|
import pygame as pg
|
||||||
from queue import Queue
|
from queue import Queue
|
||||||
|
|
||||||
|
|
||||||
def _debug(fn):
|
def _debug(fn):
|
||||||
def wrapper(self: 'Debug', *args, **kwargs):
|
def wrapper(self: 'Debug', *args, **kwargs):
|
||||||
if not self.enabled: return
|
if not self.enabled: return
|
||||||
@@ -48,4 +47,17 @@ class Debug:
|
|||||||
self._debug_queue.put(_draw_lines)
|
self._debug_queue.put(_draw_lines)
|
||||||
|
|
||||||
|
|
||||||
|
@_debug
|
||||||
|
def draw_collider(self, collider, t):
|
||||||
|
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
|
||||||
|
)
|
||||||
|
self._debug_queue.put(_draw_collider)
|
||||||
|
|
||||||
|
|
||||||
debug = Debug()
|
debug = Debug()
|
||||||
|
|||||||
Reference in New Issue
Block a user