def update(self): Sprite.update(self) if self.size<=0: self.isDead=True self.color=(random.random(),1,1) if self.posX<self.targetCell.posX: self.posX+=self.velX if self.posX>self.targetCell.posX: self.posX-=self.velX if self.posY<self.targetCell.posY: self.posY+=2 if self.posY>self.targetCell.posY+self.targetCell.height: self.posY-=2 self.posY+=math.sin(self.degreePosY) self.degreePosY+=self.deltaDegree distance=self.posX-self.originX self.power=self.originPower-(distance*0.012) self.size=self.power*self.originSize/self.originPower self.alpha=self.size if Sprite.is_colliding_with(self,self.targetCell): self.isDead=True if(self.targetCell.shield>0): self.targetCell.shield-=self.power else: self.targetCell.hp-=self.power