Il 0% ha trovato utile questo documento (0 voti)
4 visualizzazioni3 pagine

Personaggio

Il documento definisce una classe 'Personaggio' in Java, che rappresenta un personaggio in un gioco con attributi come punti vita, stamina, mana, forza e costituzione. Include metodi per attaccare, difendersi, guadagnare esperienza e gestire la vita e la stamina del personaggio. Inoltre, gestisce il livello del personaggio e le interazioni con altri personaggi durante i combattimenti.

Caricato da

maffialberto07
Copyright
© All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato TXT, PDF, TXT o leggi online su Scribd
Il 0% ha trovato utile questo documento (0 voti)
4 visualizzazioni3 pagine

Personaggio

Il documento definisce una classe 'Personaggio' in Java, che rappresenta un personaggio in un gioco con attributi come punti vita, stamina, mana, forza e costituzione. Include metodi per attaccare, difendersi, guadagnare esperienza e gestire la vita e la stamina del personaggio. Inoltre, gestisce il livello del personaggio e le interazioni con altri personaggi durante i combattimenti.

Caricato da

maffialberto07
Copyright
© All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato TXT, PDF, TXT o leggi online su Scribd

public class Personaggio {

private int puntiVitaMax;


private int puntiVita;
private int staminaMax;
private int stamina;
private int manaMax;
private int mana;
private int livello;
private boolean vivo;
private int forza;
private int costituzione;
private int puntiEsperienza;

public Personaggio(int puntiVitaMax, int staminaMax, int manaMax, int forza,


int costituzione) {
[Link] = puntiVitaMax;
[Link] = puntiVitaMax;
[Link] = staminaMax;
[Link] = staminaMax;
[Link] = manaMax;
[Link] = manaMax;
[Link] = 1;
[Link] = true;
[Link] = forza;
[Link] = costituzione;
[Link] = 0;
}

public void getVita() {


[Link](puntiVita);
}

public void getStamina() {


[Link](stamina);
}

public void getMana() {


[Link](mana);
}

public boolean isVivo() {


return vivo;
}

public void attaccoSemplice() {


if (!vivo) {
[Link]("Il personaggio non è più vivo.");
return;
}
if (stamina >= 5) {
stamina -= 5;
} else {
[Link]("Stamina insufficiente per attaccare.");
}
}

public void recuperaStamina() {


if (vivo) {
stamina = staminaMax;
}
}

public void danniSubiti(int danni) {


if (!vivo) return;

danni -= costituzione;
danni = [Link](0, danni);

puntiVita -= danni;
if (puntiVita <= 0) {
puntiVita = 0;
vivo = false;
[Link]("Il personaggio è morto.");
}
}

public void pozione() {


if (vivo) {
puntiVita = puntiVitaMax;
}
}

public void aumentaLivello() {


livello++;
puntiVitaMax += 5;
staminaMax += 5;
manaMax += 5;
forza += 2;
costituzione += 2;
[Link]("Livello aumentato a: " + livello);
}

public void guadagnaEsperienza(int punti) {


puntiEsperienza += punti;
[Link]("Esperienza guadagnata: " + punti);
if (puntiEsperienza >= livello * 100) {
puntiEsperienza -= livello * 100;
aumentaLivello();
}
}

public void combatti(Personaggio avversario) {


if (!vivo) {
[Link]("Non puoi combattere. Sei morto.");
return;
}
if (![Link]()) {
[Link]("Il tuo avversario è già morto.");
return;
}
if (stamina < 5) {
[Link]("Stamina insufficiente per combattere.");
return;
}

stamina -= 5;
int danni = forza;
[Link](danni);
[Link]("Hai inflitto " + danni + " danni al nemico.");
}

public void attaccoCritico(Personaggio avversario) {


if (!vivo) {
[Link]("Non puoi combattere. Sei morto.");
return;
}
if (![Link]()) {
[Link]("Il tuo avversario è già morto.");
return;
}
if (stamina < 10) {
[Link]("Stamina insufficiente per un attacco critico.");
return;
}

stamina -= 10;
boolean critico = [Link]() < 0.3;
int danni = critico ? forza * 2 : forza;
[Link](danni);

if (critico) {
[Link]("Attacco critico! Hai inflitto " + danni + " danni
al nemico.");
} else {
[Link]("Hai inflitto " + danni + " danni al nemico.");
}
}

public void difesa() {


if (!vivo) {
[Link]("Non puoi difenderti. Sei morto.");
return;
}

costituzione += 3;
[Link]("Hai aumentato temporaneamente la tua costituzione di 3
per un turno.");
}
}

Potrebbero piacerti anche