From 95512135d9c57a4a87c0ace2c50a058e396fcee7 Mon Sep 17 00:00:00 2001 From: "marcins78@gmail.com" Date: Sun, 20 Nov 2011 15:58:06 +0000 Subject: [PATCH] Adding Resistance to FP chars. --- .../lotro/game/state/EventSerializer.java | 9 ++++-- .../lotro/logic/timing/GameStats.java | 30 ++++++++++++++----- .../gemp-lotr-web/src/main/webapp/game.html | 8 +++++ .../src/main/webapp/js/gameAnimations.js | 9 ++++-- .../src/main/webapp/js/gameUi.js | 5 ++++ 5 files changed, 48 insertions(+), 13 deletions(-) diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/game/state/EventSerializer.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/game/state/EventSerializer.java index e213e045a..1cf46fa9a 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/game/state/EventSerializer.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/game/state/EventSerializer.java @@ -90,14 +90,17 @@ public class EventSerializer { } Map charVitalities = gameStats.getCharVitalities(); - Map charThirdStats = gameStats.getThirdStats(); + Map charSiteNumbers = gameStats.getSiteNumbers(); + Map charResistances = gameStats.getCharResistances(); StringBuilder charStr = new StringBuilder(); for (Map.Entry characters : gameStats.getCharStrengths().entrySet()) { Integer charCardId = characters.getKey(); charStr.append("," + charCardId + "=" + characters.getValue() + "|" + charVitalities.get(charCardId)); - if (charThirdStats.containsKey(charCardId)) - charStr.append("|" + charThirdStats.get(charCardId)); + if (charSiteNumbers.containsKey(charCardId)) + charStr.append("|" + charSiteNumbers.get(charCardId)); + else if (charResistances.containsKey(charCardId)) + charStr.append("|R" + charResistances.get(charCardId)); } if (charStr.length() > 0) charStr.delete(0, 1); diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/GameStats.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/GameStats.java index 1e82e62e9..5ab6f70e1 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/GameStats.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/GameStats.java @@ -31,7 +31,8 @@ public class GameStats { private Map _threats = new HashMap(); private Map _charStrengths = new HashMap(); private Map _charVitalities = new HashMap(); - private Map _thirdStats = new HashMap(); + private Map _siteNumbers = new HashMap(); + private Map _charResistances = new HashMap(); /** * @return If the stats have changed @@ -122,12 +123,15 @@ public class GameStats { Map newCharStrengths = new HashMap(); Map newCharVitalities = new HashMap(); - Map newThirdStats = new HashMap(); + Map newSiteNumbers = new HashMap(); + Map newCharResistances = new HashMap(); for (PhysicalCard character : Filters.filterActive(game.getGameState(), game.getModifiersQuerying(), Filters.or(CardType.COMPANION, CardType.ALLY, CardType.MINION))) { newCharStrengths.put(character.getCardId(), game.getModifiersQuerying().getStrength(game.getGameState(), character)); newCharVitalities.put(character.getCardId(), game.getModifiersQuerying().getVitality(game.getGameState(), character)); if (character.getBlueprint().getCardType() == CardType.MINION) - newThirdStats.put(character.getCardId(), game.getModifiersQuerying().getMinionSiteNumber(game.getGameState(), character)); + newSiteNumbers.put(character.getCardId(), game.getModifiersQuerying().getMinionSiteNumber(game.getGameState(), character)); + else + newCharResistances.put(character.getCardId(), game.getModifiersQuerying().getResistance(game.getGameState(), character)); } if (!newCharStrengths.equals(_charStrengths)) { @@ -140,9 +144,14 @@ public class GameStats { _charVitalities = newCharVitalities; } - if (!newThirdStats.equals(_thirdStats)) { + if (!newSiteNumbers.equals(_siteNumbers)) { changed = true; - _thirdStats = newThirdStats; + _siteNumbers = newSiteNumbers; + } + + if (!newCharResistances.equals(_charResistances)) { + changed = true; + _charResistances = newCharResistances; } Map newThreats = new HashMap(); @@ -211,8 +220,12 @@ public class GameStats { return _charVitalities; } - public Map getThirdStats() { - return _thirdStats; + public Map getSiteNumbers() { + return _siteNumbers; + } + + public Map getCharResistances() { + return _charResistances; } public GameStats makeACopy() { @@ -230,7 +243,8 @@ public class GameStats { copy._threats = _threats; copy._charStrengths = _charStrengths; copy._charVitalities = _charVitalities; - copy._thirdStats = _thirdStats; + copy._siteNumbers = _siteNumbers; + copy._charResistances = _charResistances; return copy; } } diff --git a/gemp-lotr/gemp-lotr-web/src/main/webapp/game.html b/gemp-lotr/gemp-lotr-web/src/main/webapp/game.html index 956bfbc47..50af8ca8a 100644 --- a/gemp-lotr/gemp-lotr-web/src/main/webapp/game.html +++ b/gemp-lotr/gemp-lotr-web/src/main/webapp/game.html @@ -112,6 +112,14 @@ body { color: #ffffff; } +.cardResistance { + text-align: center; + background-color: #16151a; + opacity: 1; + font-weight: bolder; + color: #ffffff; +} + .selectableCard > .borderOverlay { border-color: #00af00; cursor: pointer; diff --git a/gemp-lotr/gemp-lotr-web/src/main/webapp/js/gameAnimations.js b/gemp-lotr/gemp-lotr-web/src/main/webapp/js/gameAnimations.js index dda5f1441..2d9e5156c 100644 --- a/gemp-lotr/gemp-lotr-web/src/main/webapp/js/gameAnimations.js +++ b/gemp-lotr/gemp-lotr-web/src/main/webapp/js/gameAnimations.js @@ -713,6 +713,7 @@ var GameAnimations = Class.extend({ $(".cardStrength").css({display: "none"}); $(".cardVitality").css({display: "none"}); $(".cardSiteNumber").css({display: "none"}); + $(".cardResistance").css({display: "none"}); var charStats = element.getAttribute("charStats"); if (charStats != null) { @@ -723,8 +724,12 @@ var GameAnimations = Class.extend({ var cardStatArr = cardStats[1].split("|"); $(".cardStrength", cardDiv).html(cardStatArr[0]).css({display: ""}); $(".cardVitality", cardDiv).html(cardStatArr[1]).css({display: ""}); - if (cardStatArr.length > 2) - $(".cardSiteNumber", cardDiv).html(cardStatArr[2]).css({display: ""}); + if (cardStatArr.length > 2) { + if (cardStatArr[2].indexOf("R") == 0) + $(".cardResistance", cardDiv).html(cardStatArr[2].substring(1)).css({display: ""}); + else + $(".cardSiteNumber", cardDiv).html(cardStatArr[2]).css({display: ""}); + } } } diff --git a/gemp-lotr/gemp-lotr-web/src/main/webapp/js/gameUi.js b/gemp-lotr/gemp-lotr-web/src/main/webapp/js/gameUi.js index be8a21b4b..8d5927acc 100644 --- a/gemp-lotr/gemp-lotr-web/src/main/webapp/js/gameUi.js +++ b/gemp-lotr/gemp-lotr-web/src/main/webapp/js/gameUi.js @@ -1042,6 +1042,10 @@ var GempLotrGameUI = Class.extend({ cardSiteNumberDiv.css({display: "none"}); tokenOverlay.append(cardSiteNumberDiv); + var cardResistanceDiv = $("
"); + cardResistanceDiv.css({display: "none"}); + tokenOverlay.append(cardResistanceDiv); + cardDiv.data("card", card); var sizeListeners = new Array(); @@ -1062,6 +1066,7 @@ var GempLotrGameUI = Class.extend({ $(".cardStrength", cardElem).css({position: "absolute", "border-radius": borderRadius, "font-size": fontPerc, left: x + "px", top: strengthY + "px", width: size, height: size}); $(".cardVitality", cardElem).css({position: "absolute", "border-radius": borderRadius, "font-size": fontPerc, left: x + "px", top: vitalityY + "px", width: size, height: size}); $(".cardSiteNumber", cardElem).css({position: "absolute", "border-radius": borderRadius, "font-size": fontPerc, left: x + "px", top: minionSiteNumberY + "px", width: size, height: size}); + $(".cardResistance", cardElem).css({position: "absolute", "border-radius": borderRadius, "font-size": fontPerc, left: x + "px", top: minionSiteNumberY + "px", width: size, height: size}); } };