Jump to content
Rpg²S Forum
  • 0

Generic bar/Life bar e Achievements


Diavyx
 Share

Question

Salve ragazzi, sto convertendo il mio vecchio progetto per VX per MV, però ho notato che così facendo rimango senza due script importantissimi: il primo riguarda una barra generica (che io uso come barra della vita per l'eroe, che ogni volta che viene colpito cala la vita, fino al game over) e il sistema degli achievements con il quale veniva fuori il popup dei trofei guadagnati per le varie imprese :) Nulla di simile? :(

Qui c'è il mio ovetto cliccatelo per farlo evolvere! :D
http://www.pokeplushies.com/images/adoptables/1720242.gif
Click here to feed me a Rare Candy!

Link to comment
Share on other sites

6 answers to this question

Recommended Posts

  • 0

Se si tratta solo di una barra della vita ed è così importante, perché non la crei ad eventi? Così hai anche tutta la personalizzazione che vuoi.

^ ^

 

Per gli achievements credo che Holy stia lavorando per portare i suoi script da ACE ad MV... usi la sua? ^ ^

(\_/)
(^ ^) <----coniglietto rosso, me!
(> <)


Il mio Tumblr dove seguire i miei progetti, i progetti della Reverie : : Project ^ ^

http://i.imgur.com/KdUDtQt.png disponibile su Google Play, qui i dettagli! ^ ^

http://i.imgur.com/FwnGMI3.png completo! Giocabile online, qui i dettagli! ^ ^

REVERIE : : RENDEZVOUS (In allenamento per apprendere le buone arti prima di cominciarlo per bene ^ ^) Trovate i dettagli qui insieme alla mia intervista (non utilizzerò più rpgmaker) ^ ^

 

SUWOnzB.jpg 🖤
http://www.rpg2s.net/dax_games/r2s_regali2s.png E:3 http://www.rpg2s.net/dax_games/xmas/gifnatale123.gif
http://i.imgur.com/FfvHCGG.png by Testament (notare dettaglio in basso a destra)! E:3
http://i.imgur.com/MpaUphY.jpg by Idriu E:3

Membro Onorario, Ambasciatore dei Coniglietti (Membro n.44)

http://i.imgur.com/PgUqHPm.png
Ufficiale
"Ad opera della sua onestà e del suo completo appoggio alla causa dei Panda, Guardian Of Irael viene ufficialmente considerato un Membro portante del Partito, e Ambasciatore del suo Popolo presso di noi"


http://i.imgur.com/TbRr4iS.png<- Grazie Testament E:3
Ricorda...se rivolgi il tuo sguardo ^ ^ a Guardian anche Guardian volge il suo sguardo ^ ^ a te ^ ^
http://i.imgur.com/u8UJ4Vm.gifby Flame ^ ^
http://i.imgur.com/VbggEKS.gifhttp://i.imgur.com/2tJmjFJ.gifhttp://projectste.altervista.org/Our_Hero_adotta/ado2.png
Grazie Testament XD Fan n°1 ufficiale di PQ! :D

Viva
il Rhaxen! <- Folletto te lo avevo detto (fa pure rima) che non
avevo programmi di grafica per fare un banner su questo pc XD (ora ho di
nuovo il mio PC veramente :D)

Rosso Guardiano della
http://i.imgur.com/Os5rvhx.png

Rpg2s RPG BY FORUM:

Nome: Darth Reveal

 

PV totali 2
PA totali 16

Descrizione: ragazzo dai lunghi capelli rossi ed occhi dello stesso colore. Indossa una elegante giacca rossa sopra ad una maglietta nera. Porta pantaloni rossi larghi, una cintura nera e degli stivali dello stesso colore. E' solito trasportare lo spadone dietro la schiena in un fodero apposito. Ha un pendente al collo e tiene ben legato un pezzo di stoffa (che gli sta particolarmente a cuore) intorno al braccio sinistro sotto la giacca, copre una cicatrice.
Bozze vesti non definitive qui.

Equipaggiamento:
Indossa:
60$ e 59$ divisi in due tasche interne
Levaitan

Spada a due mani elsa lunga

Guanti del Defender (2PA)
Anello del linguaggio animale (diventato del Richiamo)

Scrinieri da lanciere (2 PA)

Elmo del Leone (5 PA)

Corazza del Leone in Ferro Corrazzato (7 PA)

ZAINO (20) contenente:
Portamonete in pelle di cinghiale contenente: 100$
Scatola Sanitaria Sigillata (può contenere e tenere al sicuro fino a 4 oggetti curativi) (contiene Benda di pronto soccorso x3, Pozione di cura)
Corda
Bottiglia di idromele
Forma di formaggio
Torcia (serve ad illuminare, dura tre settori)

Fiasca di ceramica con Giglio Amaro (Dona +1PN e Velocità all'utilizzatore)
Ampolla Bianca

Semi di Balissa

 

CAVALLO NORMALE + SELLA (30 +2 armi) contentente:
66$
Benda di pronto soccorso x3
Spada a due mani

Fagotto per Adara (fazzoletto ricamato)


 

Link to comment
Share on other sites

  • 0

Salve ragazzi, sto convertendo il mio vecchio progetto per VX per MV, però ho notato che così facendo rimango senza due script importantissimi: il primo riguarda una barra generica (che io uso come barra della vita per l'eroe, che ogni volta che viene colpito cala la vita, fino al game over) e il sistema degli achievements con il quale veniva fuori il popup dei trofei guadagnati per le varie imprese :) Nulla di simile? :(

Ok, forse sono un po' in ritardo ma...

Come ti serve la lifebar?

Link to comment
Share on other sites

  • 0

Beh in realtà un aiuto è sempre ben accetto :D
Una barra normalissima, nulla di complicato, che abbia la vita (colorata di rosso, possibilmente) che va a calare :)
La vorrei usare NON durante le battaglie, ma in generale, quando l'eroe si muove per il mondo :)

Edited by Diavyx

Qui c'è il mio ovetto cliccatelo per farlo evolvere! :D
http://www.pokeplushies.com/images/adoptables/1720242.gif
Click here to feed me a Rare Candy!

Link to comment
Share on other sites

  • 0

Salve ragazzi, sto convertendo il mio vecchio progetto per VX per MV, però ho notato che così facendo rimango senza due script importantissimi: il primo riguarda una barra generica (che io uso come barra della vita per l'eroe, che ogni volta che viene colpito cala la vita, fino al game over) e il sistema degli achievements con il quale veniva fuori il popup dei trofei guadagnati per le varie imprese :) Nulla di simile? :(

Sì. Forse ho qualcosa:

BarraVita.js

 

 

//=============================================================================
// BarraVita.js
//=============================================================================

/*:
 * @plugindesc Plugin per la creazione di una barra personalizzabile per la vita del personaggio.
 * @author Massimo Bivona 
 * 
 * @param Larghezza
 * @desc La larghezza in pixel della barra vita.
 * @type number
 * @min 1
 * @default 200
 * 
 * @param Altezza
 * @desc L'altezza in pixel della barra vita.
 * @type number
 * @min 1
 * @default 20
 * 
 * @param Colore di sfondo
 * @desc Il colore di sfondo della barra vita in formato esadecimale.
 * @default #333333
 *
 * @param Colore della barra
 * @desc Il colore della barra vita in formato esadecimale.
 * @default #ff0000
 *
 * @param Colore testo
 * @desc Il colore del testo della barra vita in formato esadecimale.
 * @default #ffffff
 *
 * @param Dimensione testo
 * @desc La dimensione del testo della barra vita.
 * @type number
 * @min 1
 * @default 12
 *
 * @param Font testo
 * @desc Il nome del font del testo della barra vita.
 * @default GameFont
 *
 * @help
 * Per visualizzare la barra vita in gioco, basta inserire il tag <barraVita> nella descrizione del personaggio.
 * La barra vita verrà visualizzata automaticamente quando il personaggio verrà selezionato.
 *
 * È possibile personalizzare i seguenti parametri:
 * - Larghezza: la larghezza in pixel della barra vita (valore minimo: 1).
 * - Altezza: l'altezza in pixel della barra vita (valore minimo: 1).
 * - Colore di sfondo: il colore di sfondo della barra vita in formato esadecimale.
 * - Colore della barra: il colore della barra vita in formato esadecimale.
 * - Colore testo: il colore del testo della barra vita in formato esadecimale.
 * - Dimensione testo: la dimensione del testo della barra vita (valore minimo: 1).
 * - Font testo: il nome del font del testo della barra vita.
 *
 * Esempio di personalizzazione dei parametri:
 * 
 * <BarraVita>
 * Larghezza: 300
 * Altezza: 30
 * Colore di sfondo: #111111
 * Colore della barra: #00ff00
 * Colore testo: #ffffff
 * Dimensione testo: 20
 * Font testo: Arial
 * </BarraVita>
 */

var Imported = Imported || {};
Imported.BarraVita = true;

var BarraVita = BarraVita || {};
BarraVita.Parametri = PluginManager.parameters('BarraVita');

// Default parameters
BarraVita.LARGHEZZA = parseInt(BarraVita.Parametri['Larghezza']) || 200;
BarraVita.ALTEZZA = parseInt(BarraVita.Parametri['Altezza']) || 20;
BarraVita.COLORE_SFONDO = BarraVita.Param

// Default parameters
BarraVita.LARGHEZZA = parseInt(BarraVita.Parametri['Larghezza']) || 200;
BarraVita.ALTEZZA = parseInt(BarraVita.Parametri['Altezza']) || 20;
BarraVita.COLORE_SFONDO = BarraVita.Parametri['Colore Sfondo'] || 'black';
BarraVita.COLORE_BARRA = BarraVita.Parametri['Colore Barra'] || 'red';
BarraVita.TESTO_VISIBILE = BarraVita.Parametri['Testo Visibile'].toLowerCase() === 'true';
BarraVita.TESTO_COLORE = BarraVita.Parametri['Testo Colore'] || 'white';
BarraVita.TESTO_DIMENSIONE = parseInt(BarraVita.Parametri['Testo Dimensione']) || 14;
BarraVita.TESTO_SFONDO = BarraVita.Parametri['Testo Sfondo'] || 'black';
BarraVita.TESTO_X = parseInt(BarraVita.Parametri['Testo X']) || 0;
BarraVita.TESTO_Y = parseInt(BarraVita.Parametri['Testo Y']) || 0;

/**

Gestore della barra di vita.
@constructor
*/
BarraVita.Gestore = function() {
this.initialize.apply(this, arguments);
};

BarraVita.Gestore.prototype.constructor = BarraVita.Gestore;

/**

Inizializza il gestore della barra di vita.
@param {number} x - La coordinata x della barra di vita.
@param {number} y - La coordinata y della barra di vita.
@param {number} valoreMassimo - Il valore massimo della barra di vita.
*/

BarraVita.Gestore.prototype.initialize = function(x, y, valoreMassimo) {
this._x = x;
this._y = y;
this._valoreMassimo = valoreMassimo;
this._valoreCorrente = valoreMassimo;
this._immagineSfondo = new Sprite(new Bitmap(BarraVita.LARGHEZZA, BarraVita.ALTEZZA));
this._immagineBarra = new Sprite(new Bitmap(BarraVita.LARGHEZZA, BarraVita.ALTEZZA));
this._testoValore = new Sprite(new Bitmap(BarraVita.LARGHEZZA, BarraVita.ALTEZZA));
this._immagineSfondo.bitmap.fillAll(BarraVita.COLORE_SFONDO);
this._immagineBarra.bitmap.fillAll(BarraVita.COLORE_BARRA);
this._testoValore.bitmap.fontSize = BarraVita.TESTO_DIMENSIONE;
this._testoValore.bitmap.fillAll(BarraVita.TESTO_SFONDO);
this._testoValore.bitmap.drawText(
this._valoreCorrente + '/' + this._valoreMassimo,
BarraVita.TESTO_X,
BarraVita.TESTO_Y,
BarraVita.LARGHEZZA,
BarraVita.ALTEZZA,
this._velocitaTransizione = BarraVita.TRANSITION_SPEED;
'center'
);
this._testoValore.visible = BarraVita.TESTO_VISIBILE;
this._testoValore.bitmap.textColor = BarraVita.TESTO_COLORE;
this._testoValore.x = this._x;
this._testoValore = new PIXI.Text("0", { font: BarraVita.Parametri['Dimensione Font'], fill: BarraVita.Parametri['Colore Font'] });
this._testoValore.y = (BarraVita.ALTEZZA - this._testoValore.height) / 2;
this._testoValore.anchor.x = 0.5;
this._testoValore.anchor.y = 0.5;
this._testoValore.visible = BarraVita.Parametri['Mostra Testo'];

// Aggiungiamo gli elementi alla barra della vita
this.addChild(this._sfondo);
this.addChild(this._barra);
this.addChild(this._testoValore);
};

// Aggiornamento della barra della vita
BarraVita.prototype.update = function (valore, valoreMax) {
// Aggiornamento del valore visualizzato
this._testoValore.text = valore + "/" + valoreMax;

// Calcolo la percentuale attuale
var percentuale = valore / valoreMax;

// Aggiorno la larghezza della barra
this._barra.width = BarraVita.LARGHEZZA * percentuale;

// Cambio il colore della barra in base alla percentuale
var coloreBarra = BarraVita.Parametri['Colore Barra'];
if (percentuale < 0.3) {
coloreBarra = BarraVita.Parametri['Colore Barra Critico'];
} else if (percentuale < 0.6) {
coloreBarra = BarraVita.Parametri['Colore Barra Medio'];
}
this._barra.tint = coloreBarra;

// Aggiorno la posizione del testo se richiesto
if (BarraVita.Parametri['Mostra Testo']) {
this._testoValore.x = this._x + BarraVita.LARGHEZZA / 2;
}
};

// Esportiamo la classe BarraVita
window.BarraVita = BarraVita;

})(window);

// Esportiamo la classe BarraVita
if(typeof module !== 'undefined' && typeof module.exports !== 'undefined') {
module.exports = BarraVita;
} else {
window.BarraVita = BarraVita;
}

})();

