您的位置:首页 > 编程语言 > Python开发

Python与PyGame实现模拟黑客帝国字幕雨效果

2014-10-21 08:41 686 查看
</pre><pre name="code" class="python">
</pre><p>昨天自学了一段代码,依葫芦画瓢做了个这么个效果,感觉挺带感的。</p><p>代码如下:</p><p></p><p><pre name="code" class="python">import pygame
from pygame.locals import *
from sys import exit
import random

pygame.init()
SCREEN_SIZE = (640, 480)
screen = pygame.display.set_mode(SCREEN_SIZE, 0, 32)

font = pygame.font.SysFont("arial", 16);
font_height = font.get_linesize()
#event_text = []
texts=[['0']*80]

while True:
event= pygame.event.poll()
i=0
t=80
tx=[]
while i<t:
tx.append(chr(random.randint(1, 127)))
i+=1
texts.append(tx)
texts=texts[-SCREEN_SIZE[1]/font_height:]
#这个切片操作保证了event_text里面只保留一个屏幕的文字

if event.type == QUIT:
exit()

screen.fill((0, 0, 0))#屏幕填充黑色
y = SCREEN_SIZE[1]-font_height
#找一个合适的起笔位置,最下面开始但是要留一行的空
for text in texts:
x=0
for c in text:
screen.blit( font.render(c, True, (0, 255, 0)), (x, y) )
x+=20
#以后会讲
y-=font_height
#把笔提一行
i=i+1

pygame.display.update()



参考文章:http://eyehere.net/2011/python-pygame-novice-professional-2/#comment-3683
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: