O TEMA DO FÓRUM ESTÁ EM MANUTENÇÃO. FEEDBACKS AQUI: ACESSAR

Preciso de uma modificação no Plugin de Menu

Iniciado por RedWolf, 13/12/2016 às 16:06

Galera, estou terminando meu terceiro jogo (RPG Maker MV) e decidi mudar os gráficos do Menu In-Game. Para isso, utilizei o Plugin do MogHunter: "SceneMenu", que altera os comandos, substituindo-os por imagens, no Menu In-game. Entretanto, o Plugin é pouco customizável, pois carece de opções extras. Como por exemplo, no Menu do Plugin, existem imagens que substituem os comandos de "Itens", "Equipar" e etc. Mas, elas não são editáveis, pois só consigo alterar o local de todas de uma vez. O que eu quero é colocá-las em linha reta e alterar a distância entre elas (Imagens de modelo abaixo). Para isso, é necessário que o Plugin seja editado, afim de adicionar novas opções de customização. Peço encarecidamente que alguma alma caridosa possa me ajudar. Falta somente isso para terminar o meu jogo. Aqui estão o Plugin, o Menu padrão do Plugin e o Menu que eu quero colocar, respectivamente:
Spoiler
//=============================================================================
// MOG_SceneMenu.js
//=============================================================================

/*:
* @plugindesc (v1.2) Modifica a cena de menu principal.
* @author Moghunter
*
* @param Actor Hud X-Axis
* @desc Posição X-Axis da Hud do personagem.
* @default 0
*
* @param Actor Hud Y-Axis
* @desc Posição Y-Axis da Hud do personagem.
* @default 0
*
* @param Char X-Axis
* @desc Posição X-Axis da imagem do personagem.
* @default 20
*
* @param Char Y-Axis
* @desc Posição Y-Axis da image do personagem.
* @default 0
*
* @param HP Meter X-Axis
* @desc Posição X-Axis do medidor de HP.
* @default 17
*
* @param HP Meter Y-Axis
* @desc Posição Y-Axis do medidor de HP.
* @default 93
*
* @param MP Meter X-Axis
* @desc Posição X-Axis do medidor de MP.
* @default 17
*
* @param MP Meter Y-Axis
* @desc Posição Y-Axis do medidor de MP.
* @default 144
*
* @param HP Number X-Axis
* @desc Posição X-Axis do número de HP.
* @default 100
*
* @param HP Number Y-Axis
* @desc Posição Y-Axis do número de HP.
* @default 73
*
* @param HPMax Number X-Axis
* @desc Posição X-Axis do número de HP maximo.
* @default 140
*
* @param HPMax Number Y-Axis
* @desc Posição Y-Axis do número de HP maximo.
* @default 100
*
* @param MP Number X-Axis
* @desc Posição X-Axis do número de MP.
* @default 100
*
* @param MP Number Y-Axis
* @desc Posição Y-Axis do número de MP.
* @default 124
*
* @param MPMax Number X-Axis
* @desc Posição X-Axis do número de MP maximo.
* @default 140
*
* @param MPMax Number Y-Axis
* @desc Posição Y-Axis do número de MP maximo.
* @default 151
*
* @param Commands X-Axis
* @desc Posição X-Axis dos comandos.
* @default 180
*
* @param Commands Y-Axis
* @desc Posição Y-Axis dos comandos.
* @default 50
*
* @param Command Active X-Axis
* @desc Posição X-Axis do comando selecionado.
* @default 40
*
* @param Command Active Y-Axis
* @desc Posição Y-Axis do comando selecionado.
* @default 148
*
* @param Com Name Visible
* @desc Apresentar o nome do comando.
* @default true
*
* @param Com Name X-Axis
* @desc Posição X-Axis do nome do comando.
* @default 40
*
* @param Com Name Y-Axis
* @desc Posição Y-Axis do nome do comando.
* @default 96
*
* @param Com Name FontSize
* @desc Definição do tamanho da fonte do nome do comando.
* @default 22
*
* @param Max Visible Faces
* @desc Definição da quantidade de faces apresentadas.
* @default 5
*
* @param Face Sel X-Axis
* @desc Posição X-Axis das faces.
* @default 240
*
* @param Face Sel Y-Axis
* @desc Posição Y-Axis das faces.
* @default 128
*
* @param Gold X-Axis
* @desc Posição X-Axis do dinheiro.
* @default 260
*
* @param Gold Y-Axis
* @desc Posição Y-Axis do dinheiro.
* @default 580
*
* @param Time X-Axis
* @desc Posição X-Axis do tempo.
* @default 565
*
* @param Time Y-Axis
* @desc Posição Y-Axis do tempo.
* @default 60
*
* @param Time FontSize
* @desc Definição do tamanho da fonte do tempo.
* @default 22
*
* @param Location X-Axis
* @desc Posição X-Axis da localização.
* @default 450
*
* @param Location Y-Axis
* @desc Posição Y-Axis da localização.
* @default 575
*
* @param Time FontSize
* @desc Definição do tamanho da fonte da localização.
* @default 26
*
* @param Magic Circle Visible
* @desc Apresentar o circulo mágico.
* @default true
*
* @param Magic Circle X-Axis
* @desc Posição X-Axis do círculo mágico.
* @default 700
*
* @param Magic Circle Y-Axis
* @desc Posição Y-Axis do círculo mágico.
* @default 140
*
* @param Magic Circle Rotation
* @desc Velocidade de rotação do círculo mágico.
* @default 0.001
*
* @help 
* =============================================================================
* +++ MOG - Scene Menu (v1.2) +++
* By Moghunter
* https://atelierrgss.wordpress.com/
* =============================================================================
* Modifica a cena de menu principal.
*
* =============================================================================
* UTILIZAÇÃO
* =============================================================================
* As imagens do sistema deverão ser gravados na pasta.
*
* /img/menus/main/
*
* =============================================================================
* HISTÓRICO
* =============================================================================
* (1.2) - Correção do crash caso não usar o plugin do Menu Cursor.
* (1.1) - Correção do plugin parameter da posição do nome do comando.
*
*/

