- 注册时间
- 2004-7-7
- 最后登录
- 2008-8-16
⑥精研
爱的橙子雪糕
- 积分
- 3837
|
发表于 2004-9-25 03:00:57
|
显示全部楼层
Sprite.new([viewport]) [/COLOR]
类实体化,通俗的说就是创建一个 Sprite 类的实体对象。new 方法是所有类都有的方法,用于类的实体化。
参数 viewport 可选,也就是说使用这个方法的时候可以不用写这个参数
此参数的作用是确定这个对象可以显示的屏幕区域,也就是说如果我们使用参数 Viewport.new(1,1,320,240) :
Sprite.new(Viewport.new(1,1,320,240))
那么这个对象所表示的图象只有可能出现在左上 1/4 屏幕内。
viewport 是另外一种类,这里就不说了。
dispose[/COLOR]
回收类实体(内存释放)~~
disposed? [/COLOR]
类实体是否被回收~~
viewport [/COLOR]
这个就不说了,就是取得这个 Sprite 实体的 viewport ,返回的是一个 viewport 实体地址,可以直接引用这个地址表示 viewport 实体本身
需要说明的是,如果在类实体化的时候没有参数,那么这里将返回一个 nil 指针, nil 是 RUBY 里面表示‘空’的。
flash(color, duration) [/COLOR]
这个就是给 Sprite 实体一个闪烁效果用的,这里的闪烁概念为,对象图象会瞬间以闪烁颜色做滤镜,然后渐渐恢复本来颜色,下面是一个格式举例:
- ......
- Sprite.flash(Color.new(255, 204, 0, 127), 100)
- loop do
- Sprite.update
- Graphics.update
- end
- ......
复制代码
这个例子里面包含了两个参数,第一个参数 Color.new(255, 204, 0, 127) 就表示闪烁颜色为半透明金色~~第二个参数 100 表示从闪烁颜色到闪烁结束一共经过 100 帧。
例子中的 Sprite.update 是必须存在在刷新循环中的,格式如实例所表示。
需要注意的说~~这里的 Sprite.flash 和 Sprite.update 中的 Sprite 是代表实体名字,而不是固定为我所示的 Sprite ,下面是一个实际例子:
- devil = Sprite.new(Viewport.new(1,1,320,240 ) )
- devil.bitmap = Bitmap.new("Graphics/Battlers/075-Devil01")
- devil.ox = devil.bitmap.width / 2
- devil.oy = devil.bitmap.height / 2
- devil.x = 320
- devil.y = 240
- devil.flash(Color.new(255, 204, 0, 127), 100)
- loop do
- devil.update
- Graphics.update
- end
复制代码
update [/COLOR]
更新类实体数据,也就是上面说的 Sprite.update 。
###################################################
## 以下不是方法,是用来保存 Sprite 实体的相关数据的
## 他们都可以当作变量来操作(引用和赋值)
###################################################
bitmap [/COLOR]
类实体图片,要显示的图片就用这个来设定,当然没有图象的 Sprite 实体 本身也存在。
上面实例的 devil.bitmap = Bitmap.new(\"Graphics/Battlers/075-Devil01\") 就是设置图象的。
visible [/COLOR]
这个很简单,有 true 和 false 两个值,前者表示 Sprite 实体 不可见。
x [/COLOR]
这个就是 Sprite 实体 在屏幕(游戏窗口)中的 横坐标 , 1~640 。
y [/COLOR]
这个就是 Sprite 实体 在屏幕(游戏窗口)中的 纵坐标 , 1~480 。
z [/COLOR]
这个是一个虚拟坐标项,用于表现 2D 游戏中 Sprite 实体 所在的层,关于这个虚拟层的概念,比如 z 为 1 的 Sprite 实体 总是挡住 z 小于 1 的所有 Sprite 实体。
ox [/COLOR]
这个是一个原点坐标的横坐标值,关于原点坐标的概念就是一个 Sprite 实体 的中心究竟在哪里,我们上面的 x 和 y 在处理 Sprite 实体 的时候都是参照这个原点坐标来做的。
如下图:

oy [/COLOR]
这个是一个原点坐标的纵坐标值。
zoom_x [/COLOR]
Sprite 实体的横向比例。
zoom_y [/COLOR]
Sprite 实体的纵向比例。
angle [/COLOR]
Sprite 实体的倾斜角度。
mirror [/COLOR]
Sprite 实体是否反转,有 true 和 false 两个值~~前者表示反转Sprite 实体图象。
bush_depth [/COLOR]
这个是用于表现人物的脚隐藏在草丛之中的效果,类似于前面的 z 。
opacity [/COLOR]
这个是整个 Sprite 实体 的透明度设置。
blend_type [/COLOR]
这个是混合算法类型,关于混合算法,是指两个带透明效果的图片相叠后的表现颜色计算,这里分为三种:(0:通常、1:加算、2:減算)。
color [/COLOR]
Sprite 实体 的颜色,类似于上面的 flash 方法。
tone [/COLOR]
Sprite 实体 的色调。
[此贴子已经被作者于2004-9-25 3:06:25编辑过] |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|