def update(self, time): if not self.timing: inside = self.manager.space.castRadiuCircle( self.center, self.radiu) if len(inside) > 0: self.timing = True self.time = 0.4 self.manager.createEffection( [19, (self.center.x, self.center.y)]) if self.timing: self.time -= time if self.time <= 0: tragets = self.manager.space.castCircle( self.center, self.exp_radiu) for pair in tragets: unit = self.manager.getUnit(pair.key.id) newd = Damage(Damage.REAL_DAMAGE(), 20, None) unit.takeDamage(newd) self.delSelf()
def trigger(self,list): damage=list[1] if damage.kind==Damage.PENETRATION_DAMAGE(): traget=list[0] traget.causeDamage(traget.no,Damage.REAL_DAMAGE(),5) self.unit.events.append(Event(self.unit.manager.createEffection,[ 0 ,traget.no]))#針對traget 創造編號0的效果