Android Open Source - AndroSol Foundation






From Project

Back to project page AndroSol.

License

The source code is released under:

MIT License

If you think the Android project AndroSol 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 lib.cards.models;
// w  w w.  j a va 2  s .c  o  m
@SuppressWarnings("serial")
public class Foundation extends CardStack {
    public Foundation(int index, FoundationSequence foundationSequence,
            FoundationBaseCard foundationBaseCard) {
        setIndex(index);
        this.foundationSequence = foundationSequence;
        this.foundationBaseCard = foundationBaseCard;
    }

    FoundationSequence foundationSequence;
    FoundationBaseCard foundationBaseCard;

    public FoundationSequence getFoundationSequence() {
        return foundationSequence;
    }

    public FoundationBaseCard getFoundationBaseCard() {
        return foundationBaseCard;
    }

    @Override
    boolean canFillEmptyStackWith(Card card) {
        switch (getFoundationBaseCard()) {
        case ACE:
        case ACES_DEALT_AT_START_OF_GAME:
            return card.getValue().equals(CardValue.ACE);
        case DEALT_AT_RANDOM:
            return true;
        }
        return false;
    }

    @Override
    public boolean couldBuildStackWith(Card topCard, Card card) {
        if (!buildsUp(topCard, card)) {
            return false;
        }

        switch (getFoundationSequence()) {
        case BUILD_UP_IN_ALTERNATE_COLORS:
            return !card.getColor().equals(topCard.getColor());
        case BUILD_UP_IN_SAME_COLOR:
            return card.getColor().equals(topCard.getColor());
        case BUILD_UP_IN_SAME_SUIT:
            return card.getSuit().equals(topCard.getSuit());
        case BUILD_UP_REGARDLESS_OF_SUIT:
            return true;
        }
        return false;
    }
}




Java Source Code List

com.example.androsol.AndroidDeck.java
com.example.androsol.AndroidGameBoard.java
com.example.androsol.CardSpriteImpl.java
com.example.androsol.DeckTheme.java
com.example.androsol.DisplayMessageActivity.java
com.example.androsol.GameSurface.java
com.example.androsol.MainActivity.java
com.example.androsol.SpriteImpl.java
com.example.androsol.StackSpriteImpl.java
com.example.androsol.StandardDeck.java
lib.cards.controllers.Actions.java
lib.cards.controllers.DealAction.java
lib.cards.controllers.GameActionState.java
lib.cards.controllers.GameAction.java
lib.cards.controllers.GameController.java
lib.cards.controllers.NewGameActionState.java
lib.cards.controllers.NewGameAction.java
lib.cards.controllers.StackMoveAction.java
lib.cards.controllers.StackMoveState.java
lib.cards.models.CardColor.java
lib.cards.models.CardStackId.java
lib.cards.models.CardStack.java
lib.cards.models.CardState.java
lib.cards.models.CardSuit.java
lib.cards.models.CardValue.java
lib.cards.models.Card.java
lib.cards.models.CardsMovedEventHandler.java
lib.cards.models.CardsMovedEventObject.java
lib.cards.models.EmptyTableauPileFilledBy.java
lib.cards.models.EventHandler.java
lib.cards.models.FoundationBaseCard.java
lib.cards.models.FoundationSequence.java
lib.cards.models.Foundation.java
lib.cards.models.FreeCell.java
lib.cards.models.GameEventObject.java
lib.cards.models.GameOverEventHandler.java
lib.cards.models.GameOverEventObject.java
lib.cards.models.GameProperties.java
lib.cards.models.GameState.java
lib.cards.models.Game.java
lib.cards.models.MoveGroupsOfCardsAsAUnit.java
lib.cards.models.NewGameEventHandler.java
lib.cards.models.NumberOfCardsDealtFromStock.java
lib.cards.models.RedealsAllowed.java
lib.cards.models.RestoreGameEventHandler.java
lib.cards.models.ScoreChangedEventHandler.java
lib.cards.models.ScoreChangedEventObject.java
lib.cards.models.StackType.java
lib.cards.models.Stock.java
lib.cards.models.SubStackMovedEventHandler.java
lib.cards.models.SubStackMovedEventObject.java
lib.cards.models.SubStack.java
lib.cards.models.TableauSequence.java
lib.cards.models.TableauType.java
lib.cards.models.Tableau.java
lib.cards.models.Waste.java
lib.cards.utilities.CollectionUtils.java
lib.cards.utilities.CommandImpl.java
lib.cards.utilities.Command.java
lib.cards.utilities.Point.java
lib.cards.utilities.Rect.java
lib.cards.utilities.Size.java
lib.cards.utilities.UndoStack.java
lib.cards.views.CardSprite.java
lib.cards.views.DeckMetrics.java
lib.cards.views.Deck.java
lib.cards.views.GameBoardImpl.java
lib.cards.views.GameBoardMetrics.java
lib.cards.views.GameBoard.java
lib.cards.views.SpriteAddedEventHandler.java
lib.cards.views.SpriteDefaultActionEventHandler.java
lib.cards.views.SpriteEventObject.java
lib.cards.views.SpriteRemovedEventHandler.java
lib.cards.views.SpriteSelectedEventHandler.java
lib.cards.views.Sprite.java
lib.cards.views.StackSprite.java