Project1
标题:
用于判断角色是否装备某件装备或武器类型的脚本语句是什么?
[打印本页]
作者:
duoduo1009215
时间:
2015-6-2 09:17
标题:
用于判断角色是否装备某件装备或武器类型的脚本语句是什么?
想做装备加强技能的效果
作者:
taroxd
时间:
2015-6-2 11:58
actor.weapons.include?($data_weapons[武器ID])
actor 是 Game_Actor 的实例。weapon 换成 armor 就是护甲(未测试)
作者:
雷影
时间:
2015-6-2 12:24
本帖最后由 雷影 于 2015-6-2 12:26 编辑
这个可能会对你有用!想延伸到技能上面的话,稍稍修改下公式就行了吧!
#武器装备因职业,人物不同产生不同效果的设定,效果加强或减弱
#比如:剑士拿大剑普通效果,盗贼拿大剑会减敏,狂战士拿大剑加暴击,
#id和param()的3都指物理防御···Game_BattlerBase里面有具体的设定,
#0为MHP、1为MMP、2为物理攻击···etype_id是装备的位置,
#p一下角色的equip_slots就会看到二刀流角色的装备位置是[0,0,2,3,4]而普通角色装备位置是[0,1,2,3,4]1默认是盾牌···2、3、4分别对应头盔、铠甲、饰品
#actor_id就是角色ID,class_id是职业ID
#~ param(0); # 最大HP Maximum Hit Point
#~ param(1); # 最大MP Maximum Magic Point
#~ param(2); # 物理攻击 ATtacK power
#~ param(3); # 物理防御 DEFense power
#~ param(4); # 魔法攻击 Magic ATtack power
#~ param(5); # 魔法防御 Magic DeFense power
#~ param(6); # 敏 捷 值 AGIlity
#~ param(7); # 幸 运 值 LUcK
#~ xparam(0); # 成功几率 HIT rate
#~ xparam(1); # 闪避几率 EVAsion rate
#~ xparam(2); # 必杀几率 CRItical rate
#~ xparam(3); # 闪避必杀几率 Critical EVasion rate
#~ xparam(4); # 闪避魔法几率 Magic EVasion rate
#~ xparam(5); # 反射魔法几率 Magic ReFlection rate
#~ xparam(6); # 反击几率 CouNTer attack rate
#~ xparam(7); # HP再生速度 Hp ReGeneration rate
#~ xparam(8); # MP再生速度 Mp ReGeneration rate
#~ xparam(9); # TP再生速度 Tp ReGeneration rate
#~ sparam(0); # 受到攻击的几率 TarGet Rate
#~ sparam(1); # 防御效果比率 GuaRD effect rate
#~ sparam(2); # 恢复效果比率 RECovery effect rate
#~ sparam(3); # 药理知识 PHArmacology
#~ sparam(4); # MP消费率 Mp Cost Rate
#~ sparam(5); # TP消耗率 Tp Charge Rate
#~ sparam(6); # 物理伤害加成 Physical Damage Rate
#~ sparam(7); # 魔法伤害加成 Magical Damage Rate
#~ sparam(8); # 地形伤害加成 Floor Damage Rate
#~ sparam(9); # 经验获得加成 EXperience Rate
class Game_Actor
alias_method :c4_20150117, :param_plus
def param_plus(id)
old = c4_20150117(id)
for i in 0...equips.size
if equips[i]!=nil
#-------------设定一个装备的各种装备效果-----多个时参照格式添加----------------
if equips[i].id==1 #设定1号装备(武器,防具,首饰)的特殊效果,ID为武器或者防具数据库里编号
if id == 2 #处理物理攻击力的变化(当武器是1号和2号主角装备时,只获得1/10或1/2的攻击力,这里是表示获得不了满属性)
old+=equips[i].params[2]/10 if equips[i].etype_id==0 and actor_id==1 #1号主角 只获得1/10能力
old+=equips[i].params[2]/2 if equips[i].etype_id==0 and actor_id==2 #2号主角 只获得1/2能力
# 装备ID 物攻重新计算 装备ID 装备的位置 角色ID
# (0武,1盾,2盔,3铠,4饰)
end
if id == 6 #处理敏捷值的变化
old+=equips[i].params[6]/10 if equips[i].etype_id==0 and actor_id==1#只获得10%敏捷加成
old+=equips[i].params[6]/2 if equips[i].etype_id==0 and actor_id==2#只获得50%敏捷加成
end
end
#-----------------------------------------------------------------------------
end
end
old
end
end
复制代码
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1