Risultato:

PERCORSO PLUGIN: ItemEquipsCore/Shop Status window/ Js: Draw Item Data
PROCEDIMENTO:
Ad ogni sezione Draw di tuo interesse aggiungi l'istruzione condizionale :
if(this._item.itypeId != 2){
....codice del plugin
}
IMPORTANTE: ricordati di inserire la chiusura della graffa sotto il codice (ti ho inserito un commento per ricordarti dove inserire ogni chiusura, potrai rimuoverlo dopo). Di seguito ti ho inserito tutto il codice per farti vedere dove e come ho inserito l'istruzione condizionale.
ESEMPIO SUL CODICE INTERNO:
Aggiungi al codice la condizione che trovi nell'esempio sotto:
// Draw Item Name and Quantity
//aggiunto controllo per oggetto diverso da ogg chiave
if(this._item.itypeId != 2) {
this.drawItemName(this._item, x + this.itemPadding(), y, width - this.itemPadding() * 2);
this.drawItemDarkRect(x, y, width);
y += lineHeight;
}// chiusura condizione ogg non chiave
// Draw Main Item Properties
//aggiunto controllo per oggetto diverso da ogg chiave
if(this._item.itypeId != 2) {
if (this.drawItemConsumable(x, y, hw)) y += 0;
if (this.drawItemQuantity(hx, y, hw)) y += lineHeight;
if (this._item.occasion < 3) {
y = this.drawItemDamage(x, y, width);
y = this.drawItemEffects(x, y, width);
}
} // chiusura condizione ogg non chiave
y = this.drawItemCustomEntries(x, y, width);
// Draw Remaining Item Properties
//aggiunto controllo per oggetto diverso da ogg chiave
if(this._item.itypeId != 2) {
if (this._item.occasion < 3) {
if (this.drawItemOccasion(x, y, hw)) y += 0;
if (this.drawItemScope(hx, y, hw)) y += lineHeight;
if (this.drawItemHitType(x, y, hw)) y += 0;
if (this.drawItemSuccessRate(hx, y, hw)) y += lineHeight;
if (this.drawItemSpeed(x, y, hw)) y += 0;
if (this.drawItemRepeats(hx, y, hw)) y += lineHeight;
}
}// chiusura condizione ogg non chiave
// Fill Rest of the Window
this.drawItemDarkRect(x, y, width, height - y);
NOTA: Noterai che ho spostato gli if sottostanti e la graffa di chiusura dell'ultimo codice originario. Questo perchè per leggere al volo un'istruzione condizionale su un compilatore si seguono delle convenzioni di lettura standard e facili da comprendere (per chiunque legga il codice) se torni sul codice in un secondo momento. Infatti se tracci una linea verticale dall'inizio dell'istruzione arriverai alla sua chiusura che si troverà sulla stessa linea. Questo sistema serve per non incasinarsi con le istruzioni condizionali annidate (si usa anche per altro). Inoltre ogni if spostato ti indica che si trova all'interno di un altro blocco di codice (potrebbe anche non essere un' istruzione condizonale) Non so se mi sono spiegato bene. ti faccio un esempio facile
if (a>3){
if (b=0){
...codice...
} // la chiusura si trova sulla stessa linea dell' if riferito al controllo della variabile b, quindi so che l'istruzione per b termina qui
} // la chiusura si trova sulla stessa linea dell' if riferito al controllo della variabile a, quindi so che l'istruzione per a termina qui (istruzione che contiene al suo interno ulteriori condizioni).
Inoltre, leggendo so che il mio if riferito alla variabile b si trova all'interno di un altro blocco codice, nel nostro caso un altro if .

Modificato da Ischenderun, 03 March 2021 - 06:21 AM.