08-15-2015, 02:59 AM 
	
	
	
		Oookay.   Got SOMETHING for you.... a Patch
  Oh, and remember.   We do not considered doubleposting if some significant time had passed and new and pertinent information is being presented.
 Oh, and remember.   We do not considered doubleposting if some significant time had passed and new and pertinent information is being presented.
And the way the system is set up in your scripts library is kinda manditory... KINDA...
So yeah, The Moggy Menu scripts go before the battlesystem, but this patch goes after them all.
And without further adieu...
  			
		
IF.... you're not using Moghunter's Scene Status Eva (and why the heck wouldn't you??), then you will want to remove the Window_Status class in the patch from lines 278 to 319. Since status windows show equipment, and this is a multi-Slot system, the status window had to be adjusted accordingly.
OH. And there is a replacement version of the 'LAYOUT-EQUIP' picture that goes in your pictures folder (no Weapon, Armor, Boots) text there. And there are some extra instructions in the patch.
 Layout-Equip.PNG (Size: 58.63 KB / Downloads: 180)
  Layout-Equip.PNG (Size: 58.63 KB / Downloads: 180)
	
	
	
 Oh, and remember.   We do not considered doubleposting if some significant time had passed and new and pertinent information is being presented.
 Oh, and remember.   We do not considered doubleposting if some significant time had passed and new and pertinent information is being presented.And the way the system is set up in your scripts library is kinda manditory... KINDA...
Mog Menu Equip
Mog Menu Status (your option)
Atoa's Battlesystem
Atoa's Add-Ons (including Multiple Slots)
THIS PATCH!!!!
So yeah, The Moggy Menu scripts go before the battlesystem, but this patch goes after them all.
And without further adieu...
 The Atoa's Moggy-Slots Patch
  			Code:
#==============================================================================
# ** Atoa's Moggy-Slots - The Moghunter Patch for Atoa's Multi Slot Script
#------------------------------------------------------------------------------
#    by DerVVulfman
#    version 1.0
#    08-11-2016
#    RGSS / RMXP - Involves Rewrites
#------------------------------------------------------------------------------
#
#  INTRODUCTION:
#  =============
#  This script is intended to permit the Equipment Multi Slots script by Atoa
#  to work with Moghunter's 'Scene_Equip Asuka' & 'Scene_Status Eva' scripts.
#
#  As this script must alter the status window to account for the additional
#  slots, it is necessary to have written this to account for both Equipment
#  and Status menu scripts by Moghunter.  At the same time, it endeavored to
#  keep as much of the displayed information shared between the two scripts.
#
#  NOTE:  The original Moghunter Equipment script  allowed for only  a fixed
#  number of slots.  As such, the 'Layout-Equip.png' image contained text to
#  display the slot names.  Unfortunately,  this will not be possible with a
#  multiple slot system.   As such, this script should come with an attached
#  png file which resembles the original, but with the names removed.
#
#  REMEMBER:   Character portraits within the Moghunter menus is based upon
#  the character's name  followed by a suffix  as described in the script's
#  configuration section.  In the case of a potrait of Aluxes, the filename
#  would be Aluxes_P as the suffix defined in the PORTRAIT value is '_P'.
#
#==============================================================================
#==============================================================================
# ** Window_Base
#------------------------------------------------------------------------------
#  This class is for all in-game windows.
#==============================================================================
class Window_Base < Window
  #--------------------------------------------------------------------------
  # * Draw Name
  #     actor : actor
  #     x     : draw spot x-coordinate
  #     y     : draw spot y-coordinate
  #--------------------------------------------------------------------------
  def draw_actor_name_mog(actor, x, y)
    self.contents.font.color = normal_color
    self.contents.draw_text(x, y, 120, 32, actor.name)
  end
  #--------------------------------------------------------------------------
  # * Draw Level
  #     actor : actor
  #     x     : draw spot x-coordinate
  #     y     : draw spot y-coordinate
  #--------------------------------------------------------------------------
  def draw_actor_level_mog(actor, x, y)
    self.contents.font.color = system_color
    self.contents.draw_text(x, y, 32, 32, "Lv")
    self.contents.font.color = normal_color
    self.contents.draw_text(x + 32, y, 24, 32, actor.level.to_s, 2)
  end
end
#==============================================================================
# ** Window_EquipLeft
#------------------------------------------------------------------------------
#  This window displays actor parameter changes on the equipment screen.
#==============================================================================
class Window_EquipLeft < Window_Base
  #--------------------------------------------------------------------------
  # * Alias Listings
  #--------------------------------------------------------------------------
  alias equip_left_multimog_initialize initialize
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     actor : actor
  #--------------------------------------------------------------------------
  def initialize(actor)
    # Perform the original code
    equip_left_multimog_initialize(actor)
    # Hide and resize to match Moghunter system
    self.opacity = 0
    self.height = 446
    self.contents = Bitmap.new(width - 32, height - 32)
    # Set Moghunter Font
    self.contents.font.name = MOG::EQUIP_FONT
    refresh
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    draw_heroface2(@actor, 20, 460)      
    drw_equist(0,390)    
    draw_actor_name_mog(@actor, 4, 0)
    draw_actor_level_mog(@actor, 4, 32)
    self.contents.font.name = MOG::EQUIP_FONT
    draw_actor_parameter(@actor, 10, 164 , 0)
    draw_actor_parameter(@actor, 10, 196 , 1)
    draw_actor_parameter(@actor, 10, 228 , 2)
    draw_actor_parameter(@actor, 10, 260 , 3)
    draw_actor_parameter(@actor, 10, 292 , 4)
    draw_actor_parameter(@actor, 10, 324 , 5)
    draw_actor_parameter(@actor, 10, 356 , 6)  
    if @new_atk != nil
      self.contents.font.color = system_color
      if @new_atk < @actor.atk
      drw_eqpup(170,190,2)  
      self.contents.font.color = Color.new(255,50,50,255)      
      elsif @new_atk > @actor.atk
      drw_eqpup(170,190,1)  
      self.contents.font.color = Color.new(50,250,150,255)
      else
      drw_eqpup(170,190,0)        
      self.contents.font.color = Color.new(255,255,255,255)      
      end      
      self.contents.draw_text(190, 162, 36, 32, @new_atk.to_s, 2)
    end
    if @new_pdef != nil
      if @new_pdef < @actor.pdef
      drw_eqpup(170,226,2)  
      self.contents.font.color = Color.new(255,50,50,255)      
      elsif @new_pdef > @actor.pdef
      drw_eqpup(170,226,1)  
      self.contents.font.color = Color.new(50,250,150,255)
      else
      drw_eqpup(170,226,0)        
      self.contents.font.color = Color.new(255,255,255,255)      
      end  
      self.contents.draw_text(190, 194, 36, 32, @new_pdef.to_s, 2)
    end
    if @new_mdef != nil
      if @new_mdef < @actor.mdef
      drw_eqpup(170,258,2)  
      self.contents.font.color = Color.new(255,50,50,255)      
      elsif @new_mdef > @actor.mdef
      drw_eqpup(170,258,1)  
      self.contents.font.color = Color.new(50,250,150,255)
      else
      drw_eqpup(170,258,0)        
      self.contents.font.color = Color.new(255,255,255,255)      
      end
      self.contents.draw_text(190, 226, 36, 32, @new_mdef.to_s, 2)
    end
    if @new_str  != nil
      if @new_str < @actor.str
      drw_eqpup(170,290,2)  
      self.contents.font.color = Color.new(255,50,50,255)      
      elsif @new_str > @actor.str
      drw_eqpup(170,290,1)  
      self.contents.font.color = Color.new(50,250,150,255)
      else
      drw_eqpup(170,290,0)        
      self.contents.font.color = Color.new(255,255,255,255)      
      end
      self.contents.draw_text(190, 258, 36, 32, @new_str.to_s, 2)
    end
    if @new_dex  != nil
      if @new_dex < @actor.dex
      drw_eqpup(170,322,2)  
      self.contents.font.color = Color.new(255,50,50,255)      
      elsif @new_dex > @actor.dex
      drw_eqpup(170,322,1)  
      self.contents.font.color = Color.new(50,250,150,255)
      else
      drw_eqpup(170,322,0)        
      self.contents.font.color = Color.new(255,255,255,255)      
      end
      self.contents.draw_text(190, 290, 36, 32, @new_dex.to_s, 2)
    end
    if @new_agi  != nil
      if @new_agi < @actor.agi
      drw_eqpup(170,354,2)  
      self.contents.font.color = Color.new(255,50,50,255)      
      elsif @new_agi > @actor.agi
      drw_eqpup(170,354,1)  
      self.contents.font.color = Color.new(50,250,150,255)
      else
      drw_eqpup(170,354,0)        
      self.contents.font.color = Color.new(255,255,255,255)      
      end
      self.contents.draw_text(190, 322, 36, 32, @new_agi.to_s, 2)
    end
    if @new_int  != nil
      if @new_int < @actor.int
      drw_eqpup(170,386,2)  
      self.contents.font.color = Color.new(255,50,50,255)      
      elsif @new_int > @actor.int
      drw_eqpup(170,386,1)  
      self.contents.font.color = Color.new(50,250,150,255)
      else
      drw_eqpup(170,386,0)        
      self.contents.font.color = Color.new(255,255,255,255)      
      end
      self.contents.draw_text(190, 354, 36, 32, @new_int.to_s, 2)
    end
  end
end
#==============================================================================
# ** Window_EquipRight
#------------------------------------------------------------------------------
#  This window displays items the actor is currently equipped with on the
#  equipment screen.
#==============================================================================
class Window_EquipRight < Window_Selectable
  #--------------------------------------------------------------------------
  # * Public Instance Variables
  #--------------------------------------------------------------------------
  attr_accessor :data
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     actor : actor
  #--------------------------------------------------------------------------
  def initialize(actor)
    super(272, 64, 368, 192)
    self.contents           = Bitmap.new(width - 32, actor.equip_kind.size * 32)
    self.contents.font.name = MOG::EQUIP_FONT
    self.opacity            = 0
    self.index              = 0
    @actor                  = actor
    refresh
  end
end
#==============================================================================
# ** Window_EquipItem
#------------------------------------------------------------------------------
#  This window displays choices when opting to change equipment on the
#  equipment screen.
#==============================================================================
class Window_EquipItem < Window_Selectable
  #--------------------------------------------------------------------------
  # * Alias Listings
  #--------------------------------------------------------------------------
  alias equip_item_multimog_initialize initialize
  alias equip_item_multimog_draw_item draw_item
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     actor      : actor
  #     equip_type : equip region (0-3)
  #--------------------------------------------------------------------------
  def initialize(actor, equip_type)
    # Perform the original code
    equip_item_multimog_initialize(actor, equip_type)
    # Hide and resize to match Moghunter system
    self.width    = 368
    self.x        = 272
    self.opacity  = 0
    @column_max   = 1
    refresh
  end
  #--------------------------------------------------------------------------
  # * Draw Item
  #     index : item number
  #--------------------------------------------------------------------------
  def draw_item(index)
    # Set Moghunter Font
    self.contents.font.name = MOG::EQUIP_FONT
    # Perform the original code
    equip_item_multimog_draw_item(index)
  end  
end
#==============================================================================
# ** Window_Status 
#------------------------------------------------------------------------------
#  This window displays full status specs on the status screen.
#==============================================================================
class Window_Status < Window_Base
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    self.contents.font.name = MOG::STATUS_FONT
    draw_actor_name(@actor, 4, 0)
    draw_actor_class(@actor, 510, -5 )
    draw_mexp5(@actor, 310, 130)
    draw_actor_state(@actor, 450, 20)
    draw_maphp5(@actor, 275, 165)
    draw_mapsp5(@actor, 430, 165)
    draw_actor_parameter2(@actor, 280, 108, 0)
    draw_actor_parameter2(@actor, 460, 137, 1)
    draw_actor_parameter2(@actor, 460, 108, 2)
    draw_actor_parameter2(@actor, 280, 53, 3)
    draw_actor_parameter2(@actor, 460, 53, 4)
    draw_actor_parameter2(@actor, 280, 80, 5)
    draw_actor_parameter2(@actor, 460, 80, 6)
    self.contents.font.color = system_color
    if @actor.two_weapons
      for i in 0..1
        draw_item_name($data_weapons[@actor.weapon_id(i)],320+16,228+32*i)
      end
      for i in 2...@actor.equip_type.size
        draw_item_name($data_armors[ @actor.armor_id[i] ], 320+16,228+32*i)
      end
    else
      draw_item_name($data_weapons[@actor.weapon_id], 320+16,228)
      for i in 1...@actor.equip_type.size
        draw_item_name($data_armors[ @actor.armor_id[i] ], 320+16,228+32*i)
      end
    end
  end
end
#==============================================================================
# ** Scene_Equip
#------------------------------------------------------------------------------
#  This class performs equipment screen processing.
#==============================================================================
class Scene_Equip
  #--------------------------------------------------------------------------
  # * Main Processing
  #--------------------------------------------------------------------------  
  def main
    unless MOG::EQUIP_FX == 2
      @mnback = Plane.new
      @mnback.bitmap = RPG::Cache.picture(MOG::EQUIP_BACKGROUND)
      @mnback.z = 1
    else
      @spriteset = Spriteset_Map.new
    end
    @mnlay = Sprite.new
    @mnlay.bitmap = RPG::Cache.picture(MOG::EQUIP_LAYOUT)
    @mnlay.z = 2
    @actor = $game_party.actors[@actor_index]
    @help_window = Window_Help.new
    @help_window.opacity = 0
    @help_window.x = -300
    @help_window.contents_opacity = 0
    @left_window = Window_EquipLeft.new(@actor)
    @left_window.x = -300
    @left_window.contents_opacity = 0
    @right_window = Window_EquipRight.new(@actor)
    @right_window.index = @equip_index
    item_window_update
    @right_window.help_window = @help_window
    for i in 0...@actor.equip_kind.size
      eval("@item_window#{i + 1}.help_window = @help_window")
    end
    @right_window.x = 640
    refresh
    unless MOG::EQUIP_FX == 2
      Graphics.transition(MOG::EQUIP_TRAN_TIME, "Graphics/Transitions/" + 
        MOG::EQUIP_TRAN_TYPE)
    else
      Graphics.transition
    end
    loop do
      Graphics.update
      Input.update
      update
      break if $scene != self
    end
    for i in 0..20
    @left_window.x -= 15
    @left_window.contents_opacity -= 10
    @item_window.x += 20
    @item_window.contents_opacity -= 15
    @right_window.x += 20
    @right_window.contents_opacity -= 15
    Graphics.update  
    end  
    Graphics.freeze
    @help_window.dispose
    @left_window.dispose
    @right_window.dispose
    item_window_dispose      
    @mnback.dispose unless MOG::EQUIP_FX == 2
    @spriteset.dispose if MOG::EQUIP_FX == 2
    @mnlay.dispose
  end
  #-------------------------------------------------------------------------- 
  # * Update item window
  #-------------------------------------------------------------------------- 
  def item_window_update
    for i in 0...@actor.equip_kind.size
      type = @actor.equip_kind[i]
      eval("@item_window#{i+1} = Window_EquipItem.new(@actor, type)")
    end
    for i in 0...@actor.equip_kind.size
      eval("@item_window#{i+1}.x = 640")
    end
    for i in 0...@actor.equip_kind.size
      eval("@item_window#{i + 1}.help_window = @help_window")
    end
    refresh
  end 
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    if $atoa_script['Atoa New Status']
      @help_window.opacity = Equip_Window_Opacity 
    end
    if @right_window.index > @right_window.data.size - 1
      @right_window.index = @right_window.data.size - 1
    end
    for i in 0...@actor.equip_kind.size
      eval("@item_window#{i + 1}.visible = (@right_window.index == #{i})")
    end
    item1 = @right_window.item
    eval("@item_window = @item_window#{@right_window.index + 1}")
    if @right_window.active
      @left_window.set_new_parameters(nil, nil, nil, nil, nil, nil, nil) 
    end
    if @item_window.active
      @item2 = @item_window.item
      last_hp = @actor.hp
      last_sp = @actor.sp
      @actor.equip(@right_window.index, @item2 == nil ? 0 : @item2.id)
      re_equip = []
      if $atoa_script['Atoa Two Hands'] and @item2 != nil and
          @item2.type_id == 0 and Two_Hands_Weapons.include?(@item2.id)
        for i in 0...@actor.equip_kind.size
          id = @actor.equip_kind[i]
          if id == 1
            re_equip << [i, @actor.equip_id[i]]
            @actor.equip(i, 0)
          end
        end
      elsif @item2 != nil and (@item2.type_id == 1 or 
          ($atoa_script['Atoa Two Hands'] and
         @item2.type_id == 0 and @actor.two_swords_style))
        for i in 0...@actor.equip_kind.size
          id = @actor.equip_kind[i]
          if $atoa_script['Atoa Two Hands'] and @right_window.index != i and 
              id == 0 and Two_Hands_Weapons.include?(@actor.equip_id[id])
            re_equip << [i, @actor.equip_id[i]]
            @actor.equip(i, 0)
          end
        end
      end
      new_atk = @actor.atk
      new_pdef = @actor.pdef
      new_mdef = @actor.mdef
      if $atoa_script['Atoa New Status']
        new_str = @actor.str
        new_dex = @actor.dex
        new_agi = @actor.agi
        new_int = @actor.int
        new_eva = @actor.eva
        new_hit = @actor.hit
        new_crt = @actor.crt 
        new_dmg = @actor.dmg
        new_rcrt = @actor.rcrt
        new_rdmg = @actor.rdmg
      end
      @actor.equip(@right_window.index, item1 == nil ? 0 : item1.id)
      for equip in re_equip
        @actor.equip(equip[0], equip[1])
      end
      @actor.hp = last_hp
      @actor.sp = last_sp
      if $atoa_script['Atoa New Status']
        @left_window.set_new_parameters(new_atk, new_pdef, new_mdef, new_str,
          new_dex, new_agi, new_int, new_eva, new_hit, new_crt, new_dmg,
          new_rcrt, new_rdmg)
      else
        @left_window.set_new_parameters(new_atk, new_pdef, new_mdef, new_str,
          new_dex, new_agi, new_int)
      end
    end
  end  
endIF.... you're not using Moghunter's Scene Status Eva (and why the heck wouldn't you??), then you will want to remove the Window_Status class in the patch from lines 278 to 319. Since status windows show equipment, and this is a multi-Slot system, the status window had to be adjusted accordingly.
OH. And there is a replacement version of the 'LAYOUT-EQUIP' picture that goes in your pictures folder (no Weapon, Armor, Boots) text there. And there are some extra instructions in the patch.
 Layout-Equip.PNG (Size: 58.63 KB / Downloads: 180)
  Layout-Equip.PNG (Size: 58.63 KB / Downloads: 180)
	
Up is down, left is right and sideways is straight ahead. - Cord "Circle of Iron", 1978 (written by Bruce Lee and James Coburn... really...)
	  Above are clickable links

 
 
 Just move the Cursor of the Item_Scene to the right
 Just move the Cursor of the Item_Scene to the right
 
 
![[Image: QrnbKlx.jpg]](https://i.imgur.com/QrnbKlx.jpg)
![[Image: sGz1ErF.png]](https://i.imgur.com/sGz1ErF.png)
![[Image: liM4ikn.png]](https://i.imgur.com/liM4ikn.png)
![[Image: fdzKgZA.png]](https://i.imgur.com/fdzKgZA.png)
![[Image: sj0H81z.png]](https://i.imgur.com/sj0H81z.png)
![[Image: QL7oRau.png]](https://i.imgur.com/QL7oRau.png)
![[Image: uSqjY09.png]](https://i.imgur.com/uSqjY09.png)
![[Image: GAA3qE9.png]](https://i.imgur.com/GAA3qE9.png)
![[Image: 2Hmnx1G.png]](https://i.imgur.com/2Hmnx1G.png)
![[Image: BwtNdKw.png%5B]](https://i.imgur.com/BwtNdKw.png%5B)