//=============================================================================
// ** PLUGIN PARAMETERS
//=============================================================================
  var Imported = Imported || {};
  Imported.MMOG_SceneMenu = true;
  var Moghunter = Moghunter || {};

   Moghunter.parameters = PluginManager.parameters('MOG_SceneMenu');
   Moghunter.scMenu_layoutStatusX = Number(Moghunter.parameters['Actor Hud X-Axis'] || 0);
   Moghunter.scMenu_layoutStatusY = Number(Moghunter.parameters['Actor Hud Y-Axis'] || 0); 
    Moghunter.scMenu_CharX = Number(Moghunter.parameters['Char X-Axis'] || 20);
   Moghunter.scMenu_CharY = Number(Moghunter.parameters['Char Y-Axis'] || 0);
   Moghunter.scMenu_HPMeterX = Number(Moghunter.parameters['HP Meter X-Axis'] || 17);
   Moghunter.scMenu_HPMeterY = Number(Moghunter.parameters['HP Meter Y-Axis'] || 93);
   Moghunter.scMenu_MPMeterX = Number(Moghunter.parameters['MP Meter X-Axis'] || 17);
   Moghunter.scMenu_MPMeterY = Number(Moghunter.parameters['MP Meter Y-Axis'] || 144);   
   Moghunter.scMenu_HPNumberX = Number(Moghunter.parameters['HP Number X-Axis'] || 100);
   Moghunter.scMenu_HPNumberY = Number(Moghunter.parameters['HP Number Y-Axis'] || 73);
   Moghunter.scMenu_HPNumber2X = Number(Moghunter.parameters['HPMax Number X-Axis'] || 140);
   Moghunter.scMenu_HPNumber2Y = Number(Moghunter.parameters['HPMax Number Y-Axis'] || 100);
   Moghunter.scMenu_MPNumberX = Number(Moghunter.parameters['MP Number X-Axis'] || 100);
   Moghunter.scMenu_MPNumberY = Number(Moghunter.parameters['MP Number Y-Axis'] || 124);
   Moghunter.scMenu_MPNumber2X = Number(Moghunter.parameters['MPMax Number X-Axis'] || 140);
   Moghunter.scMenu_MPNumber2Y = Number(Moghunter.parameters['MPMax Number Y-Axis'] || 151);
   Moghunter.scMenu_LVNumberX = Number(Moghunter.parameters['LV Number X-Axis'] || 95);
   Moghunter.scMenu_LVNumberY = Number(Moghunter.parameters['LV Number Y-Axis'] || 33);
   Moghunter.scMenu_statesX = Number(Moghunter.parameters['States X-Axis'] || 111);
   Moghunter.scMenu_statesY = Number(Moghunter.parameters['States Y-Axis'] || 30);
   Moghunter.scMenu_NameX = Number(Moghunter.parameters['Name X-Axis'] || 20);
   Moghunter.scMenu_NameY = Number(Moghunter.parameters['Name Y-Axis'] || 0);
   Moghunter.scMenu_NameFontSize = Number(Moghunter.parameters['Name FontSize'] || 20);
   Moghunter.scMenu_ComX = Number(Moghunter.parameters['Commands X-Axis'] || 180);
   Moghunter.scMenu_ComY = Number(Moghunter.parameters['Commands Y-Axis'] || 50);   
   Moghunter.scMenu_ComWX = Number(Moghunter.parameters['Command Active X-Axis'] || 40);
   Moghunter.scMenu_ComWY = Number(Moghunter.parameters['Command Active Y-Axis'] || 148);   
   Moghunter.scMenu_ComNameVisible = String(Moghunter.parameters['Com Name Visible'] || "true");
   Moghunter.scMenu_ComNameX = Number(Moghunter.parameters['Com Name X-Axis'] || 40);
   Moghunter.scMenu_ComNameY = Number(Moghunter.parameters['Com Name Y-Axis'] || 96);
   Moghunter.scMenu_ComNameFontSize = Number(Moghunter.parameters['Com Name FontSize'] || 22);
   Moghunter.scMenu_maxVisibleFaces = Number(Moghunter.parameters['Max Visible Faces'] || 5);
   Moghunter.scMenu_FaceSelX = Number(Moghunter.parameters['Face Sel X-Axis'] || 240);
   Moghunter.scMenu_FaceSelY = Number(Moghunter.parameters['Face Sel Y-Axis'] || 128);
    Moghunter.scMenu_GoldNumberX = Number(Moghunter.parameters['Gold X-Axis'] || 260);
   Moghunter.scMenu_GoldNumberY = Number(Moghunter.parameters['Gold Y-Axis'] || 580);
    Moghunter.scMenu_playTimeNumberX = Number(Moghunter.parameters['Time X-Axis'] || 565);
   Moghunter.scMenu_playTimeNumberY = Number(Moghunter.parameters['Time Y-Axis'] || 60);
   Moghunter.scMenu_playTimeNumberFontSize = Number(Moghunter.parameters['Time FontSize'] || 24);   
    Moghunter.scMenu_locationX = Number(Moghunter.parameters['Location X-Axis'] || 450);
   Moghunter.scMenu_locationY = Number(Moghunter.parameters['Location Y-Axis'] || 575);
   Moghunter.scMenu_locationFontSize = Number(Moghunter.parameters['Location FontSize'] || 26);         
   Moghunter.scMenu_MagicCircleV = String(Moghunter.parameters['Magic Circle Visible'] || "true");   
    Moghunter.scMenu_MagicCircleX = Number(Moghunter.parameters['Magic Circle X-Axis'] || 700);
   Moghunter.scMenu_MagicCircleY = Number(Moghunter.parameters['Magic Circle Y-Axis'] || 140);
    Moghunter.scMenu_MagicCircleR = Number(Moghunter.parameters['Magic Circle Rotation'] || 0.001);
      
      
//=============================================================================
// ** ImageManager
//=============================================================================

//==============================
// * Main
//==============================
ImageManager.loadMenusMain = function(filename) {
    return this.loadBitmap('img/menus/main/', filename, 0, true);
};
   
//==============================
// * Main Faces1
//==============================
ImageManager.loadMenusFaces1 = function(filename) {
    return this.loadBitmap('img/menus/faces/faces1/', filename, 0, true);
};   

//==============================
// * Main Faces2
//==============================
ImageManager.loadMenusFaces2 = function(filename) {
    return this.loadBitmap('img/menus/faces/faces2/', filename, 0, true);
};         
   
//==============================
// * Main Faces3
//==============================
ImageManager.loadMenusFaces3 = function(filename) {
    return this.loadBitmap('img/menus/faces/faces3/', filename, 0, true);
};         
   
//==============================
// * Main Faces4
//==============================
ImageManager.loadMenusFaces4 = function(filename) {
    return this.loadBitmap('img/menus/faces/faces4/', filename, 0, true);
};   
   
//==============================
// * Main Commands
//==============================
ImageManager.loadMenusMainCommands = function(filename) {
    return this.loadBitmap('img/menus/main/commands/', filename, 0, true);
};      
      
//=============================================================================
// ** Scene Menu
//=============================================================================
var _mog_scmenu_create = Scene_Menu.prototype.create;
Scene_Menu.prototype.create = function() {
   _mog_scmenu_create.call(this);
   this.loadBitmapsMain();
   this.createField();
   this.createMonogatari();
};

//==============================
// * loadBitmapsMain
//==============================   
Scene_Menu.prototype.loadBitmapsMain = function() {
   this._facesBitmaps = []
   for (var i = 0; i < $gameParty.members().length; i++) {
       this._facesBitmaps = ImageManager.loadMenusFaces2("Actor_" + $gameParty.members()._actorId);
   };
   this._comBitmaps = []
   this._comList = this._commandWindow._list;
    for (var i = 0; i < this._comList.length; i++) {
       this._comBitmaps = ImageManager.loadMenusMainCommands(this._comList.name);
    };
   this._arrowImg = ImageManager.loadMenusMain("FaceArrow");
   this._goldImg = ImageManager.loadMenusMain("GoldNumber");
};

//==============================
// * Create Field
//==============================   
Scene_Menu.prototype.createField = function() {
     this._field = new Sprite();
    this.addChild(this._field);
};

