martedì 17 novembre 2009

Gioco del Black jack in java (svolto in classe)- Classe Banco

In ogni classe abbiamo definito i suoi metodi e attributi e alla fine li abbiamo "uniti" in un unica classe la quale mandava in esecuzione il programma
La prima che abbiamo definito è stata quella relativa al banco a di gioco e in seguito tutte le altre testandole ogni volta.


import java.util.Scanner;
public class Banco{
Giocatore giocatore;
int id;
String nome;
int budget=0;
Mazzo mazzo=new Mazzo();
Mano manoBanco=new Mano();
Scanner in=new Scanner(System.in);
public void creaGiocatore(){
System.out.println("Dammi il tuo nome");
String nomeGiocatore=in.next();
System.out.println("dimmi il tuo budget");
int budget=in.nextInt();
giocatore=new Giocatore(1,nomeGiocatore,budget);
}
public Banco(int id,String nome,int budget){
this.id=id;
this.nome=nome;
this.budget=budget;
}
public int run(){
int sommaBanco=100000;
int restoGiocatore=giocatore.getResto();
System.out.println("Vuoi continuare a giocare?Rispondi Si");
String r=in.next();
int puntata=giocatore.punta();
Mano manog=giocatore.getMano();
int i=0;
Carta[] carteMazzo=mazzo.getMazzo();
while((restoGiocatore>0)&&(r.equals("Si"))&&(sommaBanco>0)){
mazzo.riordinaMazzo();
mazzo.mischiaMazzo();
mazzo.stampaMazzo();
System.out.println("------------");
Carta carta=mazzo.getSuccessiva();
manog.addCarta(carteMazzo[i]);
i++;
manog.addCarta(carteMazzo[i]);
i++;
manoBanco.addCarta(carteMazzo[i]);
i++;
manoBanco.addCarta(carteMazzo[i]);
i++;
manog.stampaMano();
int punteggiog=manog.calcolaPunteggio();
manoBanco.stampaManoBanco();
int punteggiob=0;//manoBanco.calcolaPunteggio();
System.out.println("se vuoi un'altra carta rispondi Si");
r=in.next();
while((r.equals("Si"))&&(punteggiog<=21)){
manog.addCarta(carteMazzo[i]);
i++;
manog.stampaMano();
punteggiog=manog.calcolaPunteggio();
System.out.println("Se vuoi un'altra carta rispondi Si");
r=in.next();
}
if (punteggiog>21){
System.out.println("hai sballato perdi la puntata");
restoGiocatore-=puntata;
sommaBanco+=puntata;
break;
}
while((punteggiob<=punteggiog)&&(punteggiob<21)){
manoBanco.addCarta(carteMazzo[i]);
i++;
manoBanco.stampaManoBanco();
manoBanco.stampaManoBanco1();
punteggiob=manoBanco.calcolaPunteggio();
}
if(punteggiog>punteggiob){
System.out.println("hai vinto: "+puntata);
restoGiocatore+=puntata;
sommaBanco-=puntata;
}else{
System.out.println("il banco vince!"+puntata);
restoGiocatore-=puntata;
sommaBanco+=puntata;
}
}
return sommaBanco;
}
//ho assegnato il giocatore al banco
public void setGiocatore(Giocatore g){
giocatore=g;
}
}

Nessun commento: