Advertisement
Guest User

Untitled

a guest
Nov 17th, 2019
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.17 KB | None | 0 0
  1. package pgdp.games;
  2.  
  3. public class PickSix extends MiniJava {
  4. // sorting method from the lecture
  5. public static int[] sort(int[] a) {
  6. int[] b = new int[a.length];
  7. for (int i = 0; i < a.length; ++i) {
  8. // begin of insert
  9. int j = 0;
  10. while (j < i && a[i] > b[j]) ++j;
  11. // end of locate
  12. for (int k = i - 1; k >= j; --k) b[k + 1] = b[k];
  13. // end of shift
  14. b[j] = a[i];
  15. // end of insert
  16. }
  17. return b;
  18. } // end of sort
  19.  
  20. public static void main(String[] args) throws IllegalAccessException {
  21. int n=2;
  22. int[][] cards=new int[n][10];
  23. int[][] stapel=new int[4][5];
  24. givePlayerCards(cards);
  25. for(int i=0;i<stapel.length;i++){
  26. for (int j=0;j<1;j++){
  27. stapel[i][j]=drawCard();
  28. }
  29. }
  30. outputStapel(stapel);
  31. for(int i=0;i<cards.length;i++){
  32. for(int j=0;j<cards[i].length;j++){
  33. playerSelectCard(n,cards);
  34. outputStapel(stapel);
  35. }
  36. }
  37. }
  38.  
  39.  
  40. public static void outputStapel(int[][] stapel) {
  41. String result;
  42. for(int i=0;i<stapel.length;i++){
  43. result="";
  44. label:for(int j=0;j<stapel[i].length;j++){
  45. if (stapel[i][j]>0) {
  46. result += " "+stapel[i][j] ;
  47. }
  48. else continue label;
  49.  
  50. }
  51. write("Stapel "+(i+1)+":"+ result);
  52.  
  53. }
  54.  
  55. }
  56.  
  57. public static int playerSelectCard(int player, int[][] playerCards) {
  58. String playersHand;
  59. int chosenCard=0;
  60. int indexCard=0;
  61. for(int i=0;i<player;i++) {
  62. playersHand = "";
  63. for (int j = 0; j < playerCards[i].length; j++) {
  64. playersHand += " " + playerCards[i][j];
  65. }
  66. int j = 0;
  67. do {
  68. write("Spieler " + (i + 1) + ", du hast die folgenden Karten:" + playersHand);
  69. chosenCard = readInt("Welche Karte möchtest du ausspielen?");
  70. j++;
  71. } while (chosenCard != playerCards[i][j]);
  72. playerCards[i][j]=0;
  73. }
  74. return chosenCard;
  75. }
  76.  
  77. public static int calculatePoints(int[] lostCards) {
  78. int summePunkte=0;
  79. for(int i=0;i<lostCards.length;i++){
  80. summePunkte+=getValueOfCard(lostCards[i]);
  81. }
  82. return summePunkte;
  83. }
  84.  
  85. public static void outputResult(int[] playerPoints) {
  86. if(playerPoints[0]<playerPoints[1]){
  87. write("Spieler 1 gewinnt mit "+ playerPoints[0]+" gegen Spieler 2 mit "+playerPoints[1]+" Punkten.");
  88. }
  89. else if(playerPoints[0]>playerPoints[1]){
  90. write("Spieler 2 gewinnt mit "+ playerPoints[1]+" gegen Spieler 1 mit "+playerPoints[0]+" Punkten.");
  91. }
  92. else{
  93. write("Unentschieden! Beide Spieler haben "+ playerPoints[0] +" Punkte.");
  94. }
  95. }
  96.  
  97. public static int getValueOfCard(int card) {
  98. int punkte;
  99. if(card==55) return punkte=7;
  100. else if (card==0) return 0;
  101. else if(card%10==0) return punkte=3;
  102. else if(card%10==(card/10)%10) return punkte=6;
  103. else if(card%10==5) return punkte=2;
  104. else return punkte=1;
  105. }
  106.  
  107. public static void givePlayerCards(int[][] playerCards) throws IllegalAccessException {
  108. for(int i=0;i<playerCards.length;i++){
  109. for(int j=0;j<playerCards[i].length;j++){
  110. playerCards[i][j]=drawCard();
  111. }
  112. }
  113. }
  114. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement