要靠玩家自己写代码才能玩的游戏,程序员私藏的童年游戏
你的童年,我的童年好像都一样,谁的童年又没玩过游戏呢,这些小游戏应该只有玩过才会懂吧
虽然程序员敲代码多年,但童心还是一直都在的,今天就分享一些私藏的童年游戏,十几行代码就能进入使用Python开发的小游戏快乐玩耍!
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()
2.******人
如果你是一个80后,那么******人绝度是你童年的欢乐之一,虽然简单而粗糙的画面,却依旧抵挡不了它在FC上的经典。
'''游戏主程序'''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) # -水果 fruit_sprite_group = pygame.sprite.Group() used_spaces = [] for i in range(5): coordinate = map_parser.randomGetSpace(used_spaces) used_spaces.append(coordinate)
3.推箱子
不禁回味起了童年,推箱子顾名思义就是推箱子。用键盘上的上、下、左、右键移动小人,把箱子全部推到指定的位置即可过关。箱子只能推,不能拉,并且小人一次只能推动一个箱子。
'''开始游戏'''def startGame(screen): clock = pygame.time.Clock() # 加载字体 font = pygame.font.SysFont('arial', 18) if not os.path.isfile('score'): f = open('score', 'w') f.write('0') f.close() with open('score', 'r') as f: highest_score = int(f.read().strip()) # 敌方 enemies_group = pygame.sprite.Group() for i in range(55): if i < 11: enemy = enemySprite('small', i, cfg.WHITE, cfg.WHITE) elif i < 33: enemy = enemySprite('medium', i, cfg.WHITE, cfg.WHITE) else: enemy = enemySprite('large', i, cfg.WHITE, cfg.WHITE) enemy.rect.x = 85 (i % 11) * 50 enemy.rect.y = 120 (i // 11) * 45 enemies_group.add(enemy) boomed_enemies_group = pygame.sprite.Group() en_bullets_group = pygame.sprite.Group() ufo = ufoSprite(color=cfg.RED)
4.俄罗斯方块
回味一下属于我们的童年~俄罗斯方块,如果要说到游戏圈里的资历,俄罗斯方块应该是当之无愧的老大哥了
import osimport sysimport randomfrom modules import *from PyQt5.QtGui import *from PyQt5.QtCore import *from PyQt5.QtWidgets import * '''定义俄罗斯方块游戏类'''class TetrisGame(QMainWindow): def __init__(self, parent=None): super(TetrisGame, self).__init__(parent) # 是否暂停ing self.is_paused = False # 是否开始ing self.is_started = False self.initUI() '''界面初始化''' def initUI(self):
5.贪吃蛇
还记得当初在黑白掌机上玩的贪吃蛇吗?想重温当时的快乐,当时的回忆吗
import cfgimport sysimport pygamefrom modules import * '''主函数'''def main(cfg): # 游戏初始化 pygame.init() screen = pygame.display.set_mode(cfg.SCREENSIZE) pygame.display.set_caption('Greedy Snake —— 九歌') clock = pygame.time.Clock() # 播放背景音乐 pygame.mixer.music.load(cfg.BGMPATH) pygame.mixer.music.play(-1) # 游戏主循环 snake = Snake(cfg) apple = Apple(cfg, snake.coords) score = 0 while True:
6.井字棋
打赌大家在课堂上肯定玩过这个,想想当年和同桌玩这个废了好几本本子
from tkinter import *import tkinter.messagebox as msg root = Tk()root.title('TIC-TAC-TOE---Project Gurukul')# labelsLabel(root, text="player1 : X", font="times 15").grid(row=0, column=1)Label(root, text="player2 : O", font="times 15").grid(row=0, column=2) digits = [1, 2, 3, 4, 5, 6, 7, 8, 9] # for player1 sign = X and for player2 sign= Ymark = '' # counting the no. of clickcount = 0 panels = ["panel"] * 10 def win(panels, sign):
私信就领取游戏源代码哟~
- 12-14纳碧安热水器有噪音吗?给你贴心的温度纳碧安热水器评测
- 04-2490后火葬场上班五年转入殓师,90后入殓师的日常不参加婚喜寿宴
- 02-05赵孟頫的字为什么很浪?赵孟頫没见到他的字媚
- 04-28扒一扒赵丽颖容貌变化:娱乐圈的四位娃娃脸女星
- 04-28盘点奇葩的刷动图的视频:因格调不高被驳回排行榜
- 03-27单招对口报名详细流程 全面的对口单招报考流程
- 05-26夏天洗冷水澡有什么好处?为什么外国人普遍爱洗冷水澡
- 04-16比特币小时线触底反弹:比特币10600关口受阻上涨乏力
- 10-04女生垫胸用什么?女生垫胸有多,危险
- 04-20雅戈尔销量如何?雅戈尔多品牌战略缘何受挫
- 05-20飞达走纸歪斜故障排除技巧:飞达自动送纸机走2张
- 01-05怎么用父母姓氏给孩子起名?爸爸与妈妈的姓放在一起
- 04-18佛教四大名山:十方普贤菩萨
- 10-01燕麦牛奶是否会回奶 韭菜燕麦会导致妈妈回奶
- 04-07如何缓解鼻炎引起的哮喘?治疗哮喘偏方送给有你
- 03-23制作初代奥特曼卡片:自制初代奥特曼
热门
推荐
- 1简单的健美操动作教学260
- 2喝了黄芪水是放屁好还是不好,黄芪放屁多还继续喝吗441
- 3计算机安全应急预案101
- 42021兴业银行福建三明分行校园招聘公告371
- 5超市员工个人年终总结范文144
- 6雅思大作文范文科技类参考126
- 7爱情公寓经典段子179
- 8草莓的养殖方法和注意事项有哪些116