Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/activity.py
diff options
context:
space:
mode:
authorAlex <alex@Tiresias.(none)>2008-07-07 20:09:10 (GMT)
committer Alex <alex@Tiresias.(none)>2008-07-07 20:09:10 (GMT)
commitb3d8fe9d61c02482243fe43548721aa0b88b54e4 (patch)
tree9a881c84d008e907254817b37456fac4c2bc19b4 /activity.py
parentafb834fe427e142fb43d01644f5d0ba759e8565d (diff)
Added the destroy tool
Diffstat (limited to 'activity.py')
-rw-r--r--activity.py20
1 files changed, 17 insertions, 3 deletions
diff --git a/activity.py b/activity.py
index 958d4c1..9231966 100644
--- a/activity.py
+++ b/activity.py
@@ -261,7 +261,19 @@ class JointTool(Tool):
def cancel(self):
self.jb1 = self.jb2 = self.jb1pos = self.jb2pos = None
-
+
+# The destroy tool
+class DestroyTool(Tool):
+ def __init__(self):
+ self.name = "Destroy"
+ def handleEvents(self,event):
+ #look for default events, and if none are handled then try the custom events
+ if not super(DestroyTool,self).handleEvents(event):
+ if event.type == MOUSEBUTTONDOWN:
+ if event.button == 1:
+ tokill = world.get_bodies_at_pos(event.pos)
+ if tokill:
+ world.world.DestroyBody(tokill[0])
# set up pygame
pygame.init()
size = (900,700)
@@ -277,7 +289,8 @@ tools = {
"Polygon": PolygonTool(),
"Magic Pen": MagicPenTool(),
"Joint": JointTool(),
- "Grab": GrabTool()
+ "Grab": GrabTool(),
+ "Destroy": DestroyTool()
}
currentTool = tools["Triangle"]
@@ -296,7 +309,8 @@ menu.addItem('Polygon', callback=setTool)
menu.addItem('Magic Pen', callback=setTool)
menu.addItem('Grab', callback=setTool)
menu.addItem('Joint', callback=setTool)
-
+menu.addItem('Destroy', callback=setTool)
+
# set up the world
world = elements.Elements(size)
world.renderer.set_surface(screen)