AttributeError:模块'actions'没有属性'MoveEast'在终端中不断弹出。我已经尝试重命名函数并执行不同的导入方法,如
from actions import Actions
但没有任何反应。
import items, enemies, dungeon, player, actions
#rooms.py
#function in question
def adjacent_moves(self):
moves = []
if dungeon.room_exists(self.x + 1, self.y):
moves.append(actions.MoveEast())
if dungeon.room_exists(self.x - 1, self.y):
moves.append(actions.MoveWest())
if dungeon.room_exists(self.x, self.y - 1):
moves.append(actions.MoveNorth())
if dungeon.room_exists(self.x, self.y + 1):
moves.append(actions.MoveSouth())
return moves
#actions.py
class Actions:
def __init__(self, method, name, hotkey, **kwargs):
self.method = method
self.hotkey = hotkey
self.name - name
self.kwargs = kwargs
def MoveEast(Actions):
def __init__(self):
super().__init__(method=Player.move_right, name="Move Right", hotkey="r")
#from player.py
def move(self, dx, dy):
self.location_x += dx
self.location_y += dy
print(dungeon.room_exists(self.location_x, self.location_y).intro_text())
def move_right(self):
self.move(dx= 1, dy= 0)
答案 0 :(得分:0)
更改
def MoveEast(Actions):
def __init__(self):
super().__init__(method=Player.move_right, name="Move Right", hotkey="r")
到
class MoveEast(Actions):
def __init__(self):
super().__init__(method=Player.move_right, name="Move Right", hotkey="r")