1. 程式人生 > >結對-貪吃蛇-結對項目總結

結對-貪吃蛇-結對項目總結

出現 com 語言 not nothing 網絡資源 過程 display 準備

團隊成員:邵瀚慶、徐宏璇

項目名稱:貪吃蛇

碼雲地址:https://gitee.com/nothingbigger/snake

所需軟件:Python、pygame

———————————————————————————————————————

一、編寫前準備步驟

  1)、安裝Python、pygame

  2)、技術分享對遊戲進行初步設計;遊戲窗口、遊戲所需功能、以及一些輔助功能。

  3)、編寫程序。

  4)、檢查並修改錯誤,代碼準確無誤後發布

二、流程圖

  技術分享

三、主題模塊代碼

  1)、繪制遊戲窗口 

1 width,height=640,480
2 screen=pygame.display.set_mode((width,height))

  2)、繪制蛇身

1 snake = [pygame.Rect(10, 10, 10, 10), pygame.Rect(10, 20, 10, 10)]

  3)、繪制食物

1    if food is None:
2         food = pygame.Rect(randrange(48) * 10, randrange(48) * 10, 10, 10)
3     pygame.draw.rect(screen, (0, 0, 0), food)

  4)、設置控制蛇身移動的按鍵

 1 if event.key == pygame.K_UP and dir != down:
 2             dir = up
3 4 if event.key == pygame.K_DOWN and dir != up: 5 dir = down 6 7 if event.key == pygame.K_LEFT and dir != right: 8 dir = left 9 10 if event.key == pygame.K_RIGHT and dir != left: 11 dir = right

  5)、設置計分板

1  surface = font.render(u分數+str(score), True, (0,0,0))
2 screen.blit(surface, (560, 0))

  6)、判斷死亡

1 if node in snake or node.left > width or node.top > height or node.left < 0 or node.top < 0:
2         dead = True
3         continue
4 
5     if node == food:
6         food = None
7         score += 10
8     else:
9         del snake[0]

 三、運行截圖

      技術分享 

      技術分享

總結及展望:emmmmmmm.......通過本次項目,我獲取到了很多關於python的知識,並通過在網絡上的學習,積累了一些利用Python開發遊戲的經驗,以及新建程序的詳細步驟,熟悉了python操作和功能,並且了解了python語言。

      在開發項目過程中遇到很多的困難,程序也有不少bug,從無到有,一點一點的查閱資料,通網絡學習編程知識,在這個過程中,增強了自學能力和對程序開發的興趣,並且學習到了更加充分合理地利用網絡資源。

      雖然我們開發的程序很簡單,但我們同樣由此獲益匪淺,感觸頗深,當然也發現了許多自己的不足。一次次修改,一次次失敗,就像貪吃蛇想方設法吃到食物,只有認真學好基礎理論,並結合實踐經驗才會取得進步。

      有時我們的意見出現分歧,但是通過雙方的共同努力,一起討論,一起研究怎樣解決問題,我們也收獲了很多。

結對-貪吃蛇-結對項目總結