挂一个无耻搬运工:码农教程。
真的打心底里瞧不起为了蹭热度全网照抄代码的某些人。

processing-python-泡泡龙


def setup():size(600,600)global x, y, vx, vy, theta, vtheta, bx, by, curBall, aliveBallglobal COLOR, c, bcglobal R, LR = 20L = 3theta = -PI/2vtheta = 0.01#球需要有速度,位置,颜色三个属性#对应x,y坐标、x,y速度、c#上方球由于固定,可以只有位置和颜色属性#对应bx,by和bcx, y = width/2, height#初始化球在中下位置,速度为0,颜色随机给一个vx, vy = 0, 0bx, by = [], []curBall = []aliveBall = []COLOR = [color(227,41,54),color(41,188,227),color(41,227,48),color(250,239,13)]#COLOR颜色列表,c和bc表示列表中的第几个颜色,而不是直接表示颜色c = int(random(len(COLOR)))bc = []for i in range(int(width/R/2)):for j in range(-int(height/R/2),int(height/R/2/5)):bx.append(i*2*R)by.append( j*2*R)curBall.append(len(curBall))#显示的球aliveBall.append(len(aliveBall))#活着的球bc.append(int(random(len(COLOR))))#死了的球def draw():global x, y, vx, vy, theta, vtheta, bx, by, curBall, aliveBallglobal COLOR, R, L, c, bcbackground(255)def findDead(i):d = [i]#打中了第i号球,d[]记录接下来找到的应该死掉的球def tmp(i):for j in curBall:#找和i相邻且同色的球,#首先排除掉已经找到的球,然后需要颜色编号相同,其次需要距离小于两球半径之和if j not in d and bc[j]==bc[i] and dist(bx[i],by[i],bx[j],by[j])<2.1*R:d.append(j)#确认过眼神,找到对的球j,用小本本记下来#接下来再找刚刚找到的球的下一个应该死掉的球tmp(j)tmp(i)#这样一直找下一个该死的泡泡龙#就得到了所有该死的球 (逃return dnoFill()ellipse(width/2,height,4*R,4*R)strokeWeight(2*R)line(width/2,height,width/2+20*L*cos(theta),height+20*L*sin(theta))strokeWeight(1)#画会动的球fill(COLOR[c])ellipse(x,y,2*R,2*R)for i in curBall:#画每个还没死的球fill(COLOR[bc[i]])ellipse(bx[i], by[i], 2*R, 2*R)#检查有没有被撞到if dist(bx[i], by[i], x, y)<2*R:if bc[i] == c:#某个同色球被撞到#找它旁边该死的球,以及旁边该死的球的旁边的该死的球,以及*******tmp = findDead(i)#找到了这一次所有该死的球#把他们从生死簿上重新做标记#地狱+1#人间-1for t in tmp:aliveBall.remove(t)#不管有没有撞到该死的球,都应该飞回原点 (逃else:nearx = [bx[i]-2*R,bx[i],bx[i],bx[i]+2*R]#附近的空位neary = [by[i],by[i]+2*R,by[i]-2*R,by[i]]for n in range(4):if dist(nearx[n],neary[n],x,y)<2*R:bx.append(nearx[n])#接近就粘贴by.append(neary[n])#实际上是添加新球bc.append(c)aliveBall.append(len(bx)-1)breakx, y  = width/2, heightvx, vy = 0, 0#顺便换个马甲再来c = int(random(len(COLOR)))curBall = aliveBall[:]if frameCount%200==0:for i in curBall:by[i] += 1if keyPressed:if keyCode == LEFT:theta -= vthetaelif keyCode == RIGHT:theta += vthetaif key == 's' or key == 'S':vx = L*cos(theta)vy = L*sin(theta)#更新一下,现在显示的球全是没死的球x += vxy += vy#左右碰壁就反弹if x>width-R or x<R:vx = -vx# 上面碰壁也反弹if y<R:vy = -vy#下面碰壁就还原if y>height+R:x, y = width/2, heightvx, vy = 0, 0#换个马甲c = int(random(len(COLOR)))def mousePressed():global vx, vy, theta, Lvx = L*cos(theta)vy = L*sin(theta)def mouseMoved():global thetapx = mouseX-width/2.0if px==0:px=0.00001py = mouseY-heighttheta = -PI+atan(py/px) if px<0 else atan(py/px)

最后还是要为公众号拉点流量:

