#==============================================================================
#                   「ピクチャの反転」(ACE) ver.1.0
#   製作者:奈々(なな)
#   へぷたなすくろーる http://heptanas.mamagoto.com/
#
#   ◇使用規約
#   使用される場合はスクリプト作成者として「奈々」を明記して下さい。
#   このスクリプトを改変したり、改変したものを配布するなどは自由ですが
#   その場合も元のスクリプトの作成者として名前は載せて下さい。
#   その他、詳しい利用規約はブログを参照して下さい。
#
#------------------------------------------------------------------------------
#
#   ピクチャを左右反転させることができます。
#   主に立ち絵などを表示する場合に、画像の加工をしなくて良くなります。
#   
#   使い方は、まず普通にピクチャを表示します。
#   その後、イベントコマンドのスクリプトで
#   
#   n7_pic_mirror(ピクチャ番号)
#   
#   と入力すると、指定した番号のピクチャが反転します。
#   「ピクチャの表示」のすぐ下に置くことで、最初から反転して表示可能です。
#   反転状態のピクチャを指定した場合は、元に戻ります。
#   
#   また、同様に
#   n7_pic_mirror(ピクチャ番号, true)
#   n7_pic_mirror(ピクチャ番号, false)
#   と入力することで、反転・非反転を直接指定できます。
#
#==============================================================================
#==============================================================================
# ■ Game_Picture
#------------------------------------------------------------------------------
#  ピクチャを扱うクラスです。このクラスは Game_Pictures クラスの内部で、特定
# の番号のピクチャが必要になったときだけ作成されます。
#==============================================================================

class Game_Picture
  #--------------------------------------------------------------------------
  # ● 公開インスタンス変数
  #--------------------------------------------------------------------------
  attr_accessor   :mirror                 # 反転
  #--------------------------------------------------------------------------
  # ● 回転の初期化
  #--------------------------------------------------------------------------
  alias init_rotate_mirror init_rotate
  def init_rotate
    init_rotate_mirror
    @mirror = false
  end
end

#==============================================================================
# ■ Sprite_Picture
#------------------------------------------------------------------------------
#  ピクチャ表示用のスプライトです。Game_Picture クラスのインスタンスを監視し、
# スプライトの状態を自動的に変化させます。
#==============================================================================

class Sprite_Picture < Sprite
  #--------------------------------------------------------------------------
  # ● その他の更新
  #--------------------------------------------------------------------------
  alias update_other_mirror update_other
  def update_other
    update_other_mirror
    self.mirror = @picture.mirror
  end
end

#==============================================================================
# ■ Game_Interpreter
#------------------------------------------------------------------------------
#  イベントコマンドを実行するインタプリタです。このクラスは Game_Map クラス、
# Game_Troop クラス、Game_Event クラスの内部で使用されます。
#==============================================================================

class Game_Interpreter
  #--------------------------------------------------------------------------
  # ● ピクチャの反転
  #--------------------------------------------------------------------------
  def n7_pic_mirror(num, mode = "切り替え")
    if mode == "切り替え"
      screen.pictures[num].mirror ? mode = false : mode = true
    end
    screen.pictures[num].mirror = mode
  end
end