Android Open Source - GhostStories Player Data






From Project

Back to project page GhostStories.

License

The source code is released under:

GNU General Public License

If you think the Android project GhostStories listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package games.ghoststories.data;
// w  ww .  jav  a  2s . c  om
import games.ghoststories.enums.EBoardLocation;
import games.ghoststories.enums.EColor;
import games.ghoststories.enums.EPlayerAbility;
import games.ghoststories.enums.ETileLocation;

/**
 * Data class representing the data for a single player. This data includes:
 * <li>Name
 * <li>Color
 * <li>Number of Qi
 * <li>Number of Tao Tokens of each color
 * <li>Number of buddha tokens
 * <li>Yin Yang availability
 * <li>Player ability
 * <li>Game Board Data
 * <li>Player location
 */
public class PlayerData extends TokenSupplyData {

   /**
    * Constructor
    * @param pName Name of the player
    * @param pColor The color of the player
    * @param pGameBoardData Game board info for the player
    */
   public PlayerData(String pName, EColor pColor, GameBoardData pGameBoardData) {
      mName = pName;
      mColor = pColor;
      mBoardData = pGameBoardData;

      //Initialize to zero tao tokens for all colors
      for(EColor color : EColor.values()) {
         mTaoTokens.put(color, 0);
      }
   }

   /**
    * Dispose of the player data
    */
   public void dispose() {
      super.dispose();
   }

   /*
    * (non-Javadoc)
    * @see java.lang.Object#hashCode()
    */
   @Override
   public int hashCode() {
      return mColor.hashCode();
   }

   /*
    * (non-Javadoc)
    * @see java.lang.Object#equals(java.lang.Object)
    */
   @Override
   public boolean equals(Object o) {
      boolean equals = false;
      if(o instanceof PlayerData) {
         equals = ((PlayerData)o).mColor == mColor;
      }
      return equals;
   }

   /**
    * Adds a buddha token to the player
    */
   public void addBuddhaToken() {
      mNumBuddhaTokens++;
      notifyListeners();
   }

   /**
    * @return Whether or not the player yin yang is available
    */
   public boolean isYinYangAvailable() {
      return mYinYangAvailable;
   }

   /**
    * @return The player ability
    */
   public EPlayerAbility getAbility() {
      return mBoardData.getAbility();
   }

   /**
    * @return Whether or not the ability is active
    */
   public boolean getAbilityActive() {
      return mAbilityActive;
   }

   /**
    * @return The board player board location
    */
   public EBoardLocation getBoardLocation() {
      return mBoardData.getLocation();
   }

   /**
    * @return The color of the player
    */
   public EColor getColor() {
      return mColor;
   }

   /**
    * @return The tile location of the player
    */
   public ETileLocation getLocation() {
      return mLocation;
   }

   /**
    * @return The name of the player
    */
   public String getName() {
      return mName;
   }

   /**
    * @return The number of buddha tokens that the player has
    */
   public int getNumBuddhaTokens() {
      return mNumBuddhaTokens;
   }

   /**
    * Removes a buddha token from the player
    */
   public void removeBuddhaToken() {
      mNumBuddhaTokens--;
      notifyListeners();
   }

   /**
    * Sets whether or not the player ability is active
    * @param pAbilityActive <code>true</code> if active, <code>false</code> if
    *        inactive
    */
   public void setAbilityActive(boolean pAbilityActive) {
      mAbilityActive = pAbilityActive;
      notifyListeners();
   }

   /**
    * Sets the location of the player
    * @param pLocation The new tile location of the player
    */
   public void setLocation(ETileLocation pLocation) {
      mLocation = pLocation;
      notifyListeners();
   }

   /**
    * Sets whether or not the yin yang is available to the player
    * @param pAvailable <code>true</code> for available, <code>false</code> for
    *        unavailable
    */
   public void setYinYangAvailable(boolean pAvailable) {
      mYinYangAvailable = pAvailable;
      notifyListeners();
   }

   /** Whether or not the player ability is active **/
   private boolean mAbilityActive = true;
   /** The game board data for the player **/
   private final GameBoardData mBoardData;
   /** The color of the player **/
   private final EColor mColor;
   /** The tile location of the player **/
   private ETileLocation mLocation = ETileLocation.MIDDLE_CENTER;
   /** The name of the player **/
   private final String mName;
   /** The number of buddha tokens held by the player **/
   private int mNumBuddhaTokens;
   /** Whether or not the yin yang is available **/
   private boolean mYinYangAvailable = true;
}




Java Source Code List

