I'm new to pygame and trying to make a platformer game that's based on this tutorial: http://programarcadegames.com/python_examples/show_file.php?file=platform_scroller.py
I can't quite figure out how to add moving enemies, can you help me?
I'm new to pygame and trying to make a platformer game that's based on this tutorial: http://programarcadegames.com/python_examples/show_file.php?file=platform_scroller.py
I can't quite figure out how to add moving enemies, can you help me?
Moving enemies would be something of a combination of how the Player
and Platform
objects work in the example to which you linked:
The enemy class would be a subclass of pygame.sprite.Sprite
, similar to both aforementioned objects.
They would have to implement an update()
method, similar to Player
, to define how they move on each frame. Look at Player.update()
for guidance; basically, move the Enemy
's rect
in some way.
Instances of the enemy class should be added to a level's enemy_list
object (which already exists in the example code), which means they would be updated and drawn on every frame. This is similar to how Level_0x
constructors add Platform
instances to the level's platform_list
variable.
In short, that would look something like:
class Enemy(pygame.sprite.Sprite):def __init__(self):# Set the size, look, initial position, etc. of an enemy here...passdef update(self):# Define how the enemy moves on each frame here...passclass Level_01(Level):def __init__(self, player):# platform code already in example goes here...# Add two enemies to the levelself.enemy_list.add(Enemy())self.enemy_list.add(Enemy())