ho aggiunto qualche commento, messo il modulo 2 e finito la tappa, per favore leggete il README le ultime 2 righe
This commit is contained in:
parent
e216374961
commit
efbb65d01d
19 changed files with 37 additions and 17 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -6,8 +6,6 @@ public class Carta {
|
|||
this.cavallo = new Cavallo();
|
||||
}
|
||||
|
||||
|
||||
|
||||
public Carta(Cavallo cavallo){
|
||||
this.cavallo = cavallo;
|
||||
}
|
||||
|
|
|
@ -10,6 +10,7 @@ public class Cavallo {
|
|||
private int posizione;
|
||||
private boolean matto;
|
||||
|
||||
//costruttore null
|
||||
public Cavallo(){
|
||||
nome = null;
|
||||
colore = null;
|
||||
|
@ -27,7 +28,7 @@ public class Cavallo {
|
|||
this.posizione = RandomDraws.drawInteger(1, 3);
|
||||
}
|
||||
}
|
||||
|
||||
//getters
|
||||
public String getNome() {
|
||||
return nome;
|
||||
}
|
||||
|
@ -43,7 +44,7 @@ public class Cavallo {
|
|||
public int getTessereSize(){
|
||||
return tessere.size();
|
||||
}
|
||||
|
||||
//setters
|
||||
public void setNome(String nome) {
|
||||
this.nome = nome;
|
||||
}
|
||||
|
|
|
@ -55,17 +55,22 @@ public class Giocatore {
|
|||
this.tesseraTifoInveimento = tesseraTifoInveimento;
|
||||
}
|
||||
|
||||
//alla fine della tappa converte le tessereSbleuro
|
||||
public void convertiTessereSbleuro(){
|
||||
this.sbleuri += this.tessereSbleuri;
|
||||
tessereSbleuri = 0;
|
||||
}
|
||||
|
||||
//aggiunge un soldo
|
||||
public void aggiungiSbleuro(){
|
||||
this.sbleuri ++;
|
||||
}
|
||||
//aggiunge tanti soldi
|
||||
public void aggiungiSbleuri(int i){
|
||||
this.sbleuri += i;
|
||||
}
|
||||
|
||||
//metodo che piazza la tessera tifo sulla mappa
|
||||
public int posizionaTesseraTifoInveimento(Mappa mappa){
|
||||
int i = new Input().sceltaTifoInvimento(mappa);
|
||||
boolean s = new Input().sceltaTifoInveimento();
|
||||
|
@ -80,6 +85,7 @@ public class Giocatore {
|
|||
return i;
|
||||
}
|
||||
|
||||
//lancia randomicamente un dado per colore(0,6) e risultato
|
||||
public void lanciaDado(ArrayList <Cavallo> cavalli, Mappa mappa){
|
||||
int i = RandomDraws.drawInteger(0, 6);
|
||||
int m = RandomDraws.drawInteger(1, 3);
|
||||
|
@ -94,7 +100,7 @@ public class Giocatore {
|
|||
public Carta getCarta(int i){
|
||||
return carte.get(i);
|
||||
}
|
||||
|
||||
//Scommette sul cavallo che vincerà alla fine(non sono risucito a implementarlo tutto quindi si può ignorare)
|
||||
public void giocaCasa(int i, Pila p){
|
||||
boolean s = new Input().vincitorePerdente();
|
||||
if (s == true){
|
||||
|
|
|
@ -4,6 +4,8 @@ import it.kibo.fp.lib.InputData;
|
|||
|
||||
public class Input {
|
||||
|
||||
|
||||
//anche questo pezzo faceva parte del modulo 1
|
||||
/*
|
||||
private int nWords;
|
||||
private ArrayList<String> encryptedWords;
|
||||
|
@ -41,7 +43,7 @@ public class Input {
|
|||
|
||||
|
||||
|
||||
|
||||
//per il resto sono i vari input che ho usato
|
||||
|
||||
public Input(){
|
||||
|
||||
|
|
|
@ -17,7 +17,11 @@ public class Mappa {
|
|||
return caselle.get(i);
|
||||
}
|
||||
|
||||
public int getCaselleSize(){
|
||||
return caselle.size();
|
||||
}
|
||||
|
||||
//controlla se le celle adiancenti hanno tessere tifo
|
||||
public boolean controllaAdiacenti(int i){
|
||||
if (caselle.get(i-1).getTifoInveimento() != 0 || caselle.get(i+1).getTifoInveimento() != 0 || caselle.get(i).getTifoInveimento() != 0){
|
||||
new Output().erroreAdiacenti();
|
||||
|
@ -37,6 +41,7 @@ public class Mappa {
|
|||
return stringa;
|
||||
}
|
||||
|
||||
//calcola i movimenti dei cavalli e dei cavalli posizionati sopra
|
||||
public void movimentoCavalli(Cavallo cavallo, int i, Mappa mappa){
|
||||
if(cavallo.isMatto()){
|
||||
i = i * (-1);
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
import java.util.Deque;
|
||||
|
||||
public class Output {
|
||||
//metodi abbastanza autoesplicativi
|
||||
|
||||
public Output(){
|
||||
|
||||
|
|
|
@ -4,7 +4,6 @@ import java.util.Deque;
|
|||
import java.util.Collections;
|
||||
import java.util.Comparator;
|
||||
|
||||
import it.kibo.fp.lib.InputData;
|
||||
import it.kibo.fp.lib.Menu;
|
||||
import it.kibo.fp.lib.RandomDraws;
|
||||
|
||||
|
@ -37,12 +36,14 @@ public class Partita {
|
|||
giocatori.getFirst().setCavaliere(true);
|
||||
}
|
||||
|
||||
//fa una tappa intera, quindi continua finche non si è lanciato 5 volte il dado o un cavallo è arrivato alla posizione 17
|
||||
public void inizioTappa(){
|
||||
int dado = 0;
|
||||
do{
|
||||
new Output().annuncioTurno(giocatori.getFirst());
|
||||
int s = menu.choose();
|
||||
switch (s){
|
||||
switch (s){ù
|
||||
//dado
|
||||
case 1:
|
||||
giocatori.getFirst().lanciaDado(cavalli, mappa);
|
||||
giocatori.addLast(giocatori.getFirst());
|
||||
|
@ -50,14 +51,14 @@ public class Partita {
|
|||
dado ++;
|
||||
|
||||
break;
|
||||
|
||||
//posiziona tessera
|
||||
case 2:
|
||||
int x = giocatori.getFirst().posizionaTesseraTifoInveimento(mappa);
|
||||
mappa.getCasella(x).setGiocatoreTessera(giocatori.getFirst());
|
||||
giocatori.addLast(giocatori.getFirst());
|
||||
giocatori.removeFirst();
|
||||
break;
|
||||
|
||||
//piazza scommessa
|
||||
case 3:
|
||||
boolean checkTesserePiene = false;
|
||||
int cavalloScelto = 0;
|
||||
|
@ -70,7 +71,7 @@ public class Partita {
|
|||
}while(checkTesserePiene == true);
|
||||
giocatori.getFirst().scommettiCavallo(cavalli.get(cavalloScelto-1));
|
||||
break;
|
||||
|
||||
//lancia la casa
|
||||
case 4:
|
||||
int cartaCavallo = 0;
|
||||
boolean checkCartaUsata = false;
|
||||
|
@ -97,11 +98,11 @@ public class Partita {
|
|||
giocatori.getFirst().giocaCasa(cartaCavallo, pila);
|
||||
}while(checkCartaUsata == true);
|
||||
break;
|
||||
|
||||
//mostra la mappa, può essere invocate più volte in quanto non consuma un turno
|
||||
case 5:
|
||||
new Output().mostraMappa(mappa);
|
||||
break;
|
||||
|
||||
//mostra i soldi
|
||||
case 6:
|
||||
new Output().visualizzaSoldi(giocatori);
|
||||
break;
|
||||
|
@ -113,6 +114,7 @@ public class Partita {
|
|||
Algoritmo soluzione = new Algoritmo(nWords, dati.getEncryptedWords(), dati.getKeyWords());
|
||||
|
||||
break;*/
|
||||
//modulo 2
|
||||
case 8:
|
||||
for(int i = 0; i < cavalli.size(); i++){
|
||||
if(cavalli.get(i).isMatto()){
|
||||
|
@ -185,12 +187,17 @@ public class Partita {
|
|||
cavalli.get(i).svuotaTessere();
|
||||
|
||||
}
|
||||
//calcolo tessereSbleuro
|
||||
//calcolo tessereSbleuro e ne approfitto per ricaricare le tessere tifo
|
||||
for(int i = 0; i < giocatori.size(); i++){
|
||||
giocatori.getFirst().convertiTessereSbleuro();
|
||||
giocatori.getFirst().setTesseraTifoInveimento(true);
|
||||
giocatori.addLast(giocatori.getFirst());
|
||||
giocatori.removeFirst();
|
||||
}
|
||||
//pulisco il terreno dalle tessere tifo
|
||||
for(int i = 0; i < mappa.getCaselleSize(); i++){
|
||||
mappa.getCasella(i).setTifoInveimento(0);
|
||||
}
|
||||
}
|
||||
|
||||
public void finePartita(){
|
||||
|
|
|
@ -6,6 +6,7 @@ public class Pila {
|
|||
private Deque <Carta> vincitori = new ArrayDeque<>();
|
||||
private Deque <Carta> perdenti = new ArrayDeque<>();
|
||||
|
||||
//metodi invocati dai giocatori quando scommettono su un cavallo
|
||||
public void aggiungiVincitori(Carta carta){
|
||||
vincitori.addLast(carta);
|
||||
}
|
||||
|
@ -21,6 +22,7 @@ public class Pila {
|
|||
return perdenti.size();
|
||||
}
|
||||
|
||||
//ritorna la carta all'indice stabilito
|
||||
public Carta getCartaVincitore(int i){
|
||||
ArrayList <Carta> vincitoriArray = new ArrayList<>(vincitori);
|
||||
return vincitoriArray.get(i);
|
||||
|
|
|
@ -37,6 +37,7 @@ public class Posizione {
|
|||
}
|
||||
}
|
||||
|
||||
//metodo alternativo di quello che c'è sotto
|
||||
/*if(cavalli.size() > 0){
|
||||
for(int i = 0; i < cavalli.size(); i++){
|
||||
stringa += cavalli.getFirst().getNome() + " ---> ";
|
||||
|
@ -48,9 +49,6 @@ public class Posizione {
|
|||
for(int i = 0; i < cavalliArray.size(); i ++){
|
||||
stringa += cavalliArray.get(i).getNome() + " ---> ";
|
||||
}
|
||||
|
||||
|
||||
|
||||
return stringa;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue