摘要:
连续表实现优先队列: """基于list实现优先队列""" class PrioQueueError(ValueError): pass class PrioQueue: """ 数据的存储位置按优先顺序排列 值较小的元素优先级更高 """ def __init__(self, elist=[]): 阅读全文
摘要:
碰撞检查 两精灵之间的距离<=精灵显示图像宽度一半的和,就说明碰撞了 实施碰撞功能: 我们将两点间的距离等常用函数抽取成一个util模块 import math def distance(point_1=(0, 0), point_2=(0, 0)): """计算两点间的距离""" return m 阅读全文
摘要:
使用pyglet.window.key.KeyStateHandler,能跟踪键盘上每个键的状态: 修改上一节中的Player类,现在可以从类中删除on_key_press()和方法on_key_release()方法,交给KeyStateHandler()处理,将其推送到事件堆栈中。 修改后的pl 阅读全文
摘要:
玩家控制的小船: 运动类physicalobject: 修改小行星让它动: 编写游戏更新功能: 运行发现以前静止的小行星在屏幕上平静地漂移,当它们滑出边缘时又重新出现在另一侧。 玩家对象响应键盘输入:player.py 主函数调用玩家调用: 现在,能够运行游戏并使用箭头键移动玩家 阅读全文
摘要:
随机生成精灵:load.py 主程序:asteroid.py 同批次绘图: 如果存在许多不同类型的对象,则手动调用每个对象的draw()方法可能会变得繁琐而乏味。如果需要绘制大量对象,效率也很低。pyglet pyglet.graphics.Batch类通过让您通过单个函数调用绘制所有对象来简化绘制 阅读全文
摘要:
"""官网即相关文件:https://github.com/pyglet/pyglet""" """参考文档:https://github.com/pyglet/pyglet""" import pyglet from pyglet.window import key, mouse # 获得一个窗口 game_window = pyglet.window.Window() # resourc... 阅读全文
摘要:
"""交互 一个两层的场景。一个显示当前被按下的键(一次,一个或多个),另一个显示鼠标位置的文本,然后单击以移动文本。 """ import cocos import pyglet from cocos.director import director class KeyDisplay(cocos.layer.Layer): # 允许图层接收Director.window事件 is_event_h 阅读全文
摘要:
import cocos from cocos.actions import * class HelloWorld(cocos.layer.ColorLayer): # ColorLayer子类化为具有背景色 def __init__(self): # r,g,b,a 蓝色 super(HelloWorld, self).__init__(64, 64, 224, 255) # 添加标签 labe 阅读全文
摘要:
cocos2d是用于构建2D游戏,演示和其他图形/交互应用程序的框架。 流控制:轻松管理不同场景之间的流控制 精灵:快速简便的精灵 动作:告诉精灵您想要他们做什么。可组合动作,例如移动,旋转,缩放等 效果:像波浪,旋转,镜头等效果 粒子系统:爆炸,烟花,流星,烟雾等 平铺地图:支持矩形和六边形平铺地 阅读全文