okok
This commit is contained in:
@@ -108,17 +108,13 @@ public class Experientia {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void menu() throws IOException {
|
public void menu() throws IOException {
|
||||||
|
|
||||||
while (true) {
|
while (true) {
|
||||||
|
|
||||||
System.out.println("\n--------------------");
|
System.out.println("\n--------------------");
|
||||||
System.out.println(nomeJogador + " Nv " + nivelJogador);
|
System.out.println(nomeJogador + " Nv " + nivelJogador);
|
||||||
System.out.println("HP: " + vidaAtual + "/" + vidaMax);
|
System.out.println("HP: " + vidaAtual + "/" + vidaMax);
|
||||||
System.out.println("Ouro: " + ouro);
|
System.out.println("Ouro: " + ouro);
|
||||||
System.out.println("--------------------");
|
System.out.println("--------------------");
|
||||||
|
|
||||||
System.out.println("1-Procurar inimigos");
|
System.out.println("1-Procurar inimigos");
|
||||||
System.out.println("2-Loja");
|
System.out.println("2-Loja");
|
||||||
System.out.println("3-Inventário");
|
System.out.println("3-Inventário");
|
||||||
@@ -127,7 +123,6 @@ public class Experientia {
|
|||||||
System.out.println("6-Salvar");
|
System.out.println("6-Salvar");
|
||||||
System.out.println("7-Carregar");
|
System.out.println("7-Carregar");
|
||||||
int op = scanner.nextInt();
|
int op = scanner.nextInt();
|
||||||
|
|
||||||
switch (op) {
|
switch (op) {
|
||||||
case 1 ->
|
case 1 ->
|
||||||
ProcurarInimigos();
|
ProcurarInimigos();
|
||||||
@@ -143,173 +138,114 @@ public class Experientia {
|
|||||||
salvarJogo();
|
salvarJogo();
|
||||||
case 7 ->
|
case 7 ->
|
||||||
carregarJogo();
|
carregarJogo();
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void ProcurarInimigos() {
|
public void ProcurarInimigos() {
|
||||||
|
|
||||||
refreshLojaRestantes = 3;
|
refreshLojaRestantes = 3;
|
||||||
|
|
||||||
int nivelInimigo = rand.nextInt(5) + nivelJogador;
|
int nivelInimigo = rand.nextInt(5) + nivelJogador;
|
||||||
|
|
||||||
int vidaInimigo = 60 + nivelInimigo * 20;
|
int vidaInimigo = 60 + nivelInimigo * 20;
|
||||||
int ataqueInimigo = 8 + nivelInimigo * 4;
|
int ataqueInimigo = 8 + nivelInimigo * 4;
|
||||||
int defesaInimigo = nivelInimigo * 2;
|
int defesaInimigo = nivelInimigo * 2;
|
||||||
|
|
||||||
boolean boss = rand.nextInt(100) < 15;
|
boolean boss = rand.nextInt(100) < 15;
|
||||||
|
|
||||||
if (boss) {
|
if (boss) {
|
||||||
|
|
||||||
System.out.println("BOSS APARECEU");
|
System.out.println("BOSS APARECEU");
|
||||||
|
|
||||||
vidaInimigo *= 3;
|
vidaInimigo *= 3;
|
||||||
ataqueInimigo *= 2;
|
ataqueInimigo *= 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (nivelInimigo > nivelJogador) {
|
if (nivelInimigo > nivelJogador) {
|
||||||
System.out.println("PERIGO: inimigo mais forte que tu");
|
System.out.println("PERIGO: inimigo mais forte que tu");
|
||||||
}
|
}
|
||||||
|
|
||||||
while (vidaAtual > 0 && vidaInimigo > 0) {
|
while (vidaAtual > 0 && vidaInimigo > 0) {
|
||||||
|
|
||||||
System.out.println("\nHP: " + vidaAtual + "/" + vidaMax);
|
System.out.println("\nHP: " + vidaAtual + "/" + vidaMax);
|
||||||
System.out.println("Inimigo HP: " + vidaInimigo);
|
System.out.println("Inimigo HP: " + vidaInimigo);
|
||||||
System.out.println("1-Atacar 2-Fugir");
|
System.out.println("1-Atacar 2-Fugir");
|
||||||
|
|
||||||
int op = scanner.nextInt();
|
int op = scanner.nextInt();
|
||||||
|
|
||||||
if (op == 1) {
|
if (op == 1) {
|
||||||
|
|
||||||
int dano = Math.max(
|
int dano = Math.max(
|
||||||
1,
|
1,
|
||||||
ataqueBase + bonusAtaque + rand.nextInt(5) - defesaInimigo
|
ataqueBase + bonusAtaque + rand.nextInt(5) - defesaInimigo
|
||||||
);
|
);
|
||||||
|
|
||||||
boolean critico = rand.nextInt(100) < 20;
|
boolean critico = rand.nextInt(100) < 20;
|
||||||
|
|
||||||
if (critico) {
|
if (critico) {
|
||||||
dano *= 2;
|
dano *= 2;
|
||||||
System.out.println("CRÍTICO!");
|
System.out.println("CRÍTICO!");
|
||||||
}
|
}
|
||||||
|
|
||||||
vidaInimigo -= dano;
|
vidaInimigo -= dano;
|
||||||
|
|
||||||
int danoRecebido = Math.max(
|
int danoRecebido = Math.max(
|
||||||
1,
|
1,
|
||||||
ataqueInimigo - (defesaBase + bonusDefesa)
|
ataqueInimigo - (defesaBase + bonusDefesa)
|
||||||
);
|
);
|
||||||
|
|
||||||
vidaAtual -= danoRecebido;
|
vidaAtual -= danoRecebido;
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
if (rand.nextInt(100) < 60) {
|
if (rand.nextInt(100) < 60) {
|
||||||
|
|
||||||
System.out.println("Fugiste");
|
System.out.println("Fugiste");
|
||||||
return;
|
return;
|
||||||
|
}
|
||||||
} else {
|
else {
|
||||||
|
|
||||||
System.out.println("Falhaste fuga");
|
System.out.println("Falhaste fuga");
|
||||||
|
|
||||||
vidaAtual -= 5;
|
vidaAtual -= 5;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (vidaAtual <= 0) {
|
if (vidaAtual <= 0) {
|
||||||
GameOver();
|
GameOver();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
System.out.println("Vitória!");
|
System.out.println("Vitória!");
|
||||||
|
|
||||||
xpJogador += 20 + nivelInimigo * 5;
|
xpJogador += 20 + nivelInimigo * 5;
|
||||||
ouro += 15 + nivelInimigo * 5;
|
ouro += 15 + nivelInimigo * 5;
|
||||||
|
|
||||||
if (boss) {
|
if (boss) {
|
||||||
xpJogador += 50;
|
xpJogador += 50;
|
||||||
ouro += 50;
|
ouro += 50;
|
||||||
}
|
}
|
||||||
|
|
||||||
pontosStatus += 2;
|
pontosStatus += 2;
|
||||||
|
|
||||||
if (rand.nextInt(100) < 45) {
|
if (rand.nextInt(100) < 45) {
|
||||||
|
|
||||||
Item drop = gerarItem();
|
Item drop = gerarItem();
|
||||||
|
|
||||||
System.out.println("\nDROP:");
|
System.out.println("\nDROP:");
|
||||||
System.out.println(drop);
|
System.out.println(drop);
|
||||||
|
|
||||||
adicionarItem(drop);
|
adicionarItem(drop);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (rand.nextInt(1000) == 0) {
|
if (rand.nextInt(1000) == 0) {
|
||||||
|
|
||||||
Item unico = gerarItemUnico();
|
Item unico = gerarItemUnico();
|
||||||
|
|
||||||
System.out.println("\nITEM ÚNICO ENCONTRADO!");
|
System.out.println("\nITEM ÚNICO ENCONTRADO!");
|
||||||
System.out.println(unico);
|
System.out.println(unico);
|
||||||
|
|
||||||
adicionarItem(unico);
|
adicionarItem(unico);
|
||||||
}
|
}
|
||||||
|
|
||||||
levelUp();
|
levelUp();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Loja() {
|
public void Loja() {
|
||||||
|
|
||||||
gerarLoja();
|
gerarLoja();
|
||||||
|
|
||||||
while (true) {
|
while (true) {
|
||||||
|
|
||||||
System.out.println("\nLOJA");
|
System.out.println("\nLOJA");
|
||||||
System.out.println("Ouro: " + ouro);
|
System.out.println("Ouro: " + ouro);
|
||||||
System.out.println("Refresh restantes: " + refreshLojaRestantes);
|
System.out.println("Refresh restantes: " + refreshLojaRestantes);
|
||||||
|
|
||||||
for (int i = 0; i < loja.length; i++) {
|
for (int i = 0; i < loja.length; i++) {
|
||||||
System.out.println(i + "-" + loja[i]);
|
System.out.println(i + "-" + loja[i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
System.out.println("n-refresh -1-sair");
|
System.out.println("n-refresh -1-sair");
|
||||||
|
|
||||||
String input = scanner.next();
|
String input = scanner.next();
|
||||||
|
|
||||||
if (input.equals("-1")) {
|
if (input.equals("-1")) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (input.equals("n")) {
|
if (input.equals("n")) {
|
||||||
|
|
||||||
if (refreshLojaRestantes > 0) {
|
if (refreshLojaRestantes > 0) {
|
||||||
|
|
||||||
refreshLojaRestantes--;
|
refreshLojaRestantes--;
|
||||||
gerarLoja();
|
gerarLoja();
|
||||||
|
|
||||||
System.out.println("Loja atualizada");
|
System.out.println("Loja atualizada");
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
System.out.println("Sem refreshes");
|
System.out.println("Sem refreshes");
|
||||||
}
|
}
|
||||||
|
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
int op = Integer.parseInt(input);
|
int op = Integer.parseInt(input);
|
||||||
|
|
||||||
if (op >= 0 && op < loja.length) {
|
if (op >= 0 && op < loja.length) {
|
||||||
|
|
||||||
Item item = loja[op];
|
Item item = loja[op];
|
||||||
|
|
||||||
if (ouro >= item.preco || admin) {
|
if (ouro >= item.preco || admin) {
|
||||||
|
|
||||||
if (!admin) {
|
if (!admin) {
|
||||||
ouro -= item.preco;
|
ouro -= item.preco;
|
||||||
}
|
}
|
||||||
|
|
||||||
adicionarItem(item);
|
adicionarItem(item);
|
||||||
|
|
||||||
System.out.println("Compraste " + item.nome);
|
System.out.println("Compraste " + item.nome);
|
||||||
} else {
|
} else {
|
||||||
System.out.println("Sem ouro");
|
System.out.println("Sem ouro");
|
||||||
@@ -317,161 +253,114 @@ public class Experientia {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Inventario() {
|
public void Inventario() {
|
||||||
|
|
||||||
while (true) {
|
while (true) {
|
||||||
|
|
||||||
System.out.println("\n===== INVENTÁRIO =====");
|
System.out.println("\n===== INVENTÁRIO =====");
|
||||||
|
|
||||||
if (itensCount == 0) {
|
if (itensCount == 0) {
|
||||||
System.out.println("Inventário vazio");
|
System.out.println("Inventário vazio");
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int i = 0; i < itensCount; i++) {
|
for (int i = 0; i < itensCount; i++) {
|
||||||
|
|
||||||
System.out.println(i + " - " + inventario[i]);
|
System.out.println(i + " - " + inventario[i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
System.out.println("\n1-Usar");
|
System.out.println("\n1-Usar");
|
||||||
System.out.println("2-Equipar");
|
System.out.println("2-Equipar");
|
||||||
System.out.println("3-Remover");
|
System.out.println("3-Remover");
|
||||||
System.out.println("-1-Sair");
|
System.out.println("-1-Sair");
|
||||||
|
|
||||||
int op = scanner.nextInt();
|
int op = scanner.nextInt();
|
||||||
|
|
||||||
if (op == -1) {
|
if (op == -1) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
System.out.print("ID Item: ");
|
System.out.print("ID Item: ");
|
||||||
int id = scanner.nextInt();
|
int id = scanner.nextInt();
|
||||||
|
|
||||||
if (id < 0 || id >= itensCount) {
|
if (id < 0 || id >= itensCount) {
|
||||||
|
|
||||||
System.out.println("Item inválido");
|
System.out.println("Item inválido");
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
Item item = inventario[id];
|
Item item = inventario[id];
|
||||||
|
|
||||||
if (op == 1) {
|
if (op == 1) {
|
||||||
|
|
||||||
if (item.tipo.equals("consumivel")) {
|
if (item.tipo.equals("consumivel")) {
|
||||||
|
|
||||||
vidaAtual = Math.min(
|
vidaAtual = Math.min(
|
||||||
vidaMax,
|
vidaMax,
|
||||||
vidaAtual + item.valor
|
vidaAtual + item.valor
|
||||||
);
|
);
|
||||||
|
|
||||||
System.out.println(
|
System.out.println(
|
||||||
"Curaste " + item.valor + " HP"
|
"Curaste " + item.valor + " HP"
|
||||||
);
|
);
|
||||||
|
|
||||||
removerItem(id);
|
removerItem(id);
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
System.out.println("Não podes usar isso");
|
System.out.println("Não podes usar isso");
|
||||||
}
|
}
|
||||||
} else if (op == 2) {
|
} else if (op == 2) {
|
||||||
|
|
||||||
if (item.tipo.equals("arma")) {
|
if (item.tipo.equals("arma")) {
|
||||||
|
|
||||||
bonusAtaque = item.valor;
|
bonusAtaque = item.valor;
|
||||||
|
|
||||||
System.out.println(
|
System.out.println(
|
||||||
item.nome + " equipada"
|
item.nome + " equipada"
|
||||||
);
|
);
|
||||||
} else if (item.tipo.equals("armadura")) {
|
} else if (item.tipo.equals("armadura")) {
|
||||||
|
|
||||||
bonusDefesa = item.valor;
|
bonusDefesa = item.valor;
|
||||||
|
|
||||||
System.out.println(
|
System.out.println(
|
||||||
item.nome + " equipada"
|
item.nome + " equipada"
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
System.out.println("Não equipável");
|
System.out.println("Não equipável");
|
||||||
}
|
}
|
||||||
} else if (op == 3) {
|
} else if (op == 3) {
|
||||||
|
|
||||||
System.out.println(
|
System.out.println(
|
||||||
item.nome + " removido"
|
item.nome + " removido"
|
||||||
);
|
);
|
||||||
|
|
||||||
removerItem(id);
|
removerItem(id);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void levelUp() {
|
public void levelUp() {
|
||||||
|
|
||||||
int need = nivelJogador * 50;
|
int need = nivelJogador * 50;
|
||||||
|
|
||||||
while (xpJogador >= need) {
|
while (xpJogador >= need) {
|
||||||
|
|
||||||
xpJogador -= need;
|
xpJogador -= need;
|
||||||
nivelJogador++;
|
nivelJogador++;
|
||||||
|
|
||||||
vidaMax += 20;
|
vidaMax += 20;
|
||||||
ataqueBase += 2;
|
ataqueBase += 2;
|
||||||
defesaBase += 1;
|
defesaBase += 1;
|
||||||
pontosStatus += 3;
|
pontosStatus += 3;
|
||||||
|
|
||||||
System.out.println("Subiste nível " + nivelJogador);
|
System.out.println("Subiste nível " + nivelJogador);
|
||||||
|
|
||||||
need = nivelJogador * 50;
|
need = nivelJogador * 50;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Status() {
|
public void Status() {
|
||||||
|
|
||||||
while (true) {
|
while (true) {
|
||||||
|
|
||||||
System.out.println("\nSTATUS");
|
System.out.println("\nSTATUS");
|
||||||
System.out.println("1-Aumentar Ataque");
|
System.out.println("1-Aumentar Ataque");
|
||||||
System.out.println("2-Aumentar Defesa");
|
System.out.println("2-Aumentar Defesa");
|
||||||
System.out.println("3-Aumentar Vida Máx");
|
System.out.println("3-Aumentar Vida Máx");
|
||||||
System.out.println("-1-Sair");
|
System.out.println("-1-Sair");
|
||||||
|
|
||||||
System.out.println("\nAtaque: " + (ataqueBase + bonusAtaque));
|
System.out.println("\nAtaque: " + (ataqueBase + bonusAtaque));
|
||||||
System.out.println("Defesa: " + (defesaBase + bonusDefesa));
|
System.out.println("Defesa: " + (defesaBase + bonusDefesa));
|
||||||
System.out.println("Vida Max: " + vidaMax);
|
System.out.println("Vida Max: " + vidaMax);
|
||||||
System.out.println("Pontos disponíveis: " + pontosStatus);
|
System.out.println("Pontos disponíveis: " + pontosStatus);
|
||||||
|
|
||||||
int op = scanner.nextInt();
|
int op = scanner.nextInt();
|
||||||
|
|
||||||
if (op == -1) {
|
if (op == -1) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pontosStatus <= 0) {
|
if (pontosStatus <= 0) {
|
||||||
System.out.println("Sem pontos disponíveis");
|
System.out.println("Sem pontos disponíveis");
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (op) {
|
switch (op) {
|
||||||
|
|
||||||
case 1 -> {
|
case 1 -> {
|
||||||
ataqueBase++;
|
ataqueBase++;
|
||||||
pontosStatus--;
|
pontosStatus--;
|
||||||
System.out.println("Ataque aumentado");
|
System.out.println("Ataque aumentado");
|
||||||
}
|
}
|
||||||
|
|
||||||
case 2 -> {
|
case 2 -> {
|
||||||
defesaBase++;
|
defesaBase++;
|
||||||
pontosStatus--;
|
pontosStatus--;
|
||||||
System.out.println("Defesa aumentada");
|
System.out.println("Defesa aumentada");
|
||||||
}
|
}
|
||||||
|
|
||||||
case 3 -> {
|
case 3 -> {
|
||||||
vidaMax += 10;
|
vidaMax += 10;
|
||||||
vidaAtual += 10;
|
vidaAtual += 10;
|
||||||
pontosStatus--;
|
pontosStatus--;
|
||||||
System.out.println("Vida aumentada");
|
System.out.println("Vida aumentada");
|
||||||
}
|
}
|
||||||
|
|
||||||
default ->
|
default ->
|
||||||
System.out.println("Opção inválida");
|
System.out.println("Opção inválida");
|
||||||
}
|
}
|
||||||
@@ -504,7 +393,6 @@ public class Experientia {
|
|||||||
inventario[itensCount++] = i;
|
inventario[itensCount++] = i;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (itensCount < inventario.length) {
|
if (itensCount < inventario.length) {
|
||||||
inventario[itensCount++] = i;
|
inventario[itensCount++] = i;
|
||||||
} else {
|
} else {
|
||||||
@@ -525,53 +413,36 @@ public class Experientia {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
public void gerarLoja() {
|
public void gerarLoja() {
|
||||||
|
|
||||||
for (int i = 0; i < loja.length; i++) {
|
for (int i = 0; i < loja.length; i++) {
|
||||||
loja[i] = gerarItem();
|
loja[i] = gerarItem();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public Item gerarItem() {
|
public Item gerarItem() {
|
||||||
|
|
||||||
int t = rand.nextInt(3);
|
int t = rand.nextInt(3);
|
||||||
int r = rand.nextInt(100);
|
int r = rand.nextInt(100);
|
||||||
|
|
||||||
String raridade;
|
String raridade;
|
||||||
|
|
||||||
int multiplicadorValor;
|
int multiplicadorValor;
|
||||||
int multiplicadorPreco;
|
int multiplicadorPreco;
|
||||||
|
|
||||||
if (r < 60) {
|
if (r < 60) {
|
||||||
|
|
||||||
raridade = "Comum";
|
raridade = "Comum";
|
||||||
|
|
||||||
multiplicadorValor = 1;
|
multiplicadorValor = 1;
|
||||||
multiplicadorPreco = 1;
|
multiplicadorPreco = 1;
|
||||||
} else if (r < 85) {
|
} else if (r < 85) {
|
||||||
|
|
||||||
raridade = "Raro";
|
raridade = "Raro";
|
||||||
|
|
||||||
multiplicadorValor = 3;
|
multiplicadorValor = 3;
|
||||||
multiplicadorPreco = 2;
|
multiplicadorPreco = 2;
|
||||||
} else if (r < 97) {
|
} else if (r < 97) {
|
||||||
|
|
||||||
raridade = "Épico";
|
raridade = "Épico";
|
||||||
|
|
||||||
multiplicadorValor = 5;
|
multiplicadorValor = 5;
|
||||||
multiplicadorPreco = 3;
|
multiplicadorPreco = 3;
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
raridade = "Lendário";
|
raridade = "Lendário";
|
||||||
|
|
||||||
multiplicadorValor = 8;
|
multiplicadorValor = 8;
|
||||||
multiplicadorPreco = 5;
|
multiplicadorPreco = 5;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (t == 0) {
|
if (t == 0) {
|
||||||
|
|
||||||
int cura = 30 * multiplicadorValor;
|
int cura = 30 * multiplicadorValor;
|
||||||
int preco = 10 * multiplicadorPreco;
|
int preco = 10 * multiplicadorPreco;
|
||||||
|
|
||||||
return new Item(
|
return new Item(
|
||||||
"Poção",
|
"Poção",
|
||||||
"consumivel",
|
"consumivel",
|
||||||
@@ -580,12 +451,9 @@ public class Experientia {
|
|||||||
raridade
|
raridade
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (t == 1) {
|
if (t == 1) {
|
||||||
|
|
||||||
int dano = (5 + nivelJogador) * multiplicadorValor;
|
int dano = (5 + nivelJogador) * multiplicadorValor;
|
||||||
int preco = 40 * multiplicadorPreco;
|
int preco = 40 * multiplicadorPreco;
|
||||||
|
|
||||||
return new Item(
|
return new Item(
|
||||||
"Espada",
|
"Espada",
|
||||||
"arma",
|
"arma",
|
||||||
@@ -594,10 +462,8 @@ public class Experientia {
|
|||||||
raridade
|
raridade
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
int defesa = (5 + nivelJogador) * multiplicadorValor;
|
int defesa = (5 + nivelJogador) * multiplicadorValor;
|
||||||
int preco = 40 * multiplicadorPreco;
|
int preco = 40 * multiplicadorPreco;
|
||||||
|
|
||||||
return new Item(
|
return new Item(
|
||||||
"Armadura",
|
"Armadura",
|
||||||
"armadura",
|
"armadura",
|
||||||
@@ -606,9 +472,7 @@ public class Experientia {
|
|||||||
raridade
|
raridade
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
class Item {
|
class Item {
|
||||||
|
|
||||||
String nome;
|
String nome;
|
||||||
String tipo;
|
String tipo;
|
||||||
int valor;
|
int valor;
|
||||||
@@ -622,64 +486,46 @@ public class Experientia {
|
|||||||
preco = p;
|
preco = p;
|
||||||
raridade = r;
|
raridade = r;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return nome + " [" + raridade + "] +" + valor + " (" + tipo + ") - " + preco + " ouro";
|
return nome + " [" + raridade + "] +" + valor + " (" + tipo + ") - " + preco + " ouro";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void resetJogo() {
|
public void resetJogo() {
|
||||||
|
|
||||||
nivelJogador = 1;
|
nivelJogador = 1;
|
||||||
xpJogador = 0;
|
xpJogador = 0;
|
||||||
ouro = 0;
|
ouro = 0;
|
||||||
|
|
||||||
bonusAtaque = 0;
|
bonusAtaque = 0;
|
||||||
bonusDefesa = 0;
|
bonusDefesa = 0;
|
||||||
|
|
||||||
pontosStatus = 0;
|
pontosStatus = 0;
|
||||||
itensCount = 0;
|
itensCount = 0;
|
||||||
|
|
||||||
refreshLojaRestantes = 3;
|
refreshLojaRestantes = 3;
|
||||||
|
|
||||||
vidaMax = 100;
|
vidaMax = 100;
|
||||||
ataqueBase = 10;
|
ataqueBase = 10;
|
||||||
defesaBase = 5;
|
defesaBase = 5;
|
||||||
|
|
||||||
switch (classe) {
|
switch (classe) {
|
||||||
|
|
||||||
case "Guerreiro" -> {
|
case "Guerreiro" -> {
|
||||||
ataqueBase += 2;
|
ataqueBase += 2;
|
||||||
defesaBase += 3;
|
defesaBase += 3;
|
||||||
}
|
}
|
||||||
|
|
||||||
case "Mago" -> {
|
case "Mago" -> {
|
||||||
ataqueBase += 5;
|
ataqueBase += 10;
|
||||||
}
|
}
|
||||||
|
|
||||||
case "Paladino" -> {
|
case "Paladino" -> {
|
||||||
defesaBase += 4;
|
defesaBase += 4;
|
||||||
vidaMax += 20;
|
vidaMax += 20;
|
||||||
}
|
}
|
||||||
|
|
||||||
case "Assassino" -> {
|
case "Assassino" -> {
|
||||||
ataqueBase += 3;
|
ataqueBase += 3;
|
||||||
}
|
}
|
||||||
|
|
||||||
case "Arqueiro" -> {
|
case "Arqueiro" -> {
|
||||||
ataqueBase += 2;
|
ataqueBase += 2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
vidaAtual = vidaMax;
|
vidaAtual = vidaMax;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Item gerarItemUnico() {
|
public Item gerarItemUnico() {
|
||||||
|
|
||||||
int t = rand.nextInt(2);
|
int t = rand.nextInt(2);
|
||||||
|
|
||||||
if (t == 0) {
|
if (t == 0) {
|
||||||
|
|
||||||
return new Item(
|
return new Item(
|
||||||
"Excalibur",
|
"Excalibur",
|
||||||
"arma",
|
"arma",
|
||||||
@@ -688,7 +534,6 @@ public class Experientia {
|
|||||||
"Único"
|
"Único"
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
return new Item(
|
return new Item(
|
||||||
"Armadura Divina",
|
"Armadura Divina",
|
||||||
"armadura",
|
"armadura",
|
||||||
@@ -697,35 +542,23 @@ public class Experientia {
|
|||||||
"Único"
|
"Único"
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void salvarJogo() throws IOException {
|
public void salvarJogo() throws IOException {
|
||||||
|
|
||||||
try (PrintWriter writer = new PrintWriter(new FileWriter(nomeJogador + ".txt"))) {
|
try (PrintWriter writer = new PrintWriter(new FileWriter(nomeJogador + ".txt"))) {
|
||||||
|
|
||||||
writer.println(nomeJogador);
|
writer.println(nomeJogador);
|
||||||
writer.println(classe);
|
writer.println(classe);
|
||||||
|
|
||||||
writer.println(nivelJogador);
|
writer.println(nivelJogador);
|
||||||
writer.println(xpJogador);
|
writer.println(xpJogador);
|
||||||
writer.println(ouro);
|
writer.println(ouro);
|
||||||
|
|
||||||
writer.println(vidaMax);
|
writer.println(vidaMax);
|
||||||
writer.println(vidaAtual);
|
writer.println(vidaAtual);
|
||||||
|
|
||||||
writer.println(ataqueBase);
|
writer.println(ataqueBase);
|
||||||
writer.println(defesaBase);
|
writer.println(defesaBase);
|
||||||
|
|
||||||
writer.println(bonusAtaque);
|
writer.println(bonusAtaque);
|
||||||
writer.println(bonusDefesa);
|
writer.println(bonusDefesa);
|
||||||
|
|
||||||
writer.println(pontosStatus);
|
writer.println(pontosStatus);
|
||||||
|
|
||||||
writer.println(itensCount);
|
writer.println(itensCount);
|
||||||
|
|
||||||
for (int i = 0; i < itensCount; i++) {
|
for (int i = 0; i < itensCount; i++) {
|
||||||
|
|
||||||
Item it = inventario[i];
|
Item it = inventario[i];
|
||||||
|
|
||||||
writer.println(
|
writer.println(
|
||||||
it.nome + ";"
|
it.nome + ";"
|
||||||
+ it.tipo + ";"
|
+ it.tipo + ";"
|
||||||
@@ -734,11 +567,9 @@ public class Experientia {
|
|||||||
+ it.raridade
|
+ it.raridade
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
System.out.println("Jogo guardado!");
|
System.out.println("Jogo guardado!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void carregarJogo() {
|
public void carregarJogo() {
|
||||||
System.out.print("Nome do jogador: ");
|
System.out.print("Nome do jogador: ");
|
||||||
String nome = scanner.next();
|
String nome = scanner.next();
|
||||||
|
|||||||
Reference in New Issue
Block a user