Project1
标题:
有没有套装的脚本
[打印本页]
作者:
刹那铃音
时间:
2017-12-25 21:37
标题:
有没有套装的脚本
RT,而且还是在已经用了装备槽扩充脚本的情况下,两个或多个装备同时装备触发套装属性。
作者:
饿啊
时间:
2017-12-26 11:34
#encoding:utf-8
#===============================================================================
# 相当于额外装备了某些武器的套装效果 v1.0
# by 希忆 rpg.blue 转载或修改请保存此类信息。
#===============================================================================
#在武器|防具的备注写上<suit 2>表示其为2号套装的1件,描述自动添加“闪耀星光套装:”
#套装效果在下面设置,以武器编号来替代套装效果,相当于额外装备了这样一个武器。
#~
module EquipSuit
SuitEffect = {0 => [],
#套装编号(唯一) => [1个套装部件拥有的套装效果,2个,3个。。。以此类推【叠加!】]
#例如我装备了4个2号套装的部件,相当于多装备了111,112,113号武器。
#装备了5个3号套装的部件,相当于多装备了121,122号武器。
1 => [0, 55,56,57],
2 => [0, 58,59,60],
#按格式继续加就是了。
}
def self.suit_effect(suit_id)
SuitEffect[suit_id] || []
end
SuitName = {0 => "",
#套装的名字。
1 => '\c[9]星月套装:\c[11]传说由星辰演变而成,经历无数厮杀,沉睡大地的套装。佩戴齐全可激活强大的属性。\c[0]',
2 => '\c[9]公子套装:\c[11]从皇家宝库流传出来的公子套装,传闻灵帝刘宏寻揽江南时,丢失在外,曾一度被江南美女疯狂寻找。\c[0]',
#按格式继续加就是了。
}
def self.suit_name(suit_id)
SuitName[suit_id] || suit_id.to_s + "号套装"
end
end
class RPG::EquipItem
def suit_id
@note =~ /\<suit (\d+)\>/ ? $1.to_i : 0
end
def description
suit_id == 0 ? @description : EquipSuit.suit_name(suit_id) + ":" + @description
end
end
class Game_Actor
#返回一个角色装备中各套装数量的Hash 套装编号=>装备数量
def get_suit
result = Hash.new(0)
equips.each{ |e| result[e.suit_id] += 1 if e}
result
end
#返回包含套装效果对应武器实例的数组
def suit_effect
result = []
get_suit.each { |k, v| result +=
EquipSuit.suit_effect(k).first(v).collect{ |id| $data_weapons[id] } }
result.compact
end
alias xy_feature_objects_20150621 feature_objects
def feature_objects
xy_feature_objects_20150621 + suit_effect
end
alias xy_param_plus_20150621 param_plus
def param_plus(param_id)
suit_effect.inject(xy_param_plus_20150621(param_id)) {
|r, item| r += item.params[param_id] }
end
end
复制代码
兼容暂未考虑,你先码着
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1