Package mage.game.permanent

Examples of mage.game.permanent.Permanent.addCounters()


                    if (countersToAdd > 0 && newCounter.getCount() == 1) {
                        countersToAdd--;
                    }
                    newCounter.add(countersToAdd);
                    int before = permanent.getCounters().getCount(newCounter.getName());
                    permanent.addCounters(newCounter, game);
                    int amountAdded = permanent.getCounters().getCount(newCounter.getName()) - before;
                    if (informPlayers) {
                        Player player = game.getPlayer(source.getControllerId());
                        if (player != null) {
                            game.informPlayers(player.getName()+" puts "+amountAdded+" "+newCounter.getName().toLowerCase()+" counter on "+permanent.getLogName());
View Full Code Here


        if (permanent != null && permanent.getAttachedTo() != null) {
            Permanent attachedTo = game.getPermanent(permanent.getAttachedTo());
            if (attachedTo != null && counter != null) {
                Counter newCounter = counter.copy();
                newCounter.add(amount.calculate(game, source, this));
                attachedTo.addCounters(newCounter, game);
            }
            return true;
        }
        return false;
    }
View Full Code Here

                if (permanent != null) {
                    if (counter != null) {
                        Counter newCounter = counter.copy();
                        newCounter.add(amount.calculate(game, source, this));
                        int before = permanent.getCounters().getCount(counter.getName());
                        permanent.addCounters(newCounter, game);
                        int numberAdded = permanent.getCounters().getCount(counter.getName()) - before;
                        affectedTargets ++;
                        game.informPlayers(sourceObject.getLogName() +": "+ controller.getName()+ " puts " +
                                numberAdded + " " + counter.getName().toLowerCase() + " counter on " + permanent.getLogName());
                    }
View Full Code Here

        Permanent vessel = game.getPermanent(source.getSourceId());
        Player you = game.getPlayer(source.getControllerId());
        if (vessel != null && you != null) {
            int amount = you.getLife();
            if (amount > 0) {
                vessel.addCounters(CounterType.CHARGE.createInstance(amount), game);
                return true;
            }
        }
        return true;
    }
View Full Code Here

            else{
                counter = CounterType.CHARGE.createInstance(amount.calculate(game, source, this));
            }
            if (counter != null) {
              
                permanent.addCounters(counter, game);
               
                Player player = game.getPlayer(source.getControllerId());
                if (player != null) {
                    game.informPlayers(player.getName()+ " puts " + counter.getCount() + " " + counter.getName() + " counter on " + permanent.getName());
                }
View Full Code Here

    @Override
    public boolean replaceEvent(GameEvent event, Ability source, Game game) {
        Permanent permanent = game.getPermanent(event.getTargetId());
        if (permanent != null) {
            permanent.addCounters(CounterType.P1P1.createInstance(), game);
        }
        used = true;
        return false;
    }
View Full Code Here

    @Override
    public boolean apply(Game game, Ability source) {       
        Player controller = game.getPlayer(source.getControllerId());
        Permanent sourcePermanent = game.getPermanent(source.getSourceId());
        if (sourcePermanent != null && controller != null) {
            sourcePermanent.addCounters(CounterType.DESPAIR.createInstance(), game);
        }
        if (sourcePermanent == null) {
            sourcePermanent = (Permanent) game.getLastKnownInformation(source.getSourceId(), Zone.BATTLEFIELD);
        }
        if (sourcePermanent != null && controller != null) {           
View Full Code Here

        if (target == null) {
            return false;
        }
        for (Counter counter : target.getCounters().values()) {
            Counter newCounter = new Counter(counter.getName(), counter.getCount());
            target.addCounters(newCounter, game);
        }
        return true;
    }

    @Override
View Full Code Here

            if (obj != null && obj instanceof SpellAbility) {
                // delete to prevent using it again if put into battlefield from other effect
                setValue(mage.abilities.effects.EntersBattlefieldEffect.SOURCE_CAST_SPELL_ABILITY, null);
                int amount = ((SpellAbility)obj).getManaCostsToPay().getX();
                if (amount > 0) {
                    permanent.addCounters(CounterType.P1P1.createInstance(amount), game);
                }
            }
        }
        return true;
    }
View Full Code Here

        int amountCounters = fromPermanent.getCounters().getCount(CounterType.P1P1);
        if (amountCounters > 0) {
            Player controller = game.getPlayer(source.getControllerId());
            if (controller.getAmount(0, amountCounters, "How many counters do you want to move?", game) > 0){
                fromPermanent.getCounters().removeCounter(CounterType.P1P1, amountCounters);
                toPermanent.addCounters(CounterType.P1P1.createInstance(amountCounters), game);
            }
        }
        return true;
    }
}
View Full Code Here

TOP
Copyright © 2018 www.massapi.com. 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.