Exemple #1
0
 def get_polygon(self):
     # self position is center point
     return gmath.rotate(((self.x, self.y - self.size),
                          (self.x + math.cos(math.pi / 6) * self.size,
                           self.y + math.sin(math.pi / 6) * self.size),
                          (self.x - math.cos(math.pi / 6) * self.size,
                           self.y + math.sin(math.pi / 6) * self.size)),
                         self.theta + math.pi / 2, self)
Exemple #2
0
 def polygon(self):
     return gmath.rotate(((self.x - self.size, self.y + self.size),
                          (self.x + self.size, self.y + self.size),
                          (self.x + self.size / 6, self.y + self.size / 6),
                          (self.x + self.size / 6, self.y - self.size),
                          (self.x - self.size / 6, self.y - self.size),
                          (self.x - self.size / 6, self.y + self.size / 6)),
                         self.rot + math.pi, self)
Exemple #3
0
    def update(self, events):
        super().update(events)

        if self.entity_inner_tick % self.fire_tick == 0:
            turret_position = gmath.rotate(((self.x, self.y - self.size), ),
                                           self.rot, self)

            bullet = EntityBullet(self.game, turret_position[0][0],
                                  turret_position[0][1]).spawn()
            theta = math.atan2((self.target.y - turret_position[0][1]),
                               (self.target.x - turret_position[0][0]))
            bullet.color = (0, 184, 212)

            bullet.motion.set_x(math.cos(theta) * self.speed).set_y(
                math.sin(theta) * self.speed)
 def bound_model(self):
     return gmath.rotate(self.polygon, self.rot + math.pi / 2, self)