Project1
标题:
多货币脚本
[打印本页]
作者:
876加几
时间:
2013-7-22 09:03
标题:
多货币脚本
本帖最后由 876加几 于 2013-7-29 22:57 编辑
更新记录:
更新时间
更新内容
2013年7月29日
脚本"Window_SecondCurrency"的第56行增加", 2"
把代码列出来。
#==============================================================================
# ◎ Window_SecondCurrency
#------------------------------------------------------------------------------
# ◎ 第二货币窗口
#------------------------------------------------------------------------------
# 制作者:876加几
#==============================================================================
class Window_SecondCurrency < Window_Base
#--------------------------------------------------------------------------
# ● 初始化窗口
#--------------------------------------------------------------------------
def initialize
# 在这里设定窗口的位置啦(x,y,宽,高),记住要为窗口框架留上下左右各16象素。
super(10,420,160,64)
# 窗口的不透明度(0 ~ 255)。范围外的数值会自动修正。
# 注:255为不透明,0为完全透明……这个参数为零则只显示窗口内容而没有窗口,
# 实际上这样做不如不载入窗口背景图,更加节约内存……不过比较麻烦就是。
self.opacity = 255
# 窗口背景的不透明度(0 ~ 255)。范围外的数值会自动修正。
# 注:就是窗口那个蓝色的背景啦……受上面参数影响
self.back_opacity = 255
# 窗口内容的不透明度(0 ~ 255)。范围外的数值会自动修正。
# 注:窗口内的文字等内容,除非你是想画个空窗口,否则千万不要设0。
self.contents_opacity = 255
# 这个不用管他,必定要写的
self.contents = Bitmap.new(width - 32, height - 32)
# 建立记录变量原始值,用于判断变量值是否改变,一定要保证不会是变量原来的值
@var_value_old = -1
refresh
end
#--------------------------------------------------------------------------
# ● 刷新
#--------------------------------------------------------------------------
def refresh
# 在这里加上判断语句,就可以完成变量值改变才刷新的效果,节约资源
if @var_value_old==$game_variables[3] then
return
end
# 先清空内容啦
self.contents.clear
# 计算系统data里金钱单位的字符宽度
cx = contents.text_size($data_system.words.gold).width
# 设定字色为白色。生成RGB颜色参数(红,绿,蓝),这个不用我来说吧...
self.contents.font.color = Color.new(255,255,255)
# 绘制金钱数字。记住要用“.to_s”将数字转换为字符!
self.contents.draw_text(4, 0, 120-cx-2, 32, $game_variables[3].to_s, 2)
# 绘制金钱单位。
self.contents.font.color = system_color
# 注:128=160(窗口宽)-32
self.contents.draw_text(124-cx, 0, cx, 28, "声望",2)
end
end
复制代码
再在Scene_Menu里加入以下代码:
第57行:
# 生成第二货币显示窗口
@secondcurrency_window = Window_SecondCurrency.new
@secondcurrency_window.x = 0
@secondcurrency_window.y = 352
复制代码
释放窗口加入:
@secondcurrency_window.dispose
复制代码
Update刷新窗口下面加入:
@secondcurrency_window.update
复制代码
注意,可以根据情况来改变x,y值!
附:效果图:
360截图20130722090242174.jpg
(21.87 KB, 下载次数: 26)
下载附件
保存到相册
2013-7-22 09:02 上传
(其实我还做了一些手脚,效果不错。)
作者:
怪蜀黍
时间:
2013-7-22 09:54
总体感觉很不错,思路非常清新。很赞的说。
两点小瑕疵:
1、变量1与@var_value_old相等的判断没啥用,除非是人为调整使得变量1等于-1。其实嘛,Scene_Menu场景基本不暂用资源,即使是时时刻刻都刷新也不会卡的,我们的电脑是很强大的。
2、变量1已经被占用,变量3作为第二货币的存储值均未在注释中说明。
作者:
876加几
时间:
2013-7-22 13:03
标题:
使用声明
本帖最后由 876加几 于 2013-7-22 13:13 编辑
顺便说说:变量编号可以改变,第二货币名称也可以改变,针对不同用户的喜爱。
提醒!操作第二货币要操作变量!要使用对应的变量号!
作者:
876加几
时间:
2013-7-30 08:19
注意!要将Scene_Map的131~135行注释起来,不然,一个F9第二货币就可以在调试画面里显示了!
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1