#============================================================ # By FHNBHJ #·脚本说明 # 使得进入新的混乱状态(和默认的混乱不一样)的角色/敌人有一定 # 几率对自己使用普通攻击。 # (无论进行什么操作,攻击/防御/物品都是) #·使用说明 # 在@new_confusion_state_id = 后面加上数组, # 数组内容是新的混乱的状态id。 # 修改rand后括号内的数字可以改变混乱时攻击自己的几率。 # 修改set_skill后括号内的数字可以改变混乱时攻击自己的技能id。 #============================================================ #============================================================ #·Game_BattlerBase #============================================================ class Game_BattlerBase alias initialize_fhn initialize def initialize initialize_fhn @new_confusion_state_id = [27,28] # <---这里加新混乱状态id的数组 end def new_confusion? in_new_confusion = false @new_confusion_state_id.each do |id| if state?(id) in_new_confusion = true break end end exist? && in_new_confusion end end #=========================================================== #·Game_Action #=========================================================== class Game_Action def judge_attack_user @attack_user = false # ↓ 这里可以修改攻击自己的几率,rand(3)是1/3,rand(4)是1/4,以此类推。 if rand(3) == 0 @attack_user = true end end alias make_targets_fhn make_targets def make_targets if subject.new_confusion? && @attack_user # p "attack_user!" [subject] else make_targets_fhn end end alias prepare_fhn prepare def prepare prepare_fhn set_new_confusion if subject.new_confusion? && !forcing end def set_new_confusion judge_attack_user # ↓ 这里可以修改攻击自己的技能id。 # (如果混乱而且随机后判定为攻击自己时使用,目标会强制为使用者) set_skill(8) if @attack_user end end #=========================================================== #·End #===========================================================
#============================================================
# By FHNBHJ
#·脚本说明
# 使得进入新的混乱状态(和默认的混乱不一样)的角色/敌人有一定
# 几率对自己使用普通攻击。
# (无论进行什么操作,攻击/防御/物品都是)
#·使用说明
# 在@new_confusion_state_id = 后面加上数组,
# 数组内容是新的混乱的状态id。
# 修改rand后括号内的数字可以改变混乱时攻击自己的几率。
# 修改set_skill后括号内的数字可以改变混乱时攻击自己的技能id。
#============================================================
#============================================================
#·Game_BattlerBase
#============================================================
class Game_BattlerBase
alias initialize_fhn initialize
def initialize
initialize_fhn
@new_confusion_state_id = [27,28] # <---这里加新混乱状态id的数组
end
def new_confusion?
in_new_confusion = false
@new_confusion_state_id.each do |id|
if state?(id)
in_new_confusion = true
break
end
end
exist? && in_new_confusion
end
end
#===========================================================
#·Game_Action
#===========================================================
class Game_Action
def judge_attack_user
@attack_user = false
# ↓ 这里可以修改攻击自己的几率,rand(3)是1/3,rand(4)是1/4,以此类推。
if rand(3) == 0
@attack_user = true
end
end
alias make_targets_fhn make_targets
def make_targets
if subject.new_confusion? && @attack_user
# p "attack_user!"
[subject]
else
make_targets_fhn
end
end
alias prepare_fhn prepare
def prepare
prepare_fhn
set_new_confusion if subject.new_confusion? && !forcing
end
def set_new_confusion
judge_attack_user
# ↓ 这里可以修改攻击自己的技能id。
# (如果混乱而且随机后判定为攻击自己时使用,目标会强制为使用者)
set_skill(8) if @attack_user
end
end
#===========================================================
#·End
#===========================================================
|