Package csa.jportal.ai.enhancedAI.enhancedSim

Examples of csa.jportal.ai.enhancedAI.enhancedSim.CardSim


    public static CardSimList onlyAllowedToPlay(CardSimList list, boolean ownTurn)
    {
        CardSimList ret = new CardSimList();
        for (int i = 0; i < list.size(); i++)
        {
            CardSim card = list.getCard(i);
            AIEnhancedCardHints hints = AIEnhancedCardHints.getHints(card);
            boolean notAllowed = false;

            if (    (card.isArtifact()) ||
                    (card.isCreature()) ||
                    (card.isLand()) ||
                    (card.isSorcery()) ||
                    (card.isEnchantment()) )
            {
                if (!ownTurn)
                {
                    continue;
                }
            }
            else if(card.isInstant())
            {
                if (ownTurn)
                {
                    notAllowed = notAllowed || hints.hasHint(HINT_SITUATION_INSTANT, PR_PLAYER_TURN_NOT_ALLOWED);
                }
View Full Code Here


    public static CardSimList onlyAllowedToPlay(CardSimList list, int phase, boolean ownTurn, Vector<EAIAction> stack, boolean isFinalCall)
    {
        CardSimList ret = new CardSimList();
        for (int i = 0; i < list.size(); i++)
        {
            CardSim card = list.getCard(i);
            boolean allowed = isAllowedToPlay(card, phase, ownTurn, stack, isFinalCall);
            if (allowed)
            {
                ret.addCard(card);
            }
View Full Code Here

    public static CardSimList onlyAllowedToActivate(CardSimList list, boolean ownTurn, VirtualMatch vMatch)
    {
        CardSimList ret = new CardSimList();
        for (int i = 0; i < list.size(); i++)
        {
            CardSim card = list.getCard(i);
            AIEnhancedCardHints hints = AIEnhancedCardHints.getHints(card);
            boolean notAllowed = false;
            if (ownTurn)
            {
                notAllowed = notAllowed || hints.hasHint(HINT_SITUATION_ACTIVATION, PR_PLAYER_TURN_NOT_ALLOWED);
View Full Code Here

    public static CardSimList onlyUntappedToActivate(CardSimList list)
    {
        CardSimList ret = new CardSimList();
        for (int i = 0; i < list.size(); i++)
        {
            CardSim card = list.getCard(i);
            if (card.hasTapAbility())
            {
                if (!card.isTapped())
                {
                    if (!card.isSick())
                    {
                        ret.addCard(card);
                    }
                }
            }
View Full Code Here

    public static CardSimList onlyAllowedToActivate(CardSimList list, int phase, boolean ownTurn, VirtualMatch vMatch)
    {
        CardSimList ret = new CardSimList();
        for (int i = 0; i < list.size(); i++)
        {
            CardSim card = list.getCard(i);
            boolean allowed = isAllowedToActivate(card, phase, ownTurn, vMatch);
            if (allowed)
            {
                ret.addCard(card);
            }
View Full Code Here

    public static CardSimList removeNotExtraPlayoutFeaturesPlayersCard(CardSimList list, int player)
    {
        CardSimList ret = new CardSimList();
        for (int i = 0; i < list.size(); i++)
        {
            CardSim card = list.getCard(i);
            if (card.getOwner() == player)
            {
                AIEnhancedCardHints hints = AIEnhancedCardHints.getHints(card);

                if (!hints.hasKey(HintAll.HINT_SITUATION_CARD_PLAYED))
                {
View Full Code Here

    public static CardSimList removeExtraPlayoutFeaturesPlayersCard(CardSimList list, int badOwner)
    {
        CardSimList ret = new CardSimList();
        for (int i = 0; i < list.size(); i++)
        {
            CardSim card = list.getCard(i);
            if (card.getOwner() == badOwner)
            {
                AIEnhancedCardHints hints = AIEnhancedCardHints.getHints(card);

                // do not remove with "bad" features!
                int good = isGoodEffectCard(card, HintAll.HINT_SITUATION_CARD_PLAYED);
View Full Code Here

    public static CardSimList removeRestrictedCards(String key, CardSimList list, int phase, boolean ownTurn, VirtualMatch vMatch)
    {
        CardSimList ret = new CardSimList();
        for (int i = 0; i < list.size(); i++)
        {
            CardSim card = list.getCard(i);
            int player = card.getOwner();
            int opponent = (card.getOwner()+1)%2;
            AIEnhancedCardHints hints = AIEnhancedCardHints.getHints(card);

            if (hints.hasHintType(key, HintAll.HINT_TYPE_PLAY_RESTRICTION))
            {
                if (hints.hasHint(key, HintAll.PR_ONLY_WHEN_OPPONENT_MORE_LANDS))
View Full Code Here

    public static CardSimList reduceActivationEvaluation(CardSimList list, int phase, boolean ownTurn, VirtualMatch vMatch)
    {
        CardSimList ret = new CardSimList();
        for (int i = 0; i < list.size(); i++)
        {
            CardSim card = list.getCard(i);
            boolean allowedNow = isAllowedToActivate(card, phase, ownTurn, vMatch);
            if (!allowedNow) continue;

            boolean recomendedNow = allowedNow;
            if (hasHint(card, HintAll.HINT_SITUATION_ACTIVATION, new HintBundle(PR_JIT_ACTIVATION)))
View Full Code Here

        CardSimList field = vMatch.getBattlefield(E.pNumber);
        // todo cards that generate mana - played from hand

        for(int i=0; i < lands.size(); i++)
        {
            CardSim card = lands.getCard(i);
            if (card.isTapped()) continue;
            ManaItem mana = ManaItem.createManaItem(card);
            mc.addMana(mana);
        }

        for(int i=0; i < field.size(); i++)
        {
            CardSim card = field.getCard(i);

            String m = getManaGeneratingAbilityString(card.getCard());
            if (m.length() == 0) continue;
            if (card.isTapped()) continue;
            if (card.isSick()) continue;

            ManaItem mana = ManaItem.createManaItem(m, card);
            mc.addMana(mana);
        }
        return mc;
View Full Code Here

TOP

Related Classes of csa.jportal.ai.enhancedAI.enhancedSim.CardSim

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.