Aide sur des aliasing(patch)
Lun 13 Aoû 2018 - 22:21
bonjour je vous présente mon soucis j'utilise pour mon projet certain script connue ,comme YEP_BattleEngineCore.js par exemple
mon soucis est que j'ai modifier pour mes besoin certaine partie de son code,
je souhaiterais faire des alias donc comme des patch dans un nouveau fichier .js pour évité de tout réécrire a chaque mise a jour du plugin.
sur rpg maker vxace on appeler cela du aliasing
exemple de code
mon soucis est que j'ai modifier pour mes besoin certaine partie de son code,
je souhaiterais faire des alias donc comme des patch dans un nouveau fichier .js pour évité de tout réécrire a chaque mise a jour du plugin.
sur rpg maker vxace on appeler cela du aliasing
exemple de code
- Code:
Sprite_Actor.prototype.setActorHome = function(index) {
var screenWidth = Graphics.boxWidth;
var screenHeight = Graphics.boxHeight;
var maxSize = $gameParty.maxBattleMembers();
var partySize = $gameParty.battleMembers().length;
var statusHeight = eval(Yanfly.Param.BECCommandRows);
statusHeight *= Window_Base.prototype.lineHeight.call(this);
statusHeight += Window_Base.prototype.standardPadding.call(this) * 2;
if ($gameSystem.isSideView()) {
var code = Yanfly.Param.BECHomePosX;
try {
var homeX = eval(code);
} catch (e) {
var homeX = 0;
Yanfly.Util.displayError(e, code, 'SIDE VIEW HOME X FORMULA ERROR');
}
var code = Yanfly.Param.BECHomePosY;
try {
var homeY = eval(code);
} catch (e) {
var homeY = 0;
Yanfly.Util.displayError(e, code, 'SIDE VIEW HOME Y FORMULA ERROR');
}
} else {
var code = Yanfly.Param.BECFrontPosX;
try {
var homeX = eval(code);
} catch (e) {
var homeX = 0;
Yanfly.Util.displayError(e, code, 'FRONT VIEW HOME X FORMULA ERROR');
}
var code = Yanfly.Param.BECFrontPosY;
try {
var homeY = eval(code);
} catch (e) {
var homeY = 0;
Yanfly.Util.displayError(e, code, 'FRONT VIEW HOME Y FORMULA ERROR');
}
}
this._checkAliveStatus = false;
if ($gameParty.battleMembers()[index]) {
var actor = $gameParty.battleMembers()[index];
if (actor.isAlive()) this._checkAliveStatus = true;
}
this.setHome(homeX, homeY);
this.moveToStartPosition();
};
- Code:
Sprite_Actor.prototype.setActorHome = function(index) {
var screenWidth = Graphics.boxWidth;
var screenHeight = Graphics.boxHeight;
var maxSize = $gameParty.maxBattleMembers();
var partySize = $gameParty.battleMembers().length;
var statusHeight = eval(Yanfly.Param.BECCommandRows);
statusHeight *= Window_Base.prototype.lineHeight.call(this);
statusHeight += Window_Base.prototype.standardPadding.call(this) * 2;
if ($gameSystem.isSideView()) {
var code = Yanfly.Param.BECHomePosX;
try {
var homeX = eval(code);
} catch (e) {
var homeX = 0;
Yanfly.Util.displayError(e, code, 'SIDE VIEW HOME X FORMULA ERROR');
}
var code = Yanfly.Param.BECHomePosY;
try {
var homeY = eval(code);
} catch (e) {
var homeY = 0;
Yanfly.Util.displayError(e, code, 'SIDE VIEW HOME Y FORMULA ERROR');
}
} else {
var code = Yanfly.Param.BECFrontPosX;
try {
var homeX = eval(code);
} catch (e) {
var homeX = 0;
Yanfly.Util.displayError(e, code, 'FRONT VIEW HOME X FORMULA ERROR');
}
var code = Yanfly.Param.BECFrontPosY;
try {
var homeY = eval(code);
} catch (e) {
var homeY = 0;
Yanfly.Util.displayError(e, code, 'FRONT VIEW HOME Y FORMULA ERROR');
}
}
this._checkAliveStatus = false;
if ($gameParty.battleMembers()[index]) {
var actor = $gameParty.battleMembers()[index];
if (actor.isAlive()) this._checkAliveStatus = true;
//patch============================
if (actor.master == 1) {
var homeX = $gameParty.battleMembers()[0].homeX() - 200;
var homeY = $gameParty.battleMembers()[0].homeY();
};
if (actor.master == 2) {
var homeX = $gameParty.battleMembers()[1].homeX() - 200;
var homeY = $gameParty.battleMembers()[1].homeY();
};
if (actor.master == 3) {
var homeX = $gameParty.battleMembers()[2].homeX() - 200;
var homeY = $gameParty.battleMembers()[2].homeY();
};
//======================================
}
this.setHome(homeX, homeY);
this.moveToStartPosition();
};
Re: Aide sur des aliasing(patch)
Jeu 16 Aoû 2018 - 13:06
Je me permet un petit up.
J'ai essayer de juste copier l'intégralité du code. Cela me donne une erreur stack level
J'ai essayer de juste copier l'intégralité du code. Cela me donne une erreur stack level
- driccMembre
- Nombre de messages : 2760
Localisation : Lille
Distinction : Altruiste - Incarnation de la Patience [Mist']
Date d'inscription : 10/08/2009
Re: Aide sur des aliasing(patch)
Ven 17 Aoû 2018 - 16:26
Error stack level , ce n'est que le début du message d'erreur . Plus bas , tu devrais avoir qq chose de plus parlant .
Sinon , tu as un problème avec tes variables , là : Elles sont déja déclarées . Tu n'as donc plus qu'a les affecter (en clair , enleve "var" devant) .
Sinon , tu as un problème avec tes variables , là : Elles sont déja déclarées . Tu n'as donc plus qu'a les affecter (en clair , enleve "var" devant) .
Re: Aide sur des aliasing(patch)
Ven 17 Aoû 2018 - 17:30
Mon code fonctione je veut juste en faire un alias comme dans rpg maker vxace.
Le stack level c'est qu'il y as 2 fois
Sprite_Actor.prototype.setActorHome
Je voulais faire un fichier plugin avec le patch en alias. Ce qui m'evitera de reporter le patch a chaque mise a jour de yanfly
Le stack level c'est qu'il y as 2 fois
Sprite_Actor.prototype.setActorHome
Je voulais faire un fichier plugin avec le patch en alias. Ce qui m'evitera de reporter le patch a chaque mise a jour de yanfly
Re: Aide sur des aliasing(patch)
Sam 18 Aoû 2018 - 16:59
Voici un exemple :
- Code:
var _spriteactor_setactorhome = Sprite_Actor.prototype.setActorHome;
Sprite_Actor.prototype.setActorHome () {
_spriteactor_setactorhome.call(this); // Appel la fonction complet.
}
Re: Aide sur des aliasing(patch)
Sam 18 Aoû 2018 - 17:56
Merci je test ca des que je rentre
Re: Aide sur des aliasing(patch)
Ven 24 Aoû 2018 - 15:06
je viens d'essayer et cela ne marche pas
Uncaught SyntaxError: Unexpected token { js/plugins/patch_master.js:3
- Code:
var _spriteactor_setactorhome = Sprite_Actor.prototype.setActorHome;
Sprite_Actor.prototype.setActorHome () {
_spriteactor_setactorhome.call(this); // Appel la fonction complet.
if ($gameParty.battleMembers()[index]) {
var actor = $gameParty.battleMembers()[index];
if (actor.isAlive()) this._checkAliveStatus = true;
//patch= start===========================
if (actor.master == 1) {
var homeX = $gameParty.battleMembers()[0].homeX() - 200;
var homeY = $gameParty.battleMembers()[0].homeY();
};
if (actor.master == 2) {
var homeX = $gameParty.battleMembers()[1].homeX() - 200;
var homeY = $gameParty.battleMembers()[1].homeY();
};
if (actor.master == 3) {
var homeX = $gameParty.battleMembers()[2].homeX() - 200;
var homeY = $gameParty.battleMembers()[2].homeY();
};
};
//patch end============================
}
Uncaught SyntaxError: Unexpected token { js/plugins/patch_master.js:3
Re: Aide sur des aliasing(patch)
Mer 29 Aoû 2018 - 15:51
J'ai vraiment du mal avec les alias. Je comprend pas le system. Il faut reecrire toute la fonction? Qui remplacera celle existante? Ou on rajoute juste ce que l'on as besoin?
Re: Aide sur des aliasing(patch)
Mer 29 Aoû 2018 - 17:53
Tu interagir avec un autre plugin?
Si oui lequel?
Car je cherche dans les plugin de base je trouve pas Sprite_Actor.prototype.setActorHome ().
Si oui lequel?
Car je cherche dans les plugin de base je trouve pas Sprite_Actor.prototype.setActorHome ().
Re: Aide sur des aliasing(patch)
Mer 29 Aoû 2018 - 19:16
Oui le pnugin c'est YEP_BattleEngineCore
Et la mofification est personel c'est un system que j'ai fait
Et la mofification est personel c'est un system que j'ai fait
Re: Aide sur des aliasing(patch)
Mer 29 Aoû 2018 - 19:22
Essaie ceci :
- Code:
var _spriteactor_setactorhome = Sprite_Actor.prototype.setActorHome;
Sprite_Actor.prototype.setActorHome = function(index) {
_spriteactor_setactorhome.call(this); // Appel la fonction complet.
if ($gameParty.battleMembers()[index]) {
var actor = $gameParty.battleMembers()[index];
if (actor.isAlive()) this._checkAliveStatus = true;
//patch= start===========================
if (actor.master == 1) {
var homeX = $gameParty.battleMembers()[0].homeX() - 200;
var homeY = $gameParty.battleMembers()[0].homeY();
};
if (actor.master == 2) {
var homeX = $gameParty.battleMembers()[1].homeX() - 200;
var homeY = $gameParty.battleMembers()[1].homeY();
};
if (actor.master == 3) {
var homeX = $gameParty.battleMembers()[2].homeX() - 200;
var homeY = $gameParty.battleMembers()[2].homeY();
};
};
//patch end============================
}
Re: Aide sur des aliasing(patch)
Ven 31 Aoû 2018 - 14:56
j'ai trouver ce fut un peut long mais voila la solution il faut réécrire toute la fonction
- Code:
var Patch_spriteactor_setactorhome = Sprite_Actor.prototype.setActorHome;
Sprite_Actor.prototype.setActorHome = function(index){
Patch_spriteactor_setactorhome.call(this); // Appel la fonction complet.
var screenWidth = Graphics.boxWidth;
var screenHeight = Graphics.boxHeight;
var maxSize = $gameParty.maxBattleMembers();
var partySize = $gameParty.battleMembers().length;
var statusHeight = eval(Yanfly.Param.BECCommandRows);
statusHeight *= Window_Base.prototype.lineHeight.call(this);
statusHeight += Window_Base.prototype.standardPadding.call(this) * 2;
if ($gameSystem.isSideView()) {
var code = Yanfly.Param.BECHomePosX;
try {
var homeX = eval(code);
} catch (e) {
var homeX = 0;
Yanfly.Util.displayError(e, code, 'SIDE VIEW HOME X FORMULA ERROR');
}
var code = Yanfly.Param.BECHomePosY;
try {
var homeY = eval(code);
} catch (e) {
var homeY = 0;
Yanfly.Util.displayError(e, code, 'SIDE VIEW HOME Y FORMULA ERROR');
}
} else {
var code = Yanfly.Param.BECFrontPosX;
try {
var homeX = eval(code);
} catch (e) {
var homeX = 0;
Yanfly.Util.displayError(e, code, 'FRONT VIEW HOME X FORMULA ERROR');
}
var code = Yanfly.Param.BECFrontPosY;
try {
var homeY = eval(code);
} catch (e) {
var homeY = 0;
Yanfly.Util.displayError(e, code, 'FRONT VIEW HOME Y FORMULA ERROR');
}
}
this._checkAliveStatus = false;
if ($gameParty.battleMembers()[index]) {
var actor = $gameParty.battleMembers()[index];
if (actor.isAlive()) this._checkAliveStatus = true;
//patch============================
if (actor.master == 1) {
var homeX = $gameParty.battleMembers()[0].homeX() - 200;
var homeY = $gameParty.battleMembers()[0].homeY();
};
if (actor.master == 2) {
var homeX = $gameParty.battleMembers()[1].homeX() - 200;
var homeY = $gameParty.battleMembers()[1].homeY();
};
if (actor.master == 3) {
var homeX = $gameParty.battleMembers()[2].homeX() - 200;
var homeY = $gameParty.battleMembers()[2].homeY();
};
//======================================
}
this.setHome(homeX, homeY);
this.moveToStartPosition();
//======================================
}
//patch end============================
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|