pygame1.9.6版本 解释器:Python3 源码如下
import pygame
class Gamesubject():#Gamesubject=游戏主体
Window=None
SCREEN_WIDTH = 800
SCREEN_HEIGHT = 500
#游戏主窗口
def __init__(self):
pass
def Startgame(self): # Startgame=开始游戏
pygame.display.init()
Gamesubject.Window=pygame.display.set_mode([Gamesubject.SCREEN_WIDTH, Gamesubject.SCREEN_HEIGHT])
pygame.display.set_caption('坦克大战v1.0') # 设置游戏窗口标题
self.getTextSurface("aaa")
while True:
#于循环中完成事件的获取
self.getEvent()
pygame.display.update()
def getEvent(self):#获取鼠标,键盘事件
#获取所有事件
eventList =pygame.event.get()
#对所有事件进行处理
for event in eventList:
if event.type == pygame.QUIT:#判断退出键
self.Endgame()
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_LEFT:
print('坦克向左移动一步')
elif event.key == pygame.K_RIGHT:
print('坦克向右移动一步')
elif event.key == pygame.K_UP:
print('坦克向上移动一步')
elif event.key == pygame.K_DOWN:
print('坦克向下移动一步')
elif event.key == pygame.K_SPACE:
print('发射子弹')
#绘制左上角文字
def getTextSurface(self,text):
pygame.font.init()
fontList = pygame.get_fonts()
print(fontList)
#font = pygame.font.SysFont('',18)
#开始游戏方法
def Endgame(self): # Endgame=结束游戏
print('谢谢游玩')
exit()#结束python解释器
#结束游戏方法
class Tank():#Tank=坦克
def __init__(self):
pass
def move(self):#move=移动
pass
#坦克的移动
def shot(self):#shot=射击
pass
#坦克的射击
def DisplayTank():# Display=展示
pass
#展示坦克
class MyTank(Tank):# MyTank=我方坦克
def __init__(self):
pass
class Enemy(Tank):#Enemy=敌方坦克
def __init__(self):
pass
class bullet():#bullet=子弹
def __init__(self):
pass
def move(self):# move=移动
pass
#子弹的移动
def Displaybullet(): # Display=展示
pass
#展示子弹
class Blasteffect():#Blasteffect=爆炸效果
def __init__(self):
pass
def DisplayBlasteffect(): # Display=展示
pass
#展示爆炸效果
class wall():#wall=墙壁
def __init__(self):
pass
def Displaywall(): # Display=展示
pass
#展示墙壁
class music():#music=音效
def __init__(self):
pass
def play():
pass
#开始播放音乐
Gamesubject().Startgame()
运行结果及报错内容