如何在寻宝游戏中添加总数?

时间:2017-02-10 22:30:46

标签: python python-2.7

所以我正在制作一个寻宝游戏,其中用户被放置在一个网格上,因为' P'并且可以四处移动以从网格上显示的箱子(' X')中收集硬币。在同一个网格上,还有匪徒(' B'),它们带走了以前收集的所有硬币。

现在,我已经得到了允许玩家在棋盘上移动但是当玩家登陆宝藏时不知道如何向已经创建的硬币变量添加硬币。

这是代码的相关部分,随机在棋盘上放置了5个Bandits和10个宝箱:

def bandits(board):
    added_bandits = 0
    while added_bandits < 5:
        x_bandit = r.randint(0,7)
        y_bandit = r.randint(0,7)
        if board[x_bandit][y_bandit] == 'O':
            board[x_bandit][y_bandit] = 'B'
            added_bandits = added_bandits + 1

def treasures(board):
    added_treasure = 0
    while added_treasure < 10:
        x_treasure = r.randint(0,7)
        y_treasure = r.randint(0,7)
        if board[x_treasure][y_treasure] == 'O':
            board[x_treasure][y_treasure] = 'X'
            added_treasure = added_treasure + 1

1 个答案:

答案 0 :(得分:1)

我会创建一个类播放器,您可以在其中存储此信息并管理添加/删除播放器的硬币。

class Player(object):

    def __init__(self, name):
        self.playername = name
        self.total_coins = 0

    def add_coins(self, number):
        self.total_coins += number

    def remove_coins(self, number):
        self.total_coins -= number

    def move(self, move_data):
    #implement here the players's move semantic

    def print_total_coins(self):
        print("Total coins %d" % (self.total_coins))

这样你可以获得这样的总硬币分数:

 player1 = Player("Player 1")
 player1.print_total_coins()

我还会在课堂上进一步封装匪徒和宝藏。