Project1
标题:
求一个技能升级脚本(六祈前辈的脚本似乎有bug)
[打印本页]
作者:
yanglibin0409
时间:
2011-1-10 08:38
标题:
求一个技能升级脚本(六祈前辈的脚本似乎有bug)
在 论坛似乎看到这个脚本,感觉不错。
http://rpg.blue/forum.php?mod=vi ... page%3D1&page=1
但是有个问题,如果我直接用事件 让主角 提升等级, 会出现
脚本“Game_Actor_skill”的第29行 发生了 NoMethodError . undefined method +' for nil:NilClass
这个对话框,同样的直接加上 若干经验,也同时会出现。
不知道是我使用的问题?还是脚本有bug?我是直接在前辈留下的 “自动化技能树”工程上测试的。求有关解答,我主要想要那个技能升级的系统。
多谢多谢!!
作者:
fux2
时间:
2011-1-10 09:13
回复
yanglibin0409
的帖子
Game_Actor_skill修改为,可以解决,不过最好还是等六祈大人来解决
class Game_Actor
attr_accessor :skill_point
#每升一级获得技能点常数
SKILL_POINT_PER_LEVEL = 5
#获得技能树
def skill_trees
@skills.find_all{|skill_id| $data_skills[skill_id].description.index("skill_tree")}
end
#常规技能中排除技能树
def skills
result = []
for i in @skills
next if $data_skills[i].description.index("skill_tree")
result.push($data_skills[i])
end
return result
end
#技能点的读写
def skill_point
return @skill_point.nil? ? 0 : @skill_point
end
def skill_point=(p)
@skill_point = p
end
#追加定义,升级获得技能点
alias :ski_lv_up :level_up
def level_up
ski_lv_up
@skill_point += SKILL_POINT_PER_LEVEL
end
alias :oldini:initialize
def initialize(actor_id)
oldini(actor_id)
@skill_point = 0
end
end
复制代码
作者:
yanglibin0409
时间:
2011-1-10 15:45
回复
fux2
的帖子
貌似 还不行额 ~~~ 不过还是 谢谢了
作者:
六祈
时间:
2011-1-10 21:11
回复
yanglibin0409
的帖子
感谢报告bug~愚者已经修改发布帖。
只需要把出错的那一行改成
self.skill_point += SKILL_POINT_PER_LEVEL
复制代码
即可
作者:
yanglibin0409
时间:
2011-1-11 08:13
回复
六祈
的帖子
多谢 前辈, 不过 我有个问题请教, 是否 可以把技能树 改成,第一层练满10级后才能练第二层的技能,而第二层(可选其中一个技能)练满10级后才能练 第三层,这样 可能更人性化一些,不然我直接每个只练一级 就奔最强技能练去了。当然这只是个人愚见。
多谢指教~
作者:
露璐
时间:
2011-1-11 08:18
也可以不用脚本,我曾经这么做过,但是很麻烦。
你技能一共有几级,就做几个,并标注是几级。(记住威力一级比一级大)
可以设置教官NPC,XX级时XX技能可以升级,做事件要用好多条件分歧,你如果想一级升二级把一级不遗忘做事件就不遗忘一级技能。虽然麻烦但是或许对你有用。
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1