//==============================
// * Create Monogatari
//==============================   
Scene_Menu.prototype.createMonogatari = function() {
    if (String(Moghunter.scMenu_MagicCircleV) === "true") {this.createMagicCircle()};
    this.createCharacters();
    this.createLayout();
     this.createCharStatus();
    this.createCommands();
    this.createCommandName();
    this.createPlayTime();
    this.createLocation();
};
//==============================
// * Create After
//==============================   
Scene_Menu.prototype.createAfter = function() {
    this.createSelection();
    this.createFaceArrow();
    this.createGold();
};

//==============================
// * create HP Number
//==============================
Scene_Menu.prototype.createGold = function() {
    this._gold_number = [];
   this._GoldData = [this._goldImg.width / 10,this._goldImg.height]
   var x = Moghunter.scMenu_GoldNumberX;
   var y = Moghunter.scMenu_GoldNumberY;
   for (var i = 0; i < 9; i++) {
       this._gold_number = new Sprite(this._goldImg);
       this._gold_number.visible = false;
       this._gold_number.opacity = 255;
       this._gold_number.x = x ;
       this._gold_number.y = y ;
       this._field.addChild(this._gold_number);      
   };   
   this.refresh_number(this._gold_number,$gameParty.gold(),this._GoldData,x)
};

//==============================
// * create Magic Circle
//==============================
Scene_Menu.prototype.createMagicCircle = function() {
     this._magicCircle = new Sprite(ImageManager.loadMenusMain("MagicCircle"));
    this._magicCircle.anchor.x = 0.5;
    this._magicCircle.anchor.y = 0.5;
    this._magicCircle.x = Moghunter.scMenu_MagicCircleX;
    this._magicCircle.y = Moghunter.scMenu_MagicCircleY;
    this._field.addChild(this._magicCircle);
};

//==============================
// * create Magic Circle
//==============================
Scene_Menu.prototype.updateMagicCircle = function() {
     this._magicCircle.rotation +=Moghunter.scMenu_MagicCircleR;
};

//==============================
// * play Time Sec
//==============================
Scene_Menu.prototype.playTimeSec = function() {
    return $gameSystem.playtime()  % 60;
};

//==============================
// * create Play Time
//==============================
Scene_Menu.prototype.createPlayTime = function() {
    this._playTime = new Sprite(new Bitmap(200,32));
   this._playTime.x = Moghunter.scMenu_playTimeNumberX;
   this._playTime.y = Moghunter.scMenu_playTimeNumberY;
   this._playTime.bitmap.fontSize = Moghunter.scMenu_playTimeNumberFontSize;
   this._field.addChild(this._playTime);
   this._playTimeSec = this.playTimeSec();
   this.refreshTime();
};

//==============================
// * refresh Time
//==============================
Scene_Menu.prototype.refreshTime = function() {
   this._playTime.bitmap.clear();
   this._playTimeSec = this.playTimeSec();
   this._playTime.bitmap.drawText($gameSystem.playtimeText(),0,0,200,32,"right");
};

//==============================
// * update Time
//==============================
Scene_Menu.prototype.updateTime = function() {
   if (this._playTimeSec != this.playTimeSec()) {this.refreshTime()};
};
   
//==============================
// * create Location
//==============================
Scene_Menu.prototype.createLocation = function() {
    this._location = new Sprite(new Bitmap(260,32));
   this._location.x = Moghunter.scMenu_locationX;
   this._location.y = Moghunter.scMenu_locationY;
   this._location.bitmap.fontSize = Moghunter.scMenu_locationFontSize;
   var mapName = $gameMap.displayName();
   this._location.bitmap.drawText(mapName,0,0,260,32,"center");
   this._field.addChild(this._location);
};   
   
//==============================
// * Refresh Number
//==============================
Scene_Menu.prototype.refresh_number = function(sprites,value,img_data,x) {
    numbers = Math.abs(value).toString().split(""); 
      for (var i = 0; i < sprites.length ; i++) {
      sprites.visible = false;
      if (i < numbers.length) {
         var n = Number(numbers);
         sprites.setFrame(n * img_data[0], 0, img_data[0], img_data[1]);
         var nx = -(img_data[0] * i) + (img_data[0] *  numbers.length);
         sprites.x = x - nx;
         sprites.visible = true;
      } else {
        var n = 0;
        sprites.setFrame(n * img_data[0], 0, img_data[0], img_data[1]);
        var nx = -(img_data[0] * i) + (img_data[0] *  (sprites.length + numbers.length));
        sprites.x = x - nx;
      };
    };
};
//==============================
// * maxMembers
//==============================   
Scene_Menu.prototype.maxMembers = function() {
     return Math.min(Math.max($gameParty.members().length,0),$gameParty.maxBattleMembers());
};

//==============================
// * Create Characters
//==============================   
Scene_Menu.prototype.createCharacters = function() {
    this._characters = [];
    for (var i = 0; i < this.maxMembers(); i++) {      
           this._characters = new MBustMenu(i,$gameParty.members(),this.maxMembers());
         this._field.addChild(this._characters);
    };
};

//==============================
// * Create Char Status
//==============================   
Scene_Menu.prototype.createCharStatus = function() {
    this._charStatus = [];
    for (var i = 0; i < this.maxMembers(); i++) {      
           this._charStatus = new MCharStatus(i,$gameParty.members(),this.maxMembers());
         this._field.addChild(this._charStatus);
    };
};

//==============================
// * Update
//==============================   
var _mog_smenu_update = Scene_Menu.prototype.createGoldWindow;
Scene_Menu.prototype.createGoldWindow = function() {
   _mog_smenu_update.call(this);
    if (this._goldWindow) {this._goldWindow.visible = false};
};   
   
   
//==============================
// * create Layout
//==============================
Scene_Menu.prototype.createLayout = function() {
     this._layout = new Sprite(ImageManager.loadMenusMain("Layout"));
    this._field.addChild(this._layout);
};
   
//==============================
// * create Commands
//==============================   
Scene_Menu.prototype.createCommands = function() {
     this._commands = [];
    this._compos = [];
    this._comzoom = [];
    var h = 0
    this._comField = new Sprite();
    this._field.addChild(this._comField);
    for (var i = 0; i < this._comList.length; i++) {
       this._commands = new Sprite(this._comBitmaps);
       this._commands.anchor.x = 0.5;
       this._commands.anchor.y = 0.5;
       this._commands.y = -64;
       this._commands.opacity = 255;
       this._compos = [Moghunter.scMenu_ComX + (48 * i),Moghunter.scMenu_ComY + (48 * h)];
       this._comzoom = 0;
        this._comField.addChild(this._commands);
       h = h === 0 ? 1 : 0;
   };   
};

