This commit is contained in:
2025-11-22 15:31:10 +02:00
parent e555d5a114
commit 6faff7a032
4 changed files with 221 additions and 22 deletions

View File

@@ -4,6 +4,7 @@ import lombok.Getter;
import net.runelite.api.NPC;
import net.runelite.api.TileObject;
import net.runelite.api.coords.WorldPoint;
import net.runelite.api.widgets.Widget;
import java.awt.*;
import java.util.Optional;
@@ -16,27 +17,33 @@ public class EasyGOTRHighlightTarget {
private final TileObject tileObject;
private final NPC npc;
private final WorldPoint worldPoint;
private final Widget widget;
private final Color color;
private final String label;
private EasyGOTRHighlightTarget(TileObject tileObject, NPC npc, WorldPoint worldPoint, Color color, String label) {
private EasyGOTRHighlightTarget(TileObject tileObject, NPC npc, WorldPoint worldPoint, Widget widget, Color color, String label) {
this.tileObject = tileObject;
this.npc = npc;
this.worldPoint = worldPoint;
this.widget = widget;
this.color = color;
this.label = label;
}
public static EasyGOTRHighlightTarget forTileObject(TileObject tileObject, Color color, String label) {
return new EasyGOTRHighlightTarget(tileObject, null, null, color, label);
return new EasyGOTRHighlightTarget(tileObject, null, null, null, color, label);
}
public static EasyGOTRHighlightTarget forNpc(NPC npc, Color color, String label) {
return new EasyGOTRHighlightTarget(null, npc, null, color, label);
return new EasyGOTRHighlightTarget(null, npc, null, null, color, label);
}
public static EasyGOTRHighlightTarget forWorldPoint(WorldPoint worldPoint, Color color, String label) {
return new EasyGOTRHighlightTarget(null, null, worldPoint, color, label);
return new EasyGOTRHighlightTarget(null, null, worldPoint, null, color, label);
}
public static EasyGOTRHighlightTarget forWidget(Widget widget, Color color, String label) {
return new EasyGOTRHighlightTarget(null, null, null, widget, color, label);
}
public Optional<TileObject> getTileObjectOptional() {
@@ -51,6 +58,10 @@ public class EasyGOTRHighlightTarget {
return Optional.ofNullable(worldPoint);
}
public Optional<Widget> getWidgetOptional() {
return Optional.ofNullable(widget);
}
public Color getColorOrDefault(Color defaultColor) {
return color != null ? color : defaultColor;
}