前言
🚀 作者 :“程序员梨子”
🚀 **文章简介 **:本篇文章主要是写了Pygame的合集系列六个游戏都有源码啦~
🚀 **文章源码免费获取 : 为了感谢每一个关注我的小可爱💓每篇文章的项目源码都是无
偿分享滴💓👇👇
点这里蓝色这行字体自取,需要什么源码记得说标题名字哈!私信我也可!
🚀 欢迎小伙伴们 点赞👍、收藏⭐、留言💬
正文
过了2000年后,PC与各类主机逐渐兴起,街机店纷纷倒闭,到目前为止街机已经基本灭绝。现在
只能在一些大型电玩城里才能看到街机的身影了,可是这类场所的消费一般都比较高,这也导致很
多00后的小朋友甚至根本就没玩过街机。
今天就小编来说一说当年你最喜欢玩的6款游戏叭,一起来回味一下吧!
(顺便说下:这个系列都是有完整的素材跟源码的哦,需要的找我啦)
一、《吃豆人》小游戏
被认为是80年代最经典的街机游戏之一,也是最受大家欢迎的。游戏的主角小精灵的形象甚至被作
为一种大众文化符号。
主程序:
import sys
import cfg
import pygame
import modules.Levels as Levels
'''开始某一关游戏'''
def startLevelGame(level, screen, font):
clock = pygame.time.Clock()
SCORE = 0
wall_sprites = level.setupWalls(cfg.SKYBLUE)
gate_sprites = level.setupGate(cfg.WHITE)
hero_sprites, ghost_sprites = level.setupPlayers(cfg.HEROPATH, [cfg.BlinkyPATH, cfg.ClydePATH, cfg.InkyPATH, cfg.PinkyPATH])
food_sprites = level.setupFood(cfg.YELLOW, cfg.WHITE)
is_clearance = False
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
sys.exit(-1)
pygame.quit()
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_LEFT:
for hero in hero_sprites:
hero.changeSpeed([-1, 0])
hero.is_move = True
elif event.key == pygame.K_RIGHT:
for hero in hero_sprites:
hero.changeSpeed([1, 0])
hero.is_move = True
elif event.key == pygame.K_UP:
for hero in hero_sprites:
hero.changeSpeed([0, -1])
hero.is_move = True
elif event.key == pygame.K_DOWN:
for hero in hero_sprites:
hero.changeSpeed([0, 1])
hero.is_move = True
if event.type == pygame.KEYUP:
if (event.key == pygame.K_LEFT) or (event.key == pygame.K_RIGHT) or (event.key == pygame.K_UP) or (event.key == pygame.K_DOWN):
hero.is_move = False
screen.fill(cfg.BLACK)
for hero in hero_sprites:
hero.update(wall_sprites, gate_sprites)
hero_sprites.draw(screen)
for hero in hero_sprites:
food_eaten = pygame.sprite.spritecollide(hero, food_sprites, True)
SCORE += len(food_eaten)
wall_sprites.draw(screen)
gate_sprites.draw(screen)
food_sprites.draw(screen)
for ghost in ghost_sprites:
# 幽灵随机运动(效果不好且有BUG)
'''
res = ghost.update(wall_sprites, None)
while not res:
ghost.changeSpeed(ghost.randomDirection())
res = ghost.update(wall_sprites, None)
'''
# 指定幽灵运动路径
if ghost.tracks_loc[1] < ghost.tracks[ghost.tracks_loc[0]][2]:
ghost.changeSpeed(ghost.tracks[ghost.tracks_loc[0]][0: 2])
ghost.tracks_loc[1] +