Add config options to customize colors
This commit is contained in:
@@ -1,9 +1,11 @@
|
|||||||
package com.toofifty.easygiantsfoundry;
|
package com.toofifty.easygiantsfoundry;
|
||||||
|
|
||||||
|
import java.awt.Color;
|
||||||
import net.runelite.client.config.Config;
|
import net.runelite.client.config.Config;
|
||||||
import net.runelite.client.config.ConfigGroup;
|
import net.runelite.client.config.ConfigGroup;
|
||||||
import net.runelite.client.config.ConfigItem;
|
import net.runelite.client.config.ConfigItem;
|
||||||
import net.runelite.client.config.ConfigSection;
|
import net.runelite.client.config.ConfigSection;
|
||||||
|
import net.runelite.client.ui.ColorScheme;
|
||||||
|
|
||||||
@ConfigGroup(EasyGiantsFoundryConfig.GROUP)
|
@ConfigGroup(EasyGiantsFoundryConfig.GROUP)
|
||||||
public interface EasyGiantsFoundryConfig extends Config {
|
public interface EasyGiantsFoundryConfig extends Config {
|
||||||
@@ -162,7 +164,7 @@ public interface EasyGiantsFoundryConfig extends Config {
|
|||||||
@ConfigSection(
|
@ConfigSection(
|
||||||
name = "Info Panel",
|
name = "Info Panel",
|
||||||
description = "Settings for the Info Panel overlay",
|
description = "Settings for the Info Panel overlay",
|
||||||
position = 1
|
position = 2
|
||||||
)
|
)
|
||||||
String infoPanelList = "infoPanelList";
|
String infoPanelList = "infoPanelList";
|
||||||
|
|
||||||
@@ -232,4 +234,97 @@ public interface EasyGiantsFoundryConfig extends Config {
|
|||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ConfigSection(
|
||||||
|
name = "Colour",
|
||||||
|
description = "Colours",
|
||||||
|
position = 3
|
||||||
|
)
|
||||||
|
String colourList = "colourList";
|
||||||
|
|
||||||
|
@ConfigItem(
|
||||||
|
keyName = "mouldText",
|
||||||
|
name = "Mould Text",
|
||||||
|
description = "Colour for optimal mould text",
|
||||||
|
position = 0,
|
||||||
|
section = colourList
|
||||||
|
)
|
||||||
|
default Color mouldTextColour()
|
||||||
|
{
|
||||||
|
return new Color(0xdc10d);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ConfigItem(
|
||||||
|
keyName = "generalColour",
|
||||||
|
name = "General",
|
||||||
|
description = "Colour for highlighting objects/npcs in general",
|
||||||
|
position = 1,
|
||||||
|
section = colourList
|
||||||
|
)
|
||||||
|
default Color generalHighlight()
|
||||||
|
{
|
||||||
|
return Color.CYAN;
|
||||||
|
}
|
||||||
|
|
||||||
|
@ConfigItem(
|
||||||
|
keyName = "lavaWaterColour",
|
||||||
|
name = "Lava/Waterfall",
|
||||||
|
description = "Colour for highlighting lava/waterfall",
|
||||||
|
position = 2,
|
||||||
|
section = colourList
|
||||||
|
)
|
||||||
|
default Color lavaWaterfallColour()
|
||||||
|
{
|
||||||
|
return ColorScheme.PROGRESS_COMPLETE_COLOR;
|
||||||
|
}
|
||||||
|
|
||||||
|
@ConfigItem(
|
||||||
|
keyName = "toolGood",
|
||||||
|
name = "Tool Good",
|
||||||
|
description = "Colour for highlighting current tool when they are usable",
|
||||||
|
position = 3,
|
||||||
|
section = colourList
|
||||||
|
)
|
||||||
|
default Color toolGood()
|
||||||
|
{
|
||||||
|
return ColorScheme.PROGRESS_COMPLETE_COLOR;
|
||||||
|
}
|
||||||
|
|
||||||
|
@ConfigItem(
|
||||||
|
keyName = "toolBad",
|
||||||
|
name = "Tool Bad",
|
||||||
|
description = "Colour for highlighting current tool when they are not usable",
|
||||||
|
position = 4,
|
||||||
|
section = colourList
|
||||||
|
)
|
||||||
|
default Color toolBad()
|
||||||
|
{
|
||||||
|
return ColorScheme.PROGRESS_ERROR_COLOR;
|
||||||
|
}
|
||||||
|
|
||||||
|
@ConfigItem(
|
||||||
|
keyName = "toolCaution",
|
||||||
|
name = "Tool Caution",
|
||||||
|
description = "Colour for highlighting current tool when they are about to be not usable",
|
||||||
|
position = 5,
|
||||||
|
section = colourList
|
||||||
|
)
|
||||||
|
default Color toolCaution()
|
||||||
|
{
|
||||||
|
return ColorScheme.PROGRESS_INPROGRESS_COLOR;
|
||||||
|
}
|
||||||
|
|
||||||
|
@ConfigItem(
|
||||||
|
keyName = "toolBonus",
|
||||||
|
name = "Tool Bonus",
|
||||||
|
description = "Colour for highlighting current tool when they have a bonus to click on",
|
||||||
|
position = 6,
|
||||||
|
section = colourList
|
||||||
|
)
|
||||||
|
default Color toolBonus()
|
||||||
|
{
|
||||||
|
return Color.CYAN;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,18 +2,19 @@ package com.toofifty.easygiantsfoundry;
|
|||||||
|
|
||||||
import com.toofifty.easygiantsfoundry.enums.Heat;
|
import com.toofifty.easygiantsfoundry.enums.Heat;
|
||||||
import com.toofifty.easygiantsfoundry.enums.Stage;
|
import com.toofifty.easygiantsfoundry.enums.Stage;
|
||||||
|
import java.awt.Color;
|
||||||
|
import java.awt.Dimension;
|
||||||
|
import java.awt.Graphics2D;
|
||||||
|
import java.awt.Shape;
|
||||||
|
import javax.inject.Inject;
|
||||||
import net.runelite.api.Client;
|
import net.runelite.api.Client;
|
||||||
import net.runelite.api.GameObject;
|
import net.runelite.api.GameObject;
|
||||||
import net.runelite.api.NPC;
|
import net.runelite.api.NPC;
|
||||||
import net.runelite.api.Point;
|
import net.runelite.api.Point;
|
||||||
import net.runelite.api.widgets.Widget;
|
import net.runelite.api.widgets.Widget;
|
||||||
import net.runelite.client.ui.ColorScheme;
|
|
||||||
import net.runelite.client.ui.overlay.Overlay;
|
import net.runelite.client.ui.overlay.Overlay;
|
||||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||||
|
|
||||||
import javax.inject.Inject;
|
|
||||||
import java.awt.*;
|
|
||||||
|
|
||||||
public class FoundryOverlay3D extends Overlay {
|
public class FoundryOverlay3D extends Overlay {
|
||||||
|
|
||||||
private static final int HAND_IN_WIDGET = 49414221;
|
private static final int HAND_IN_WIDGET = 49414221;
|
||||||
@@ -47,22 +48,22 @@ public class FoundryOverlay3D extends Overlay {
|
|||||||
{
|
{
|
||||||
if (stage.getHeat() != heat)
|
if (stage.getHeat() != heat)
|
||||||
{
|
{
|
||||||
return ColorScheme.PROGRESS_ERROR_COLOR;
|
return config.toolBad();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (BonusWidget.isActive(client))
|
if (BonusWidget.isActive(client))
|
||||||
{
|
{
|
||||||
return Color.CYAN;
|
return config.toolBonus();
|
||||||
}
|
}
|
||||||
|
|
||||||
int actionsLeft = helper.getActionsLeftInStage();
|
int actionsLeft = helper.getActionsLeftInStage();
|
||||||
int heatLeft = helper.getActionsForHeatLevel();
|
int heatLeft = helper.getActionsForHeatLevel();
|
||||||
if (actionsLeft <= 1 || heatLeft <= 1)
|
if (actionsLeft <= 1 || heatLeft <= 1)
|
||||||
{
|
{
|
||||||
return ColorScheme.PROGRESS_INPROGRESS_COLOR;
|
return config.toolCaution();
|
||||||
}
|
}
|
||||||
|
|
||||||
return ColorScheme.PROGRESS_COMPLETE_COLOR;
|
return config.toolGood();
|
||||||
}
|
}
|
||||||
|
|
||||||
private GameObject getStageObject(Stage stage)
|
private GameObject getStageObject(Stage stage)
|
||||||
@@ -153,7 +154,7 @@ public class FoundryOverlay3D extends Overlay {
|
|||||||
if (shape != null)
|
if (shape != null)
|
||||||
{
|
{
|
||||||
Point mousePosition = client.getMouseCanvasPosition();
|
Point mousePosition = client.getMouseCanvasPosition();
|
||||||
Color color = ColorScheme.PROGRESS_COMPLETE_COLOR;
|
Color color = config.lavaWaterfallColour();
|
||||||
if (shape.contains(mousePosition.getX(), mousePosition.getY()))
|
if (shape.contains(mousePosition.getX(), mousePosition.getY()))
|
||||||
{
|
{
|
||||||
graphics.setColor(color.darker());
|
graphics.setColor(color.darker());
|
||||||
@@ -181,7 +182,7 @@ public class FoundryOverlay3D extends Overlay {
|
|||||||
Shape shape = crucible.getConvexHull();
|
Shape shape = crucible.getConvexHull();
|
||||||
if (shape != null)
|
if (shape != null)
|
||||||
{
|
{
|
||||||
Color color = Color.CYAN;
|
Color color = config.generalHighlight();
|
||||||
graphics.setColor(color);
|
graphics.setColor(color);
|
||||||
graphics.draw(shape);
|
graphics.draw(shape);
|
||||||
graphics.setColor(new Color(color.getRed(), color.getGreen(), color.getBlue(), 20));
|
graphics.setColor(new Color(color.getRed(), color.getGreen(), color.getBlue(), 20));
|
||||||
@@ -201,7 +202,7 @@ public class FoundryOverlay3D extends Overlay {
|
|||||||
Shape shape = mouldJig.getConvexHull();
|
Shape shape = mouldJig.getConvexHull();
|
||||||
if (shape != null)
|
if (shape != null)
|
||||||
{
|
{
|
||||||
Color color = Color.CYAN;
|
Color color = config.generalHighlight();
|
||||||
graphics.setColor(color);
|
graphics.setColor(color);
|
||||||
graphics.draw(shape);
|
graphics.draw(shape);
|
||||||
graphics.setColor(new Color(color.getRed(), color.getGreen(), color.getBlue(), 20));
|
graphics.setColor(new Color(color.getRed(), color.getGreen(), color.getBlue(), 20));
|
||||||
@@ -217,7 +218,7 @@ public class FoundryOverlay3D extends Overlay {
|
|||||||
Shape shape = kovac.getConvexHull();
|
Shape shape = kovac.getConvexHull();
|
||||||
if (shape != null)
|
if (shape != null)
|
||||||
{
|
{
|
||||||
Color color = Color.CYAN;
|
Color color = config.generalHighlight();
|
||||||
graphics.setColor(color);
|
graphics.setColor(color);
|
||||||
graphics.draw(shape);
|
graphics.draw(shape);
|
||||||
graphics.setColor(new Color(color.getRed(), color.getGreen(), color.getBlue(), 20));
|
graphics.setColor(new Color(color.getRed(), color.getGreen(), color.getBlue(), 20));
|
||||||
|
|||||||
@@ -2,15 +2,14 @@ package com.toofifty.easygiantsfoundry;
|
|||||||
|
|
||||||
import com.toofifty.easygiantsfoundry.enums.CommissionType;
|
import com.toofifty.easygiantsfoundry.enums.CommissionType;
|
||||||
import com.toofifty.easygiantsfoundry.enums.Mould;
|
import com.toofifty.easygiantsfoundry.enums.Mould;
|
||||||
|
import java.util.LinkedHashMap;
|
||||||
|
import java.util.Map;
|
||||||
|
import javax.inject.Inject;
|
||||||
import net.runelite.api.Client;
|
import net.runelite.api.Client;
|
||||||
import net.runelite.api.ScriptID;
|
import net.runelite.api.ScriptID;
|
||||||
import net.runelite.api.widgets.Widget;
|
import net.runelite.api.widgets.Widget;
|
||||||
import net.runelite.client.callback.ClientThread;
|
import net.runelite.client.callback.ClientThread;
|
||||||
|
|
||||||
import javax.inject.Inject;
|
|
||||||
import java.util.LinkedHashMap;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
public class MouldHelper
|
public class MouldHelper
|
||||||
{
|
{
|
||||||
static final int MOULD_LIST_PARENT = 47054857;
|
static final int MOULD_LIST_PARENT = 47054857;
|
||||||
@@ -29,6 +28,9 @@ public class MouldHelper
|
|||||||
@Inject
|
@Inject
|
||||||
private ClientThread clientThread;
|
private ClientThread clientThread;
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
private EasyGiantsFoundryConfig config;
|
||||||
|
|
||||||
public void selectBest(int scriptId)
|
public void selectBest(int scriptId)
|
||||||
{
|
{
|
||||||
Widget parent = client.getWidget(MOULD_LIST_PARENT);
|
Widget parent = client.getWidget(MOULD_LIST_PARENT);
|
||||||
@@ -52,7 +54,7 @@ public class MouldHelper
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (bestWidget != null) {
|
if (bestWidget != null) {
|
||||||
bestWidget.setTextColor(GREEN);
|
bestWidget.setTextColor(config.mouldTextColour().getRGB());
|
||||||
}
|
}
|
||||||
|
|
||||||
if (scriptId == DRAW_MOULD_LIST_SCRIPT || scriptId == REDRAW_MOULD_LIST_SCRIPT)
|
if (scriptId == DRAW_MOULD_LIST_SCRIPT || scriptId == REDRAW_MOULD_LIST_SCRIPT)
|
||||||
|
|||||||
Reference in New Issue
Block a user