设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
Project1 查看内容

la·pucelle 脚本 扫盲教学之图片显示

2008-1-24 21:24| 发布者: 雷子| 查看: 2701| 评论: 0|原作者: 永劫的咎人|来自: 点此进入发布帖

摘要: ==========================================================================la·pucelle 脚本 扫盲教学之一,图片显示~===========================================================================一共有两种可以选用的。一是用f1中的方
==========================================================================

la·pucelle 脚本 扫盲教学之一,图片显示~

===========================================================================

一共有两种可以选用的。

一是用f1中的方法。

devil = Sprite.new
devil.bitmap = Bitmap.new("Graphics/Battlers/075-Devil01")
devil.x = 320
devil.y = 240

loop do
   Graphics.update
end


这样子就实现了一个图片的显示和不停的刷新哦。

如果用在菜单里面的话就不用这样子啦~

在def refresh或者def update的地方,把这个变量,例如f1里面所提到的devil给update

devil.update



loop do
   Graphics.update
end

不停的刷新就可以去掉了。

还有要记住,在dispose的地方是要把这个变量也dispose掉的。

不然会显示个不停……

dispose就是销毁。

在所有界面中都有销毁窗口哦~在离开界面跳出主循环的情况下,把代入了窗口的变量都销毁掉。


devil.dispose

还有,在脚本里面好像内建的变量大多都是@的格式所以建议也这么用。

至于究竟为什么么连我自己也不知道,汗……

@devil = Sprite.new
@devil.bitmap = Bitmap.new("Graphics/Battlers/075-Devil01")
@devil.x = 320
@devil.y = 240

这种方法的好处就是调用了精灵,可以进行精灵的操作哦~

例如

zoom_x 横向放大

zoom_y 纵向放大

opacity 透明度

等等


另外一种方法就是bitmap~

直接把图片存入缓存并且转移到新建的一个矩形里面,这个比较难理解不过用起来方便。

bitmap = RPG::cache.picture("图片名字")

cw = bitmap.width

ch = bitmap.height

rect = Rect.new(0,0,cw,ch)

self.contents.blt(x坐标,y坐标,bitmap,rect)


其中,RPG::cache.picture 是内建隐藏脚本的功能哦,就是从图片文件夹(pictures)里面抽取一个名字为后面括号中所写名字的图片。

cw,ch这两个变量代入图片的长和宽并且在后面使用的说。

Rect.new 命令的作用是新建一个位图矩形,x,y两个坐标理论上是要0的,不然会有图片偏移……

如果矩形的长和宽小于图片的长和宽的话图片就不能完全显示出来了,很不好看的……

self.contents.blt命令就是把某个对象转移到一个矩形里面显示,例如这里面的图片。

最终实现的效果和第一个应该是一样的都是显示出一张图片。

不过这个看似复杂的句子可以缩短一下。

bitmap = RPG::cache.picture("图片名字")

self.contents.blt(x坐标,y坐标,bitmap,Rect.new(0,0,bitmap.width,height))

哇塞,只剩下两句了


两句脚本就可以把一张图片显示到一个地方的说。

这个方法的优点就是简便,不用把变量带入精灵,省略了好几句。

而且放到窗口里面会随着窗口一起dispose不用单独去dispose的。

但是因为没有代入精灵,不能进行精灵的操作只能把一张图片显示出来而无法修改图片显示方法。


准确来说两种方法是各有利弊,至于怎么取舍就要看需要了……

附加一句脚本中把有值的字符串代入的方法。

"#{字符串}"

例如第一个人物名字就是$game_party.actors[1].name

使用以第一个人物的名字为图片名字显示图片可以

bitmap = RPG::cache.picture("#{$game_party.actors[1].name}")

self.contents.blt(x坐标,y坐标,bitmap,Rect.new(0,0,bitmap.width,height))

哦啊啊~

“身子有点累了,可爱的睡上一觉休息一下啦~”

881

===========================================================================

没可写的,fin~

===========================================================================

鲜花
拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-3-29 19:22

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

返回顶部