本帖最后由 MCCF 于 2020-2-9 21:25 编辑
您好,看起来您已经设置过设定了(范例原本没有第143行),现在无法得知是哪一行出错。希望将出错的前后部分发出,这样我能够快速得知具体的错误内容。
另外,可以自己先看一下,设置的时候必须使用数字,该脚本内没有使用""双引号包括起来的设定部分;如果确实是用数字设置的,则可能是其它脚本的影响。
我最近小规模更新了该系统,修复了一些重要BUG。虽然我没有遇见过此情况,但是可尝试这个新版本:
# 将“配置模块结束”之后的部分替换成: class RPG::Actor #获取角色的属性数组 def elements return /<element\s*=\s*(.*)>/i =~ @note ? $1.split(/,/) : [] end end class RPG::Enemy #获取敌人的属性数组 def elements return /<element\s*=\s*(.*)>/i =~ @note ? $1.split(/,/) : [] end end #============================================================================== # ■ Game_Actor #------------------------------------------------------------------------------ # 管理角色的类。 # 本类在 Game_Actors 类 ($game_actors) 的内部使用。 # 具体使用请查看 Game_Party 类 ($game_party) 。 #============================================================================== class Game_Actor < Game_Battler include Element_Effect #-------------------------------------------------------------------------- # ● 获取属性抗性 #-------------------------------------------------------------------------- def element_rate(element_id) return super(element_id) unless is_pet? rate = super(element_id) actor.elements.select{|i| rate *= ELEMENT_EFFECT[i][element_id] if ELEMENT_EFFECT[i][element_id] } return rate end end #============================================================================== # ■ Game_Enemy #------------------------------------------------------------------------------ # 管理敌人的类。本类在 Game_Troop 类 ($game_troop) 的内部使用。 #============================================================================== class Game_Enemy < Game_Battler include Element_Effect #-------------------------------------------------------------------------- # ● 获取属性抗性 #-------------------------------------------------------------------------- def element_rate(element_id) rate = super(element_id) enemy.elements.select{|i| rate *= ELEMENT_EFFECT[i.to_i][element_id] if ELEMENT_EFFECT[i.to_i][element_id] } return rate end end
# 将“配置模块结束”之后的部分替换成:
class RPG::Actor
#获取角色的属性数组
def elements
return /<element\s*=\s*(.*)>/i =~ @note ? $1.split(/,/) : []
end
end
class RPG::Enemy
#获取敌人的属性数组
def elements
return /<element\s*=\s*(.*)>/i =~ @note ? $1.split(/,/) : []
end
end
#==============================================================================
# ■ Game_Actor
#------------------------------------------------------------------------------
# 管理角色的类。
# 本类在 Game_Actors 类 ($game_actors) 的内部使用。
# 具体使用请查看 Game_Party 类 ($game_party) 。
#==============================================================================
class Game_Actor < Game_Battler
include Element_Effect
#--------------------------------------------------------------------------
# ● 获取属性抗性
#--------------------------------------------------------------------------
def element_rate(element_id)
return super(element_id) unless is_pet?
rate = super(element_id)
actor.elements.select{|i|
rate *= ELEMENT_EFFECT[i][element_id] if ELEMENT_EFFECT[i][element_id]
}
return rate
end
end
#==============================================================================
# ■ Game_Enemy
#------------------------------------------------------------------------------
# 管理敌人的类。本类在 Game_Troop 类 ($game_troop) 的内部使用。
#==============================================================================
class Game_Enemy < Game_Battler
include Element_Effect
#--------------------------------------------------------------------------
# ● 获取属性抗性
#--------------------------------------------------------------------------
def element_rate(element_id)
rate = super(element_id)
enemy.elements.select{|i|
rate *= ELEMENT_EFFECT[i.to_i][element_id] if ELEMENT_EFFECT[i.to_i][element_id]
}
return rate
end
end
如果不能解决您的问题,我正在将整个更新过的新版本上传,您可以尝试在我新的范例工程中是否会有问题;如果仍存在问题,希望将问题前后内容发给我,以便尽快修复。给您造成不便十分抱歉,谢谢。
1.2.9最新版本 |