Project1
标题:
请问装备怎么附加除了规定的项目以外的数值
[打印本页]
作者:
xsrong
时间:
2011-4-20 03:01
标题:
请问装备怎么附加除了规定的项目以外的数值
我希望在游戏中的装备可与增加主人公的最大生命值,或者最大魔法值,这个应该怎么办到啊?
顺便还问一下,我搜到站上有扩展怪物掉宝种类的脚本,但是不知道怎么用,有没有哪位大大指教一下啊~~~~不胜感激~~~~
作者:
烁灵
时间:
2011-4-20 14:33
回复
xsrong
的帖子
好吧,咱之前帮小梦写了个装备增血\蓝最大值的脚本,不过跟KGC强大的装备扩展冲突掉了囧
单独用的话还是没事的
#--------------------------------------------------
# 简洁版武器装备后血魔上限加成
# -BY 烁灵
# 用法为:
# 在 数据库->武器、防具 中在 备注栏中 写上如下信息
# HS加成:10,20
# 不要留空格,符号为半角字符
# 10 为maxhp的增加值,装备后hp上限增加10
# 20 为maxsp的增加值,装备后mp上限增加20
# 支持按比例增加,如
# HS加成:10%,20
# 或
# HS加成:10,20%
# 或
# HS加成:10%,20%
# 即可分情况增加上限
# ps:技术不佳,咱只会简洁版喵> <
#---------------------------------------------------
module SL_EquipExtend
EQUIPSTR = "HS加成"
end
class Game_Actor
#--------------------------------------------------------------------------
# ● 变更装备(目标对象)
# equip_type : 装备部分(0~4)
# item_id : 武器或防具ID
# test : 测试标志(战斗测试或暂时装备用)
#--------------------------------------------------------------------------
alias change_sl_equip change_equip
def change_equip(equip_type, item, test = false)
# 记下当前装备
wi = @weapon_id
ar1 = @armor1_id
ar2 = @armor2_id
ar3 = @armor3_id
ar4 = @armor4_id
# 用原函数改变装备
change_sl_equip(equip_type, item, test)
return if test == true #显示状态的临时角色忽略
flag = false
act = $game_actors[@actor_id]
item_id = item == nil ? 0 : item.id
case equip_type
when 0 # 武器
eitem = $data_weapons[item_id]
last_item = $data_weapons[wi]
when 1 # 盾
eitem = $data_armors[item_id]
last_item = $data_weapons[ar1]
when 2 # 头部防具
eitem = $data_armors[item_id]
last_item = $data_weapons[ar2]
when 3 # 身体防具
eitem = $data_armors[item_id]
last_item = $data_weapons[ar3]
when 4 # 装饰品
eitem = $data_armors[item_id]
last_item = $data_weapons[ar4]
end
#去掉装备后的减血减蓝
return if last_item == nil
last_item.note.each{|line|
if(line.include?(SL_EquipExtend::EQUIPSTR))
ptx = line[SL_EquipExtend::EQUIPSTR.length,line.length-SL_EquipExtend::EQUIPSTR.length]
ptx = ptx[1,ptx.length - 1]
hpp = ptx.split(/,/)[0]
mpp = ptx.split(/,/)[1]
if(hpp.include?("%"))
act.maxhp = (act.maxhp / (hpp[0,hpp.length-1].to_f / 100.0 + 1).to_f).to_i
else
act.maxhp -= hpp.to_i
end
if(mpp.include?("%"))
act.maxmp = (act.maxmp / (mpp[0,mpp.length-1].to_f / 100.0 + 1).to_f).to_i
else
act.maxmp -= mpp.to_i
end
end
}
#增加装备后的加血加蓝
return if eitem == nil #卸下装备不判定
eitem.note.each{|line|
if(line.include?(SL_EquipExtend::EQUIPSTR))
ptx = line[SL_EquipExtend::EQUIPSTR.length,line.length-SL_EquipExtend::EQUIPSTR.length]
ptx = ptx[1,ptx.length - 1]
hpp = ptx.split(/,/)[0]
mpp = ptx.split(/,/)[1]
if(hpp.include?("%"))
act.maxhp = (act.maxhp * (hpp[0,hpp.length-1].to_f / 100.0 + 1).to_f).to_i
else
act.maxhp += hpp.to_i
end
if(mpp.include?("%"))
act.maxmp = (act.maxmp * (mpp[0,mpp.length-1].to_f / 100.0 + 1).to_f).to_i
else
act.maxmp += mpp.to_i
end
end
}
end
end
复制代码
饭粒奉上
VX增血装备.rar
(240.61 KB, 下载次数: 96)
2011-4-20 14:32 上传
点击文件名下载附件
作者:
xsrong
时间:
2011-4-20 23:02
回复
烁灵
的帖子
谢谢提供~~~
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1