package mage.player.ai.ma;
import mage.abilities.Ability;
import mage.abilities.keyword.*;
import java.util.HashMap;
import java.util.Map;
/**
* @author nantuko
*/
public final class MagicAbility {
private static Map<String, Integer> scores = new HashMap<String, Integer>() {{
put(DeathtouchAbility.getInstance().getRule(), 60);
put(DefenderAbility.getInstance().getRule(), -100);
put(DoubleStrikeAbility.getInstance().getRule(), 100);
put(DoubleStrikeAbility.getInstance().getRule(), 100);
put(new ExaltedAbility().getRule(), 10);
put(FirstStrikeAbility.getInstance().getRule(), 50);
put(FlashAbility.getInstance().getRule(), 0);
put(FlyingAbility.getInstance().getRule(), 50);
put(new ForestwalkAbility().getRule(), 10);
put(HasteAbility.getInstance().getRule(), 0);
put(IndestructibleAbility.getInstance().getRule(), 150);
put(InfectAbility.getInstance().getRule(), 60);
put(IntimidateAbility.getInstance().getRule(), 50);
put(new IslandwalkAbility().getRule(), 10);
put(new MountainwalkAbility().getRule(), 10);
put(new PlainswalkAbility().getRule(), 10);
put(ReachAbility.getInstance().getRule(), 20);
put(ShroudAbility.getInstance().getRule(), 60);
put(new SwampwalkAbility().getRule(), 10);
put(TrampleAbility.getInstance().getRule(), 30);
put(new CantBeBlockedSourceAbility().getRule(), 100);
put(VigilanceAbility.getInstance().getRule(), 20);
put(WitherAbility.getInstance().getRule(), 30);
// gatecrash
put(new EvolveAbility().getRule(), 50);
put(new ExtortAbility().getRule(), 30);
}};
public static int getAbilityScore(Ability ability) {
if (!scores.containsKey(ability.getRule())) {
//System.err.println("Couldn't find ability score: " + ability.getRule());
//TODO: add handling protection from ..., levelup, kicker, etc. abilities
return 0;
}
return scores.get(ability.getRule());
}
}