Sprite

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

超类

类方法

Sprite.new([viewport])

生成一个 Sprite 实例。必要时可以指定一个 Viewport

方法

dispose

释放 Sprite。若是已经释放则什么都不做。

disposed?

Sprite 已释放时返回 true。

flash(color, duration)

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

color 设为 nil,则闪烁时 Sprite 会消失。

update

刷新 Sprite 的闪烁或波浪效果,以及更新视频画面。原则上,此方法一帧调用一次。

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

width

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

height

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

play_movie(filename[, volume])

在 Sprite 上播放一个 MPEG 编码的视频。filename 为视频的文件名。

volume 为播放时的初始音量,预设为 0。

注意:全局只允许一个 Sprite 实例播放视频。

playing?

获取视频播放状态,正在播放时返回 true。

replay_at_finish

当视频播放到结尾时自动从头开始播放,相当于 rewind_movie unless playing? 。

此方法需要每帧调用。

stop_movie

停止播放视频。

rewind_movie

从头开始播放视频。

属性

bitmap

Sprite 的 Bitmap

src_rect

Sprite 的源 Rect。Sprite 将只显示此矩形范围的 bitmap。

viewport

用于显示 Sprite 的 Viewport

visible

Sprite 的可见状态,true 表示可见。

x

Sprite 的 X 坐标。

y

Sprite 的 Y 坐标。

z

Sprite 的 Z 坐标。数值愈大的平面愈靠近玩家。

Z 坐标相同的 Sprite,后生成的对象会更最靠近玩家。

ox

Sprite 起始点的 X 坐标。

oy

Sprite 起始点的 Y 坐标。

zoom_x

Sprite 的横向放大率,1.0 表示原始大小。

zoom_y

Sprite 的纵向放大率,1.0 表示原始大小。

angle

Sprite 的旋转角度。以逆时钟方向指定,最高到(逆时钟)360度。然而绘制旋转的精灵会消耗大量的时间,所以请避免过量使用。

wave_amp
wave_length
wave_speed
wave_phase

功能未实现

mirror

Sprite 横向翻转的状态,true 表示翻转。

bush_depth
bush_opacity

Sprite 的草木繁茂处的深度和不透明度。可以用来表示,如:角色的腿被草丛半遮住的效果。

bush_depth 是草木繁茂处的像素数。默认值为 0。

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

bush_opacity 之值会乘以 opacity之值。举例来说:opacity 和 bush_opacity 都设为 128,就会视为透明度上再加上透明度来处理,所以实际的不透明度为 64。

opacity

Sprite 的不透明度(0~255)。超出范围的数值会自动修正。

blend_type

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

color

Sprite 的合成颜色(Color), alpha 值作为合成的比例。

此颜色与 flash 效果的颜色分开处理。然而,alpha 值较高的颜色在合成时,优先度较高。

tone

Sprite 的色调(Tone)。

volume

视频的音量。