def set(cls, x, y, vel=0, angle=0, gravity=0): if cls.all_p_stack.is_empty() != True: p = cls.all_p_stack.pop() Concrete_shot.add_to_class_lst(p, Megaman_object.hazards, p.ID) p.grounded = False p.is_shattered = False Projectile.set(p, x, y, vel, angle=angle, gravity=gravity)
def check_pshooter_contact(self): collision = False pshooter_collisions = self.check_collision_lst(P_shooter.all_p_lst, universal_var.hitbox, universal_var.hitbox, quota=1) if pshooter_collisions.is_empty() != True and self.is_alive(): collision = True p = pshooter_collisions.pop() if p.reflected == False: if p.x < self.x: Projectile.set(p, p.x, p.y, vel=90, angle=130) else: Projectile.set(p, p.x, p.y, vel=90, angle=70) p.reflected = True play_sound('p_reflected', universal_var.megaman_sounds, channel=1, volume=universal_var.sfx_volume + 0.1)