2016-10-13 9 views
0

私はpythonとpygameを使用してボードを作成しました。 爆弾をクリックすると、ボード全体が表示されます。私は(無作為化された)爆弾の位置を含む別々の機能を持ち、爆弾の周りの数字を(適切な座標上に)作成します。 0からGRID_TILES(最大範囲)の座標を確認する方法を確認します。グリッドのすべての座標を使用する[python]

def game_mainloop(): 
    While True: 
     if event.type == pygame.MOUSEBUTTONDOWN and event.button == 1: 
      handle_mouse(pygame.mouse.get_pos()) 
     if event.type == pygame.MOUSEBUTTONDOWN and event.button == 3: 
      handle_flag(pygame.mouse.get_pos()) 

次の定義は以下のとおりです:タイルに爆弾adjecentの数の

CELLS =リスト

は、これは私が 'クリック' は使用

def handle_mouse(mousepos): 
    x, y = mousepos 
    x, y = math.ceil(x/40), math.ceil(y/40) 
    check = x, y 
    if check in FLAGS: 
     print("You have to unflag this tile before clicking!") 
    else: 
     CLICKED.append(check) 
     draw_item(CELLS[x -1][y - 1], x - 1, y - 1, check) 
    bomb_check(check) 

def draw_item(item, x, y, check): 
    global BLOCK_SIZE, screen 
    background = pygame.image.load("img/white.png") 
    if check in BOMBS: 
     image = pygame.image.load("img/9.png") 
    else: 
     image = pygame.image.load("img/"+str(item)+".png") 
    x, y = x * BLOCK_SIZE, y * BLOCK_SIZE 
    screen.blit(background, (x, y)) 
    screen.blit(image, (x + 10, y + 10)) 
    pygame.display.flip() 

の座標を示してどのようです

FLAGS =フラグが立てられた位置のリスト

CLICKEDがクリックされた位置

のリストを= bomb_check =座標クリック私はpygameのダウンロードと数学の両方をインポートした爆弾

であれば処理します。

今のよう

は、コードは今ちょうどあなたがクリックしたタイルを開きますが、私は解決策を持って

+0

質問を明確にしてください。私はあなたの問題やコードが何であるかを理解できないようです。 – jadsq

+0

@jadsq私は、アドバイスや、私のコード行の出発点を得たいと思っています。前のコードは、コードが現時点でどのように動作しているかのイメージを提供するためのものです。私が知りたいことは、私がすべてを表示したいので、グリッドのすべての座標をどのように利用できるかです。 –

+0

@jadsqこのコードでは、クリックしたタイルを開くだけですが、グリッド内のすべてのタイルを開くための別のコード行を取得する方法を知りたいと思います。 –

答えて

1

グリッド内のすべてのタイルを開くために、コードの別の行を取得する方法を知りたい:

def show_board(): 
for x in range(0,GRID_TILES): 
    for y in range(0, GRID_TILES): 
     draw_item(CELLS[x][y], x, y, (x+1,y+1)) 

爆弾を打った後にこれを呼び出すと、ボード全体が表示されます。 私は、グリッド上の座標ひとつひとつを使用したい場合は、単に

def show_board(): 
for x in range(0,GRID_TILES): 
    for y in range(0, GRID_TILES): 

で十分です。

関連する問題