Add bonus action tracker
This commit is contained in:
@@ -223,11 +223,22 @@ public interface EasyGiantsFoundryConfig extends Config {
|
||||
return true;
|
||||
}
|
||||
|
||||
@ConfigItem(
|
||||
keyName = "bonusActions",
|
||||
name = "Bonus Actions",
|
||||
description = "Toggle for Bonus actions text",
|
||||
position = 5,
|
||||
section = infoPanelList
|
||||
)
|
||||
default boolean drawBonusActions() {
|
||||
return true;
|
||||
}
|
||||
|
||||
@ConfigItem(
|
||||
keyName = "shopPoints",
|
||||
name = "Reputation",
|
||||
description = "Toggle for reputation text",
|
||||
position = 5,
|
||||
position = 6,
|
||||
section = infoPanelList
|
||||
)
|
||||
default boolean drawShopPoints()
|
||||
|
||||
@@ -301,6 +301,8 @@ public class EasyGiantsFoundryPlugin extends Plugin
|
||||
return;
|
||||
}
|
||||
|
||||
state.addBonusActionReceived();
|
||||
|
||||
if (config.bonusNotification())
|
||||
{
|
||||
notifier.notify("Bonus - Click tool");
|
||||
|
||||
@@ -50,6 +50,9 @@ public class EasyGiantsFoundryState
|
||||
@Getter
|
||||
private boolean enabled;
|
||||
|
||||
@Getter
|
||||
private int bonusActionsReceived = 0;
|
||||
|
||||
private final List<Stage> stages = new ArrayList<>();
|
||||
private double heatRangeRatio = 0;
|
||||
|
||||
@@ -57,6 +60,7 @@ public class EasyGiantsFoundryState
|
||||
{
|
||||
stages.clear();
|
||||
heatRangeRatio = 0;
|
||||
bonusActionsReceived = 0;
|
||||
}
|
||||
|
||||
public int getHeatAmount()
|
||||
@@ -204,4 +208,18 @@ public class EasyGiantsFoundryState
|
||||
else
|
||||
return 0;
|
||||
}
|
||||
|
||||
public int getBonusActionsExpected()
|
||||
{
|
||||
if (getStages().size() >= 6) {
|
||||
return 3;
|
||||
}
|
||||
|
||||
return 2;
|
||||
}
|
||||
|
||||
public void addBonusActionReceived()
|
||||
{
|
||||
++bonusActionsReceived;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -50,6 +50,16 @@ public class FoundryOverlay2D extends OverlayPanel
|
||||
return ColorScheme.PROGRESS_ERROR_COLOR;
|
||||
}
|
||||
|
||||
private Color getBonusActionsColor(int received, int expected)
|
||||
{
|
||||
if (received >= expected)
|
||||
{
|
||||
return ColorScheme.PROGRESS_COMPLETE_COLOR;
|
||||
}
|
||||
|
||||
return ColorScheme.PROGRESS_INPROGRESS_COLOR;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Dimension render(Graphics2D graphics)
|
||||
{
|
||||
@@ -96,6 +106,12 @@ public class FoundryOverlay2D extends OverlayPanel
|
||||
LineComponent.builder().left("Heat left").right(heatLeft + "").rightColor(getHeatColor(actionsLeft, heatLeft)).build()
|
||||
);
|
||||
}
|
||||
if (config.drawBonusActions())
|
||||
{
|
||||
panelComponent.getChildren().add(
|
||||
LineComponent.builder().left("Bonus actions").right(state.getBonusActionsReceived() + "/" + state.getBonusActionsExpected()).rightColor(getBonusActionsColor(state.getBonusActionsReceived(), state.getBonusActionsExpected())).build()
|
||||
);
|
||||
}
|
||||
}
|
||||
//
|
||||
// int points = plugin.getPointsTracker().getShopPoints();
|
||||
|
||||
Reference in New Issue
Block a user