じ☆ve冰风 发表于 2024-4-19 18:58:30

ISA - 绝对防御状态 - Absolute Defense State

在使用前请先使用:
http://rpg.blue/thread-169595-1-1.html
#_______________________________________________________________________________# * 此脚本归66RPG - Idint Script Association(ISA)所有,谢绝任何形式转载。#_______________________________________________________________________________#===============================================================================# ■ 绝对防御状态 - Absolute Defense State#-------------------------------------------------------------------------------#   遵守协议:66RPG - Idint Script Association(ISA)#   初始脚本:忧雪の伤#   更新优化:无#   当前版本:1.0.0.0#-------------------------------------------------------------------------------#   更新日记:忧雪の伤(2011.3.11)#             - 初始化对象#-------------------------------------------------------------------------------#   功能介绍:增加绝对防御的战斗特效。#   使用方法:插入接入包的下端处。#   存在问题:无#===============================================================================#--------------------------------------------------------------------------# ● 资料记录#--------------------------------------------------------------------------module ISA   Use["绝对防御状态"] =    System["绝对防御状态"] = {}end#--------------------------------------------------------------------------# ● 设定部分#--------------------------------------------------------------------------module ISA# 当持有下述编号的状态的场合,持有者的防御行动效果变成绝对防御System["绝对防御状态"]["防御行动状态"] = 17# 当持有下述编号的状态的场合,持有者的伤害变为0System["绝对防御状态"]["直接无效状态"] = 18# 当持有下述编号的状态的场合,持有者攻击不受绝对防御的影响System["绝对防御状态"]["防御穿透状态"] = 19end#==============================================================================# ■ Game_Battler#------------------------------------------------------------------------------#  处理战斗者的类。这个类作为 Game_Actor 类与 Game_Enemy 类的# 超级类来使用。#==============================================================================class Game_Battlerinclude ISA#--------------------------------------------------------------------------# ● 检查是否绝对防御#--------------------------------------------------------------------------def Absolute_Defense?    return self.guarding? ? self.state?(System["绝对防御状态"]["防御行动状态"]) : false   end#--------------------------------------------------------------------------# ● 检查是否直接无效#--------------------------------------------------------------------------def Direct_Invalid?    return self.state?(System["绝对防御状态"]["直接无效状态"])end#--------------------------------------------------------------------------# ● 检查是否无视绝对防御#--------------------------------------------------------------------------def No_Absolute_Defense?(attacker)    return attacker.state?(System["绝对防御状态"]["防御穿透状态"]) ? false : trueend#--------------------------------------------------------------------------# ● 应用通常攻击效果#   attacker : 攻击者 (battler)#--------------------------------------------------------------------------alias :absolute_defense_state_attack_effect :attack_effect unless method_defined? :absolute_defense_state_attack_effectdef attack_effect(attacker)    if Absolute_Defense? or Direct_Invalid? and No_Absolute_Defense?(attacker)      self.damage = 0 if self.damage != "Miss"      return true    end    absolute_defense_state_attack_effect(attacker)endend    复制代码
内个啥,使用方法在脚本里面。

             本帖来自P1论坛作者忧雪の伤,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址:https://rpg.blue/forum.php?mod=viewthread&tid=169680若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。
页: [1]
查看完整版本: ISA - 绝对防御状态 - Absolute Defense State