赞 | 0 |
VIP | 0 |
好人卡 | 3 |
积分 | 1 |
经验 | 9093 |
最后登录 | 2019-5-4 |
在线时间 | 114 小时 |
Lv1.梦旅人
- 梦石
- 0
- 星屑
- 55
- 在线时间
- 114 小时
- 注册时间
- 2012-3-26
- 帖子
- 47
|
本帖最后由 Kimu 于 2012-8-4 10:01 编辑
参照使用方法- # -----------------------------------------------------------------------------
- # 值槽脚本随机生成系统(SLOTCR) By.Clov
- # 通用版本:RMXP(RGSS1) RMVX(RGSS2) RMVX ACE(RGSS3)
- # 使用方法:在全部窗口类插入即可 例:draw_cr(0,0,变量1,变量2,'开心值',100,10)
- # 参数说明:x x坐标,y y坐标,current 当前值,max 最大值,txt 显示的文字
- # width 值槽的宽,height 值槽的高
- # 背景与边框没有随机的必要,请自行到脚本里设置
- # -----------------------------------------------------------------------------
- class Window_Base
- def draw_cr(x,y,current,max,txt='',width=128,height=15)
- #颜色1、颜色2
- c1=[59, 191, 119];c2=[253, 94, 1]
- #边框色颜色
- bk_color = Color.new(255,255,255,255)
- #数值是否显示
- num = true
- #显示数值的对齐方式 0:向左对齐 1:向中间对齐 2:向右边对齐
- num_align = 1
- #计算比率
- bl = current.to_f / max
- #计算实际宽
- w = (width*bl).round
- #描绘值槽
- r = c1[0];g = c1[1];b = c1[2]
- plus_r = (c2[0]-c1[0])/((width-1)*bl)
- plus_g = (c2[1]-c1[1])/((width-1)*bl)
- plus_b = (c2[2]-c1[2])/((width-1)*bl)
- w.times {|k|
- contents.fill_rect(x+k, y, 1, height, Color.new(r,g,b,255))
- r+=plus_r;g+=plus_g;b+=plus_b}
- contents.fill_rect(x-1, y-1, width+2, 1, bk_color)
- contents.fill_rect(x-1, y+height, width+2, 1, bk_color)
- contents.fill_rect(x-1, y, 1, height, bk_color)
- contents.fill_rect(x+width, y, 1, height, bk_color)
- #描绘文字
- txt_w = contents.text_size(txt).width + 2
- contents.draw_text(x-txt_w,y+height/2-12, width, 24, txt)
- contents.draw_text(x,y+height/2-12, width, 24,
- current.to_s+'/'+max.to_s,num_align) if num
- end
- end
复制代码 |
|