From 31161c2862e4696a22cbd34fb63db5d2d33014d2 Mon Sep 17 00:00:00 2001 From: asaf Date: Sat, 08 Aug 2009 23:26:26 +0000 Subject: Added "Roll" tool --- (limited to 'tools.py') diff --git a/tools.py b/tools.py index a7c4cfd..963e2a8 100644 --- a/tools.py +++ b/tools.py @@ -380,6 +380,32 @@ class MotorTool(Tool): self.jb1 = self.jb1pos = None def cancel(self): self.jb1 = self.jb1pos = None + +class RollTool(Tool): + name = 'Roll' + icon = 'roll' + toolTip = _("Roll") + toolAccelerator = _("r") + + def __init__(self,gameInstance): + self.game = gameInstance + self.name = 'Roll' + self.jb1 = self.jb1pos = None + def handleEvents(self,event): + #look for default events, and if none are handled then try the custom events + if not super(RollTool,self).handleEvents(event): + if event.type == MOUSEBUTTONDOWN: + if event.button == 1: + self.jb1pos = event.pos + self.jb1 = self.game.world.get_bodies_at_pos(event.pos) + if self.jb1: + if type(self.jb1[0].userData) == type({}): + self.jb1[0].userData['rollMotor'] = {} + self.jb1[0].userData['rollMotor']['targetVelocity'] = -10 + self.jb1[0].userData['rollMotor']['strength'] = 40 + self.jb1 = self.jb1pos = None + def cancel(self): + self.jb1 = self.jb1pos = None # The destroy tool -- cgit v0.9.1