2013-07-26 27 views
3

我試圖實現類似於炸彈人般的遊戲的AI行爲。 我有3種類型的瓷磚,可行走,不可行走(牆壁)和可破壞(箱子等),如果被摧毀,它們可以走路。 因此,例如:阿斯塔與可破壞的障礙

  1. 選擇隨機播放,目標
  2. 如果有一條小路,走
  3. 如果沒有清晰的路徑,但它可以通過摧毀的東西進行,去破壞瓷磚,並摧毀它
  4. 如果沒有路徑,改變目標

任何想法如何實現這一點?

回答

3

將圖表視爲weighted graph。給每個步行式瓷磚weight=1和每個可破壞式瓷磚一個更大的重量weight = total number of tiles將工作 - 它只是需要大於最長的路徑)

這將導致AI摧毀達到目標所需的最小瓷磚數量。