generated from mwc/lab_retro
This program differed from Unit 1 programs because
it felt more foreign, if that makes sense. The code used in this program was not my work hence, I did not feel as though I completely understood how each agent was doing what it was doing. I guess I can see the value of agents because they really do cut things short and functional. But I much prefer the labs and programs that had more original input for the learning experience! At this stage I don't know if I am comfortable or confident going into the game project but I will try to think more about the agents to understand better.
This commit is contained in:
20
spaceship.py
20
spaceship.py
@@ -2,3 +2,23 @@
|
||||
# ------------
|
||||
# By MWC Contributors
|
||||
# This module defines a spaceship agent class.
|
||||
class Spaceship:
|
||||
name = "ship"
|
||||
character = '^'
|
||||
|
||||
def __init__(self, board_size):
|
||||
board_width, board_height = board_size
|
||||
self.position = (board_width // 2, board_height - 1)
|
||||
|
||||
def handle_keystroke(self, keystroke, game):
|
||||
x, y = self.position
|
||||
if keystroke.name in ("KEY_LEFT", "KEY_RIGHT"):
|
||||
if keystroke.name == "KEY_LEFT":
|
||||
new_position = (x - 1, y)
|
||||
else:
|
||||
new_position = (x + 1, y)
|
||||
if game.on_board(new_position):
|
||||
if game.is_empty(new_position):
|
||||
self.position = new_position
|
||||
else:
|
||||
game.end()
|
||||
Reference in New Issue
Block a user