def shootAtTarget(self,targetPosition): # path = [(self.rect.x+20,self.rect.y+20), vect_add(targetPosition,vect_mul(vect_sub(targetPosition, self.rect.topleft),10))] direction_raw = vect_sub(targetPosition,self.rect.topleft) direction = vect_mul(direction_raw,1.0/(vect_norm(direction_raw))) b = Bullet((self.rect.x+20,self.rect.y+20),direction, 'grey')# random.choice(["blue","red","yellow"])) self.bullets.append(b) self.shootingDelay = self.shootingDelayMax self.shootSound.play()
def update(self,speed): self.rect.topleft = vect_add(self.rect.topleft,vect_mul(self.direction,speed)) if self.rect.y < 0 or self.rect.y > 3200: self.outOfScreen = True if self.rect.x < 0 or self.rect.x > 770: self.outOfScreen = True