Coverage Summary for Class: Peli (org.example)
| Class |
Class, %
|
Method, %
|
Line, %
|
| Peli |
100%
(1/1)
|
100%
(10/10)
|
100%
(38/38)
|
package org.example;
/**
* Kivi, sakset, paperi -peli
* @author Ira Dook
*/
public class Peli {
/**
* Tasapelien lukumäärä
*/
private int tasapelit;
/**
* Pelattujen pelien lukumäärä
*/
private int pelatutPelit;
/**
* Onko peli loppunut
*/
private boolean peliLoppui;
/**
* Pelin ensimmäinen pelaaja
*/
private Pelaaja p1;
/**
* Pelin toinen pelaaja
*/
private Pelaaja p2;
/**
* Pelin konstruktori, jossa luodaan uudet pelaajat
*/
public Peli(){
p1 = new Pelaaja();
p2 = new Pelaaja();
}
/**
* Pelin alustaminen alkuasetuksiin
*/
public void alustaPeli(){
tasapelit = 0;
pelatutPelit = 0;
peliLoppui = false;
p1.setVoitot(0);
p2.setVoitot(0);
}
/**
* Kivi, paperi, sakset -pelin pelaaminen
*/
public void pelaa() {
alustaPeli();
do {
System.out.println("Erä: "
+ (pelatutPelit+1)+ " =====================\n");
System.out.println("Tasapelien lukumäärä: "
+ tasapelit + "\n");
valitseMerkki(p1, 1);
valitseMerkki(p2, 2);
tarkistaVoittaja();
System.out.println();
} while (!peliLoppui);
}
/**
* Pelaajan merkki valitaa ja tulostetaan
*
* @param pelaaja annettu pelaaja, jolle valitaan merkki
* @param numero pelaajan pelaajanumero
*/
public void valitseMerkki(Pelaaja pelaaja, int numero){
pelaaja.arvoMerkki();
System.out.println("Pelaaja"+numero+" : " + pelaaja.getMerkki()
+ "\n\t Pelaaja "+numero+":lla yhteensä " + pelaaja.getVoitot() + " voittoa.");
}
/**
* Tarkistetaan, kumpi pelaajista voitti pelin vai tuliko tasapeli
*/
public void tarkistaVoittaja(){
if (p1.getMerkki().equals(p2.getMerkki())) {
tasapelit++;
System.out.println("\n\t\t\t Tasapeli \n");
}
else if ((p1.getMerkki().equals("sakset") && p2.getMerkki().equals("paperi")) ||
(p1.getMerkki().equals("paperi") && p2.getMerkki().equals("kivi")) ||
(p1.getMerkki().equals("kivi") && p2.getMerkki().equals("sakset"))) {
p1.setVoitot(p1.getVoitot()+1);
System.out.println("Pelaaja 1 voittaa");
} else {
p2.setVoitot(p2.getVoitot()+1);
System.out.println("Pelaaja 2 voittaa");
}
pelatutPelit++;
if ((p1.getVoitot() >= 3) || (p2.getVoitot() >= 3)) {
peliLoppui = true;
System.out.println("KOLME VOITTOA - PELI PÄÄTTYY");
}
}
public boolean getPeliLoppui() {
return peliLoppui;
}
public int getTasapelit() {
return tasapelit;
}
public int getPelatutPelit() {
return pelatutPelit;
}
public Pelaaja getP1() {
return p1;
}
public Pelaaja getP2() {
return p2;
}
}