2017-02-10 5 views
1

これで、ユーザーはグリッド上に「P」として配置され、グリッド上に表示されている胸からコイン(「X」)を収集するために動き回ることができる宝探しゲームを作っています。同じ鳥では、以前に収集されたすべてのコインを取り除くバンディット( 'B')も存在します。宝探しゲームの合計にポイントを追加するにはどうすればよいですか?

今、Iveは、プレーヤーがボードの周りを移動できるようにしていますが、プレイヤーが宝の上に着陸したときに、すでに作成されたコインの変数にコインを追加する方法はわかりません。

これは、ランダムにボード上の5バンディッツと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

私はあなたがこの情報を保存し、それが/追加を管理するクラスプレーヤーを作成しますプレイヤーのコインを取り除く。私は、さらにあまりにもクラスで山賊や宝物をカプセル化します

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

:あなたは総コインはこのようにスコアを取得することができる方法

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)) 

+0

返事をありがとう、プレイヤーが宝の上に着陸したときにコインを追加する方法についてどう思いますか? – UselessProgrammer

+0

私はこう考えています:プレーヤーが5コインを受け取った場合、 'player1.add_coins(5)'。 – Alex

関連する問題