processing-python-泡泡龙(终极真实版)相关推荐

  1. python核心编程第二版pdf_Python Book电子书pdf版合集 Python核心高级编程第二版

    1小时学会Python.doc 51CTO下载-[Python系列].BeginningPythonFromNovicetoProfessionalSecondEdition.pdf 8.Python ...

  2. 【Python 自然语言处理 第二版】读书笔记1:语言处理与Python

    文章目录 前言 语言处理与Python 一.语言计算:文本和单词 1.NLTK入门 (1)安装(nltk.nltk.book) (2)搜索文本 (3)词汇计数 2.列表与字符串 (1)列表操作 (2) ...

  3. python软件下载安装百度网盘-【python编程+第四版】百度云下载 - 云盘精灵

    |- 用Python3带你从小白入门机器学习实战教程手册.pdf - 7.30 MB |- 人工智能Python实战代码 Python code for Artificial Intelligence ...

  4. FL Studio for 21 Windows版 Producer Edition v21.0.3 Build 3517官方中文免费终极解锁版下载

    FL Studio for 21 Windows版 Producer Edition v21.0.3 Build 3517官方中文免费终极解锁版下载 是一款强大的数字音频工作站(DAW)软件,为您提供 ...

  5. 《像计算机科学家一样思考Python(第2版)》——2.6 字符串操作

    本节书摘来自异步社区<像计算机科学家一样思考Python(第2版)>一书中的第2章,第2.6节,作者[美] Allen B. Downey,赵普明 译,更多章节内容可以访问云栖社区&quo ...

  6. 视频: 猫和老鼠真实版

    视频: 猫和老鼠真实版 http://www.tudou.com/programs/view/o0Dk9RLHWPU/ 转载于:https://blog.51cto.com/laowafang/112 ...

  7. 目前比较流行的Python科学计算发行版

    经常有身边的学友问到用什么Python发行版比较好? 其实目前比较流行的Python科学计算发行版,主要有这么几个: Python(x,y) GUI基于PyQt,曾经是功能最全也是最强大的,而且是Wi ...

  8. 用上这个Python的Docker正式版镜像,你也能成为容器高玩

    萧箫 发自 凹非寺 量子位 报道 | 公众号 QbitAI 加载完Python的Docker镜像后,顺手又装了个Python? 这样的「误会」,在你看完这篇对Python的Docker"正式 ...

  9. 拒绝从入门到放弃_《Python 核心编程 (第二版)》必读目录

    目录 目录 关于这本书 必看知识点 最后 关于这本书 <Python 核心编程 (第二版)>是一本 Python 编程的入门书,分为 Python 核心(其实并不核心,应该叫基础) 和 高 ...

最新文章

  1. LinkedIn领英发布《2016中国人才趋势报告》
  2. boost::gil模块数字扩展中的 resample_pixels() 示例
  3. Log4j比较全面的配置
  4. mac 下 使用 java运行 class 文件 总是提示 “错误: 找不到或无法加载主类”的解决方法...
  5. MySql中的时间类型datetime,timestamp,date,year比较
  6. 谁敢花35万再加盟瑞幸?
  7. 三点坐标确定圆心坐标
  8. eclipse换炫酷主题
  9. win7安装中文语言包
  10. 通俗易懂的图解机器学习之机器学习概论
  11. oracle补丁安装
  12. Druid SQL和Security在美团点评的实践
  13. 假如用VIVO手机拍照,这几个功能一定要打开,效果媲美单反
  14. JS点击复制按钮复制相关内容
  15. ferguson博弈_组合博弈游戏
  16. 【小程序】使用wxParse解析html
  17. 数据结构-第一讲 基本概念-学习笔记(MOOC 浙江大学 陈越 何钦铭)
  18. Scrapy反爬与反反爬
  19. 你有“隐私泄露担忧”吗?适合普通用户的6个方法来了
  20. 临床研究统计分析的要求和报告规范

热门文章

  1. 基于三台虚拟机配置ssh免密登陆
  2. ADI Blackfin DSP处理器-BF533的开发详解18:用触摸屏的例程来理解中断(含源码)
  3. [OC学习笔记]分类和关联对象源码解析
  4. bp网络和卷积神经网络,bp神经网络
  5. 第一章 人工智能的研究和发展《2022年斯坦福AI指数报告》中文全解读
  6. 解题:BZOJ 4808 马
  7. androidnbsp;实时对讲机的实现
  8. 大数据技术原理与应用 概念、存储、处理、分析和应用(林子雨)——第八章 Hadoop再探讨
  9. 自动拖取win10聚焦壁纸到桌面
  10. 常用IT系统架构及DevOps介绍