Sprite

精灵的类。精灵是为了在游戏画面上显示角色等图像的基本概念。

超类

类方法

Sprite.new([viewport])

生成一个精灵对象。必要时指定一个显示端口(Viewport)。

方法

dispose

释放精灵。若是已释放则什么都不做。

disposed?

当精灵已释放则返回 true。

flash(color, duration)

开始精灵闪烁。duration 是指定闪烁的帧数。

color 设为 nil,闪烁时精灵会消失。

update

更新精灵的闪烁或波的相位。原则上,此方法一帧调用一次。

若是没有使用闪烁或波动效果,则无须调用此方法。

width

获取精灵的宽度,相当于 src_rect.width。

height

获取精灵的高度,相当于 src_rect.height。

属性

bitmap

精灵传输元位图(Bitmap)的引用。

src_rect

从位图传输的矩形(Rect)。

viewport

与精灵关联的显示端口(Viewport)的引用。

visible

精灵的可见状态,true 代表可见。默认为 true。

x

精灵的 X 坐标。

y

精灵的 Y 坐标。

z

精灵的 Z 坐标。数值越大的显示在越前方。

Z 坐标相同时,Y 坐标越大的显示在越前方。Y 坐标也相同时,越晚生成的对象显示在越前方。

ox

精灵原点的 X 坐标。

oy

精灵原点的 Y 坐标。

zoom_x

精灵的横向放大率,1.0 代表原始大小。

zoom_y

精灵的纵向放大率,1.0 代表原始大小。

angle

精灵的旋转角度。以逆时针方向指定角度数。绘制旋转效果需要时间,所以请避免过量使用。

wave_amp
wave_length
wave_speed
wave_phase

波的振幅、周期、速度、相位。波动效果是根据正弦波函数,使每行产生横向的偏移,也就是像光栅一样的效果。

wave_amp 是波的振幅、 wave_length 是波浪的周期,分别以像素数来指定。

wave_speed 是波浪效果动画的速度,默认为 360,数值愈大速度愈快。

wave_phase 使用角度制指定精灵最上面一行的相位。每次调用 update 方法会更新一次。一般情况下不需要使用此属性,除非需要同步两个精灵的波动效果。

mirror

精灵是否左右翻转。设为 true 时会左右反转绘制。默认为 false。

bush_depth
bush_opacity

精灵在草木繁茂处的深度和不透明度。可以用来表示角色的脚隐藏在草丛中等等的效果。

bush_depth 指定草木繁茂处的像素数。默认为 0。

bush_opacity 指定草木繁茂处的不透明度,范围是 0~255。超出范围的数值会自动修正。默认为 128。

bush_opacity 的值会与 opacity 相乘。举例来说,opacity 和 bush_opacity 都设为 128,就会视为半透明再加上半透明,实际的不透明度为 64。

opacity

精灵的不透明度,范围是 0~255。超出范围的数值会自动修正。

blend_type

精灵的合成方式(0:正常、1:加法、2:减法)。

color

与精灵合成的颜色(Color)。色彩的 alpha 值作为合成的比例。

此颜色与 flash 的颜色分开处理。然而,alpha 值较高的颜色会优先合成。

tone

精灵的色调(Tone)。