Advertisement
Guest User

BlueJ Schere Stein Papier

a guest
Oct 30th, 2020
194
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.18 KB | None | 0 0
  1. /** Papier Schere Stein
  2. *
  3. * Schwierigkeitsstufe 4
  4. */
  5. import basis.*;
  6. import java.awt.*;
  7. import java.util.Random;
  8.  
  9.  
  10. public class Spiel {
  11.  
  12. private Fenster fenster;
  13. private Fenster fenster1;
  14.  
  15. private Knopf kPapier;
  16.  
  17. private Knopf kStein;
  18.  
  19. private Knopf kSchere;
  20.  
  21. private Knopf kEnde;
  22.  
  23. private Knopf kHilfe;
  24.  
  25. private Knopf kHilfeEnde;
  26.  
  27. private ZahlenFeld zahlenfeld;
  28. private ZahlenFeld zahlenfeld0;
  29.  
  30. private TextFeld textFeld;
  31. private TextFeld textFeld1;
  32.  
  33.  
  34. private BeschriftungsFeld bf;
  35. private BeschriftungsFeld bf1;
  36. private BeschriftungsFeld bf2;
  37. private BeschriftungsFeld bf3;
  38. private BeschriftungsFeld bf4;
  39. private BeschriftungsFeld bf5;
  40. private BeschriftungsFeld bf6;
  41. public Spiel() {
  42. this.initGui(); /** Hiermit werden die Befehle in public void initGui() ausgeführt um das Fenster zu erzeugen */
  43. this.spielStart(); /** Startet das Spiel */
  44. }
  45.  
  46. public void initGui() {
  47. fenster = new Fenster("Papier Schere Stein",360,200); /** Erzeugt ein Objekt Fenster */
  48. kStein = new Knopf("Stein",40,110,80,30);
  49. kSchere = new Knopf("Schere",40,70,80,30);
  50. kPapier = new Knopf("Papier",40,30,80,30);
  51. kEnde = new Knopf ("Ende",140,160,150,30);
  52. kHilfe = new Knopf ("Hilfe",40,160,80,30);
  53.  
  54.  
  55.  
  56.  
  57. zahlenfeld0 = new ZahlenFeld (140,110,40,30);
  58. zahlenfeld0.setzeZahl(0);
  59. zahlenfeld = new ZahlenFeld (210,110,40,30);
  60. zahlenfeld.setzeZahl(0);
  61.  
  62. textFeld = new TextFeld (140,30,180,30);
  63. textFeld.setzeText ("Spielstart");
  64.  
  65.  
  66. textFeld1 = new TextFeld (140,70,180,30);
  67. textFeld1.setzeText ("");
  68.  
  69. bf = new BeschriftungsFeld(":",190,110,10,30);
  70. }
  71.  
  72.  
  73. public void spielStart() {
  74.  
  75. boolean ende= false;
  76.  
  77. int zufall;
  78.  
  79. int counterPlayer = 0;
  80. int counterCom = 0;
  81.  
  82. Random wuerfel= new Random();
  83.  
  84.  
  85. String eingabeSpieler1 = "";
  86. String eingabeSpieler2 = "";
  87.  
  88.  
  89. while (!ende){
  90.  
  91. Hilfe.kurzePause();
  92.  
  93.  
  94. zufall = wuerfel.nextInt(3);
  95.  
  96. eingabeSpieler1 = "";
  97. eingabeSpieler2 = "";
  98.  
  99. if(kHilfe.wurdeGedrueckt()){
  100. fenster1 = new Fenster("Hilfe",620,200);
  101. bf1 = new BeschriftungsFeld("So wird gespielt:",20,-60,320,160);
  102. bf2 = new BeschriftungsFeld("Drücke einen der Drei Knöpfe: Schere, Stein oder Papier.",20,-45,600,160);
  103. bf3 = new BeschriftungsFeld("Im Textfeld rechts daneben siehst du, ob du gewonnen/verloren hast oder es unentschieden steht.",20,-30,600,160);
  104. bf4 = new BeschriftungsFeld("Darunter siehst du, ob du oder der Computer führt.",20,-15,600,160);
  105. bf5 = new BeschriftungsFeld("Die beiden Zahlen zeigen den Punktestand.",20,0,600,160);
  106. bf5 = new BeschriftungsFeld("Mit dem Knopf `Ende` kannst du das Spiel beenden.",20,30,600,160);
  107. kHilfeEnde = new Knopf("Zurück zum Spiel",420,140,150,30);
  108.  
  109. if(kHilfeEnde.wurdeGedrueckt()){
  110. fenster.gibFrei();
  111. }
  112. }
  113.  
  114. if(kPapier.wurdeGedrueckt()){
  115. eingabeSpieler1 = "Papier";
  116. }
  117. if(kStein.wurdeGedrueckt()){
  118. eingabeSpieler1 = "Stein";
  119. }
  120. if(kSchere.wurdeGedrueckt()){
  121. eingabeSpieler1 = "Schere";
  122. }
  123.  
  124.  
  125. switch(zufall) {
  126. case 0:
  127. eingabeSpieler2 = "Papier";
  128. break;
  129. case 1:
  130. eingabeSpieler2 = "Schere";
  131. break;
  132. case 2:
  133. eingabeSpieler2 = "Stein";
  134. break;
  135. }
  136.  
  137.  
  138.  
  139.  
  140. if(eingabeSpieler1.equals("Papier") && eingabeSpieler2.equals("Stein")){
  141. textFeld.setzeText ("Gewonnen");
  142. counterPlayer = counterPlayer + 2;
  143. counterCom = counterCom + 0;
  144. zahlenfeld.setzeZahl(counterCom);
  145. zahlenfeld0.setzeZahl(counterPlayer);
  146.  
  147. }
  148. if(eingabeSpieler1.equals("Stein") && eingabeSpieler2.equals("Schere")){
  149. textFeld.setzeText ("Gewonnen");
  150. counterPlayer = counterPlayer + 2;
  151. counterCom = counterCom + 0;
  152. zahlenfeld.setzeZahl(counterCom);
  153. zahlenfeld0.setzeZahl(counterPlayer);
  154. }
  155. if(eingabeSpieler1.equals("Schere") && eingabeSpieler2.equals("Papier")){
  156. textFeld.setzeText ("Gewonnen");
  157. counterPlayer = counterPlayer + 2;
  158. counterCom = counterCom + 0;
  159. zahlenfeld.setzeZahl(counterCom);
  160. zahlenfeld0.setzeZahl(counterPlayer);
  161. }
  162. if(eingabeSpieler1.equals("Papier") && eingabeSpieler2.equals("Schere")){
  163. textFeld.setzeText ("Verloren");
  164. counterCom = counterCom + 2;
  165. counterPlayer = counterPlayer + 0;
  166. zahlenfeld.setzeZahl(counterCom);
  167. zahlenfeld0.setzeZahl(counterPlayer);
  168. }
  169. if(eingabeSpieler1.equals("Schere") && eingabeSpieler2.equals("Stein")){
  170. textFeld.setzeText ("Verloren");
  171. counterCom = counterCom + 2;
  172. counterPlayer = counterPlayer + 0;
  173. zahlenfeld.setzeZahl(counterCom);
  174. zahlenfeld0.setzeZahl(counterPlayer);
  175. }
  176. if(eingabeSpieler1.equals("Stein") && eingabeSpieler2.equals("Papier")){
  177. textFeld.setzeText ("Verloren");
  178. counterCom = counterCom + 2;
  179. counterPlayer = counterPlayer + 0;
  180. zahlenfeld.setzeZahl(counterCom);
  181. zahlenfeld0.setzeZahl(counterPlayer);
  182. }
  183. if(eingabeSpieler1.equals("Papier") && eingabeSpieler2.equals("Papier")){
  184. textFeld.setzeText ("Unentschieden");
  185. counterCom = counterCom + 1;
  186. counterPlayer = counterPlayer + 1;
  187. zahlenfeld.setzeZahl(counterCom);
  188. zahlenfeld0.setzeZahl(counterPlayer);
  189. }
  190. if(eingabeSpieler1.equals("Schere") && eingabeSpieler2.equals("Schere")){
  191. textFeld.setzeText ("Unentschieden");
  192. counterCom = counterCom + 1;
  193. counterPlayer = counterPlayer + 1;
  194. zahlenfeld.setzeZahl(counterCom);
  195. zahlenfeld0.setzeZahl(counterPlayer);
  196. }
  197. if(eingabeSpieler1.equals("Stein") && eingabeSpieler2.equals("Stein")){
  198. textFeld.setzeText ("Unentschieden");
  199. counterCom = counterCom + 1;
  200. counterPlayer = counterPlayer + 1;
  201. zahlenfeld.setzeZahl(counterCom);
  202. zahlenfeld0.setzeZahl(counterPlayer);
  203. }
  204.  
  205. if(kEnde.wurdeGedrueckt()){
  206. ende = true;
  207. }
  208. if(counterCom < counterPlayer){
  209. textFeld1.setzeText ("Der Spieler führt");
  210.  
  211. }
  212. if(counterCom > counterPlayer){
  213. textFeld1.setzeText ("Der Computer führt");
  214.  
  215. }
  216. if(counterCom == counterPlayer){
  217. textFeld1.setzeText ("Gleichstand");
  218.  
  219. }
  220. }
  221. fenster.gibFrei();
  222. }
  223.  
  224. }
  225.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement