157 lines
7.2 KiB
Ruby
157 lines
7.2 KiB
Ruby
#==============================================================================
|
|
# ■ VXAce_SP1
|
|
#------------------------------------------------------------------------------
|
|
# プリセットスクリプトの不具合を修正します。ユーザー定義のスクリプト素材は、
|
|
# 原則としてこのセクションより下に配置してください。
|
|
#==============================================================================
|
|
|
|
#------------------------------------------------------------------------------
|
|
# 【修正内容】
|
|
#------------------------------------------------------------------------------
|
|
# ●イベントコマンド[ステートの変更]にて、同じステートの付加と解除を同時に実
|
|
# 行した際、二回目以降の付加が失敗する不具合を修正しました。
|
|
# ●イベントコマンド[アニメーションの表示]にて、表示中のアニメーションがマッ
|
|
# プのスクロールに同期しない不具合を修正しました。
|
|
# ●自動戦闘の行動が正常に選択されない不具合を修正しました。
|
|
# ●装備できなくなった装備品が外れたことにより、さらに別の装備品が装備できなく
|
|
# なったとき、その装備品が増殖してしまう不具合を修正しました。
|
|
# ●イベントコマンド[ピクチャの消去]を実行した後に余分な負荷がかかる不具合を
|
|
# 修正しました。
|
|
# ●移動ルートのオプション[移動できない場合は飛ばす]にチェックを入れた状態で
|
|
# トリガー[プレイヤーから接触]のイベントに接触すると、イベントが実行中であ
|
|
# っても起動予約がされてしまう不具合を修正しました。
|
|
# ●魔法反射されたスキルに対してステート有効度が反映されない不具合を修正しまし
|
|
# た。
|
|
# ●フォントのデフォルト設定にて太字または斜体を有効にしていても、ステータス画
|
|
# 面を切り替えたとき等に無効な状態に戻ってしまう不具合を修正しました。
|
|
#------------------------------------------------------------------------------
|
|
class Game_Battler
|
|
attr_accessor :magic_reflection
|
|
#--------------------------------------------------------------------------
|
|
# ● 敵対関係の判定
|
|
#--------------------------------------------------------------------------
|
|
alias vxace_sp1_opposite? opposite?
|
|
def opposite?(battler)
|
|
vxace_sp1_opposite?(battler) || battler.magic_reflection
|
|
end
|
|
end
|
|
#------------------------------------------------------------------------------
|
|
class Game_Actor
|
|
#--------------------------------------------------------------------------
|
|
# ● 装備できない装備品を外す
|
|
# item_gain : 外した装備品をパーティに戻す
|
|
#--------------------------------------------------------------------------
|
|
alias vxace_sp1_release_unequippable_items release_unequippable_items
|
|
def release_unequippable_items(item_gain = true)
|
|
loop do
|
|
last_equips = equips.dup
|
|
vxace_sp1_release_unequippable_items(item_gain)
|
|
return if equips == last_equips
|
|
end
|
|
end
|
|
#--------------------------------------------------------------------------
|
|
# ● 自動戦闘時の戦闘行動を作成
|
|
#--------------------------------------------------------------------------
|
|
def make_auto_battle_actions
|
|
@actions.size.times do |i|
|
|
@actions[i] = make_action_list.max_by {|action| action.value }
|
|
end
|
|
end
|
|
end
|
|
#------------------------------------------------------------------------------
|
|
class Game_Player
|
|
#--------------------------------------------------------------------------
|
|
# ● マップイベントの起動
|
|
# triggers : トリガーの配列
|
|
# normal : プライオリティ[通常キャラと同じ]かそれ以外か
|
|
#--------------------------------------------------------------------------
|
|
alias vxace_sp1_start_map_event start_map_event
|
|
def start_map_event(x, y, triggers, normal)
|
|
return if $game_map.interpreter.running?
|
|
vxace_sp1_start_map_event(x, y, triggers, normal)
|
|
end
|
|
end
|
|
#------------------------------------------------------------------------------
|
|
class Game_Picture
|
|
#--------------------------------------------------------------------------
|
|
# ● ピクチャの消去
|
|
#--------------------------------------------------------------------------
|
|
alias vxace_sp1_erase erase
|
|
def erase
|
|
vxace_sp1_erase
|
|
@origin = 0
|
|
end
|
|
end
|
|
#------------------------------------------------------------------------------
|
|
class Game_Interpreter
|
|
#--------------------------------------------------------------------------
|
|
# ● ステートの変更
|
|
#--------------------------------------------------------------------------
|
|
alias vxace_sp1_command_313 command_313
|
|
def command_313
|
|
vxace_sp1_command_313
|
|
$game_party.clear_results
|
|
end
|
|
end
|
|
#------------------------------------------------------------------------------
|
|
class Sprite_Character
|
|
#--------------------------------------------------------------------------
|
|
# ● 位置の更新
|
|
#--------------------------------------------------------------------------
|
|
alias vxace_sp1_update_position update_position
|
|
def update_position
|
|
move_animation(@character.screen_x - x, @character.screen_y - y)
|
|
vxace_sp1_update_position
|
|
end
|
|
#--------------------------------------------------------------------------
|
|
# ● アニメーションの移動
|
|
#--------------------------------------------------------------------------
|
|
def move_animation(dx, dy)
|
|
if @animation && @animation.position != 3
|
|
@ani_ox += dx
|
|
@ani_oy += dy
|
|
@ani_sprites.each do |sprite|
|
|
sprite.x += dx
|
|
sprite.y += dy
|
|
end
|
|
end
|
|
end
|
|
end
|
|
#------------------------------------------------------------------------------
|
|
class Sprite_Picture
|
|
#--------------------------------------------------------------------------
|
|
# ● 転送元ビットマップの更新
|
|
#--------------------------------------------------------------------------
|
|
alias vxace_sp1_update_bitmap update_bitmap
|
|
def update_bitmap
|
|
if @picture.name.empty?
|
|
self.bitmap = nil
|
|
else
|
|
vxace_sp1_update_bitmap
|
|
end
|
|
end
|
|
end
|
|
#------------------------------------------------------------------------------
|
|
class Window_Base
|
|
#--------------------------------------------------------------------------
|
|
# ● フォント設定のリセット
|
|
#--------------------------------------------------------------------------
|
|
alias vxace_sp1_reset_font_settings reset_font_settings
|
|
def reset_font_settings
|
|
vxace_sp1_reset_font_settings
|
|
contents.font.bold = Font.default_bold
|
|
contents.font.italic = Font.default_italic
|
|
end
|
|
end
|
|
#------------------------------------------------------------------------------
|
|
class Scene_Battle
|
|
#--------------------------------------------------------------------------
|
|
# ● 魔法反射の発動
|
|
#--------------------------------------------------------------------------
|
|
alias vxace_sp1_invoke_magic_reflection invoke_magic_reflection
|
|
def invoke_magic_reflection(target, item)
|
|
@subject.magic_reflection = true
|
|
vxace_sp1_invoke_magic_reflection(target, item)
|
|
@subject.magic_reflection = false
|
|
end
|
|
end
|