clue plugin: add beginner anagram clues

Co-authored-by: ConradMelcher <ConradMelcher@users.noreply.github.com>
This commit is contained in:
Adam
2019-04-13 11:56:24 -04:00
parent a2dace962b
commit aafa52c97c
2 changed files with 25 additions and 10 deletions

View File

@@ -465,7 +465,8 @@ public class ClueScrollPlugin extends Plugin
}
}
if (text.startsWith("this anagram reveals who to speak to next:"))
// (This|The) anagram reveals who to speak to next:
if (text.startsWith("anagram reveals who to speak to next:"))
{
return AnagramClue.forText(text);
}

View File

@@ -34,11 +34,11 @@ import net.runelite.api.ObjectID;
import net.runelite.api.TileObject;
import net.runelite.api.coords.WorldPoint;
import static net.runelite.client.plugins.cluescrolls.ClueScrollOverlay.TITLED_CONTENT_COLOR;
import net.runelite.client.plugins.cluescrolls.ClueScrollPlugin;
import static net.runelite.client.plugins.cluescrolls.ClueScrollWorldOverlay.CLICKBOX_BORDER_COLOR;
import static net.runelite.client.plugins.cluescrolls.ClueScrollWorldOverlay.CLICKBOX_FILL_COLOR;
import static net.runelite.client.plugins.cluescrolls.ClueScrollWorldOverlay.CLICKBOX_HOVER_BORDER_COLOR;
import static net.runelite.client.plugins.cluescrolls.ClueScrollWorldOverlay.IMAGE_Z_OFFSET;
import net.runelite.client.plugins.cluescrolls.ClueScrollPlugin;
import net.runelite.client.ui.overlay.OverlayUtil;
import net.runelite.client.ui.overlay.components.LineComponent;
import net.runelite.client.ui.overlay.components.PanelComponent;
@@ -47,6 +47,9 @@ import net.runelite.client.ui.overlay.components.TitleComponent;
@Getter
public class AnagramClue extends ClueScroll implements TextClueScroll, NpcClueScroll, ObjectClueScroll
{
private static final String ANAGRAM_TEXT = "This anagram reveals who to speak to next: ";
private static final String ANAGRAM_TEXT_BEGINNER = "The anagram reveals who to speak to next: ";
private static final Set<AnagramClue> CLUES = ImmutableSet.of(
new AnagramClue("A BAKER", "Baraek", new WorldPoint(3217, 3434, 0), "Varrock square", "5"),
new AnagramClue("A BASIC ANTI POT", "Captain Tobias", new WorldPoint(3026, 3216, 0), "Port Sarim", "6"),
@@ -146,14 +149,23 @@ public class AnagramClue extends ClueScroll implements TextClueScroll, NpcClueSc
new AnagramClue("VEIL VEDA", "Evil Dave", new WorldPoint(3079, 9892, 0), "Doris' basement, Edgeville", "666"),
new AnagramClue("WOO AN EGG KIWI", "Awowogei", ObjectID.AWOWOGEI, new WorldPoint(2802, 2765, 0), "Ape Atoll", "24"),
new AnagramClue("YAWNS GY", "Ysgawyn", new WorldPoint(2340, 3167, 0), "Lletya"),
new AnagramClue("MAJORS LAVA BADS AIR", "Ambassador Alvijar", new WorldPoint(2736, 5351, 1), "Dorgesh-Kaan, NE Middle Level", "2505")
new AnagramClue("MAJORS LAVA BADS AIR", "Ambassador Alvijar", new WorldPoint(2736, 5351, 1), "Dorgesh-Kaan, NE Middle Level", "2505"),
new AnagramClue("AN EARL", "Ranael", new WorldPoint(3315, 3163, 0), "Al Kharid skirt shop"),
new AnagramClue("CARPET AHOY", "Apothecary", new WorldPoint(3195, 3404, 0), "Southwest Varrock"),
new AnagramClue("DISORDER", "Sedridor", new WorldPoint(3102, 9570, 0), "Wizards' Tower basement"),
new AnagramClue("I CORD", "Doric", new WorldPoint(2951, 3450, 0), "North of Falador"),
new AnagramClue("IN BAR", "Brian", new WorldPoint(3026, 3246, 0), "Port Sarim battleaxe shop"),
new AnagramClue("RAIN COVE", "Veronica", new WorldPoint(3110, 3330, 0), "Outside Draynor Manor"),
new AnagramClue("RUG DETER", "Gertrude", new WorldPoint(3151, 3412, 0), "West of Varrock, south of the Cooks' Guild"),
new AnagramClue("SIR SHARE RED", "Hairdresser", new WorldPoint(2944, 3381, 0), "Western Falador"),
new AnagramClue("TAUNT ROOF", "Fortunato", new WorldPoint(3080, 3250, 0), "Draynor Village Market")
);
private String text;
private String npc;
private WorldPoint location;
private String area;
private String answer;
private final String text;
private final String npc;
private final WorldPoint location;
private final String area;
private final String answer;
private int objectId;
private AnagramClue(String text, String npc, WorldPoint location, String area)
@@ -163,7 +175,7 @@ public class AnagramClue extends ClueScroll implements TextClueScroll, NpcClueSc
private AnagramClue(String text, String npc, WorldPoint location, String area, String answer)
{
this.text = "This anagram reveals who to speak to next: " + text;
this.text = text;
this.npc = npc;
this.location = location;
this.area = area;
@@ -239,7 +251,7 @@ public class AnagramClue extends ClueScroll implements TextClueScroll, NpcClueSc
{
for (AnagramClue clue : CLUES)
{
if (clue.text.equalsIgnoreCase(text))
if (text.equalsIgnoreCase(ANAGRAM_TEXT + clue.text) || text.equalsIgnoreCase(ANAGRAM_TEXT_BEGINNER + clue.text))
{
return clue;
}
@@ -248,11 +260,13 @@ public class AnagramClue extends ClueScroll implements TextClueScroll, NpcClueSc
return null;
}
@Override
public String[] getNpcs()
{
return new String[] {npc};
}
@Override
public int[] getObjectIds()
{
return new int[] {objectId};