pygame設計一個刮刮樂加分小遊戲小程序

預期成果:
一個4×4的表格,每個空有一隻動物,點擊動物,動物消失,下面出現隨機的數字,學生加相應的分數。
在這裏插入圖片描述

最終達到:隨機數字,隨機圖像,封裝成exe方便在不同電腦使用。
--------------------我是分割線-------------------
前期工作:安裝python,安裝pygame。
windows命令提示符安裝pygame

pip install pygame

安裝python轉exe的工具:PyInstaller

pip install PyInstaller

開工!
STEP1 實現一張圖片的顯示。

import pygame
import sys
pygame.init()  # 初始化pygame

size = width, height = 600, 600  # 設置窗口大小
screen = pygame.display.set_mode(size)  # 顯示窗口

jpgFileName = "pic/pic1 (1).png"

while True:  # 死循環確保窗口一直顯示
    for event in pygame.event.get():  # 遍歷所有事件
        if event.type == pygame.QUIT:  # 如果單擊關閉窗口,則退出
            sys.exit()
        imgRect = pygame.image.load(jpgFileName)
        screen.blit(imgRect,[0,0])
        pygame.display.flip()  # 更新全部顯示


pygame.quit()  # 退出pygame

輸出爲:
在這裏插入圖片描述
STEP2 實現點擊後圖片消失。
(失敗,網上說圖片不能消失,可以重新繪製,可以做一個列表,再列表中刪除,再重新繪製,貌似我不會啊,先簡單實現點擊後出現另一張圖片)
在這裏插入圖片描述
STEP2.1 實現點擊圖片後顯示另一張圖片。

import pygame
import sys
pygame.init()  # 初始化pygame

size = width, height = 600, 600  # 設置窗口大小
screen = pygame.display.set_mode(size)  # 顯示窗口

jpgFileName = "pic/pic1 (1).png"
imgRect = pygame.image.load(jpgFileName)
jpgFileName2 = "pic/pic1 (2).png"
imgRect2 = pygame.image.load(jpgFileName2)
screen.blit(imgRect, [0, 0])


while True:  # 死循環確保窗口一直顯示
    for event in pygame.event.get():  # 遍歷所有事件
        if event.type == pygame.QUIT:  # 如果單擊關閉窗口,則退出
            sys.exit()

        if event.type == pygame.MOUSEBUTTONDOWN and 0<=event.pos[0]<=200 and 0<=event.pos[0]<=200: #判斷鼠標位置以及是否摁了下去。:裏面的200是我隨便寫的數,到時候需要根據圖片尺寸修改。
            screen.blit(imgRect2, [0, 0])

        pygame.display.flip()  # 更新全部顯示
        
pygame.quit()  # 退出pygame

STEP3 規範圖片尺寸和圖片名稱。
是不是需要設計一個統一的規則,比如圖片點擊後,不論點擊哪張?我這水平的…什麼類?什麼函數?呃呃呃
還要考慮隨機圖片名稱和函數,所以最好用上面說的,建一個列表,點擊後將列表更新,比如正常是000000,顯示,點擊了第三個圖片,列表更新爲001000,1表示分數數字。
要做這麼幾件事:

  • 動物圖片準備好,統一大小尺寸。命名按pic0、pic1、pic2這樣排下來。
  • 數字(分數)圖片準備好,統一大小尺寸,命名按num1、num2、num3
  • 思考列表和隨機順序的事。

未完待續

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章