加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python pygame黑客帝国的简单实现

发布时间:2020-12-20 12:54:09 所属栏目:Python 来源:网络整理
导读:####显示字符类 #coding=utf-8 import pygame import random class gameSprite(pygame.sprite.Sprite): ?def __init__(self,image_name,speed=1): ??super().__init__() ?? ?? ??font = pygame.font.SysFont(‘Consolas‘,40) ??rtext = font.render(bytes(i

####显示字符类

#coding=utf-8
import pygame
import random

class gameSprite(pygame.sprite.Sprite):
?def __init__(self,image_name,speed=1):
??super().__init__()
??
??
??font = pygame.font.SysFont(‘Consolas‘,40)
??rtext = font.render(bytes(image_name,encoding=‘utf-8‘),False,(random.randint(1,254),random.randint(0,255),255)))

??self.image = rtext
??self.speed = speed
??self.rect? = self.image.get_rect()

?def update(self,*args):
??self.rect.y += self.speed
?
?def setSpeed(self,speed):
??self.speed = speed

##循环主函数

#coding=utf-8
import pygame
import random
from plane_sprites import *

pygame.init()
clock = pygame.time.Clock()
screen = pygame.display.set_mode((0,0),pygame.FULLSCREEN)


listSprite = []
for nIndex in range(1000):
?
?spriteTemp = gameSprite(chr(random.randint(48,122)),random.randint(5,100))
?spriteTemp.rect.x = random.randint(0,1920)
?listSprite.append(spriteTemp)
?
char_group = pygame.sprite.Group(listSprite)

while True:
?for event in pygame.event.get():
???if event.type == pygame.QUIT:
????pygame.quit()
???if event.type == pygame.KEYDOWN:
????if event.key == pygame.K_ESCAPE:
?????pygame.quit()
?????
?

??
?for nIndex in range(1000):
??spriteTemp = listSprite[nIndex]
??if spriteTemp.rect.y > 1080 :
???spriteTemp.rect.x = random.randint(0,1920)
???spriteTemp.rect.y = 0
???spriteTemp.setSpeed(random.randint(5,100))
???

?screen.fill((0,0))
?
?char_group.update()
?
?char_group.draw(screen)
?
?pygame.display.update()
?
?clock.tick(60)
?

?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读