Advertisement
Guest User

Untitled

a guest
May 28th, 2015
226
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.07 KB | None | 0 0
  1. package game;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.Arrays;
  5. import java.util.List;
  6. import java.util.Random;
  7.  
  8. /**
  9.  * Created by Jannik on 05.05.15.
  10.  */
  11. public class PlayingField {
  12.  
  13.     private final static int PLAYING_FIELD_LENGTH = 16;
  14.     private final static int CAMEL_AMOUNT = 5;
  15.  
  16.     private PlayingFieldSlot[] playingField;
  17.  
  18.     private List<Integer> diceColorsList;
  19.  
  20.     private final static int RED_CAMEL = 0;
  21.     private final static int BLUE_CAMEL = 1;
  22.     private final static int YELLOW_CAMEL = 2;
  23.     private final static int GREEN_CAMEL = 3;
  24.     private final static int WHITE_CAMEL = 4;
  25.  
  26.     public PlayingField(){
  27.         resetDice();
  28.         playingField = new PlayingFieldSlot[PLAYING_FIELD_LENGTH];
  29.     }
  30.  
  31.     /*******************/
  32.     /*Getter und Setter*/
  33.     /*******************/
  34.  
  35.     public void setPlayingField(PlayingFieldSlot[] playingField){
  36.         this.playingField = playingField;
  37.     }
  38.  
  39.     public PlayingFieldSlot[] getPlayingField(){
  40.         return playingField;
  41.     }
  42.  
  43.     /***************/
  44.     /*Init Methoden*/
  45.     /***************/
  46.  
  47.     public void initiatePlayingField(){
  48.         for (int i = 0; i < PLAYING_FIELD_LENGTH; i++){
  49.             playingField[i] = new PlayingFieldSlot();
  50.         }
  51.         for (int i = 0; i < CAMEL_AMOUNT; i++){
  52.             int position = rollDiceNumber();
  53.             playingField[position].camelOrder.add(new Camel(rollDiceColor(), position));
  54.         }
  55.     }
  56.  
  57.     /*********/
  58.     /*Helper*/
  59.     /********/
  60.  
  61.     public int locateCamelIndex(int color){
  62.         int index = 0;
  63.         for (int i = 0; i < getPlayingField().length; i++) {
  64.             for (int j = 0; j < getPlayingField()[i].camelOrder.size(); j++) {
  65.                 if (getPlayingField()[i].camelOrder.contains(color)) {
  66.                     index = getPlayingField()[i].camelOrder.indexOf(color);
  67.                     return index;
  68.                 }
  69.             }
  70.         }
  71.         return -1; // -1 -> not found
  72.     }
  73.  
  74.     public int locateCamelSlot(int color) {
  75.         for (int i = 0; i < getPlayingField().length; i++) {
  76.             for (int j = 0; j < getPlayingField()[i].camelOrder.size(); j++) {
  77.                 if (getPlayingField()[i].camelOrder.contains(color)) {
  78.                     return i;
  79.                 }
  80.             }
  81.         }
  82.         return -1; // -1 -> not found
  83.     }
  84.  
  85.  
  86.     /**************/
  87.     /*Würfel-Logik*/
  88.     /**************/
  89.  
  90.     public Integer rollDiceColor(){
  91.         Random rand = new Random();
  92.         if (diceColorsList.size() > 0) {
  93.             int n = rand.nextInt(diceColorsList.size());
  94.             int color = diceColorsList.get(n);
  95.             diceColorsList.remove(n);
  96.             return color;
  97.         } else {
  98.             return 0;
  99.         }
  100.     }
  101.  
  102.     public int rollDiceNumber(){
  103.         Random rand = new Random();
  104.         int n = rand.nextInt(3)+1;
  105.         return n;
  106.     }
  107.  
  108.     public void resetDice(){
  109.         diceColorsList = new ArrayList<Integer>(Arrays.asList(RED_CAMEL, BLUE_CAMEL, YELLOW_CAMEL, GREEN_CAMEL, WHITE_CAMEL));
  110.     }
  111.  
  112. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement