赞 | 0 |
VIP | 13 |
好人卡 | 7 |
积分 | 7 |
经验 | 32831 |
最后登录 | 2023-12-15 |
在线时间 | 530 小时 |
Lv2.观梦者
- 梦石
- 0
- 星屑
- 723
- 在线时间
- 530 小时
- 注册时间
- 2010-6-9
- 帖子
- 840
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
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 |
|