0
我只想對如何在pygame中使用類和子類的一般性解釋?super()._ init_如何在pygame中工作?
我只想對如何在pygame中使用類和子類的一般性解釋?super()._ init_如何在pygame中工作?
將蛇保留爲其分段/元素的列表。每個元素保持段位置(x,y)
。第一個元素是蛇頭。即。
snake = [(10,10), (11,10), (12,10)]
當蛇動作,那麼你在追加列表的開頭頭的新位置,並刪除最後一個元素 - 蛇/列表具有相同的長度。
# new head position
snake.insert(0, (9,10))
# remove tail
snake.pop()
當蛇吃東西時,你不會從列表中刪除最後一個元素。這種方式蛇更長。
# init data
make_longer = False
...
# snake eat sothing
make_longer = True
...
# new head position
snake.insert(0, (9,10))
# remove tail
if make_longer:
# skip removing last element once
make_longer = False
else:
snake.pop()
如果您想讓更多的元素多於一個元素,那麼不要多次刪除最後一個元素。
# init data
make_longer = 0
...
# snake eat sothing
# make_longer = 3
make_longer += 3 # better when snake eats more apples in short time
...
# new head position
snake.insert(0, (9,10))
# remove tail
if make_longer > 0:
make_longer -= 1
else:
snake.pop()
保持蛇作爲其片段/元素列表 - 每個元素保持其位置 - 第一個元素是蛇頭。當蛇移動時,你在列表開始處追加頭部的新位置,並移除最後一個元素 - 而蛇/列表具有相同的長度。當蛇吃東西時,一旦你不從列表中刪除最後一個元素。這種方式蛇更長。 – furas