diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/FarmingPatchPanel.java b/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/FarmingPatchPanel.java index f2fc12b7a6..13d40259d0 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/FarmingPatchPanel.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/FarmingPatchPanel.java @@ -25,6 +25,7 @@ */ package net.runelite.client.plugins.farmingtracker; +import com.google.common.base.Strings; import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; @@ -67,7 +68,7 @@ class FarmingPatchPanel extends JPanel infoPanel.setBorder(new EmptyBorder(4, 4, 4, 0)); final JLabel location = new JShadowedLabel(patch.getRegion().getName() - + (showFullTitle() ? " (" + patch.getName() + ")" : "")); + + (Strings.isNullOrEmpty(patch.getName()) ? "" : " (" + patch.getName() + ")")); location.setFont(FontManager.getRunescapeSmallFont()); location.setForeground(Color.WHITE); @@ -83,30 +84,4 @@ class FarmingPatchPanel extends JPanel add(topContainer, BorderLayout.NORTH); add(progress, BorderLayout.SOUTH); } - - /** - * This determines if the label should display location and type, ex: - * It makes sense to display: - * Catherby (North) <-- for allotment - * but not so much for herbs: - * Troll Stronghold - * as there are no other herb patches in that region. - */ - private boolean showFullTitle() - { - switch (patch.getImplementation()) - { - case FLOWER: - case HOPS: - case BUSH: - case FRUIT_TREE: - case CALQUAT: - case SPIRIT_TREE: - case TREE: - case HERB: - return false; - default: - return true; - } - } } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/FarmingTrackerPanel.java b/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/FarmingTrackerPanel.java index 77eed36352..0bd92d6838 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/FarmingTrackerPanel.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/FarmingTrackerPanel.java @@ -25,6 +25,7 @@ */ package net.runelite.client.plugins.farmingtracker; +import com.google.common.base.Strings; import java.awt.BorderLayout; import java.awt.Dimension; import java.awt.GridBagConstraints; @@ -124,15 +125,20 @@ class FarmingTrackerPanel extends PluginPanel FarmingPatchPanel p = new FarmingPatchPanel(patch); /* Show labels to subdivide tabs into sections */ - if ((tab == Tab.SPECIAL - && patch.getImplementation().ordinal() > 2 - && patch.getImplementation() != lastImpl) - || (tab == Tab.TREE - && patch.getImplementation().ordinal() > 9 - && patch.getImplementation() != lastImpl)) + if (patch.getImplementation() != lastImpl && !Strings.isNullOrEmpty(patch.getImplementation().getName())) { JLabel groupLabel = new JLabel(patch.getImplementation().getName()); - groupLabel.setBorder(new EmptyBorder(15, 0, 0, 0)); + + if (first) + { + first = false; + groupLabel.setBorder(new EmptyBorder(4, 0, 0, 0)); + } + else + { + groupLabel.setBorder(new EmptyBorder(15, 0, 0, 0)); + } + groupLabel.setFont(FontManager.getRunescapeSmallFont()); container.add(groupLabel, c); @@ -147,8 +153,8 @@ class FarmingTrackerPanel extends PluginPanel /* This is a weird hack to remove the top border on the first tracker of every tab */ if (first) { - p.setBorder(null); first = false; + p.setBorder(null); } } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/FarmingWorld.java b/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/FarmingWorld.java index f4fdba1757..293b5826ef 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/FarmingWorld.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/FarmingWorld.java @@ -60,32 +60,32 @@ public class FarmingWorld )); add(new FarmingRegion("Ardougne", 10290, - new FarmingPatch("Bush", Varbits.FARMING_4771, PatchImplementation.BUSH) + new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.BUSH) )); add(new FarmingRegion("Ardougne", 10548, new FarmingPatch("North", Varbits.FARMING_4771, PatchImplementation.ALLOTMENT), new FarmingPatch("South", Varbits.FARMING_4772, PatchImplementation.ALLOTMENT), - new FarmingPatch("Flower", Varbits.FARMING_4773, PatchImplementation.FLOWER), - new FarmingPatch("Herb", Varbits.FARMING_4774, PatchImplementation.HERB) + new FarmingPatch("", Varbits.FARMING_4773, PatchImplementation.FLOWER), + new FarmingPatch("", Varbits.FARMING_4774, PatchImplementation.HERB) )); add(new FarmingRegion("Brimhaven", 11058, - new FarmingPatch("Fruit Tree", Varbits.FARMING_4771, PatchImplementation.FRUIT_TREE), - new FarmingPatch("Spirit Tree", Varbits.FARMING_4772, PatchImplementation.SPIRIT_TREE) + new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.FRUIT_TREE), + new FarmingPatch("", Varbits.FARMING_4772, PatchImplementation.SPIRIT_TREE) )); add(new FarmingRegion("Catherby", 11062, new FarmingPatch("North", Varbits.FARMING_4771, PatchImplementation.ALLOTMENT), new FarmingPatch("South", Varbits.FARMING_4772, PatchImplementation.ALLOTMENT), - new FarmingPatch("Flower", Varbits.FARMING_4773, PatchImplementation.FLOWER), - new FarmingPatch("Herb", Varbits.FARMING_4774, PatchImplementation.HERB) + new FarmingPatch("", Varbits.FARMING_4773, PatchImplementation.FLOWER), + new FarmingPatch("", Varbits.FARMING_4774, PatchImplementation.HERB) )); add(new FarmingRegion("Catherby", 11317, - new FarmingPatch("Fruit Tree", Varbits.FARMING_4771, PatchImplementation.FRUIT_TREE) + new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.FRUIT_TREE) )); add(new FarmingRegion("Champion's Guild", 12596, - new FarmingPatch("Bush", Varbits.FARMING_4771, PatchImplementation.BUSH) + new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.BUSH) )); add(new FarmingRegion("Draynor Manor", 12340, @@ -93,22 +93,22 @@ public class FarmingWorld )); add(new FarmingRegion("Entrana", 11060, - new FarmingPatch("Hops", Varbits.FARMING_4771, PatchImplementation.HOPS) + new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.HOPS) )); add(new FarmingRegion("Etceteria", 10300, - new FarmingPatch("Bush", Varbits.FARMING_4771, PatchImplementation.BUSH), - new FarmingPatch("Spirit Tree", Varbits.FARMING_4772, PatchImplementation.SPIRIT_TREE) + new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.BUSH), + new FarmingPatch("", Varbits.FARMING_4772, PatchImplementation.SPIRIT_TREE) )); add(new FarmingRegion("Falador", 11828, - new FarmingPatch("Tree", Varbits.FARMING_4771, PatchImplementation.TREE) + new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.TREE) )); add(new FarmingRegion("Falador", 12083, new FarmingPatch("North West", Varbits.FARMING_4771, PatchImplementation.ALLOTMENT), new FarmingPatch("South East", Varbits.FARMING_4772, PatchImplementation.ALLOTMENT), - new FarmingPatch("Flower", Varbits.FARMING_4773, PatchImplementation.FLOWER), - new FarmingPatch("Herb", Varbits.FARMING_4774, PatchImplementation.HERB) + new FarmingPatch("", Varbits.FARMING_4773, PatchImplementation.FLOWER), + new FarmingPatch("", Varbits.FARMING_4774, PatchImplementation.HERB) ) { @Override @@ -129,23 +129,23 @@ public class FarmingWorld )); add(new FarmingRegion("Gnome Stronghold", 9781, - new FarmingPatch("Tree", Varbits.FARMING_4771, PatchImplementation.TREE), - new FarmingPatch("Fruit Tree", Varbits.FARMING_4772, PatchImplementation.FRUIT_TREE) + new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.TREE), + new FarmingPatch("", Varbits.FARMING_4772, PatchImplementation.FRUIT_TREE) )); add(new FarmingRegion("Harmony", 15148, - new FarmingPatch("Allotment", Varbits.FARMING_4771, PatchImplementation.ALLOTMENT), - new FarmingPatch("Herb", Varbits.FARMING_4772, PatchImplementation.HERB) + new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.ALLOTMENT), + new FarmingPatch("", Varbits.FARMING_4772, PatchImplementation.HERB) )); add(new FarmingRegion("Kourend", 7222, new FarmingPatch("North East", Varbits.FARMING_4771, PatchImplementation.ALLOTMENT), new FarmingPatch("South West", Varbits.FARMING_4772, PatchImplementation.ALLOTMENT), - new FarmingPatch("Flower", Varbits.FARMING_4773, PatchImplementation.FLOWER), - new FarmingPatch("Herb", Varbits.FARMING_4774, PatchImplementation.HERB) + new FarmingPatch("", Varbits.FARMING_4773, PatchImplementation.FLOWER), + new FarmingPatch("", Varbits.FARMING_4774, PatchImplementation.HERB) )); add(new FarmingRegion("Kourend", 6711, - new FarmingPatch("Spirit Tree", Varbits.FARMING_4771, PatchImplementation.SPIRIT_TREE) + new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.SPIRIT_TREE) )); add(new FarmingRegion("Kourend", 7223, new FarmingPatch("West 1", Varbits.GRAPES_4953, PatchImplementation.GRAPES), @@ -163,14 +163,14 @@ public class FarmingWorld )); add(new FarmingRegion("Lletya", 9265, - new FarmingPatch("Fruit Tree", Varbits.FARMING_4771, PatchImplementation.FRUIT_TREE) + new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.FRUIT_TREE) )); add(new FarmingRegion("Lumbridge", 12851, - new FarmingPatch("Hops", Varbits.FARMING_4771, PatchImplementation.HOPS) + new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.HOPS) )); add(new FarmingRegion("Lumbridge", 12594, - new FarmingPatch("Tree", Varbits.FARMING_4771, PatchImplementation.TREE) + new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.TREE) )); add(new FarmingRegion("Morytania", 13622, @@ -179,45 +179,45 @@ public class FarmingWorld add(new FarmingRegion("Morytania", 14391, new FarmingPatch("North West", Varbits.FARMING_4771, PatchImplementation.ALLOTMENT), new FarmingPatch("South East", Varbits.FARMING_4772, PatchImplementation.ALLOTMENT), - new FarmingPatch("Flower", Varbits.FARMING_4773, PatchImplementation.FLOWER), - new FarmingPatch("Herb", Varbits.FARMING_4774, PatchImplementation.HERB) + new FarmingPatch("", Varbits.FARMING_4773, PatchImplementation.FLOWER), + new FarmingPatch("", Varbits.FARMING_4774, PatchImplementation.HERB) )); add(new FarmingRegion("Port Sarim", 12082, - new FarmingPatch("Spirit tree", Varbits.FARMING_4771, PatchImplementation.SPIRIT_TREE) + new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.SPIRIT_TREE) )); add(new FarmingRegion("Rimmington", 11570, - new FarmingPatch("Bush", Varbits.FARMING_4771, PatchImplementation.BUSH) + new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.BUSH) ), 11826); add(new FarmingRegion("Seers' Village", 10551, - new FarmingPatch("Hops", Varbits.FARMING_4771, PatchImplementation.HOPS) + new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.HOPS) )); add(new FarmingRegion("Tai Bwo Wannai", 11056, - new FarmingPatch("Calquat", Varbits.FARMING_4771, PatchImplementation.CALQUAT) + new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.CALQUAT) )); add(new FarmingRegion("Taverly", 11573, - new FarmingPatch("Tree", Varbits.FARMING_4771, PatchImplementation.TREE) + new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.TREE) )); add(new FarmingRegion("Tree Gnome Village", 9777, - new FarmingPatch("Fruit Tree", Varbits.FARMING_4771, PatchImplementation.FRUIT_TREE) + new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.FRUIT_TREE) )); add(new FarmingRegion("Troll Stronghold", 11321, - new FarmingPatch("Herb", Varbits.FARMING_4771, PatchImplementation.HERB) + new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.HERB) )); add(new FarmingRegion("Varrock", 12854, - new FarmingPatch("Tree", Varbits.FARMING_4771, PatchImplementation.TREE) + new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.TREE) ), 12853); add(new FarmingRegion("Yanille", 10288, - new FarmingPatch("Hops", Varbits.FARMING_4771, PatchImplementation.HOPS) + new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.HOPS) )); // Finalize diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/PatchImplementation.java b/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/PatchImplementation.java index bbd3a655e8..468cafd7c9 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/PatchImplementation.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/PatchImplementation.java @@ -31,7 +31,7 @@ import lombok.RequiredArgsConstructor; @Getter public enum PatchImplementation { - CACTUS(Tab.SPECIAL) + CACTUS(Tab.SPECIAL, "") { @Override PatchState forVarbitValue(int value) @@ -84,7 +84,7 @@ public enum PatchImplementation return null; } }, - BELLADONNA(Tab.SPECIAL) + BELLADONNA(Tab.SPECIAL, "") { @Override PatchState forVarbitValue(int value) @@ -122,7 +122,7 @@ public enum PatchImplementation return null; } }, - MUSHROOM(Tab.SPECIAL) + MUSHROOM(Tab.SPECIAL, "") { @Override PatchState forVarbitValue(int value) @@ -160,7 +160,7 @@ public enum PatchImplementation return null; } }, - ALLOTMENT(Tab.ALLOTMENT) + ALLOTMENT(Tab.ALLOTMENT, "") { @Override PatchState forVarbitValue(int value) @@ -473,240 +473,7 @@ public enum PatchImplementation return null; } }, - FLOWER(Tab.SPECIAL) - { - @Override - PatchState forVarbitValue(int value) - { - if (value >= 0 && value <= 3) - { - // Flower Patch[Rake,Inspect,,Guide,] 7843,7842,7841,7840 - return new PatchState(Produce.WEEDS, CropState.GROWING, 3 - value); - } - if (value >= 4 && value <= 7) - { - // Flower Patch[Rake,Inspect,,Guide,] 7843,7843,7843,7843 - return new PatchState(Produce.WEEDS, CropState.GROWING, 3); - } - if (value >= 8 && value <= 11) - { - // Marigold[,Inspect,,Guide,] 7867,7868,7869,7870 - return new PatchState(Produce.MARIGOLD, CropState.GROWING, value - 8); - } - if (value == 12) - { - // Marigold[Pick,Inspect,,Guide,] 7871 - return new PatchState(Produce.MARIGOLD, CropState.HARVESTABLE, 12 - value); - } - if (value >= 13 && value <= 16) - { - // Rosemary[,Inspect,,Guide,] 7899,7900,7901,7902 - return new PatchState(Produce.ROSEMARY, CropState.GROWING, value - 13); - } - if (value == 17) - { - // Rosemary[Pick,Inspect,,Guide,] 7903 - return new PatchState(Produce.ROSEMARY, CropState.HARVESTABLE, 17 - value); - } - if (value >= 18 && value <= 21) - { - // Nasturtium[,Inspect,,Guide,] 7883,7884,7885,7886 - return new PatchState(Produce.NASTURTIUM, CropState.GROWING, value - 18); - } - if (value == 22) - { - // Nasturtium[Pick,Inspect,,Guide,] 7887 - return new PatchState(Produce.NASTURTIUM, CropState.HARVESTABLE, 22 - value); - } - if (value >= 23 && value <= 26) - { - // Woad[,Inspect,,Guide,] 7919,7920,7921,7922 - return new PatchState(Produce.WOAD, CropState.GROWING, value - 23); - } - if (value == 27) - { - // Woad[Pick,Inspect,,Guide,] 7923 - return new PatchState(Produce.WOAD, CropState.HARVESTABLE, 27 - value); - } - if (value >= 28 && value <= 31) - { - // Limpwurt[,Inspect,,Guide,] 7851,7852,7853,7854 - return new PatchState(Produce.LIMPWURT, CropState.GROWING, value - 28); - } - if (value == 32) - { - // Limpwurt[Pick,Inspect,,Guide,] 7855 - return new PatchState(Produce.LIMPWURT, CropState.HARVESTABLE, 32 - value); - } - if (value >= 33 && value <= 35) - { - // Scarecrow[Rake,Inspect,,Guide,Remove] 7918,7917,7916 - return new PatchState(Produce.SCARECROW, CropState.GROWING, 35 - value); - } - if (value == 36) - { - // Scarecrow[Remove,Inspect,,Guide,] 7915 - return new PatchState(Produce.SCARECROW, CropState.GROWING, 0); - } - if (value >= 37 && value <= 71) - { - // Flower Patch[Rake,Inspect,,Guide,] 7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843 - return new PatchState(Produce.WEEDS, CropState.GROWING, 3); - } - if (value >= 72 && value <= 75) - { - // Marigold[,Inspect,,Guide,] 7872,7873,7874,7875 - return new PatchState(Produce.MARIGOLD, CropState.GROWING, value - 72); - } - if (value == 76) - { - // Flower Patch[Rake,Inspect,,Guide,] 7843 - return new PatchState(Produce.WEEDS, CropState.GROWING, 3); - } - if (value >= 77 && value <= 80) - { - // Rosemary[,Inspect,,Guide,] 7904,7905,7906,7907 - return new PatchState(Produce.ROSEMARY, CropState.GROWING, value - 77); - } - if (value == 81) - { - // Flower Patch[Rake,Inspect,,Guide,] 7843 - return new PatchState(Produce.WEEDS, CropState.GROWING, 3); - } - if (value >= 82 && value <= 85) - { - // Nasturtium[,Inspect,,Guide,] 7888,7889,7890,7891 - return new PatchState(Produce.NASTURTIUM, CropState.GROWING, value - 82); - } - if (value == 86) - { - // Flower Patch[Rake,Inspect,,Guide,] 7843 - return new PatchState(Produce.WEEDS, CropState.GROWING, 3); - } - if (value >= 87 && value <= 90) - { - // Woad[,Inspect,,Guide,] 7924,7925,7926,7927 - return new PatchState(Produce.WOAD, CropState.GROWING, value - 87); - } - if (value == 91) - { - // Flower Patch[Rake,Inspect,,Guide,] 7843 - return new PatchState(Produce.WEEDS, CropState.GROWING, 3); - } - if (value >= 92 && value <= 95) - { - // Limpwurt[,Inspect,,Guide,] 7856,7857,7858,7859 - return new PatchState(Produce.LIMPWURT, CropState.GROWING, value - 92); - } - if (value >= 96 && value <= 136) - { - // Flower Patch[Rake,Inspect,,Guide,] 7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843 - return new PatchState(Produce.WEEDS, CropState.GROWING, 3); - } - if (value >= 137 && value <= 139) - { - // Diseased marigold[Cure,Inspect,,Guide,] 7876,7877,7878 - return new PatchState(Produce.MARIGOLD, CropState.DISEASED, value - 136); - } - if (value >= 140 && value <= 141) - { - // Flower Patch[Rake,Inspect,,Guide,] 7843,7843 - return new PatchState(Produce.WEEDS, CropState.GROWING, 3); - } - if (value >= 142 && value <= 144) - { - // Diseased rosemary[Cure,Inspect,,Guide,] 7908,7909,7910 - return new PatchState(Produce.ROSEMARY, CropState.DISEASED, value - 141); - } - if (value >= 145 && value <= 146) - { - // Flower Patch[Rake,Inspect,,Guide,] 7843,7843 - return new PatchState(Produce.WEEDS, CropState.GROWING, 3); - } - if (value >= 147 && value <= 149) - { - // Diseased nasturtium[Cure,Inspect,,Guide,] 7892,7893,7894 - return new PatchState(Produce.NASTURTIUM, CropState.DISEASED, value - 146); - } - if (value >= 150 && value <= 151) - { - // Flower Patch[Rake,Inspect,,Guide,] 7843,7843 - return new PatchState(Produce.WEEDS, CropState.GROWING, 3); - } - if (value >= 152 && value <= 154) - { - // Diseased woad[Cure,Inspect,,Guide,] 7928,7929,7930 - return new PatchState(Produce.WOAD, CropState.DISEASED, value - 151); - } - if (value >= 155 && value <= 156) - { - // Flower Patch[Rake,Inspect,,Guide,] 7843,7843 - return new PatchState(Produce.WEEDS, CropState.GROWING, 3); - } - if (value >= 157 && value <= 159) - { - // Diseased limpwurt[Cure,Inspect,,Guide,] 7860,7861,7862 - return new PatchState(Produce.LIMPWURT, CropState.DISEASED, value - 156); - } - if (value >= 160 && value <= 200) - { - // Flower Patch[Rake,Inspect,,Guide,] 7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843 - return new PatchState(Produce.WEEDS, CropState.GROWING, 3); - } - if (value >= 201 && value <= 203) - { - // Dead marigold[Clear,Inspect,,Guide,] 7879,7880,7881,7882 - return new PatchState(Produce.MARIGOLD, CropState.DEAD, value - 200); - } - if (value == 205) - { - // Flower Patch[Rake,Inspect,,Guide,] 7843 - return new PatchState(Produce.WEEDS, CropState.GROWING, 3); - } - if (value >= 206 && value <= 208) - { - // Dead rosemary[Clear,Inspect,,Guide,] 7911,7912,7913,7914 - return new PatchState(Produce.ROSEMARY, CropState.DEAD, value - 205); - } - if (value == 210) - { - // Flower Patch[Rake,Inspect,,Guide,] 7843 - return new PatchState(Produce.WEEDS, CropState.GROWING, 3); - } - if (value >= 211 && value <= 213) - { - // Dead nasturtium[Clear,Inspect,,Guide,] 7895,7896,7897,7898 - return new PatchState(Produce.NASTURTIUM, CropState.DEAD, value - 210); - } - if (value == 215) - { - // Flower Patch[Rake,Inspect,,Guide,] 7843 - return new PatchState(Produce.WEEDS, CropState.GROWING, 3); - } - if (value >= 216 && value <= 218) - { - // Dead woad[Clear,Inspect,,Guide,] 7931,7932,7933,7934 - return new PatchState(Produce.WOAD, CropState.DEAD, value - 215); - } - if (value == 220) - { - // Flower Patch[Rake,Inspect,,Guide,] 7843 - return new PatchState(Produce.WEEDS, CropState.GROWING, 3); - } - if (value >= 221 && value <= 224) - { - // Dead limpwurt[Clear,Inspect,,Guide,] 7863,7864,7865,7866 - return new PatchState(Produce.LIMPWURT, CropState.DEAD, value - 220); - } - if (value >= 225 && value <= 255) - { - // Flower Patch[Rake,Inspect,,Guide,] 7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843 - return new PatchState(Produce.WEEDS, CropState.GROWING, 3); - } - return null; - } - }, - HERB(Tab.HERB) + HERB(Tab.HERB, "") { @Override PatchState forVarbitValue(int value) @@ -970,7 +737,240 @@ public enum PatchImplementation return null; } }, - BUSH(Tab.BUSH) + FLOWER(Tab.HERB, "Flowers") + { + @Override + PatchState forVarbitValue(int value) + { + if (value >= 0 && value <= 3) + { + // Flower Patch[Rake,Inspect,,Guide,] 7843,7842,7841,7840 + return new PatchState(Produce.WEEDS, CropState.GROWING, 3 - value); + } + if (value >= 4 && value <= 7) + { + // Flower Patch[Rake,Inspect,,Guide,] 7843,7843,7843,7843 + return new PatchState(Produce.WEEDS, CropState.GROWING, 3); + } + if (value >= 8 && value <= 11) + { + // Marigold[,Inspect,,Guide,] 7867,7868,7869,7870 + return new PatchState(Produce.MARIGOLD, CropState.GROWING, value - 8); + } + if (value == 12) + { + // Marigold[Pick,Inspect,,Guide,] 7871 + return new PatchState(Produce.MARIGOLD, CropState.HARVESTABLE, 12 - value); + } + if (value >= 13 && value <= 16) + { + // Rosemary[,Inspect,,Guide,] 7899,7900,7901,7902 + return new PatchState(Produce.ROSEMARY, CropState.GROWING, value - 13); + } + if (value == 17) + { + // Rosemary[Pick,Inspect,,Guide,] 7903 + return new PatchState(Produce.ROSEMARY, CropState.HARVESTABLE, 17 - value); + } + if (value >= 18 && value <= 21) + { + // Nasturtium[,Inspect,,Guide,] 7883,7884,7885,7886 + return new PatchState(Produce.NASTURTIUM, CropState.GROWING, value - 18); + } + if (value == 22) + { + // Nasturtium[Pick,Inspect,,Guide,] 7887 + return new PatchState(Produce.NASTURTIUM, CropState.HARVESTABLE, 22 - value); + } + if (value >= 23 && value <= 26) + { + // Woad[,Inspect,,Guide,] 7919,7920,7921,7922 + return new PatchState(Produce.WOAD, CropState.GROWING, value - 23); + } + if (value == 27) + { + // Woad[Pick,Inspect,,Guide,] 7923 + return new PatchState(Produce.WOAD, CropState.HARVESTABLE, 27 - value); + } + if (value >= 28 && value <= 31) + { + // Limpwurt[,Inspect,,Guide,] 7851,7852,7853,7854 + return new PatchState(Produce.LIMPWURT, CropState.GROWING, value - 28); + } + if (value == 32) + { + // Limpwurt[Pick,Inspect,,Guide,] 7855 + return new PatchState(Produce.LIMPWURT, CropState.HARVESTABLE, 32 - value); + } + if (value >= 33 && value <= 35) + { + // Scarecrow[Rake,Inspect,,Guide,Remove] 7918,7917,7916 + return new PatchState(Produce.SCARECROW, CropState.GROWING, 35 - value); + } + if (value == 36) + { + // Scarecrow[Remove,Inspect,,Guide,] 7915 + return new PatchState(Produce.SCARECROW, CropState.GROWING, 0); + } + if (value >= 37 && value <= 71) + { + // Flower Patch[Rake,Inspect,,Guide,] 7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843 + return new PatchState(Produce.WEEDS, CropState.GROWING, 3); + } + if (value >= 72 && value <= 75) + { + // Marigold[,Inspect,,Guide,] 7872,7873,7874,7875 + return new PatchState(Produce.MARIGOLD, CropState.GROWING, value - 72); + } + if (value == 76) + { + // Flower Patch[Rake,Inspect,,Guide,] 7843 + return new PatchState(Produce.WEEDS, CropState.GROWING, 3); + } + if (value >= 77 && value <= 80) + { + // Rosemary[,Inspect,,Guide,] 7904,7905,7906,7907 + return new PatchState(Produce.ROSEMARY, CropState.GROWING, value - 77); + } + if (value == 81) + { + // Flower Patch[Rake,Inspect,,Guide,] 7843 + return new PatchState(Produce.WEEDS, CropState.GROWING, 3); + } + if (value >= 82 && value <= 85) + { + // Nasturtium[,Inspect,,Guide,] 7888,7889,7890,7891 + return new PatchState(Produce.NASTURTIUM, CropState.GROWING, value - 82); + } + if (value == 86) + { + // Flower Patch[Rake,Inspect,,Guide,] 7843 + return new PatchState(Produce.WEEDS, CropState.GROWING, 3); + } + if (value >= 87 && value <= 90) + { + // Woad[,Inspect,,Guide,] 7924,7925,7926,7927 + return new PatchState(Produce.WOAD, CropState.GROWING, value - 87); + } + if (value == 91) + { + // Flower Patch[Rake,Inspect,,Guide,] 7843 + return new PatchState(Produce.WEEDS, CropState.GROWING, 3); + } + if (value >= 92 && value <= 95) + { + // Limpwurt[,Inspect,,Guide,] 7856,7857,7858,7859 + return new PatchState(Produce.LIMPWURT, CropState.GROWING, value - 92); + } + if (value >= 96 && value <= 136) + { + // Flower Patch[Rake,Inspect,,Guide,] 7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843 + return new PatchState(Produce.WEEDS, CropState.GROWING, 3); + } + if (value >= 137 && value <= 139) + { + // Diseased marigold[Cure,Inspect,,Guide,] 7876,7877,7878 + return new PatchState(Produce.MARIGOLD, CropState.DISEASED, value - 136); + } + if (value >= 140 && value <= 141) + { + // Flower Patch[Rake,Inspect,,Guide,] 7843,7843 + return new PatchState(Produce.WEEDS, CropState.GROWING, 3); + } + if (value >= 142 && value <= 144) + { + // Diseased rosemary[Cure,Inspect,,Guide,] 7908,7909,7910 + return new PatchState(Produce.ROSEMARY, CropState.DISEASED, value - 141); + } + if (value >= 145 && value <= 146) + { + // Flower Patch[Rake,Inspect,,Guide,] 7843,7843 + return new PatchState(Produce.WEEDS, CropState.GROWING, 3); + } + if (value >= 147 && value <= 149) + { + // Diseased nasturtium[Cure,Inspect,,Guide,] 7892,7893,7894 + return new PatchState(Produce.NASTURTIUM, CropState.DISEASED, value - 146); + } + if (value >= 150 && value <= 151) + { + // Flower Patch[Rake,Inspect,,Guide,] 7843,7843 + return new PatchState(Produce.WEEDS, CropState.GROWING, 3); + } + if (value >= 152 && value <= 154) + { + // Diseased woad[Cure,Inspect,,Guide,] 7928,7929,7930 + return new PatchState(Produce.WOAD, CropState.DISEASED, value - 151); + } + if (value >= 155 && value <= 156) + { + // Flower Patch[Rake,Inspect,,Guide,] 7843,7843 + return new PatchState(Produce.WEEDS, CropState.GROWING, 3); + } + if (value >= 157 && value <= 159) + { + // Diseased limpwurt[Cure,Inspect,,Guide,] 7860,7861,7862 + return new PatchState(Produce.LIMPWURT, CropState.DISEASED, value - 156); + } + if (value >= 160 && value <= 200) + { + // Flower Patch[Rake,Inspect,,Guide,] 7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843 + return new PatchState(Produce.WEEDS, CropState.GROWING, 3); + } + if (value >= 201 && value <= 203) + { + // Dead marigold[Clear,Inspect,,Guide,] 7879,7880,7881,7882 + return new PatchState(Produce.MARIGOLD, CropState.DEAD, value - 200); + } + if (value == 205) + { + // Flower Patch[Rake,Inspect,,Guide,] 7843 + return new PatchState(Produce.WEEDS, CropState.GROWING, 3); + } + if (value >= 206 && value <= 208) + { + // Dead rosemary[Clear,Inspect,,Guide,] 7911,7912,7913,7914 + return new PatchState(Produce.ROSEMARY, CropState.DEAD, value - 205); + } + if (value == 210) + { + // Flower Patch[Rake,Inspect,,Guide,] 7843 + return new PatchState(Produce.WEEDS, CropState.GROWING, 3); + } + if (value >= 211 && value <= 213) + { + // Dead nasturtium[Clear,Inspect,,Guide,] 7895,7896,7897,7898 + return new PatchState(Produce.NASTURTIUM, CropState.DEAD, value - 210); + } + if (value == 215) + { + // Flower Patch[Rake,Inspect,,Guide,] 7843 + return new PatchState(Produce.WEEDS, CropState.GROWING, 3); + } + if (value >= 216 && value <= 218) + { + // Dead woad[Clear,Inspect,,Guide,] 7931,7932,7933,7934 + return new PatchState(Produce.WOAD, CropState.DEAD, value - 215); + } + if (value == 220) + { + // Flower Patch[Rake,Inspect,,Guide,] 7843 + return new PatchState(Produce.WEEDS, CropState.GROWING, 3); + } + if (value >= 221 && value <= 224) + { + // Dead limpwurt[Clear,Inspect,,Guide,] 7863,7864,7865,7866 + return new PatchState(Produce.LIMPWURT, CropState.DEAD, value - 220); + } + if (value >= 225 && value <= 255) + { + // Flower Patch[Rake,Inspect,,Guide,] 7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843,7843 + return new PatchState(Produce.WEEDS, CropState.GROWING, 3); + } + return null; + } + }, + BUSH(Tab.BUSH, "") { @Override PatchState forVarbitValue(int value) @@ -1209,7 +1209,7 @@ public enum PatchImplementation return null; } }, - FRUIT_TREE(Tab.FRUIT_TREE) + FRUIT_TREE(Tab.FRUIT_TREE, "Fruit trees") { @Override PatchState forVarbitValue(int value) @@ -1458,7 +1458,7 @@ public enum PatchImplementation return null; } }, - HOPS(Tab.SPECIAL) + HOPS(Tab.SPECIAL, "Hops") { @Override PatchState forVarbitValue(int value) @@ -1761,7 +1761,7 @@ public enum PatchImplementation return null; } }, - TREE(Tab.TREE) + TREE(Tab.TREE, "") { @Override PatchState forVarbitValue(int value) @@ -2049,7 +2049,7 @@ public enum PatchImplementation return null; } }, - HARDWOOD_TREE(Tab.TREE) + HARDWOOD_TREE(Tab.TREE, "Hardwood Trees") { @Override PatchState forVarbitValue(int value) @@ -2137,7 +2137,7 @@ public enum PatchImplementation return null; } }, - SPIRIT_TREE(Tab.TREE) + SPIRIT_TREE(Tab.TREE, "Spirit Trees") { @Override PatchState forVarbitValue(int value) @@ -2185,7 +2185,7 @@ public enum PatchImplementation return null; } }, - SEAWEED(Tab.SPECIAL) + SEAWEED(Tab.SPECIAL, "Seaweed") { @Override PatchState forVarbitValue(int value) @@ -2223,7 +2223,7 @@ public enum PatchImplementation return null; } }, - CALQUAT(Tab.FRUIT_TREE) + CALQUAT(Tab.FRUIT_TREE, "Calquat") { @Override PatchState forVarbitValue(int value) @@ -2271,7 +2271,7 @@ public enum PatchImplementation return null; } }, - GRAPES(Tab.SPECIAL) + GRAPES(Tab.BUSH, "Grapes") { @Override PatchState forVarbitValue(int value) @@ -2299,16 +2299,7 @@ public enum PatchImplementation abstract PatchState forVarbitValue(int value); - /** - * Returns a formatted name based on the enum's name. - * Ex: - * SPIRIT_TREE into Spirit Tree - * HERB into Herb - */ - public String getName() - { - return (name().substring(0, 1).toUpperCase() + name().toLowerCase().substring(1)).replaceAll("_", " "); - } - private final Tab tab; + + private final String name; } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/Tab.java b/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/Tab.java index b8838742dc..50f50b2ed8 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/Tab.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/Tab.java @@ -36,7 +36,7 @@ public enum Tab HERB("Herbs", ItemID.GRIMY_RANARR_WEED), TREE("Trees", ItemID.MAHOGANY_LOGS), FRUIT_TREE("Fruit Trees", ItemID.PINEAPPLE), - BUSH("Bushes", ItemID.WHITE_BERRIES), + BUSH("Bushes", ItemID.REDBERRIES), SPECIAL("Special", ItemID.MUSHROOM); private final String name;