//==============================
// * update Commands
//==============================
Scene_Menu.prototype.updateCommands = function() {
   // this.updateComField();
     for (var i = 0; i < this._commands.length; i++) {
        if (this.isComEnabled(i)) {
             var nx = this._statusWindow.active ? Moghunter.scMenu_ComWX : this._compos
  • ;
                var ny = this._statusWindow.active ? Moghunter.scMenu_ComWY : this._compos[1];          
                if (this._commandWindow.isCurrentItemEnabled()) {this._commands.opacity += 20};
                if (this._comzoom === 0 && !this._statusWindow.active) {
                   this._commands.scale.x += 0.01;
                   if (this._commands.scale.x >= 1.30) {
                      this._commands.scale.x = 1.30;
                       this._comzoom = 1;
                   };
                } else {
                   this._commands.scale.x -= 0.01;
                   if (this._commands.scale.x <= 1.00) {
                      this._commands.scale.x = 1.00;
                       this._comzoom = 0;
                   };            
                 };
            } else {
                 var nx = this._compos
    • ;
                  var ny = this._compos[1];
                    if (this._commands.opacity > 180 || this._statusWindow.active) {
                     this._commands.opacity -= 10
                     if (this._commands.opacity < 180 && !this._statusWindow.active) {this._commands.opacity = 180} 
                   };
                  if (!this._statusWindow.active && this._commands.opacity < 180) {
                     this._commands.opacity += 10;
                     if (this._commands.opacity > 180) {this._commands.opacity = 180} 
                  };
                  if (this._commands.scale.x > 1.00) {this._commands.scale.x -= 0.01};
                  this._comzoom = 0;
              };
              this._commands.x = this.commandMoveTo(this._commands.x,nx);
              this._commands.y = this.commandMoveTo(this._commands.y,ny);        
              this._commands.scale.y = this._commands.scale.x;
          };
      };

      //==============================
      // * update Com Field
      //==============================
      Scene_Menu.prototype.updateComField = function() {
         if (!this._statusWindow.active) {
              this._comField.opacity += 15
             if (this._comField.y < 0) {
                this._comField.y += 3;
               if (this._comField.y > 0 ) {this._comField.y = 0} 
             }
         } else {
            this._comField.opacity -= 15
            if (this._comField.y > -50) {
                this._comField.y -= 3;
               if (this._comField.y < -50 ) {this._comField.y = -50} 
            };
         };
      };
          
      //==============================
      // * is Com Enabled
      //==============================
      Scene_Menu.prototype.isComEnabled = function(index) {
           if (index != this._commandWindow._index) {return false};
           return true;
      };
         
      //==============================
      // * Command Move To
      //==============================
      Scene_Menu.prototype.commandMoveTo = function(value,real_value) {
         if (value == real_value) {return value};
         var dnspeed = 3 + (Math.abs(value - real_value) / 20);
         if (value > real_value) {value -= dnspeed;
             if (value < real_value) {value = real_value};}
          else if (value < real_value) {value  += dnspeed;
             if (value  > real_value) {value  = real_value};      
          };
         return Math.floor(value);
      };   

      //==============================
      // * create Command Name
      //==============================
      Scene_Menu.prototype.createCommandName = function() {
         this._commandName = new Sprite(new Bitmap(100,32));
         this._commandName.bitmap.fontSize = Moghunter.scMenu_ComNameFontSize;
         this._commandNameIndex = -2;
         this._commandNameIndex2 = -2;
         this._field.addChild(this._commandName);
         this._commandName.visible = String(Moghunter.scMenu_ComNameVisible) === "true" ? true : false;
      };

      //==============================
      // * update Command Name
      //==============================
      Scene_Menu.prototype.updateCommandName = function() {
         if (this._statusWindow.active) {
            if (this._commandNameIndex2 != this._statusWindow._index) {this.refreshActorName()};
         } else {
              if (this._commandNameIndex != this._commandWindow._index) {this.refreshCommandName()};
         };
         this._commandName.x = this.commandMoveTo(this._commandName.x,Moghunter.scMenu_ComNameX);
         this._commandName.y = this.commandMoveTo(this._commandName.y,Moghunter.scMenu_ComNameY);   
         this._commandName.opacity += 10;
      };
         
      //==============================
      // * refresh Command Name
      //==============================
      Scene_Menu.prototype.refreshCommandName = function() {
         this._commandNameIndex = this._commandWindow._index;
         this._commandNameIndex2 = -2;
         this._commandName.bitmap.clear();
         this._commandName.bitmap.drawText(this._comList[this._commandNameIndex].name,0,0,100,32,"center")
         this._commandName.x = Moghunter.scMenu_ComNameX - 100;
         this._commandName.y = Moghunter.scMenu_ComNameY;
         this._commandName.opacity = 0;
      };

      //==============================
      // * refresh Actor Name
      //==============================
      Scene_Menu.prototype.refreshActorName = function() {
         this._commandNameIndex = -2;
         this._commandNameIndex2 = this._statusWindow._index;
         this._commandName.bitmap.clear();
         var actor = $gameParty.members()[this._statusWindow._index]
         if (!actor) {return}
         this._commandName.bitmap.drawText(actor.name(),0,0,100,32,"center")
         this._commandName.x = Moghunter.scMenu_ComNameX - 100;
         this._commandName.y = Moghunter.scMenu_ComNameY;
         this._commandName.opacity = 0;
      };

      //==============================
      // * create Selection
      //==============================
      Scene_Menu.prototype.createSelection = function() {
          this._selection = [];
         this._selectionPos = [];
         this._selzoom = [];
         this._selMax = Math.min(Math.max(Moghunter.scMenu_maxVisibleFaces,2),999);
         this._selField = new Sprite();
         this._field.addChild(this._selField);   
         this._selField.opacity = 0;
         this._selField.x = 50;
         for (var i = 0; i < $gameParty.members().length; i++) {
             this._selection = new Sprite(this._facesBitmaps);
             this._selectionPos = [Moghunter.scMenu_FaceSelX + ((4 + this._facesBitmaps.width) * i),Moghunter.scMenu_FaceSelY];
             this._selection.anchor.x = 0.5;
             this._selection.anchor.y = 0.5;
             this._selection.opacity = 160;
             this._selection.vsb = false;
             this._selection.x = this._selectionPos
      • ;
               this._selection.y = this._selectionPos[1];
               this._selField .addChild(this._selection);
           };
        };   
           
        //==============================
        // * update Selection
        //==============================
        Scene_Menu.prototype.updateSelection = function() {
           if (this._statusWindow.active) {
              this._selField.opacity += 15;
              if (this._selField.x > 0) {this._selField.x -= 4
                  if (this._selField.x < 0) {this._selField.x = 0};
              };
           } else {
              if (this._selField.x < 50) {this._selField.x += 4
                  if (this._selField.x > 50) {this._selField.x = 50};
              };      
              this._selField.opacity -= 15;
           }
           for (var i = 0; i < this._selection.length; i++) {
               if (this._statusWindow._index < this._selMax) {
                   var nindex = 0
                  if (i > this._selMax) {
                     this._selection.vsb = false;
                  } else {
                     this._selection.vsb = true;
                  };
               } else {
                  var ni = this._statusWindow._index - this._selMax
                  var nindex = ((4 + this._facesBitmaps.width) * (ni));
                  if (i < ni || i > ni + this._selMax) {
                     this._selection.vsb = false;
                  } else {this._selection.vsb = true;
                  }
               };
               if (i === this._statusWindow._index) {
                  this._selection.opacity += 15;
                  if (this._selzoom === 0) {
                     this._selection.scale.x += 0.015;
                     if (this._selection.scale.x > 1.30) {
                        this._selection.scale.x = 1.30;
                         this._selzoom = 1;
                     };
                  } else {
                     this._selection.scale.x -= 0.015;
                     if (this._selection.scale.x < 1.00) {
                        this._selection.scale.x = 1.00;
                         this._selzoom = 0;
                     };            
                  };
               } else {
                 if (!this._selection.vsb) {
                    this._selection.opacity -= 15;
                 } else if (this._selection.vsb) {
                    if (this._selection.opacity < 160) {this._selection.opacity += 15;
                        if (this._selection.opacity > 160) {this._selection.opacity = 160};
                    };
                    if (this._selection.opacity > 160) {this._selection.opacity -= 15;
                        if (this._selection.opacity < 160) {this._selection.opacity = 160};
                    };            
                  } else {
                    if (this._selection.opacity > 160) {this._selection.opacity -= 10
                    if (this._selection.opacity < 160) {this._selection.opacity = 160};
                    };
                  };
                 this._selzoom = 0;
                 this._selection.scale.x -= 0.01;
                 if (this._selection.scale.x < 1.00) {this._selection.scale.x = 1.00}                  
               }
                 var nx = this._selectionPos
        • - nindex;
                   var ny = this._selectionPos[1];
                 this._selection.x = this.commandMoveTo(this._selection.x,nx);
                 this._selection.y = this.commandMoveTo(this._selection.y,ny);        
                 this._selection.scale.y = this._selection.scale.x;
             };
             this.updateArrow();
          };   
             
          //==============================
          // * create Face Arrow
          //==============================
          Scene_Menu.prototype.createFaceArrow = function() {
               this._arrow = [];
               this._arrowPos = [];
               this._arrowAni = [0,0];
               for (var i = 0; i < 2; i++) {
                   this._arrow = new Sprite(this._arrowImg);
                   if (i === 1) {this._arrow.scale.x = -1.00
                       this._arrowPos = [this._selection[0].x + (4 + (this._arrowImg.width * 2)) + ((4 + this._facesBitmaps[0].width) * this._selMax),Moghunter.scMenu_FaceSelY]
                   } else {
                      this._arrowPos = [this._selection[0].x - (4 + (this._arrowImg.width * 2)),Moghunter.scMenu_FaceSelY]
                   };
                   this._arrow.anchor.x = 0.5;
                   this._arrow.anchor.y = 0.5;
                   this._arrow.x = this._arrowPos
          • ;
                     this._arrow.y = this._arrowPos[1];
                     this._selField.addChild(this._arrow);
                 };
            };

            //==============================
            // * update Arrow
            //==============================
            Scene_Menu.prototype.updateArrow = function() {
               this.updateArrowAni()
                for (var i = 0; i < this._arrow.length; i++) {
                   if (i === 0) {
                      var nx = this._arrowPos
            • - this._arrowAni[1];
                       this._arrow.visible = this.isArrow1Visible();
                     } else {
                       var nx = this._arrowPos
              • + this._arrowAni[1];
                         this._arrow.visible = this.isArrow2Visible();
                       };
                       var ny = this._arrowPos[1];
                       this._arrow.x = this.commandMoveTo(this._arrow.x,nx);
                       this._arrow.y = this.commandMoveTo(this._arrow.y,ny);      
                   };
                };

                //==============================
                // * is Arrow1 Visible
                //==============================
                Scene_Menu.prototype.isArrow1Visible = function() {
                   if (this._statusWindow._index <= this._selMax) {return false};
                   return true;
                };

                //==============================
                // * is Arrow2 Visible
                //==============================
                Scene_Menu.prototype.isArrow2Visible = function() {
                   if (this._statusWindow._index >= this._selection.length - 1) {return false};
                   if ($gameParty.members().length < this._selMax + 2 ) {return false};
                   return true;
                };

                //==============================
                // * update Arrow Ani
                //==============================
                Scene_Menu.prototype.updateArrowAni = function() {
                   this._arrowAni[0]++;
                   if (this._arrowAni[0] < 20) {
                      this._arrowAni[1] ++;
                   } else if (this._arrowAni[0] < 40) {
                       this._arrowAni[1] --;
                   } else {
                      this._arrowAni[1] = 0;
                      this._arrowAni[0] = 0;
                   };
                };

                //==============================
                // * check Touch On Sprites
                //==============================
                Scene_Menu.prototype.checkTouchOnSprites = function() {
                     if (this._statusWindow.active) {
                       this.checkTouchSelection();
                    } else {
                       this.checkTouchCommand();
                    };
                };

                //==============================
                // * checkTouchSelection
                //==============================
                Scene_Menu.prototype.checkTouchSelection = function() {
                     for (var i = 0; i < this._selection.length; i++) {
                        if (this.isOnSprite(this._selection)) {this.setTouchSelection(i)};
                    };
                     for (var i = 0; i < this._arrow.length; i++) {
                        if (this.isOnSprite(this._arrow)) {this.setTouchArrow(i)};
                    };
                };

                //==============================
                // * set Touch Arrow
                //==============================
                Scene_Menu.prototype.setTouchArrow = function(index) {
                    SoundManager.playCursor();
                     if (index === 0) {
                        this._statusWindow.cursorUp();
                    } else {
                        this._statusWindow.cursorDown();
                    };
                };

                //==============================
                // * set Touch Selection
                //==============================
                Scene_Menu.prototype.setTouchSelection = function(index) {
                    this._statusWindow.select(index);
                   this._statusWindow.processOk();
                };

                //==============================
                // * checkTouchCommand
                //==============================
                Scene_Menu.prototype.checkTouchCommand = function() {
                    for (var i = 0; i < this._commands.length; i++) {
                      if (this.isOnSprite(this._commands)) {this.setTouchCommand(i)};
                   };
                };

                //==============================
                // * set Touch Command
                //==============================
                Scene_Menu.prototype.setTouchCommand = function(index) {
                    this._commandWindow.select(index);
                   this._commandWindow.processOk();
                };

                //==============================
                // * on Sprite
                //==============================
                Scene_Menu.prototype.isOnSprite = function(sprite) {
                    var cw = sprite.bitmap.width / 2;
                    var ch = sprite.bitmap.height / 2;
                    if (sprite.visible === false) {return false};
                    if (sprite.opacity === 0) {return false};
                    if (TouchInput.x < sprite.x - cw) {return false};
                    if (TouchInput.x > sprite.x + cw) {return false};
                    if (TouchInput.y < sprite.y - ch) {return false};
                    if (TouchInput.y > sprite.y + ch) {return false};
                    return true;   
                };

                //==============================
                // * update Touch Screen
                //==============================
                Scene_Menu.prototype.updateTouchScreen = function() {
                    if (TouchInput.isTriggered()) {this.checkTouchOnSprites()};
                };

                //==============================
                // * update Window Status
                //==============================
                Scene_Menu.prototype.updateWindowStatus = function() {
                     this._statusWindow.visible = false;
                    this._statusWindow.x = - this._statusWindow.width;
                    this._statusWindow.updateScrollRoll();
                };
                   
                //==============================
                // * update
                //==============================
                var _mog_mono_scmenu_update = Scene_Menu.prototype.update;
                Scene_Menu.prototype.update = function() {
                    _mog_mono_scmenu_update.call(this)
                   if (this._commands) {this.updateCommands()};
                   if (this._commandName) {this.updateCommandName()};
                   if (!this._selection && this._facesBitmaps && this._facesBitmaps[0].isReady()) {this.createAfter()};
                   if (this._selection) {this.updateSelection()};
                   if (this._playTime) {this.updateTime()};
                   if (this._magicCircle) {this.updateMagicCircle()};
                   this.updateWindowStatus();
                   this.updateTouchScreen();
                };
                   
                //=============================================================================
                // * MBustMenu
                //=============================================================================
                function MBustMenu() {
                    this.initialize.apply(this, arguments);
                };

                MBustMenu.prototype = Object.create(Sprite.prototype);
                MBustMenu.prototype.constructor = MBustMenu;

                //==============================
                // * Initialize
                //==============================
                MBustMenu.prototype.initialize = function(index,actor,maxmembers) {
                    Sprite.prototype.initialize.call(this);   
                    this._index = index;
                   this._actor = actor;
                   this._maxMembers = maxmembers
                   this.createCharaters();
                };
                   
                //==============================
                // * Pos X
                //==============================
                MBustMenu.prototype.posX = function() {
                   var space = Math.floor((Graphics.boxWidth - 32) / this._maxMembers);
                    return 16 + (space / 2) + (space * this._index);
                };

                //==============================
                // * create Characters
                //==============================
                MBustMenu.prototype.createCharaters = function() {
                     this._char = new Sprite(ImageManager.loadMenusFaces3("actor_" + this._actor._actorId));
                    this._char.anchor.x = 0.5;
                    this._char.anchor.y = 1.0;
                    this._char.x = this.posX() + Moghunter.scMenu_CharX;
                    this._char.y = Graphics.boxHeight + Moghunter.scMenu_CharY;
                    this._orgX  = this._char.x;
                    this._char.x -= 50;
                    this._wait = 5 + 10 * this._index;
                    this._char.opacity = 0;
                    this.addChild(this._char);
                };   

                //==============================
                // * Update
                //==============================
                MBustMenu.prototype.update = function() {
                    Sprite.prototype.update.call(this);   
                    if (this._wait > 0) {this._wait--; return};
                   this._char.opacity += 10;
                   if (this._char.x < this._orgX) {
                      this._char.x += 2;
                      if (this._char.x > this._orgX) {this._char.x = this._orgX};
                   };
                };
                   
                //=============================================================================
                // * MCharStatus
                //=============================================================================
                function MCharStatus() {
                    this.initialize.apply(this, arguments);
                };

                MCharStatus.prototype = Object.create(Sprite.prototype);
                MCharStatus.prototype.constructor = MCharStatus;

                //==============================
                // * Initialize
                //==============================
                MCharStatus.prototype.initialize = function(index,actor,maxmembers) {
                    Sprite.prototype.initialize.call(this);   
                    this._index = index;
                   this._actor = actor;
                   this._maxMembers = maxmembers;
                   this.x = 50;
                   this._wait = 5 + 5 * this._index;
                   this.opacity = 0;
                   this.loadBitmaps();
                };
                   
                //==============================
                // * loadBitmaps
                //==============================
                MCharStatus.prototype.loadBitmaps = function() {
                   this._layoutImg = ImageManager.loadMenusMain("LayoutStatus");
                   this._numberImg = ImageManager.loadMenusMain("HPNumber");
                   this._numberImg2 = ImageManager.loadMenusMain("MPNumber");
                   this._numberImg3 = ImageManager.loadMenusMain("LVNumber");
                   this._HPMeterImg = ImageManager.loadMenusMain("HPMeter");
                   this._MPMeterImg = ImageManager.loadMenusMain("MPMeter");
                   this._state_img = ImageManager.loadSystem("IconSet");
                };   
                      
                //==============================
                // * Pos X
                //==============================
                MCharStatus.prototype.posX = function() {
                   var space = Math.floor((Graphics.boxWidth - 32) / this._maxMembers);
                    return 16 + (space / 2) + (space * this._index);
                };

                //==============================
                // * create Sprites
                //==============================
                MCharStatus.prototype.createSprites = function() {
                   this.createLayoutStatus();
                   this.createHPMeter();
                   this.createMPMeter();
                   this.createHPNumber();
                    this.createHPNumber2();
                   this.createMPNumber();
                    this.createMPNumber2();   
                   this.createLVNumber();
                   this.createStates();
                   this.createName();
                };   

                //==============================
                // * Create Name
                //==============================
                MCharStatus.prototype.createName = function() {
                   this._name = new Sprite(new Bitmap(120,32));
                   this._name.x = this._layout.x + Moghunter.scMenu_NameX;
                   this._name.y = this._layout.y + Moghunter.scMenu_NameY;
                   this._name.bitmap.fontSize = Moghunter.scMenu_NameFontSize;
                   this._name.bitmap.drawText(this._actor.name(),0,0,120,32,"center");
                   this.addChild(this._name);
                   
                };
                   
                //==============================
                // * Create States
                //==============================
                MCharStatus.prototype.createStates = function() {
                   this._states_data = [0,0,0];
                   this._state_icon = new Sprite(this._state_img);
                   this._state_icon.x = this._layout.x + Moghunter.scMenu_statesX;
                   this._state_icon.y = this._layout.y + Moghunter.scMenu_statesY;
                   this._state_icon.visible = false;
                   this.addChild(this._state_icon);
                   this.refresh_states();   
                };
                   
                //==============================
                // * Create States
                //==============================
                MCharStatus.prototype.refresh_states = function() {
                   this._states_data[0] = 0;
                   this._states_data[2] = 0;
                   this._state_icon.visible = false;
                   if (this._actor.allIcons().length == 0) {this._states_data[1] = 0;return};
                       if (this._actor.allIcons()[this._states_data[1]]) {   
                      this._states_data[0] = this._actor.allIcons()[this._states_data[1]];
                      this._state_icon.visible = true;
                      var sx = this._states_data[0] % 16 * 32;
                      var sy = Math.floor(this._states_data[0] / 16) * 32;
                      this._state_icon.setFrame(sx, sy, 32, 32);
                      };
                   this._states_data[1] += 1;
                   if (this._states_data[1] >= this._actor.allIcons().length) {
                      this._states_data[1] = 0
                   };
                };

                //==============================
                // * Update States
                //==============================
                MCharStatus.prototype.update_states = function() {
                   this._states_data[2] += 1;
                   if (this.need_refresh_states()) {this.refresh_states();};
                };   
                   
                //==============================
                // * Need Refresh States
                //==============================
                MCharStatus.prototype.need_refresh_states = function() {
                   if (this._states_data[2] > 60) {return true};
                   return false;
                };   
                   
                //==============================
                // * create HP Meter
                //==============================
                MCharStatus.prototype.createHPMeter = function() {
                    this._hpMeter = new Sprite(this._HPMeterImg);
                   this._hpMeterData = [this._HPMeterImg.width / 3,this._HPMeterImg.height,0,0];
                   this._hpMeterData[2] = this._hpMeterData[0] * 2;
                   this._hpMeterData[3] = Math.randomInt(this._hpMeterData[2])
                   this._hpMeter.x = this._layout.x + Moghunter.scMenu_HPMeterX;
                   this._hpMeter.y = this._layout.y + Moghunter.scMenu_HPMeterY;
                   this.updateMeter(this._hpMeter,this._hpMeterData,this._actor.hp,this._actor.mhp);
                   this.addChild(this._hpMeter);
                };
                 
                //==============================
                // * create MP Meter
                //==============================
                MCharStatus.prototype.createMPMeter = function() {
                    this._mpMeter = new Sprite(this._MPMeterImg);
                   this._mpMeterData = [this._MPMeterImg.width / 3,this._MPMeterImg.height,0,0];
                   this._mpMeterData[2] = this._mpMeterData[0] * 2;
                   this._mpMeterData[3] = Math.randomInt(this._mpMeterData[2])
                   this._mpMeter.x = this._layout.x + Moghunter.scMenu_MPMeterX;
                   this._mpMeter.y = this._layout.y + Moghunter.scMenu_MPMeterY;
                   this.updateMeter(this._mpMeter,this._mpMeterData,this._actor.mp,this._actor.mmp);
                   this.addChild(this._mpMeter);
                }; 
                 
                //==============================
                // * update Meter
                //==============================
                MCharStatus.prototype.updateMeter = function(sprite,data,v1,v2) {
                    var cw = data[0] * v1 / v2;
                     sprite.setFrame(data[3],0,cw,data[1]);
                    data[3] += 4;
                    if (data[3] > data[2]) {data[3] = 0};
                };      
                   
                //==============================
                // * create HP Number
                //==============================
                MCharStatus.prototype.createHPNumber = function() {
                    this._hp_number = [];
                   this._NumberData = [this._numberImg.width / 10,this._numberImg.height]
                   var x = this._layout.x + Moghunter.scMenu_HPNumberX;
                   var y = this._layout.y + Moghunter.scMenu_HPNumberY;
                   for (var i = 0; i < 5; i++) {
                       this._hp_number = new Sprite(this._numberImg);
                       this._hp_number.visible = false;
                       this._hp_number.opacity = 255;
                       this._hp_number.x = x ;
                       this._hp_number.y = y ;
                       this.addChild(this._hp_number);      
                   };   
                   this.refresh_number(this._hp_number,this._actor.hp,this._NumberData,x)
                };   
                   
                //==============================
                // * create HP Number2
                //==============================
                MCharStatus.prototype.createHPNumber2 = function() {
                    this._hp_number2 = [];
                   var x = this._layout.x + Moghunter.scMenu_HPNumber2X;
                   var y = this._layout.y + Moghunter.scMenu_HPNumber2Y;
                   for (var i = 0; i < 5; i++) {
                       this._hp_number2 = new Sprite(this._numberImg);
                       this._hp_number2.visible = false;
                       this._hp_number2.opacity = 255;
                       this._hp_number2.x = x ;
                       this._hp_number2.y = y ;
                       this.addChild(this._hp_number2);      
                   };   
                   this.refresh_number(this._hp_number2,this._actor.mhp,this._NumberData,x)
                };   
                   
                //==============================
                // * create MP Number
                //==============================
                MCharStatus.prototype.createMPNumber = function() {
                    this._mp_number = [];
                   this._NumberData2 = [this._numberImg2.width / 10,this._numberImg2.height]
                   var x = this._layout.x + Moghunter.scMenu_MPNumberX;
                   var y = this._layout.y + Moghunter.scMenu_MPNumberY;
                   for (var i = 0; i < 5; i++) {
                       this._mp_number = new Sprite(this._numberImg2);
                       this._mp_number.visible = false;
                       this._mp_number.opacity = 255;
                       this._mp_number.x = x ;
                       this._mp_number.y = y ;
                       this.addChild(this._mp_number);      
                   };   
                   this.refresh_number(this._mp_number,this._actor.mp,this._NumberData2,x)
                };   
                   
                //==============================
                // * create MP Number2
                //==============================
                MCharStatus.prototype.createMPNumber2 = function() {
                    this._mp_number2 = [];
                   var x = this._layout.x + Moghunter.scMenu_MPNumber2X;
                   var y = this._layout.y + Moghunter.scMenu_MPNumber2Y;
                   for (var i = 0; i < 5; i++) {
                       this._mp_number2 = new Sprite(this._numberImg2);
                       this._mp_number2.visible = false;
                       this._mp_number2.opacity = 255;
                       this._mp_number2.x = x ;
                       this._mp_number2.y = y ;
                       this.addChild(this._mp_number2);      
                   };   
                   this.refresh_number(this._mp_number2,this._actor.mmp,this._NumberData2,x)
                };

                //==============================
                // * create LV Number
                //==============================
                MCharStatus.prototype.createLVNumber = function() {
                    this._lv_number = [];
                   this._NumberData3 = [this._numberImg3.width / 10,this._numberImg3.height]
                   var x = this._layout.x + Moghunter.scMenu_LVNumberX;
                   var y = this._layout.y + Moghunter.scMenu_LVNumberY;
                   for (var i = 0; i < 3; i++) {
                       this._lv_number = new Sprite(this._numberImg3);
                       this._lv_number.visible = false;
                       this._lv_number.opacity = 255;
                       this._lv_number.x = x ;
                       this._lv_number.y = y ;
                       this.addChild(this._lv_number);      
                   };   
                   this.refresh_number(this._lv_number,this._actor.level,this._NumberData3,x)
                };   

                //==============================
                // * Refresh Number
                //==============================
                MCharStatus.prototype.refresh_number = function(sprites,value,img_data,x) {
                   if (value > 99999) {value = 99999};
                    numbers = Math.abs(value).toString().split(""); 
                      for (var i = 0; i < sprites.length ; i++) {
                      sprites.visible = false;
                      if (i < numbers.length) {
                         var n = Number(numbers);
                         sprites.setFrame(n * img_data[0], 0, img_data[0], img_data[1]);
                         var nx = -(img_data[0] * i) + (img_data[0] *  numbers.length);
                         sprites.x = x - nx;
                         sprites.visible = true;
                      } else {
                        var n = 0;
                        sprites.setFrame(n * img_data[0], 0, img_data[0], img_data[1]);
                        var nx = -(img_data[0] * i) + (img_data[0] *  (sprites.length + numbers.length));
                        sprites.x = x - nx;
                      };
                    };
                };

                //==============================
                // * create Layout Status
                //==============================
                MCharStatus.prototype.createLayoutStatus = function() {
                     this._layout = new Sprite(this._layoutImg);
                    this._layout.x = this.posX() - 70 + Moghunter.scMenu_layoutStatusX;
                    this._layout.y = Graphics.boxHeight - 280 + Moghunter.scMenu_layoutStatusY;
                    this.addChild(this._layout);
                };   

                //==============================
                // * Update
                //==============================
                MCharStatus.prototype.update = function() {
                    Sprite.prototype.update.call(this);   
                   if (!this._actor) {return}
                    if (!this._hp_number) {
                        if (this._numberImg.isReady()) {this.createSprites();
                      } else {
                      return
                      };
                   };
                   if (this._hpMeter) {this.updateMeter(this._hpMeter,this._hpMeterData,this._actor.hp,this._actor.mhp)};
                   if (this._mpMeter) {this.updateMeter(this._mpMeter,this._mpMeterData,this._actor.mp,this._actor.mmp)};
                   if (this._state_icon) {this.update_states()};
                   if (this._wait > 0) {this._wait--;return}
                   this.opacity += 10;
                   if (this.x > 0) {this.x -= 2;
                      if (this.x < 0) {this.x = 0};
                   }
                };
                   
                //=============================================================================
                // ** Window Menu Command
                //=============================================================================

                //==============================
                // * Update
                //==============================
                var _mog_menu_wMenuCom_update = Window_MenuCommand.prototype.update;
                Window_MenuCommand.prototype.update = function() {
                   _mog_menu_wMenuCom_update.call(this);
                   this.visible = false;
                   this.x = -this.width;
                   this.updateScrollRoll();
                };

                //==============================
                // * process Cursor Move
                //==============================
                Window_MenuCommand.prototype.processCursorMove = function() {
                    if (this.isCursorMovable()) {
                        var lastIndex = this.index();
                        if (Input.isRepeated('down') || Input.isRepeated('right')) {
                            this.cursorDown();
                        };
                        if (Input.isRepeated('up') || Input.isRepeated('left')) {
                            this.cursorUp();
                        };
                        if (this.index() !== lastIndex) {
                            SoundManager.playCursor();
                        };
                    };
                };
                   
                //==============================
                // * update SCroll Roll
                //==============================
                Window_MenuCommand.prototype.updateScrollRoll = function() {
                    if (this.isOpenAndActive() && this.maxItems() > 0) {
                      var srow = this.maxTopRow() === 0 ? 1 : this.maxCols();
                        var threshold = 20;
                      var idx = this._index;
                        if (TouchInput.wheelY >= threshold) {
                            this._index += srow;
                         if (this._index > (this.maxItems() - 1)) {this._index = this.maxItems() - 1};
                         this.select(this._index);
                         if (idx != this._index) {SoundManager.playCursor()};
                        };
                        if (TouchInput.wheelY <= -threshold) {
                            this._index -= srow;
                         if (this._index < 0) {this._index = 0};
                         this.select(this._index);
                         if (idx != this._index) {SoundManager.playCursor()};
                        };
                    };
                };   
                   
                //=============================================================================
                // ** Window MenuStatus
                //=============================================================================

                //==============================
                // * process Cursor Move
                //==============================
                Window_MenuStatus.prototype.processCursorMove = function() {
                    if (this.isCursorMovable()) {
                        var lastIndex = this.index();
                        if (Input.isRepeated('down') || Input.isRepeated('right')) {
                            this.cursorDown();
                        };
                        if (Input.isRepeated('up') || Input.isRepeated('left')) {
                            this.cursorUp();
                        };
                        if (this.index() !== lastIndex) {
                            SoundManager.playCursor();
                        };
                    };
                };

                //==============================
                // * update SCroll Roll
                //==============================
                Window_MenuStatus.prototype.updateScrollRoll = function() {
                    if (this.isOpenAndActive() && this.maxItems() > 0) {
                      var srow = this.maxTopRow() === 0 ? 1 : this.maxCols();
                        var threshold = 20;
                      var idx = this._index;
                        if (TouchInput.wheelY >= threshold) {
                            this._index += srow;
                         if (this._index > (this.maxItems() - 1)) {this._index = this.maxItems() - 1};
                         this.select(this._index);
                         if (idx != this._index) {SoundManager.playCursor()};
                        };
                        if (TouchInput.wheelY <= -threshold) {
                            this._index -= srow;
                         if (this._index < 0) {this._index = 0};
                         this.select(this._index);
                         if (idx != this._index) {SoundManager.playCursor()};
                        };
                    };
                };


                //=============================================================================
                // ** Scene Menu
                //=============================================================================

                //==============================
                // * Command Formation
                //==============================
                Scene_Menu.prototype.commandFormation = function() {
                      SceneManager.push(Scene_Party);
                };

                //=============================================================================
                // ** Scene Party
                //=============================================================================

                function Scene_Party() {
                    this.initialize.apply(this, arguments);
                }

                Scene_Party.prototype = Object.create(Scene_MenuBase.prototype);
                Scene_Party.prototype.constructor = Scene_Party;

                //==============================
                // * Initialize
                //==============================
                Scene_Party.prototype.initialize = function() {
                    Scene_MenuBase.prototype.initialize.call(this);
                };

                //==============================
                // * Create
                //==============================
                Scene_Party.prototype.create = function() {
                    Scene_MenuBase.prototype.create.call(this);
                   this.createLayout();
                   this.createStatusWindow();
                };

                //==============================
                // * Create Layout
                //==============================
                Scene_Party.prototype.createLayout = function() {

                };


                //==============================
                // * Create Status Window
                //==============================
                Scene_Party.prototype.createStatusWindow = function() {
                    this._statusWindow = new Window_MenuStatusM(0, 0);
                    this._statusWindow.setFormationMode(true);
                    this._statusWindow.selectLast();
                    this._statusWindow.activate();
                    this._statusWindow.setHandler('ok',     this.onFormationOk.bind(this));
                    this._statusWindow.setHandler('cancel', this.onFormationCancel.bind(this));
                    this.addWindow(this._statusWindow);
                };

                //==============================
                // * on Formation OK
                //==============================
                Scene_Party.prototype.onFormationOk = function() {
                    var index = this._statusWindow.index();
                    var actor = $gameParty.members()[index];
                    var pendingIndex = this._statusWindow.pendingIndex();
                    if (pendingIndex >= 0) {
                        $gameParty.swapOrder(index, pendingIndex);
                        this._statusWindow.setPendingIndex(-1);
                        this._statusWindow.redrawItem(index);
                    } else {
                        this._statusWindow.setPendingIndex(index);
                    }
                    this._statusWindow.activate();
                };

                //==============================
                // * on Formation Cancel
                //==============================
                Scene_Party.prototype.onFormationCancel = function() {
                    if (this._statusWindow.pendingIndex() >= 0) {
                        this._statusWindow.setPendingIndex(-1);
                         this._statusWindow.activate();
                    } else {
                        SceneManager.pop()
                    }
                };

                //==============================
                // * update
                //==============================
                Scene_Party.prototype.update = function() {
                     Scene_MenuBase.prototype.update.call(this);
                    this._statusWindow.opacity = 0;
                };
                //=============================================================================
                // ** Window MenuStatusM
                //=============================================================================

                function Window_MenuStatusM() {
                    this.initialize.apply(this, arguments);
                }

                Window_MenuStatusM.prototype = Object.create(Window_Selectable.prototype);
                Window_MenuStatusM.prototype.constructor = Window_MenuStatusM;

                //==============================
                // * Initialize
                //==============================
                Window_MenuStatusM.prototype.initialize = func

                [Anexo excluído pelo administrador]
[close]