// Inizializziamo la barra della vita
var barraVita = new BarraVita();

// Aggiungiamo la barra alla scena corrente
SceneManager._scene.addChild(barraVita);

// Eventi

/**

Aggiorna la barra della vita con il valore fornito.
@param {number} valore - Il nuovo valore da mostrare.
*/
BarraVita.prototype.aggiornaValore = function(valore) {
// Limitiamo il valore al range della barra della vita
valore = valore.clamp(this._valoreMinimo, this._valoreMassimo);
// Aggiorniamo la barra della vita
this._barra.scale.x = valore / this._valoreMassimo;

// Aggiorniamo il testo del valore
this._testoValore.text = valore.toFixed(0) + "/" + this._valoreMassimo.toFixed(0);
};
/**

Nasconde la barra della vita.
*/
BarraVita.prototype.nascondi = function() {
this.visible = false;
};
/**

Mostra la barra della vita.
*/
BarraVita.prototype.mostra = function() {
this.visible = true;
};
/**

Imposta il valore minimo della barra della vita.
@param {number} valore - Il nuovo valore minimo.
*/
BarraVita.prototype.impostaValoreMinimo = function(valore) {
this._valoreMinimo = valore;
};

/**

Imposta il valore massimo della barra della vita.
@param {number} valore - Il nuovo valore massimo.
*/
BarraVita.prototype.impostaValoreMassimo = function(valore) {
this._valoreMassimo = valore;
};
/**

Imposta il colore di sfondo della barra della vita.
@param {number} colore - Il nuovo colore di sfondo.
*/