com.drawable.shapes.GradientRectangle.java
com.interfaces.IDraggable.java
com.utils.AndroidUtils.java
com.utils.AnimationUtils2.java
com.utils.ImageLoadingTask.java
com.utils.ImageRotationTask.java
com.utils.ImageViewUtils.java
com.views.NumberedImageView.java
com.views.ToggledImageView.java
com.views.layouts.ScaledLinearLayout.java
com.views.layouts.ScaledRelativeLayout.java
com.views.layouts.SquareGridLayout.java
com.views.layouts.SquareLinearLayout.java
com.views.layouts.SquareTableLayout.java
com.views.layouts.ZoomableRelativeLayout.java
com.views.listeners.DragTouchListener.java
games.ghoststories.activities.GameLoadingActivity.java
games.ghoststories.activities.GameScreenActivity.java
games.ghoststories.activities.TitleActivity.java
games.ghoststories.controllers.GhostDeckController.java
games.ghoststories.controllers.HaunterController.java
games.ghoststories.controllers.PlayerBoardCardController.java
games.ghoststories.controllers.VillageTileController.java
games.ghoststories.controllers.combat.CombatAreaController.java
games.ghoststories.controllers.combat.DiceDragListener.java
games.ghoststories.controllers.combat.GhostDragListener.java
games.ghoststories.controllers.combat.TaoTokenDragListener.java
games.ghoststories.data.DragData.java
games.ghoststories.data.GameBoardData.java
games.ghoststories.data.GhostData.java
games.ghoststories.data.GhostDeckData.java
games.ghoststories.data.GhostGraveyardData.java
games.ghoststories.data.GhostStoriesBitmaps.java
games.ghoststories.data.GhostStoriesConstants.java
games.ghoststories.data.GhostStoriesGameManager.java
games.ghoststories.data.PlayerData.java
games.ghoststories.data.TokenSupplyData.java
games.ghoststories.data.interfaces.IGameBoardListener.java
games.ghoststories.data.interfaces.IGamePhaseListener.java
games.ghoststories.data.interfaces.IGameTokenListener.java
games.ghoststories.data.interfaces.IGhostDeckListener.java
games.ghoststories.data.interfaces.IGhostListener.java
games.ghoststories.data.interfaces.ITokenListener.java
games.ghoststories.data.interfaces.IVillageTileListener.java
games.ghoststories.data.village.BuddhistTempleTileData.java
games.ghoststories.data.village.CircleOfPrayerTileData.java
games.ghoststories.data.village.VillageTileDataFactory.java
games.ghoststories.data.village.VillageTileData.java
games.ghoststories.enums.EBoardLocation.java
games.ghoststories.enums.ECardLocation.java
games.ghoststories.enums.EColor.java
games.ghoststories.enums.ECombatPhase.java
games.ghoststories.enums.EDiceSide.java
games.ghoststories.enums.EDice.java
games.ghoststories.enums.EDifficulty.java
games.ghoststories.enums.EDragItem.java
games.ghoststories.enums.EGamePhase.java
games.ghoststories.enums.EGhostAbility.java
games.ghoststories.enums.EHaunterLocation.java
games.ghoststories.enums.EPlayerAbility.java
games.ghoststories.enums.ETileLocation.java
games.ghoststories.enums.EVillageTile.java
games.ghoststories.fragments.AuxAreaFragment.java
games.ghoststories.fragments.GameboardFragment.java
games.ghoststories.utils.BitmapUtils.java
games.ghoststories.utils.GameUtils.java
games.ghoststories.utils.XmlUtils.java
games.ghoststories.views.GameScreen.java
games.ghoststories.views.aux_area.CardInfoView.java
games.ghoststories.views.aux_area.GamePhaseDetailsView.java
games.ghoststories.views.aux_area.GamePhaseView.java
games.ghoststories.views.aux_area.GhostDeckView.java
games.ghoststories.views.aux_area.GhostGraveyardCardView.java
games.ghoststories.views.aux_area.PlayerInfoView.java
games.ghoststories.views.combat.CombatDamageView.java
games.ghoststories.views.combat.CombatDiceAreaView.java
games.ghoststories.views.combat.CombatDiceView.java
games.ghoststories.views.combat.CombatGhostView.java
games.ghoststories.views.combat.CombatInstructionsView.java
games.ghoststories.views.combat.CombatRollView.java
games.ghoststories.views.combat.CombatView.java
games.ghoststories.views.combat.ExtraCombatDiceView.java
games.ghoststories.views.combat.GhostHealthView.java
games.ghoststories.views.common.AbstractNumberedTokenView.java
games.ghoststories.views.common.BuddhaTokenView.java
games.ghoststories.views.common.QiTokenView.java
games.ghoststories.views.common.TaoTokenView.java
games.ghoststories.views.common.YinYangTokenView.java
games.ghoststories.views.gameboard.PlayerAreaView.java
games.ghoststories.views.gameboard.PlayerBoardCardView.java
games.ghoststories.views.gameboard.PlayerBoardView.java
games.ghoststories.views.gameboard.PlayerTokenAreaView.java
games.ghoststories.views.gameboard.VillageTileView.java
games.ghoststories.views.graveyard.GraveyardScrollView.java
games.ghoststories.views.graveyard.GraveyardView.java
games.ghoststories.views.title.TitleButton.java
games.ghoststories.views.title.TitleScreen.java
games.ghoststories.views.village.CircleOfPrayerView.java