设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索

事件更改职业问题!

查看数: 2620 | 评论数: 3 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2017-8-18 20:03

正文摘要:

改变当前角色职业的同时也改变相对应职业的技能! 事件里面改变职业并没有遗忘掉该职业的技能且也不会自动学会新职业的技能。 这里的技能指的是数据库职业设置的初始技能的变更! ...

回复

cinderelmini 发表于 2017-8-21 19:57:56
本帖最后由 cinderelmini 于 2017-8-22 23:28 编辑
  1. class Game_Actor < Game_Battler
  2.   alias sny46_170821_class_id class_id=
  3.   def class_id=(class_id)
  4.     sny46_170821_class_id(class_id)
  5.     @skills = []
  6.     for i in 1..@level
  7.       for j in $data_classes[@class_id].learnings
  8.         learn_skill(j.skill_id) if j.level == i
  9.       end
  10.     end
  11.   end
  12. end
复制代码

嗯……大概就这么干……放在Main前或者Game_Actor下方生效。

点评

好的!下班晚上回去试一试!  发表于 2017-8-22 14:36

评分

参与人数 1星屑 +150 收起 理由
RyanBern + 150 我很赞同

查看全部评分

0nepeop1e 发表于 2017-8-18 20:45:25
这脚本应该会实现你要的效果
  1. Game_Actor = Class.new(Game_Actor) do
  2.   superclass.constants.each{|c|const_set(c, superclass.const_get(c))}
  3.   def class_id=(class_id)
  4.     for j in $data_classes[@class_id].learnings
  5.       break if j.level > @level
  6.       forget_skill(j.skill_id)
  7.     end
  8.     super(class_id)
  9.     for j in $data_classes[@class_id].learnings
  10.       break if j.level > @level
  11.       learn_skill(j.skill_id)
  12.     end
  13.   end
  14.   const_set(:CLASS_SKILL_FIXED, true)
  15. end unless defined?(Game_Actor::CLASS_SKILL_FIXED)
复制代码

点评

和其他脚本冲突了!晕啊  发表于 2017-8-19 10:57
拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-7-19 09:34

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表