#============================================================================== # [ZTBS] -Zenith Tactical Battle System- タクティカルバトルシステム #  〜+8:地形タグ能力補正設定〜   by 水夜 #  ver1.01  Zenith Creation (http://zenith.ifdef.jp/) #------------------------------------------------------------------------------ # マップ上での戦略的なバトルを実現。 #============================================================================== class Game_Battler def tag_effect(tag) case tag #============================================================================== # # when 地形タグ # return[腕力, 器用さ, 素早さ, 魔力, 命中率, 攻撃力, 物防, 魔防, 回避修正] # # ※ステートの能力変化と同様に%指定です。(100 で通常通り) # ※回避修正のみ値を直接加算します。 # #============================================================================== when 0 # 地形タグ 0 return [100, 100, 100, 100, 100, 100, 100, 100, 0] when 1 # 地形タグ 1 return [100, 100, 100, 200, 100, 100, 100, 100, 0] # 魔力2倍 when 2 # 地形タグ 2 return [100, 100, 50, 100, 100, 100, 100, 100, 0] # 素早さ半減 when 3 # 地形タグ 3 return [100, 100, 100, 100, 100, 100, 100, 100, 0] when 4 # 地形タグ 4 return [100, 100, 100, 100, 100, 100, 100, 100, 0] when 5 # 地形タグ 5 return [100, 100, 100, 100, 100, 100, 100, 100, 0] when 6 # 地形タグ 6 return [100, 100, 100, 100, 100, 100, 100, 100, 0] when 7 # 地形タグ 7 return [100, 100, 100, 100, 100, 100, 100, 100, 0] #============================================================================== # ここより上で設定してください #============================================================================== else return [100, 100, 100, 100, 100, 100, 100, 100, 100] end end #-------------------------------------------------------------------------- # ● キャラクターを検索 #-------------------------------------------------------------------------- def search_character for i in $game_system.tactics_actors.keys if $game_system.tactics_actors[i] == self id = i break end end if id != nil return $game_map.events[i] end for i in $game_system.tactics_enemies.keys if $game_system.tactics_enemies[i] == self id = i break end end if id != nil return $game_map.events[i] end return nil end #-------------------------------------------------------------------------- # ● 腕力の取得 #-------------------------------------------------------------------------- alias ztbs_str str def str n = ztbs_str if $game_system.in_tactics # キャラクター検索 character = search_character return n if character == nil # 地形タグ補正 tag = character.terrain_tag c = tag_effect(tag)[0] n *= c / 100.0 n = [[Integer(n), 1].max, 999].min end return n end #-------------------------------------------------------------------------- # ● 器用さの取得 #-------------------------------------------------------------------------- alias ztbs_dex dex def dex n = ztbs_dex if $game_system.in_tactics # キャラクター検索 character = search_character return n if character == nil # 地形タグ補正 tag = character.terrain_tag c = tag_effect(tag)[1] n *= c / 100.0 n = [[Integer(n), 1].max, 999].min end return n end #-------------------------------------------------------------------------- # ● 素早さの取得 #-------------------------------------------------------------------------- alias ztbs_agi agi def agi n = ztbs_agi if $game_system.in_tactics # キャラクター検索 character = search_character return n if character == nil # 地形タグ補正 tag = character.terrain_tag c = tag_effect(tag)[2] n *= c / 100.0 n = [[Integer(n), 1].max, 999].min end return n end #-------------------------------------------------------------------------- # ● 魔力の取得 #-------------------------------------------------------------------------- alias ztbs_int int def int n = ztbs_int if $game_system.in_tactics # キャラクター検索 character = search_character return n if character == nil # 地形タグ補正 tag = character.terrain_tag c = tag_effect(tag)[3] n *= c / 100.0 n = [[Integer(n), 1].max, 999].min end return n end #-------------------------------------------------------------------------- # ● 命中率の取得 #-------------------------------------------------------------------------- alias ztbs_hit hit def hit n = ztbs_hit if $game_system.in_tactics # キャラクター検索 character = search_character return n if character == nil # 地形タグ補正 tag = character.terrain_tag c = tag_effect(tag)[4] n *= c / 100.0 n = Integer(n) end return n end #-------------------------------------------------------------------------- # ● 攻撃力の取得 #-------------------------------------------------------------------------- alias ztbs_atk atk def atk n = ztbs_atk if $game_system.in_tactics # キャラクター検索 character = search_character return n if character == nil # 地形タグ補正 tag = character.terrain_tag c = tag_effect(tag)[5] n *= c / 100.0 n = Integer(n) end return n end #-------------------------------------------------------------------------- # ● 物理防御の取得 #-------------------------------------------------------------------------- alias ztbs_pdef pdef def pdef n = ztbs_pdef if $game_system.in_tactics # キャラクター検索 character = search_character return n if character == nil # 地形タグ補正 tag = character.terrain_tag c = tag_effect(tag)[6] n *= c / 100.0 n = Integer(n) end return n end #-------------------------------------------------------------------------- # ● 魔法防御の取得 #-------------------------------------------------------------------------- alias ztbs_mdef mdef def mdef n = ztbs_mdef if $game_system.in_tactics # キャラクター検索 character = search_character return n if character == nil # 地形タグ補正 tag = character.terrain_tag c = tag_effect(tag)[7] n *= c / 100.0 n = Integer(n) end return n end #-------------------------------------------------------------------------- # ● 回避修正の取得 #-------------------------------------------------------------------------- alias ztbs_eva eva def eva n = ztbs_eva if $game_system.in_tactics # キャラクター検索 character = search_character return n if character == nil # 地形タグ補正 tag = character.terrain_tag c = tag_effect(tag)[8] n += c n = Integer(n) end return n end end