Coverage Report - com.buckosoft.fibs.domain.gameEvent.GameEventPleaseMove
 
Classes in this File Line Coverage Branch Coverage Complexity
GameEventPleaseMove
0%
0/17
N/A
1.111
 
 1  
 /******************************************************************************
 2  
  * GameEventPleaseMove.java - Fibs wants the player to decide what pieces to move.
 3  
  * $Id$
 4  
  * 
 5  
  * BuckoFIBS - Backgammon by BuckoSoft
 6  
  * Copyright© 2011 - Dick Balaska - BuckoSoft, Corp.
 7  
  * 
 8  
  * $Log$
 9  
  * Revision 1.2  2011/05/21 20:22:19  dick
 10  
  * Add toString().
 11  
  *
 12  
  * Revision 1.1  2011/05/21 05:13:16  dick
 13  
  * Fibs wants the player to decide what pieces to move.
 14  
  *
 15  
  */
 16  
 
 17  
 /* 
 18  
  * This program is free software: you can redistribute it and/or modify
 19  
  * it under the terms of the GNU General Public License as published by
 20  
  * the Free Software Foundation, either version 3 of the License, or
 21  
  * (at your option) any later version.
 22  
  *
 23  
  * This program is distributed in the hope that it will be useful,
 24  
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
 25  
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 26  
  * GNU General Public License for more details.
 27  
  *
 28  
  * You should have received a copy of the GNU General Public License
 29  
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 30  
  *
 31  
  * The Original Code is BuckoFIBS, <http://www.buckosoft.com/BuckoFIBS/>.
 32  
  * The Initial Developer of the Original Code is Dick Balaska and BuckoSoft, Corp.
 33  
  * 
 34  
  */
 35  
 package com.buckosoft.fibs.domain.gameEvent;
 36  
 
 37  
 
 38  
 /** Fibs wants the player to decide what pieces to move.
 39  
  * @author Dick Balaska
 40  
  * @since 2011/05/18
 41  
  * @version $Revision$ <br> $Date$
 42  
  * @see com.buckosoft.fibs.BuckoFIBS.GameManager
 43  
  * @see <a href="http://cvs.buckosoft.com/Projects/BuckoFIBS/BuckoFIBS/src/main/java/com/buckosoft/fibs/domain/gameEvent/GameEventPleaseMove.java">cvs GameEventPleaseMove.java</a>
 44  
  */
 45  
 public class GameEventPleaseMove extends GameEvent {
 46  
         private int checkersToMove;
 47  0
         private        int[] dice = new int[2];
 48  
 
 49  
         @Override
 50  
         public Type getType() {
 51  0
                 return(Type.PleaseMove);
 52  
         }
 53  
 
 54  
         @Override
 55  
         public Life getLife() {
 56  0
                 return(Life.Transient);
 57  
         }
 58  
 
 59  
         /** Default constructor */
 60  0
         public GameEventPleaseMove() {}
 61  
 
 62  
         /** How many checkers should You move this turn?
 63  
          * @return the checkersToMove
 64  
          */
 65  
         public int getCheckersToMove() {
 66  0
                 return checkersToMove;
 67  
         }
 68  
 
 69  
         /** Set the number of checkers that will be moved this turn.
 70  
          * Note that this is/should be only called from the FIBS_YourTurnToMove handler 
 71  
          * (first roll of the game is always 2 dice)
 72  
          * @param checkersToMove The number of checkers.
 73  
          */
 74  
         public void setCheckersToMove(int checkersToMove) {
 75  0
                 this.checkersToMove = checkersToMove;
 76  0
         }
 77  
 
 78  
         /** Return the two dice rolled in this event
 79  
          * @return The array of the dice
 80  
          */
 81  
         public int[]        getDice() {
 82  0
                 return(dice);
 83  
         }
 84  
         
 85  
         /** Set the dice to be used for this turn
 86  
          * @param dice The dice (from the previous roll)
 87  
          */
 88  
         public void setDice(int[] dice) {
 89  0
                 this.dice = dice;
 90  0
         }
 91  
 
 92  
         /** Parse the number of pieces to move. "<code>Please move 2 pieces.</code>"
 93  
          * @param s The string from fibs.
 94  
          */
 95  
         public void parse(String s) {
 96  0
                 String[] ss = s.split(" ");
 97  
                 try {
 98  0
                         this.checkersToMove = Integer.parseInt(ss[2]);
 99  0
                 } catch (NumberFormatException e) {
 100  0
                         e.printStackTrace();
 101  0
                 }
 102  0
         }
 103  
         
 104  
         /** A debug string of this object.
 105  
          * @return "<code>Please move {checkersToMove} pieces. Dice= {dice0}-{dice1}</code>"
 106  
          */
 107  
         public String toString() {
 108  0
                 return("Please move " + this.checkersToMove + " pieces.  Dice= " + dice[0] + "-" + dice[1]);
 109  
         }
 110  
 }