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

Project1

 找回密码
 注册会员
搜索
查看: 1059|回复: 2
打印 上一主题 下一主题

[已经解决] 这个技能连击的脚本的作者是谁?

[复制链接]

Lv3.寻梦者

梦石
0
星屑
3506
在线时间
2614 小时
注册时间
2012-3-1
帖子
769
跳转到指定楼层
1
发表于 2023-6-21 11:40:37 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
嗯,是这样的,这回使用的时候提示出了错误。

提示的错误是这个:
第 70 行:发生 NoMethodError 。

undefined method `target_index' for nil:NilClass



本来是想找找这个脚本的作者是谁的。
我无论怎样都找不着,
在这个前提下我不清楚这个脚本有没有在维护了。
或者说有没有类似的脚本。



脚本部分:
  1. # SkillCombo_for_VXace (2012/ 3/25)
  2. #「スキルコンボ for VXace」
  3. #______________________________________________________________________________

  4. =begin

  5.    スキルのメモ欄に、<combo:51, 55, 59> ……と書かれたスキルを使用すると、
  6.   そのスキルを使った直後に設定したスキルを発動します。

  7.    この例の場合は、
  8.   親スキル(?) → スキルID:51 (ファイア) → :55(アイス) → :59(サンダー)
  9.   ……というように先に書かれたものから順に発動します。


  10.    なお、コスト消費処理は、親スキルについてのみ行い、
  11.   (メモ欄で指定した)続けて発動するスキルについては一切行いません。

  12.    同様に「使用時メッセージ」も無効です。(結果は表示します)

  13.    また、スキルの使用可能判定についても、
  14.   親スキルのものしかチェックしませんのでご了承ください。

  15.    親スキルの「効果範囲」は、「敵単体」or「味方単体」に設定すること。

  16. =end
  17. #______________________________________________________________________________

  18. #  --- 2012/ 3/25  VXace用に新規作成
  19. #______________________________________________________________________________


  20. class RPG::UsableItem < RPG::BaseItem
  21.   def following_skills
  22.     return []
  23.   end
  24. end

  25. class RPG::Skill < RPG::UsableItem
  26.   def following_skills
  27.     if @__following_skills == nil
  28.       data = []
  29.       note.each_line do |line|
  30.         next unless /<(?:combo|スキルコンボ):(.*)>/i =~ line
  31.         data += $1.scan(/\d+/).collect{|str| str.to_i }
  32.       end
  33.       @__following_skills = data
  34.     end
  35.     return @__following_skills
  36.   end
  37. end
  38. #______________________________________________________________________________


  39. class Scene_Battle < Scene_Base
  40.   
  41.   def wait_for_effect;end
  42.   
  43.   alias skill_combo__use_item  use_item
  44.   def use_item
  45.     current_target = @subject.current_action.make_targets[0]

  46.     skill_combo__use_item

  47.     invoke_following_items(current_target)  if current_target != nil
  48.   end
  49.   #--------------------------------------------------------------------------
  50.   def invoke_following_items(current_target)
  51.     return if @subject.dead? or current_target.dead?
  52.    
  53.     target_index = @subject.current_action.target_index

  54.     @subject.current_action.item.following_skills.each do |skill_id|
  55.       action = Game_Action.new(@subject)
  56.       action.set_skill(skill_id).target_index = target_index
  57.       targets = action.make_targets.compact
  58.       next if targets.empty?
  59.       @log_window.back_to(1)
  60.       show_animation(targets, action.item.animation_id)
  61.       targets.each do |target|
  62.         action.item.repeats.times{ invoke_item(target, action.item) }
  63.       end
  64.       break if @subject.dead? or current_target.dead?
  65.     end
  66.   end
  67. end
复制代码

Lv3.寻梦者

梦石
0
星屑
1345
在线时间
378 小时
注册时间
2015-6-16
帖子
571
2
发表于 2023-7-17 16:50:37 | 只看该作者
脚本冲突了,这个你直接贴脚本没有用,他不属于这个脚本本身有问题,而是你和别的一起塞了导致的的
你这个脚本冲突问题解释一下,是你使用了技能,但是目标目测是直接没有读取到信息
target_index = @subject.current_action.target_index 变量 = 使用者(@subject)当前释放技能(current_action)的释放位置(target_index)
你分别去p一下 @subject @subject.current_action这两个,导致谁空了,都不是nil的空值,那么就是你在取target_index出的问题
单独脚本没啥问题,只能是自己加脚本出的冲突,和打MOD一样,打多了就BUG了,单独拿一个出来了,可能它本身没问题,是打了别人的MOD才出的

点评

至少现在没这个问题了。  发表于 2023-7-18 01:13
P1不太上了,有问题加个Q1286124843,不管是脚本还是游戏问题都可以来找我
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

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

GMT+8, 2024-11-25 00:25

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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