From f0bff65cf13bfbe14e020354b9af98625fb80a22 Mon Sep 17 00:00:00 2001 From: Jeffrey Phillips Freeman <jeffrey.freeman@syncleus.com> Date: Mon, 19 Mar 2018 18:06:56 -0400 Subject: [PATCH] Fixed bug where cooldown progress wasnt showing correctly. Improved the visual for the cooldownc ommand. --- .../syncleus/aethermud/core/GameManager.java | 18 ++++++++++++++---- .../syncleus/aethermud/player/CoolDown.java | 7 +++++++ .../storage/graphdb/model/CoolDownData.java | 2 +- 3 files changed, 22 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/syncleus/aethermud/core/GameManager.java b/src/main/java/com/syncleus/aethermud/core/GameManager.java index eb3c2e66..83e04fbd 100644 --- a/src/main/java/com/syncleus/aethermud/core/GameManager.java +++ b/src/main/java/com/syncleus/aethermud/core/GameManager.java @@ -669,7 +669,7 @@ public class GameManager { sb.append("["); int numberOfProgressBarNotches = getNumberOfProgressBarNotches(pct); for (int i = 0; i < numberOfProgressBarNotches; i++) { - sb.append("+"); + sb.append("â– "); } for (int i = numberOfProgressBarNotches; i < 10; i++) { sb.append(" "); @@ -688,10 +688,14 @@ public class GameManager { } public String renderCoolDownString(Set<? extends CoolDown> coolDowns) { - Table t = new Table(2, BorderStyle.CLASSIC_COMPATIBLE, + Table t = new Table(5, BorderStyle.CLASSIC_COMPATIBLE, ShownBorders.NONE); - t.setColumnWidth(0, 19, 25); + t.setColumnWidth(0, 13, 13); + t.setColumnWidth(1, 2, 10); + t.setColumnWidth(2, 3, 3); + t.setColumnWidth(3, 2, 10); + t.setColumnWidth(4, 10, 25); // t.setColumnWidth(1, 10, 13); int i = 1; @@ -699,9 +703,15 @@ public class GameManager { int percent = 100 - (int) (((coolDown.getOriginalNumberOfTicks() - coolDown.getNumberOfTicks()) * 100.0f) / coolDown.getOriginalNumberOfTicks()); // 1 tick == .5 seconds. int approxSecondsRemaining = coolDown.getNumberOfTicks() / 2; + int approxSecondsOriginal = coolDown.getOriginalNumberOfTicks() / 2; FriendlyTime friendlyTime = new FriendlyTime(approxSecondsRemaining); + FriendlyTime friendlyTimeOriginal = new FriendlyTime(approxSecondsOriginal); String friendlyFormattedShort = friendlyTime.getFriendlyFormattedShort(); - t.addCell(drawProgressBar(percent) + friendlyFormattedShort); + String friendlyOriginalFormattedShort = friendlyTimeOriginal.getFriendlyFormattedShort(); + t.addCell(drawProgressBar(percent) + " "); + t.addCell(friendlyFormattedShort); + t.addCell(" / " ); + t.addCell(friendlyOriginalFormattedShort + " "); t.addCell(coolDown.getName()); i++; } diff --git a/src/main/java/com/syncleus/aethermud/player/CoolDown.java b/src/main/java/com/syncleus/aethermud/player/CoolDown.java index 0d94a015..4d0ba41e 100644 --- a/src/main/java/com/syncleus/aethermud/player/CoolDown.java +++ b/src/main/java/com/syncleus/aethermud/player/CoolDown.java @@ -37,6 +37,13 @@ public class CoolDown { this.originalNumberOfTicks = numberOfTicks; } + public CoolDown(String name, int numberOfTicks, int originalNumberOfTicks, CoolDownType coolDownType){ + this.name = name; + this.numberOfTicks = numberOfTicks; + this.coolDownType = coolDownType; + this.originalNumberOfTicks = originalNumberOfTicks; + } + public CoolDownType getCoolDownType() { return coolDownType; } diff --git a/src/main/java/com/syncleus/aethermud/storage/graphdb/model/CoolDownData.java b/src/main/java/com/syncleus/aethermud/storage/graphdb/model/CoolDownData.java index b7927aaa..e572babf 100644 --- a/src/main/java/com/syncleus/aethermud/storage/graphdb/model/CoolDownData.java +++ b/src/main/java/com/syncleus/aethermud/storage/graphdb/model/CoolDownData.java @@ -53,7 +53,7 @@ public abstract class CoolDownData extends AbstractInterceptingVertexFrame { } public static CoolDown copyCoolDown(CoolDownData src) { - return new CoolDown(src.getName(), src.getNumberOfTicks(), src.getCoolDownType()); + return new CoolDown(src.getName(), src.getNumberOfTicks(), src.getOriginalNumberOfTicks(), src.getCoolDownType()); } public void decrementTick() { -- GitLab