猫史档案馆


【Python作品分享】黑客帝国代码雨【作品秀】

用户:冲动的笨笨鸭2Dod冲动的笨笨鸭2Dod查看:4 回复:14 评论:4 创建时间:2020-03-30T21:53:33


【作品展示】

center_image

 

【作品介绍】

喵神器,效果类开发必备

 

【作品源代码】

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# @Date  : 2018/10/23

import random

import pygame

PANEL_width = 600
PANEL_highly = 500
FONT_PX = 15

pygame.init()

# 创建一个可是窗口
winSur = pygame.display.set_mode((PANEL_width, PANEL_highly))

font = pygame.font.SysFont("123.ttf", 25)

bg_suface = pygame.Surface((PANEL_width, PANEL_highly), flags=pygame.SRCALPHA)

pygame.Surface.convert(bg_suface)
bg_suface.fill(pygame.Color(0, 0, 0, 28))
winSur.fill((0, 0, 0))
# 数字版
# texts = [font.render(str(i), True, (0, 255, 0)) for i in range(10)]
# 字母版
letter = ['q', 'w', 'e', 'r', 't', 'y', 'u', 'i', 'o', 'p', 'a', 's', 'd', 'f', 'g', 'h', 'j', 'k', 'l', 'z', 'x', 'c','v', 'b', 'n', 'm']
texts = [font.render(str(letter[i]), True, (0, 255, 0)) for i in range(26)]
# 按屏幕的宽带计算可以在画板上放几列坐标并生成一个列表
column = int(PANEL_width / FONT_PX)
drops = [0 for i in range(column)]
while True:
    # 从队列中获取事件
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            exit()
        elif event.type == pygame.KEYDOWN:

            chang = pygame.key.get_pressed()
            if(chang[32]):
                exit()

    # 将暂停一段给定的毫秒数
    pygame.time.delay(30)

    # 重新编辑图像第二个参数是坐上角坐标
    winSur.blit(bg_suface, (0, 0))

    for i in range(len(drops)):
        text = random.choice(texts)

        # 重新编辑每个坐标点的图像
        winSur.blit(text, (i * FONT_PX, drops[i] * FONT_PX))

        drops[i] += 1
        if drops[i] * 10 > PANEL_highly or random.random() > 0.95:
            drops[i] = 0

    pygame.display.flip()

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 1下一页
白泽15白泽15

666

点赞0


评论


星辰_梦逍遥的小弟星辰_梦逍遥的小弟

emotion_编程猫_厉害了

点赞0


评论


YLS元宝吖YLS元宝吖

偷偷盗走,然后。。。跟我的麻麻装个x

点赞2


评论


无段双云无段双云

厉害厉害!不过那应该是0和1吧

点赞0


评论


MGS史蒂夫苏霍伊MGS史蒂夫苏霍伊

emotion_编程猫_点赞

点赞0


评论


無一郎無一郎

emotion_编程猫_厉害了

点赞0


评论


MGS史蒂夫苏霍伊MGS史蒂夫苏霍伊

emotion_编程猫_厉害了

点赞0


评论


名字是什么a名字是什么a

666

 

点赞0


评论


Python小伙lpPython小伙lp

@作者:

恭喜你被官方海龟认可......

点赞0


评论


QBZ_QBZ_

.。。这个我也做过和你一模一样

点赞1


评论


dounsm36dounsm36

666

点赞0


评论


我是谁..我是谁..

emotion_编程猫_厉害了

点赞0


评论


星能猫8Ulx星能猫8Ulx

html代码:

<!DOCTYPE html>

<!-- saved from url=(0032)http://tool.uixsj.cn/hack-html5/ -->

<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">  

  

<meta http-equiv="X-UA-Compatible" content="IE=edge">  

<meta name="viewport" content="width=device-width, initial-scale=1">  

<meta name="apple-mobile-web-app-capable" content="yes">  

<meta name="apple-touch-fullscreen" content="yes">  

<meta name="apple-mobile-web-app-status-bar-style" content="">  

<meta name="full-screen" content="yes">   

<meta name="x5-fullscreen" content="true">   

<meta name="browsermode" content="application">   

<meta name="x5-page-mode" content="app">   

<style type="text/css">*{margin:0;overflow:hidden;}canvas{display:block;cursor:none;}</style>  

<title>代码雨</title>  

<script type="text/javascript">  

        window.onload=function(){  

            var c = document.getElementById("c");  

            var ctx = c.getContext("2d");  

              

            //使画布全屏  

            c.height = window.innerHeight;  

            c.width = window.innerWidth;  

              

            var txts = "0123456789QWERTYUIOPASDFGHJKLZXCVBNMqazwsxedcrfvtgbyhnujmikolp";  //随机的

            //转换为数组  

            txts = txts.split("");  

              

            var font_size = 15;  

            var columns = c.width/font_size; //计算纵队数  

              

            var drops = [];  

            //初始值  

            for(var x = 0; x < columns; x++)  

                drops[x] = 1;   

              

            //窗体大小发生改变  

            window.onresize = function(){  

                //使绘图区域全屏  

                c.height = window.innerHeight;  

                c.width = window.innerWidth;  

                columns = c.width/font_size; //计算纵队数  

                for(var x = 0; x < columns; x++)  

                    drops[x] = 1;  

            }  

              

            //进入全屏  

            function requestFullScreen() {  

                var de = document.documentElement;  

                if (de.requestFullscreen) {  

                    de.requestFullscreen();  

                } else if (de.mozRequestFullScreen) {  

                    de.mozRequestFullScreen();  

                } else if (de.webkitRequestFullScreen) {  

                    de.webkitRequestFullScreen();  

                }  

            }  

              

            //添加点击监听事件(点击全屏)  

            document.body.addEventListener('click',function(){  

                requestFullScreen(); //当你点击鼠标时会全屏  

            },false);  

              

            //绘制下落的文字  

            function draw()  

            {  

                //让背景逐渐由透明到不透明  

                ctx.fillStyle = "rgba(0, 0, 0, 0.07)";  

                ctx.fillRect(0, 0, c.width, c.height);  

                  

                ctx.fillStyle = "#0F0"; //文本颜色(绿色)  

                ctx.font = font_size + "px arial";  

                //逐行输出文字  

                for(var i = 0; i < drops.length; i++)  

                {  

                    //随机取要输出的文字  

                    var text = txts[Math.floor(Math.random()*txts.length)];  

                    //输出文字,注意坐标的计算  

                    ctx.fillText(text, i*font_size, drops[i]*font_size);  

                       

                    if(drops[i]*font_size > c.height || Math.random() > 0.95)  

                        drops[i] = 0;  

                      

                    //用于Y轴坐标增加  

                    drops[i]++;  

                }  

            }  

              

            setInterval(draw, 33);//定时执行  

        }  

    </script>  

<style>@media print {#ghostery-purple-box {display:none !important}}</style></head>  

<body>  

<canvas id="c" height="796" width="1136">404 error</canvas>  

  

  </body></html>

点赞0


评论


弑血残狼弑血残狼

imgsr喵demao.cn/emoji/codemao/%E7%BC%96%E7%A8%8B%E7%8C%AB_%E6%BA%9C%E4%BA%86%E6%BA%9C%E4%BA%86.gif"alt="emotion_编程猫_溜了溜了"

点赞0


评论