我使用Python 2.7.3和Pyglet 1.1.4和 創建迷宮/ labirynth遊戲我有一個問題和一個問題。迷宮/ labirynth遊戲 - 幾個問題 - Python 2.7.3 Pyglet 1.1.4
我的代碼可以在這裏找到:https://github.com/czarnot/labirynth_py
啓動程序,啓動main.py與蟒蛇。
移動CPU使用「a」按鈕。這是我的主要問題。我想讓CPU在沒有用戶輸入的情況下移動 - 我希望它每0.5或1秒移動一步。
我嘗試在cpu步驟之間使用time.sleep(),它只是睡眠所有步驟,然後傳送到最後。我認爲這是Pyglet的東西 - 可能帶有繪圖功能,因爲睡眠效果很好(當打印在那裏,在睡覺後打印)。
下面是代碼,它與「A」按鈕(main.py)現在的工作的一部分:
elif symbol == key.A:
if win == 0:
#for item in cpu:
item = cpu[x]
window.clear()
player.draw()
if item == 'North':
player.y += fieldlength
elif item == 'South':
player.y -= fieldlength
elif item == 'East':
player.x += fieldlength
elif item == 'West':
player.x -= fieldlength
x += 1
而且我試過的代碼(我也嘗試過其他一些組合...):
elif symbol == key.A:
if win == 0:
for item in cpu:
window.clear()
player.draw()
if item == 'North':
player.y += fieldlength
elif item == 'South':
player.y -= fieldlength
elif item == 'East':
player.x += fieldlength
elif item == 'West':
player.x -= fieldlength
time.sleep(1)
另一個問題:
我的地圖生成算法很簡單 - 它選擇隨機細胞,然後挑選該小區的隨機鄰居,從他們的鄰居列表中刪除此細胞,將牆放入WallList中。
我要做出更好的地圖生成算法 - 像這樣從維基百科:http://en.wikipedia.org/wiki/Maze_generation_algorithm#Depth-first_search
我不知道如果我的牆上繪製方法是有效的 - 那豈不是更好地存儲12張圖像的每面牆上組合在MyMap值中存儲「WallNumber」值? 這裏是一個WallNumber值的例子:http://imgur.com/DDfL1
我也想問一下,因爲我覺得我現在有這個方法,爲此編寫更好的地圖生成算法會非常困惑和棘手。
@@ EDIT @zenpoy:我早些時候試過使用這個函數,但是我一定做了錯誤,現在我嘗試了它,它工作:)。