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

Project1

 找回密码
 注册会员
搜索
查看: 6076|回复: 11
打印 上一主题 下一主题

新人发布的第一个脚本——带皮肤的进度条

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
15 小时
注册时间
2007-2-25
帖子
244
跳转到指定楼层
1
发表于 2008-9-30 19:55:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
经过了几天的摸索,RGSS总算是理出点头绪来了,想必很多人对游戏默认没有进度条感到怨念,我就是其中一个。所以本人改造脚本的第一刀就砍向这里了。

以下是脚本:


  1. #=================================================
  2. # ■ SkinedBar
  3. #------------------------------------------------------------------------------
  4. # 带有皮肤的进度条
  5. #   Young.G.K出品,转载请注明出处
  6. # 2008年9月29日
  7. #------------------------------------------------------------------------------

  8. class SkinedBar

  9. #--------------------------------------------------------------------------
  10. # ● 初始化对像
  11. #--------------------------------------------------------------------------
  12. def initialize(skinpath,barpath,barrect,minValue=0,maxValue = 100)
  13.     @skin = Bitmap.new(skinpath)
  14.     @bar = Bitmap.new(barpath)
  15.     @minValue = minValue
  16.     @maxValue = maxValue
  17.     @outBmp = Bitmap.new(@skin.width,@skin.height)
  18.     @barrect = barrect
  19.     @huemin = 0
  20.     @huemax = 0
  21. end

  22. #--------------------------------------------------------------------------
  23. # ● 设定色相
  24. #--------------------------------------------------------------------------
  25. def sethue(huemin,huemax)
  26.     @huemin = huemin
  27.     @huemax = huemax
  28. end
  29. #--------------------------------------------------------------------------
  30. # ● 输出
  31. #--------------------------------------------------------------------------
  32. def output(value)
  33.     rate = (value - @minValue + 0.0)/ ( @maxValue - @minValue )
  34.     @bar.hue_change ((rate - 1.0) * (@huemax - @huemin))
  35.     rect = Rect.new(@barrect.x, @barrect.y, @barrect.width * rate, @barrect.height)
  36.     @skin.stretch_blt(rect,@bar,@bar.rect)
  37.     return @skin
  38. end
  39. end
复制代码


使用方法:

barHP = SkinedBar.new("Graphics/Pictures/HPSkin.png", "Graphics/Pictures/HP.png",Rect.new(12,5,66,6),0,actor.maxhp)

#这条语句的作用是建立一个带皮肤的进度条,参数说明:"Graphics/Pictures/HPSkin.png"指的是进度条的皮肤;"Graphics/Pictures/HP.png"指的是血条本身对应的图片,注意:在本脚本里,这张图片是要被横向拉伸的;Rect.new(12,5,66,6)指构造一个矩形,这个矩形是血条在皮肤上的位置,坐标是相对于皮肤图片而言的;最后两个参数就是进度条所对应的最小值和最大值。
     

barHP.sethue(-145,0)

#这条语句的作用是设置最小值和最大值时的色相,参见魔兽争霸的可变色血条
     

bmpBar=barHP.output(actor.hp)

#这条语句用于将混合好的进度条图片输出,参数表示当前进度条所对应的值
     

第一次尝试RGSS脚本编写,有很多不足,希望高手指点。如有不解,直接留言就行了

效果截图:


皮肤只是简单的画了一下

点此处下载范例工程:
http://rpg.blue/upload_program/g ... ��条_103223827.rar

Lv1.梦旅人

青天

梦石
0
星屑
86
在线时间
232 小时
注册时间
2007-12-15
帖子
2091

开拓者

2
发表于 2008-9-30 20:20:09 | 只看该作者

没有截图看看吗?{/fd}
开坑准备中
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-9-21
帖子
14
3
发表于 2008-9-30 21:24:49 | 只看该作者
发个工程吧~``
对新人有好处的~````
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (暗夜天使)

名侦探小柯

梦石
0
星屑
3304
在线时间
3619 小时
注册时间
2006-9-6
帖子
37400

开拓者贵宾第3届短篇游戏大赛主流游戏组亚军第5届短篇游戏比赛亚军

4
发表于 2008-9-30 22:25:40 | 只看该作者
可以用事件脚本操作这个东西在任何位置吗?
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-7-9
帖子
823
5
发表于 2008-9-30 22:27:49 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
15 小时
注册时间
2007-2-25
帖子
244
6
 楼主| 发表于 2008-10-1 02:26:14 | 只看该作者
以下引用越前リョーマ于2008-9-30 14:25:40的发言:

可以用事件脚本操作这个东西在任何位置吗?

现在……应该是不可以吧
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
15 小时
注册时间
2007-2-25
帖子
244
7
 楼主| 发表于 2008-10-1 02:27:37 | 只看该作者
以下引用羽幻于2008-9-30 13:24:49的发言:

发个工程吧~``
对新人有好处的~````
以下引用仙剑乐逍遥于2008-9-30 14:27:49的发言:

恩,我也觉得发个工程比较好.....如果LZ不觉得辛苦的话  
以下引用浩气青天于2008-9-30 12:20:09的发言:


没有截图看看吗?

截图,工程都已经上传了
回复 支持 反对

使用道具 举报

Lv1.梦旅人

B

梦石
0
星屑
50
在线时间
26 小时
注册时间
2007-8-26
帖子
3693
8
发表于 2008-10-1 02:28:47 | 只看该作者
黑暗好象这项技术
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
87 小时
注册时间
2006-1-3
帖子
227
9
发表于 2008-10-1 04:39:50 | 只看该作者
恩~截图很华丽~
图片和字能再分开点会好看点...
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (暗夜天使)

名侦探小柯

梦石
0
星屑
3304
在线时间
3619 小时
注册时间
2006-9-6
帖子
37400

开拓者贵宾第3届短篇游戏大赛主流游戏组亚军第5届短篇游戏比赛亚军

10
发表于 2008-10-1 05:53:04 | 只看该作者
以下引用younggk于2008-9-30 18:26:14的发言:


以下引用越前リョーマ于2008-9-30 14:25:40的发言:

可以用事件脚本操作这个东西在任何位置吗?


现在……应该是不可以吧

= =
本来还以为这个脚本可以让我伟大的事件发扬光大了……
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

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

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

GMT+8, 2024-12-29 18:00

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表