python玛丽冒险超级游戏程序源码
wx供重浩:創享日記
對話框發送:python瑪麗
免費獲取完整源碼源文件+配置教程說明+可執行文件
在PyCharm中運行《瑪麗冒險》即可進入如圖1所示的游戲主界面。
具體的操作步驟如下:
(1)游戲主窗體界面顯示后,游戲的背景地圖將自動加載與移動,此時會隨機出現管道、導彈障礙物。當遇到障礙物時按下鍵盤中的空格按鍵,瑪麗將實現跳躍,如圖2所示。
(2)每當越過一次障礙時,右上角的積分將自動增加1分。如圖3所示。
(3)如果瑪麗在移動的過程中不小心撞到了障礙物,此時游戲主界面的中間位置將顯示“Game Over”游戲結束的文字。如圖4所示。
游戲結束后,再次按下空格鍵將重新啟動游戲。
(4)如果不需要播放游戲的背景音樂時,可以單擊左上角的音樂按鈕,背景音樂播放時,控制按鈕的運行效果如圖5所示。背景音樂停止時,控制按鈕的運行效果如圖6所示。
部分源碼如下,其余完整詳見下載。
import random # 隨機數 # 障礙物類 class Obstacle():score = 1 # 分數move = 5 # 移動距離obstacle_y = 150 # 障礙物y坐標def __init__(self):# 初始化障礙物矩形self.rect = pygame.Rect(0, 0, 0, 0)# 加載障礙物圖片self.missile = pygame.image.load("image/missile.png").convert_alpha()self.pipe = pygame.image.load("image/pipe.png").convert_alpha()# 加載分數圖片self.numbers = (pygame.image.load('image/0.png').convert_alpha(),pygame.image.load('image/1.png').convert_alpha(),pygame.image.load('image/2.png').convert_alpha(),pygame.image.load('image/3.png').convert_alpha(),pygame.image.load('image/4.png').convert_alpha(),pygame.image.load('image/5.png').convert_alpha(),pygame.image.load('image/6.png').convert_alpha(),pygame.image.load('image/7.png').convert_alpha(),pygame.image.load('image/8.png').convert_alpha(),pygame.image.load('image/9.png').convert_alpha())# 加載加分音效self.score_audio = pygame.mixer.Sound('audio/score.wav') # 加分# 0和1隨機數r = random.randint(0, 1)if r == 0: # 如果隨機數為0顯示導彈障礙物相反顯示管道self.image = self.missile # 顯示導彈障礙self.move = 15 # 移動速度加快self.obstacle_y = 100 # 導彈坐標在天上else:self.image = self.pipe # 顯示管道障礙# 根據障礙物位圖的寬高來設置矩形self.rect.size = self.image.get_size()# 獲取位圖寬高self.width, self.height = self.rect.size# 障礙物繪制坐標self.x = 800self.y = self.obstacle_yself.rect.center = (self.x, self.y)# 障礙物移動def obstacle_move(self):self.rect.x -= self.move# 繪制障礙物def draw_obstacle(self):SCREEN.blit(self.image, (self.rect.x, self.rect.y))# 獲取分數def getScore(self):self.scoretmp = self.score;if tmp == 1:self.score_audio.play() # 播放加分音樂self.score = 0;return tmp;# 顯示分數def showScore(self, score):# 獲取得分數字self.scoreDigits = [int(x) for x in list(str(score))]totalWidth = 0 # 要顯示的所有數字的總寬度for digit in self.scoreDigits:# 獲取積分圖片的寬度totalWidth += self.numbers[digit].get_width()# 分數橫向位置Xoffset = (SCREENWIDTH - (totalWidth+30))for digit in self.scoreDigits:# 繪制分數SCREEN.blit(self.numbers[digit], (Xoffset, SCREENHEIGHT * 0.1))# 隨著數字增加改變位置Xoffset += self.numbers[digit].get_width()是任天堂出品的著名橫版過關游戲,該作最早在紅白機上推出,有多款后續作品,其中的主角馬里奧、路易、碧奇公主、奇諾比奧等已成為任天堂的招牌人物[1]。在游戲中,玩家控制馬里奧從庫巴手上設法營救碧奇公主。馬里奧的弟弟路易只能在游戲的多人模式中作為第二玩家加入,其角色情節與馬里奧完全相同。馬里奧是靠吃蘑菇成長,聞名世界的超級巨星。特征是大鼻子、頭戴帽子、身穿背帶工作服、還留著胡子。與他的雙胞胎兄弟路易基一起,長年擔任任天堂的招牌角色。帽子加背帶工作服、大鼻子和胡子等特征,離英雄的形象相差甚遠。再加上少許肥胖的身材,稍不留神可能就會把我們的英雄馬里奧當成在便利店打工的中年大叔。但是形象上所帶來的個性和親切感,卻在玩家的心中根深蒂固。馬里奧的誕生之父宮本茂的設計理念就是“像記號一般讓人一目了然的外貌,容易表現動作的配色”。當時限于硬件的機能,無法表現精密的畫面。為了清楚表現人物的動作,就把馬里奧的服裝設計成了背帶工作服,這樣可以很好地表現出手臂的動作。關于臉部的設計,當時的考慮是,就算設計得很仔細,在電視上也無法表現出來。有特點、容易辨認,才是設計的重點。所以就有了大鼻子、留胡子、戴帽子的設計。
總結
以上是生活随笔為你收集整理的python玛丽冒险超级游戏程序源码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【网络协议】TCP和HTTP中keep
- 下一篇: C#委托和事件的概念