2011-10-04 3 views

답변

4

플레이어가 승리 한 경우

numUnopenedCells == numBombs 

(그것의 초기 상태에, 또는 광산 플래그가 있으면 셀 개봉 임). numUnopenedCells < numBombs 다음 플레이어는 반드시 폭탄 셀을 "열"하고 이미 손실 된 경우 폭탄 없습니다

  • numUnopenedCells > numBombs 경우 플레이어 개봉 한 세포는
  • (즉, 어떤 작업을 할 왼쪽). 나는 그것의 어떤 시점에서 마지막 클릭이 승자를 감지합니다, 클릭을 감지 된 ActionListener의 일부가 될 것 알고


.

예,이 조각은 액션 청취자에 의해 직접 또는 간접적으로 실행됩니다. 게임 상태 모델을 제안하고 openCell(int x, int y) 메서드에서 위를 확인하고 적절한 조치를 취하십시오.

+0

+1 - 방금 내 대답을 삭제했습니다 - 나는 결국 당신이 의미하는 것을 보았습니다. 마지막 코멘트에 대한 답변으로 – hvgotcodes

+0

님께, minesweeper 님이 가끔 사용자를 추동하도록 강요합니다. 그 3 셀 상황에서, 광산을 가지고있는 셀을 알 수있는 방법이 없습니다. 결국 당신은 추측해야합니다. – hvgotcodes

+0

네, 맞습니다. – aioobe

1

열린 필드가 #(all fields) - #(bomb fields) 인 경우

+0

"열린 * 필드가있는 경우 ..."라고 생각하는 경우 – aioobe

+0

탱크. 내 게시물을 수정했습니다. – MasterCassim

관련 문제