fatto un pezzo di tappa

This commit is contained in:
gababababibbo 2025-06-09 14:44:23 +02:00
parent edd1e67e9b
commit 3fb636ab42
12 changed files with 72 additions and 13 deletions

View file

@ -21,7 +21,6 @@ public class Cavallo {
this.matto = false; this.matto = false;
this.posizione = RandomDraws.drawInteger(1, 3); this.posizione = RandomDraws.drawInteger(1, 3);
} }
setTessere();
} }
public String getNome() { public String getNome() {
@ -36,6 +35,9 @@ public class Cavallo {
public boolean isMatto() { public boolean isMatto() {
return matto; return matto;
} }
public int getTessereSize(){
return tessere.size();
}
public void setNome(String nome) { public void setNome(String nome) {
this.nome = nome; this.nome = nome;
@ -49,14 +51,18 @@ public class Cavallo {
public void setMatto(boolean matto) { public void setMatto(boolean matto) {
this.matto = matto; this.matto = matto;
} }
public void setTessere(){ public void svuotaTessere(){
for(int i = 0; i < 4; i++){ while(!tessere.isEmpty()){
tessere.add(new Tessera()); tessere.remove();
} }
} }
public void addTessera(Giocatore g){
tessere.add(new Tessera(g));
}
public void movimento(int i){ public void movimento(int i){
} }
} }

View file

@ -57,23 +57,23 @@ public class Giocatore {
this.sbleuri += this.tessereSbleuri; this.sbleuri += this.tessereSbleuri;
} }
public void posizionaTesseraTifoInveimento(Mappa mappa){ public int posizionaTesseraTifoInveimento(Mappa mappa){
int i = new Input().sceltaTifoInvimento(mappa); int i = new Input().sceltaTifoInvimento(mappa);
boolean s = new Input().sceltaTifoInveimento(); boolean s = new Input().sceltaTifoInveimento();
if (s == true){ if (s == true){
mappa.getCasella(i).setTifoInveimento(1); mappa.getCasella(i).setTifoInveimento(1);
} }
else{ else{
mappa.getCasella(i).setTifoInveimento(-1);
} }
return i;
} }
private void lanciaDado(ArrayList <Cavallo> cavalli){ public void lanciaDado(ArrayList <Cavallo> cavalli){
int i = RandomDraws.drawInteger(0, 6); int i = RandomDraws.drawInteger(0, 6);
int m = RandomDraws.drawInteger(1, 3); int m = RandomDraws.drawInteger(1, 3);
cavalli.get(i).movimento(m); cavalli.get(i).movimento(m);
tessereSbleuri += 1; tessereSbleuri += 1;
} }
} }

View file

@ -34,6 +34,7 @@ public class Main {
Partita partita = new Partita(giocatori, cavalli, mappa, pila); Partita partita = new Partita(giocatori, cavalli, mappa, pila);
partita.sceltaCavaliere(); partita.sceltaCavaliere();
partita.inizioTappa();
} }
} }

View file

@ -1,3 +1,5 @@
import java.util.Deque;
public class Output { public class Output {
public Output(){ public Output(){
@ -12,7 +14,18 @@ public class Output {
System.out.println("il cavallo "+ colore + " si è mosso di "+i+" caselle!"); System.out.println("il cavallo "+ colore + " si è mosso di "+i+" caselle!");
} }
public void mostraMappa (Mappa mappa){ public void annuncioTurno(Giocatore g){
System.out.println("è il turno di "+g.getNome());
}
public void mostraMappa (Mappa mappa){
System.out.println(mappa.toString());
}
public void visualizzaSoldi(Deque <Giocatore> giocatori){
for(int i = 0; i < giocatori.size(); i++){
System.out.println(giocatori.getFirst().getNome()+ " ha "+giocatori.getFirst().getSbleuri()+" sbleuri");
giocatori.removeFirst();
}
} }
} }

View file

@ -2,13 +2,18 @@ import java.util.ArrayDeque;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Deque; import java.util.Deque;
import it.kibo.fp.lib.Menu;
import it.kibo.fp.lib.RandomDraws; import it.kibo.fp.lib.RandomDraws;
public class Partita { public class Partita {
private static String titolo = "seleziona la scelta";
private static String [] selezioni = {"Lancia il dado", "usa la tessera tifo o inveimento", "scommetti su un cavallo", "giocati la casa", "visualizza la mappa", "visualizza i soldi di tutti"};
private Deque <Giocatore> giocatori = new ArrayDeque<>(); private Deque <Giocatore> giocatori = new ArrayDeque<>();
private ArrayList <Cavallo> cavalli = new ArrayList<>(); private ArrayList <Cavallo> cavalli = new ArrayList<>();
private Mappa mappa; private Mappa mappa;
private Pila pila; private Pila pila;
private Menu menu = new Menu (titolo, selezioni, true, true, true);
public Partita(Deque <Giocatore> giocatori, ArrayList<Cavallo> cavalli, Mappa mappa, Pila pila){ public Partita(Deque <Giocatore> giocatori, ArrayList<Cavallo> cavalli, Mappa mappa, Pila pila){
this.giocatori = giocatori; this.giocatori = giocatori;
@ -27,6 +32,39 @@ public class Partita {
} }
public void inizioTappa(){ public void inizioTappa(){
//RICORDA SETGIOCATORETESSERA do{
new Output().annuncioTurno(giocatori.getFirst());
int s = menu.choose();
switch (s){
case 1:
giocatori.getFirst().lanciaDado(cavalli);
giocatori.addLast(giocatori.getFirst());
giocatori.removeFirst();
break;
case 2:
int i = giocatori.getFirst().posizionaTesseraTifoInveimento(mappa);
mappa.getCasella(i).setGiocatoreTessera(giocatori.getFirst());
giocatori.addLast(giocatori.getFirst());
giocatori.removeFirst();
break;
case 3:
break;
case 4:
break;
case 5:
new Output().mostraMappa(mappa);
break;
case 6:
new Output().visualizzaSoldi(giocatori);
break;
}
}while(1 == 1);
} }
} }

View file

@ -1,9 +1,10 @@
public class Tessera { public class Tessera {
private Giocatore giocatorePrenotato; private Giocatore giocatorePrenotato;
public Tessera(){ public Tessera(Giocatore g){
this.giocatorePrenotato = g;
} }
public void assegnaTessera(Giocatore g){ public void assegnaTessera(Giocatore g){
this.giocatorePrenotato = g; this.giocatorePrenotato = g;
} }