zoukankan      html  css  js  c++  java
  • python实现黑客字幕雨效果

    具体内容如下

    #################################### 
    #name : HACKER EMPIRE CAPTION RAIN 
    #import modules 
    try : 
      import pygame 
      import sys 
      from pygame.locals import * 
      from random import randint 
    except : 
      print("Load modules error!!") 
      exit() 
     
     
    #define some datas 
    SCREEN_WIDTH = 1366 
    SCREEN_HEIGHT = 768 
    LOW_SPEED = 30 
    HIGH_SPEED = 30 
    LOW_SIZE = 5 
    HIGH_SIZE = 30 
    FONT_SIZE = 40 
    FONT_NAME = "myfont.ttf" 
    FREQUENCE = 50 
    times = 0 
     
     
    #def random color 
    def randomcolor() : 
      return (randint(0,255),randint(0,255),randint(0,255)) 
     
     
    def randomspeed() : 
      return randint(LOW_SPEED,HIGH_SPEED) 
     
     
    def randomposition() : 
      return (randint(0,SCREEN_WIDTH),randint(0,SCREEN_HEIGHT)) 
     
     
    def randomsize() : 
      return randint(LOW_SIZE,HIGH_SIZE) 
     
     
    def randomoname() : 
      return randint(0,100000) 
     
     
    def randomvalue() : 
      return randint(0,9)#this is your own display number range 
     
     
    #class of sprite 
    class Word(pygame.sprite.Sprite) : 
      def __init__(self,bornposition) : 
        pygame.sprite.Sprite.__init__(self) 
        self.value = randomvalue() 
        self.font = pygame.font.Font(FONT_NAME,FONT_SIZE) 
        self.image = self.font.render(str(self.value),True,randomcolor()) 
        self.speed = randomspeed() 
        self.rect = self.image.get_rect() 
        self.rect.topleft = bornposition 
      def update(self) : 
        self.rect = self.rect.move(0,self.speed) 
        if self.rect.top > SCREEN_HEIGHT : 
          self.kill() 
    #init the available modules 
    pygame.init() 
    screen = pygame.display.set_mode((SCREEN_WIDTH,SCREEN_HEIGHT)) 
    pygame.display.set_caption("HACKER EMPIRE CAPTION RAIN") 
    clock = pygame.time.Clock() 
    group = pygame.sprite.Group() 
    group_count = SCREEN_WIDTH / FONT_SIZE 
     
     
    #mainloop 
    while True : 
      time = clock.tick(FREQUENCE) 
      for event in pygame.event.get() : 
        if event.type == QUIT : 
          pygame.quit() 
          exit() 
      screen.fill((0,0,0)) 
      for i in range(0,group_count) : 
        group.add(Word((i * FONT_SIZE,-FONT_SIZE))) 
      group.update() 
      group.draw(screen) 
     
      pygame.display.update() 
     
      #save pictures 
      #times += time 
      #if times > 5000 : 
        #pygame.image.save(screen,str(randomoname())+".png") 
     
     
    ###########################
  • 相关阅读:
    mysql03聚合函数
    栈、队列、循环队列、双端队列、优先级队列04
    OOAD之策略模式(1)
    jvm01:java内存区域与内存
    Python+Selenium
    Python+Selenium
    Python+Selenium
    Python+Selenium
    Python+Selenium
    Python+Selenium
  • 原文地址:https://www.cnblogs.com/zaixiachengxuyuan/p/14465704.html
Copyright © 2011-2022 走看看