siriuskoan & yjrubixcube
$ python -m pip install pygame --user
$ python main.py
應該會跳出一個視窗,然後在 terminal 出現以下文字
物件.attribute
或是物件.method(參數)
class Food: # 有關Food的初始化、method、attribute等 def __init__(self, pos): self.surf = pg.surface.Surface(size=(SNAKE_SIZE, SNAKE_SIZE)) self.surf.fill(FOOD_COLOR) self.rect = self.surf.get_rect(topleft=pos) @property def pos_x(self): return self.rect.topleft[0] # 用Food生成一個物件food1 food1 = Food((100, 200)) print(food1.pos_x) # 100
player = Player() player.head_x player.head_y player.length player.snake_list # 一個list[list] player.snake_list[3] # [x, y, SNAKE_SIZE, SNAKE_SIZE]
遊戲裡面所有的座標都是記左上角!
遊戲裡面所有的座標都是記左上角!!
遊戲裡面所有的座標都是記左上角!!!
Food, Poison, Wall
foods, walls, next_walls (list)
p = Poison((89, 64)) x = foods[3].pos_x y = walls[2].pox_y
遊戲裡面所有的座標都是記左上角!
遊戲裡面所有的座標都是記左上角!!
遊戲裡面所有的座標都是記左上角!!!
(0, 0)
在畫面左上角用方向鍵控制蛇(黃藍)的移動
蛇碰到食物(紅色)會變長
吃完後要生新的食物
蛇吃到食物的時候後生新的牆壁(白色)
新的牆壁要在現有牆壁周圍
蛇吃到毒藥長度變短
吃到毒藥或食物後生成新的毒藥
增加程式的可讀性
推薦風格: PEP8
我們可以用black
來快速reformat
black
下載
$ python -m pip install black
reformat main.py
$ black main.py
reformat 所有檔案
$ black .
交作業的時候請繳交一個zip檔(王小明_北區.zip
)
解壓縮 王小明_北區.zip
後,資料夾的內容應該要長這樣
先把檔案放到資料夾王小明_北區
內,然後在終端機/cmd裡面打
zip -r 王小明_北區.zip 王小明_北區