Project1
标题:
持有道具 y 时习得技能 x的脚本改造求指导
[打印本页]
作者:
负零
时间:
2015-2-6 16:10
标题:
持有道具 y 时习得技能 x的脚本改造求指导
我曾尝试过新增一个参数z,实现需同时持有两个指定物品才能学会技能的效果。因为对正则表达以及对备注方法的不了解,导致效果没有办法实现,特此请教,谢谢。以下是脚本
#============================================================================
# 〇 require Taroxd基础设置
# 使用方法:在角色处备注 <learn x by y>,表示当持有道具 y 时习得技能 x
#============================================================================
class RPG::Actor < RPG::BaseItem
#--------------------------------------------------------------------------
# ● 获取由 [技能id, 物品] 构成的数组
#--------------------------------------------------------------------------
def learn_skill_by_item
@learn_skill_by_item ||=
@note.scan(/<learn\s*(\d+)\s*by\s*(\d+)>/i).map {|(x, y)|
[x.to_i, $data_items[y.to_i]] }
end
end
class Game_Actor < Game_Battler
#--------------------------------------------------------------------------
# ● 获取添加的技能
#--------------------------------------------------------------------------
def_with :added_skills do |old|
actor.learn_skill_by_item.each {|(skill_id, item)|
old.push(skill_id) if $game_party.has_item?(item) }
old
end
end
作者:
taroxd
时间:
2015-2-6 16:24
用 \s* 代替空格,用 (\d+) 代替数字,然后爱怎么改怎么改
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1