Python代码,能玩30多款童年游戏!这些有几个是你玩过的
大游戏小游戏有千千万万,这些小游戏应该只有90后才玩过和懂吧
儿童节即将到来,虽然秃头程序员没有头发,但是童心还是一直都在的,今天就分享一些私藏的童年游戏,十几行代码就能进入使用Python开发的小游戏快乐玩耍!
使用工具:
Python3.8、pycharm2020
也可以不安装pycharm2020也可以直接运行~但是安装了些会好一点
1.五子棋
源码:
'''游戏开始界面'''
class gameStartUI(QWidget):
def __init__(self, parent=None, **kwargs):
super(gameStartUI, self).__init__(parent)
self.setFixedSize(760, 650)
self.setWindowTitle('五子棋 —— 九歌')
self.setWindowIcon(QIcon(cfg.ICON_FILEPATH))
# 背景图片
palette = QPalette()
palette.setBrush(self.backgroundRole(), QBrush(QPixmap(cfg.BACKGROUND_IMAGEPATHS.get('bg_start'))))
self.setPalette(palette)
# 按钮
# --人机对战
self.ai_button = PushButton(cfg.BUTTON_IMAGEPATHS.get('ai'), self)
self.ai_button.move(250, 200)
self.ai_button.show()
self.ai_button.click_signal.connect(self.playWithAI)
# --联机对战
self.online_button = PushButton(cfg.BUTTON_IMAGEPATHS.get('online'), self)
self.online_button.move(250, 350)
self.online_button.show()
self.online_button.click_signal.connect(self.playOnline)
'''人机对战'''
def playWithAI(self):
self.close()
self.gaming_ui = playWithAIUI(cfg)
self.gaming_ui.exit_signal.connect(lambda: sys.exit())
self.gaming_ui.back_signal.connect(self.show)
self.gaming_ui.show()
'''联机对战'''
def playOnline(self):
self.close()
self.gaming_ui = playOnlineUI(cfg, self)
self.gaming_ui.show()
'''run'''
if __name__ == '__main__':
app = QApplication(sys.argv)
handle = gameStartUI()
font = QFont()
font.setPointSize(12)
handle.setFont(font)
handle.show()
sys.exit(app.exec_())
2.超级玛丽
这个源码超级多多,文件很大很大~
如果对Python爬虫、数据分析、机器学习、人工智能、面试经验、接单兼职、代码画图、游戏代码感兴趣可以进到881744585,群内会有不定期的分享学习资料和有趣的代码。还会有技术大牛,业内同行一起交流技术
else:
break
Interface(screen, cfg, mode='game_end')
可以关注公众号:学习py最风sao的方式
pygame.display.update()
clock.tick(cfg.FPS)
if is_win_flag:
3.炸弹人
源码:
'''游戏主程序'''
def main(cfg):
# 初始化
pygame.init()
pygame.mixer.init()
pygame.mixer.music.load(cfg.BGMPATH)
pygame.mixer.music.play(-1, 0.0)
screen = pygame.display.set_mode(cfg.SCREENSIZE)
pygame.display.set_caption('Bomber Man —— 九歌')
# 开始界面
Interface(screen, cfg, mode='game_start')
# 游戏主循环
font = pygame.font.SysFont('Consolas', 15)
for gamemap_path in cfg.GAMEMAPPATHS:
# -地图
map_parser = mapParser(gamemap_path, bg_paths=cfg.BACKGROUNDPATHS, wall_paths=cfg.WALLPATHS, blocksize=cfg.BLOCKSIZE)
# -水果
fru
西幺二: 还有吗? ……
灰太狼...: 请问这个可以打包成exe文件吗
不喝水的鱼儿: 为什么我没有Manage Repositories
河清海晏145: 好像还少了限制重复
ZUI1124: 二: 利润(i) = 奖金/奖金提成% 10 20 40 60 100 100+ 10 10 20 20 40 (m-100) 0.1 0.075 0.005 0.003 0.0015 0.0001 def get_bonus(profit): if profit <= 100000: m = profit * 0.1 print(m) elif 100000 < profit <= 200000: m = (100000*0.1)+(profit-100000)*0.075 print(m) elif 200000 < profit <= 400000: m = (100000*0.1) + (100000*0.075) + (profit-200000)*0.005 print(m) elif 400000 < profit <= 600000: m = (100000*0.1) + (100000*0.075) + (200000*0.005) + (profit-400000)*0.003 print(m) elif 600000 < profit <= 1000000: m = (100000*0.1) + (100000*0.075) + (200000*0.005) + (200000*0.003) + (profit-600000)*0.0015 print(m) elif 1000000 < profit: m = (100000*0.1) + (100000*0.075) + (200000*0.005) + (200000*0.003) + (400000*0.0015) + (profit-1000000)*0.0001 print(m) if __name__ == "__main__": profit = int(input("请输入当月利润:") get_bonus(profit)