赞 | 0 |
VIP | 0 |
好人卡 | 0 |
积分 | 1 |
经验 | 1826 |
最后登录 | 2015-12-19 |
在线时间 | 19 小时 |
Lv1.梦旅人
- 梦石
- 0
- 星屑
- 50
- 在线时间
- 19 小时
- 注册时间
- 2014-6-27
- 帖子
- 9
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
本帖最后由 寒夜无冬 于 2014-9-23 15:04 编辑
鄙人之前得到了喵呜喵等人帮助,学习了得失脚本的内容https://rpg.blue/thread-368302-1-1.html
这次发布的是简易的版本,少了很多功能,只是为方便他人理解。。(一直用其他语言写的,脚本里面可以看出我用的就那几个通用函数),新人脚本,多多包涵哈
[box=Silver]=begin =============================================================================== RMVA物品增减提示脚本 =============================================================================== 作者:火柴(寒夜无冬) 日期:2014.9.20 授权使用:66rpg、澄海制作组、RM亲友团全体成员 授权声明:本脚本供各位学习和制作方便之用,请勿用于商业和其他任何营利性用途!如有任 何疏漏和错误,欢迎修改。转载使用和修改请保留本段所有注释信息。 特别感谢:皓·宇(庆.new)、喵呜喵5 =============================================================================== =end #===============CONFIG========================================================== IF_SHOW_GOLDMESSAGE=true #是否开启金钱获得提示 IF_SHOW_ITEMMESSAGE=true #是否开启物品获得提示 IF_SHOW_WEAPONSMESSAGE=true #是否开启武器获得提示 IF_SHOW_ARMORMESSAGE=true #是否开启护甲获得提示 DURATION_TIME=100 #提示框停留时间 #============================================================================== class Game_Interpreter def command_125 #金钱增减 #@params[0] #增加或减少 #@params[1] #@params[2] #金钱数量 value = operate_value(@params[0], @params[1], @params[2]) #显示最终金钱加减数额 if IF_SHOW_GOLDMESSAGE==true showMessage("gold",@params[1]) end $game_party.gain_gold(value) end def command_126 #金钱增减 #@params[1] #增加或减少 0,1表示 #@params[2] #物品索引,从0算起 #@params[3] #物品数量 value = operate_value(@params[1], @params[2], @params[3]) $game_party.gain_item($data_items[@params[0]], value) if IF_SHOW_ITEMMESSAGE==true showMessage("item",@params[1]) end end def command_127 #武器增减 value = operate_value(@params[1], @params[2], @params[3]) $game_party.gain_item($data_weapons[@params[0]], value, @params[4]) if IF_SHOW_WEAPONSMESSAGE==true showMessage("weapon",@params[1]) end end def command_128 #护甲增减 value = operate_value(@params[1], @params[2], @params[3]) $game_party.gain_item($data_armors[@params[0]], value, @params[4]) if IF_SHOW_ARMORMESSAGE==true showMessage("armor",@params[1]) end end def showMessage(type,regulation) #判断获取的是物品/武器/护甲,执行查询相应的数据库信息 if type.eql?"item" @wm=Window_ThingsMessage.new($data_items[@params[0]].name,@params[3],regulation) for i in 0 .. DURATION_TIME Graphics.update end @wm.dispose elsif type.eql?"weapon" @wm=Window_ThingsMessage.new($data_weapons[@params[0]].name,@params[3],regulation) for i in 0 .. DURATION_TIME Graphics.update end @wm.dispose elsif type.eql?"gold" @wm=Window_ThingsMessage.new("gold",@params[2],@params[0]) for i in 0 .. DURATION_TIME Graphics.update end @wm.dispose else @wm=Window_ThingsMessage.new($data_armors[@params[0]].name,@params[3],regulation) for i in 0 .. DURATION_TIME Graphics.update end @wm.dispose end end end class Window_ThingsMessage < Window_Base @str=nil @window_width=nil @window_height=nil @str_width=nil @str_height=nil def initialize(itemName,itemNumber,regulation) #金钱处理 if itemName.eql?"gold" if regulation==0 @str="你得到了 金钱×#{itemNumber}" elsif regulation==1 @str="你失去了 金钱×#{itemNumber}" end #武器/护甲/物品处理 elsif regulation==0 @str="你得到了 #{itemName}×#{itemNumber}" elsif regulation==1 @str="你失去了 #{itemName}×#{itemNumber}" end get_window_size super(140,180,@window_width,@window_height) refresh end def refresh @str_width=text_size(@str).width @str_height=text_size(@str).height self.contents.clear self.contents.draw_text(0,0,@str_width,@str_height,@str,1) end def get_window_size bitmap=Bitmap.new(100,100) @window_width=bitmap.text_size(@str).width+32 @window_height=bitmap.text_size(@str).height+25 end end
=begin
===============================================================================
RMVA物品增减提示脚本
===============================================================================
作者:火柴(寒夜无冬)
日期:2014.9.20
授权使用:66rpg、澄海制作组、RM亲友团全体成员
授权声明:本脚本供各位学习和制作方便之用,请勿用于商业和其他任何营利性用途!如有任
何疏漏和错误,欢迎修改。转载使用和修改请保留本段所有注释信息。
特别感谢:皓·宇(庆.new)、喵呜喵5
===============================================================================
=end
#===============CONFIG==========================================================
IF_SHOW_GOLDMESSAGE=true #是否开启金钱获得提示
IF_SHOW_ITEMMESSAGE=true #是否开启物品获得提示
IF_SHOW_WEAPONSMESSAGE=true #是否开启武器获得提示
IF_SHOW_ARMORMESSAGE=true #是否开启护甲获得提示
DURATION_TIME=100 #提示框停留时间
#==============================================================================
class Game_Interpreter
def command_125 #金钱增减
#@params[0] #增加或减少
#@params[1]
#@params[2] #金钱数量
value = operate_value(@params[0], @params[1], @params[2])
#显示最终金钱加减数额
if IF_SHOW_GOLDMESSAGE==true
showMessage("gold",@params[1])
end
$game_party.gain_gold(value)
end
def command_126 #金钱增减
#@params[1] #增加或减少 0,1表示
#@params[2] #物品索引,从0算起
#@params[3] #物品数量
value = operate_value(@params[1], @params[2], @params[3])
$game_party.gain_item($data_items[@params[0]], value)
if IF_SHOW_ITEMMESSAGE==true
showMessage("item",@params[1])
end
end
def command_127 #武器增减
value = operate_value(@params[1], @params[2], @params[3])
$game_party.gain_item($data_weapons[@params[0]], value, @params[4])
if IF_SHOW_WEAPONSMESSAGE==true
showMessage("weapon",@params[1])
end
end
def command_128 #护甲增减
value = operate_value(@params[1], @params[2], @params[3])
$game_party.gain_item($data_armors[@params[0]], value, @params[4])
if IF_SHOW_ARMORMESSAGE==true
showMessage("armor",@params[1])
end
end
def showMessage(type,regulation) #判断获取的是物品/武器/护甲,执行查询相应的数据库信息
if type.eql?"item"
@wm=Window_ThingsMessage.new($data_items[@params[0]].name,@params[3],regulation)
for i in 0 .. DURATION_TIME
Graphics.update
end
@wm.dispose
elsif type.eql?"weapon"
@wm=Window_ThingsMessage.new($data_weapons[@params[0]].name,@params[3],regulation)
for i in 0 .. DURATION_TIME
Graphics.update
end
@wm.dispose
elsif type.eql?"gold"
@wm=Window_ThingsMessage.new("gold",@params[2],@params[0])
for i in 0 .. DURATION_TIME
Graphics.update
end
@wm.dispose
else
@wm=Window_ThingsMessage.new($data_armors[@params[0]].name,@params[3],regulation)
for i in 0 .. DURATION_TIME
Graphics.update
end
@wm.dispose
end
end
end
class Window_ThingsMessage < Window_Base
@str=nil
@window_width=nil
@window_height=nil
@str_width=nil
@str_height=nil
def initialize(itemName,itemNumber,regulation)
#金钱处理
if itemName.eql?"gold"
if regulation==0
@str="你得到了 金钱×#{itemNumber}"
elsif regulation==1
@str="你失去了 金钱×#{itemNumber}"
end
#武器/护甲/物品处理
elsif regulation==0
@str="你得到了 #{itemName}×#{itemNumber}"
elsif regulation==1
@str="你失去了 #{itemName}×#{itemNumber}"
end
get_window_size
super(140,180,@window_width,@window_height)
refresh
end
def refresh
@str_width=text_size(@str).width
@str_height=text_size(@str).height
self.contents.clear
self.contents.draw_text(0,0,@str_width,@str_height,@str,1)
end
def get_window_size
bitmap=Bitmap.new(100,100)
@window_width=bitmap.text_size(@str).width+32
@window_height=bitmap.text_size(@str).height+25
end
end
[/box] |
|