#----------------------------------------------------------------------------
# ツクールXPで2000の機能を実現 準備スクリプト 改 by 貪藻矢射妥←
#----------------------------------------------------------------------------
# 原作: ◆ ツクールXPで2000の機能を実現 準備スクリプト ◆
# ◇ Last update : 2004/08/03 ◇
# 原作者: するめ様
# HP: チームするめ
# アドレス: http://surume.s140.xrea.com/
#
# 改造内容:
# ・変更点
# (製作者の都合などでテストプレイの)途中から仕様変更が入ってもいいように
# システム-属性から定義値を自動的に算出している部分を固定値に変更
#
#==============================================================================
# 更新っぽいもの
# まだなし
# 2024:11:01
# ・多刀流未使用の場合のget_equip_listを定義
$OuterFlgs = {} if $OuterFlgs == nil
$OuterFlgs["Tkl_2K_2_XP"] = true
module Tkl2K_2_XP
# ターンの最初に先制攻撃の属性番号
FASTEST_MOVE = 21
# ターンの一番最後に攻撃の属性番号
LASTEST_MOVE = 22
# 一度に敵全体を攻撃の属性番号
ALLIZE_ATTACK = 23
# 敵の回避率を無視の属性番号
EVA_IGNORE = 24
# 両手武器の属性番号
TWO_HANDED = 25
# 必殺(痛恨の一撃)防止の属性番号
CRITICAL_CANCEL = 26
# 敵の物理防御を無視の属性番号
PDEF_IGNORE = 53
# 敵の魔法防御を無視の属性番号
MDEF_IGNORE = 54
end
class Game_Battler
#--------------------------------------------------------------------------
# ● 属性修正の計算
# element_set : 属性
#--------------------------------------------------------------------------
def elements_correct(element_set)
# 無属性の場合
if element_set == []
# 100 を返す
return 100
end
# 与えられた属性の中で最も弱いものを返す
# ※メソッド element_rate は、このクラスから継承される Game_Actor
# および Game_Enemy クラスで定義される
f = false # 修正はここから
weakest = -100
for i in element_set
# 名称の二文字目までが"無:"なら、属性として計算しない
if $data_system.elements[i][/^無:/] == nil
f = true
weakest = [weakest, self.element_rate(i)].max
end
end
if f == false
weakest = 100
end
return weakest
end
end
class Game_Actor < Game_Battler
if !$OuterFlgs["Equip_Extend"]
#--------------------------------------------------------------------------
# ● 装備品ID一覧取得
# 多刀流用防具エリアに武器装備フラグリスト やequipで使用するequip_type
# と連動するのでIDの配置には注意してください。
#--------------------------------------------------------------------------
def get_armors_id_list(actor=nil)
if actor == nil
return [@armor1_id, @armor2_id, @armor3_id, @armor4_id]
else
return [actor.armor1_id, actor.armor2_id, actor.armor3_id,
actor.armor4_id]
end
end
#--------------------------------------------------------------------------
# ● 真装備品一覧取得
# list : 空、または武器が入ったリスト
#--------------------------------------------------------------------------
def get_equip_list(list)
arm_list = get_armors_id_list
for i in 0...arm_list.size
list.push($data_armors[arm_list[i]])
end
return list
end
#--------------------------------------------------------------------------
# ● 鎧に指定された属性が含まれているか?
# アクターの場合
#--------------------------------------------------------------------------
def armor_element_include?(element_id)
list = get_armors_id_list
for i in 0...list.size
armor = $data_armors[list[i]]
if armor != nil && armor.guard_element_set.include?(element_id)
return true
end
end
return false
end
end #$OuterFlgs["Equip_Extend"]
end
class Game_Enemy < Game_Battler
#--------------------------------------------------------------------------
# ● スキルの習得済み判定
# skill_id : スキル ID
#--------------------------------------------------------------------------
def skill_learn?(skill_id)
return false
end
if !$OuterFlgs["Equip_Extend"]
#--------------------------------------------------------------------------
# ● 鎧に指定された属性が含まれているか?
# エネミーの場合は必ずfalse
#--------------------------------------------------------------------------
def armor_element_include?(element_id)
return false
end
end #$OuterFlgs["Equip_Extend"]
end
|