diff --git a/src/magic/ai/ArtificialScoringSystem.java b/src/magic/ai/ArtificialScoringSystem.java index b19df719a6..d6f7cfaf17 100644 --- a/src/magic/ai/ArtificialScoringSystem.java +++ b/src/magic/ai/ArtificialScoringSystem.java @@ -15,7 +15,8 @@ public class ArtificialScoringSystem { public static final int WIN_GAME_SCORE=100000000; public static final int LOSE_GAME_SCORE=-WIN_GAME_SCORE; public static final int ITEM_ON_STACK_SCORE=-1; - public static final int UNEQUIP_SCORE=-50; + public static final int UNEQUIP_SCORE=-100; + public static final int UNNECESSARY_EQUIP_SCORE=-1000; private static final int LIFE_SCORES[]={0,1000,2000,3000,4000, 4500,5000,5500,6000,6500, 7000,7400,7800,8200,8600, 9000,9200,9400,9600,9800, 10000}; private static final int MAX_LIFE=LIFE_SCORES.length-1; diff --git a/src/magic/model/action/MagicAttachEquipmentAction.java b/src/magic/model/action/MagicAttachEquipmentAction.java index c877ace17d..0f3205499a 100644 --- a/src/magic/model/action/MagicAttachEquipmentAction.java +++ b/src/magic/model/action/MagicAttachEquipmentAction.java @@ -37,7 +37,11 @@ public class MagicAttachEquipmentAction extends MagicAction { score+=oldEquippedCreature.getScore(game); if (oldEquippedCreature.getController()==equipment.getController()) { // Prevent unnecessary equips. - score+=ArtificialScoringSystem.UNEQUIP_SCORE; + if (oldEquippedCreature==creature) { + score+=ArtificialScoringSystem.UNNECESSARY_EQUIP_SCORE; + } else { + score+=ArtificialScoringSystem.UNEQUIP_SCORE; + } } else { score=-score; }