BarraVita.prototype.impostaColoreSfondo = function(colore) {
this._barraSfondo.tint = colore;
};
/**

Imposta il colore della barra della vita.
@param {number} colore - Il nuovo colore della barra.
*/
BarraVita.prototype.impostaColoreBarra = function(colore) {
this._barra.tint = colore;
};

/**

Imposta il font del testo del valore.
@param {string} font - Il nuovo font del testo.
*/
BarraVita.prototype.impostaFontTesto = function(font) {
this._testoValore.style.fontFamily = font;
};
/**

Imposta la dimensione del testo del valore.
@param {number} dimensione - La nuova dimensione del testo.
*/
BarraVita.prototype.impostaDimensioneTesto = function(dimensione) {
this._testoValore.style.fontSize = dimensione;
};
/**

Imposta il colore del testo del valore.
@param {number} colore - Il nuovo colore del testo.
*/
BarraVita.prototype.impostaColoreTesto = function(colore) {
this._testoValore.style.fill = colore;
};

BarraVita.Parametri = PluginManager.parameters('BarraVita');
BarraVita.TRANSITION_SPEED = parseFloat(BarraVita.Parametri['Velocità transizione']) || 0.1;




// Esportiamo la classe BarraVita
window.BarraVita = BarraVita;

 

Spero che questo diverrà il tuo nuovo preferito.

È completamente modificabile da editor, puoi modificare davvero qualsiasi cosa che riguarda l'indicatore di vita. Spero vi piaccia.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...