var _Game_Interpreter_pluginCommand = Game_Interpreter.prototype.pluginCommand;
Game_Interpreter.prototype.pluginCommand = function(command, args) {
// to be overridden by plugins
console.log('start');
_Game_Interpreter_pluginCommand.call(this, command, args);
if (command === 'menuobj') {
Pid = 100; // picture ID for clic, 100 + max 36 Max 200
ItemtotalDB = 200; // Maximum item dans le DB rpgmaker
Itemtotalposs = 0; // Nombre objet posseder
Objetposseder = []; // creer une variable poru chaque item avec valeur
i = 1; // représente page pour listi
Pagevar = $gameVariables.value(34);
console.log(20);
for (Listi = 1; Listi < ItemtotalDB; Listi++) {
if ($gameParty.hasItem($dataItems[Listi]) == true) {
Objetposseder[Listi] = Listi; //create variable based on DB Objetposseder1=2,Objetposseder2=2,Objetposseder3=3...
Itemtotalposs++; //calcul global total objet poseder
if (Itemtotalposs == 37 || Itemtotalposs == 73 || Itemtotalposs == 108) { //a chaque +1 que 36 Itemtotalposs = 1 nouvelle page
i++;
Listi[i] = Listi; // pour page 2,3,4..., on sait que on doi comment la list a cette endroit .
}
}
}
console.log(32);
if (Itemtotalposs == 0) {
console.log('le joueur na pas objet');
} // stop because no objet !!}
else {
//page1
Xitem = 0; // X coor for the item + picturesize+ marge
Yitem = 0; // Y coor for the item + picturesize+ marge
InpicX = 46; // Initial X of menue item list
InpicY = 186; // Initial Y of menue item list
MargeX = 7; // Marge bettwenn 2 picture X
MargeY = 6; // Marge bettwenn 2 picture Y
ISIZEX = 82; // X size of picture
ISIZEY = 82; // X size of picture
NBitempagemenu = 0;
if (Pagevar == 1) {
Listi = 1; // si sur page 1 , listi recommence le scan a 1
} else {
Listi = Listi[Pagevar]; // si sur page 2 ou autre , listi recommence le scan a Listi[Pagevar]...[pagevariable dans jeux]
}
console.log(54);
for (; Listi < ItemtotalDB; Listi++) {
if (Objetposseder[Listi] == Listi) {
//afficher objet
$gameScreen.showPicture(Pid, Listi, 0, InpicX + Xitem, InpicY + Yitem, 135, 135, 255, 0);
$gameScreen.movePicture(Pid, 1, InpicX + Xitem, InpicY + Yitem, 110, 110, 255, 0, 11);
console.log('Affiche image' + Pid + 'et listi est a ' + Listi);
$gameScreen.setPictureCallCommon(Pid, 21, 1); // si clique sur item renvoi vers event.commun
Textitems = String($dataItems[Listi].name); // on va chercher le nom fichier
Textitems = Textitems.split(' - '); // on le découpe en 2
$gameScreen.setDTextPicture('\\OW[5]' + Textitems[0] + '', 20);
$gameScreen.showPicture(Pid + (36 * 1), '', 0, InpicX + Xitem, InpicY + Yitem, 100, 100, 255, 0); // affiche image a PID+36 (max72)
$gameScreen.setDTextPicture('\\OW[4]' + Textitems[1] + '', 19);
$gameScreen.showPicture(Pid + (36 * 2), '', 0, InpicX + Xitem, InpicY + Yitem + 15, 100, 100, 255, 0); // affiche D_text titre objet
console.log(67);
NBitempagemenu++
Pid++
Xitem += ISIZEX + MargeX;
}
if (NBitempagemenu == 36) {
console.log('On break car NBitempagemenu= ' + NBitempagemenu); //afficher objet
break;
console.log(69);
} else if (NBitempagemenu == 12 || NBitempagemenu == 24) {
//Saut de ligne
Xitem = 0;
Yitem += ISIZEY + MargeY;
}
}
console.log(70);
}
console.log(71);
}
console.log('end');
}