Cleanup FarmingTracker panels

This commit is contained in:
Max Weber
2018-05-01 00:33:37 -06:00
committed by Tomas Slusny
parent 3526b258bb
commit 64610ae08c
5 changed files with 302 additions and 330 deletions

View File

@@ -25,6 +25,7 @@
*/ */
package net.runelite.client.plugins.farmingtracker; package net.runelite.client.plugins.farmingtracker;
import com.google.common.base.Strings;
import java.awt.BorderLayout; import java.awt.BorderLayout;
import java.awt.Color; import java.awt.Color;
import java.awt.Dimension; import java.awt.Dimension;
@@ -67,7 +68,7 @@ class FarmingPatchPanel extends JPanel
infoPanel.setBorder(new EmptyBorder(4, 4, 4, 0)); infoPanel.setBorder(new EmptyBorder(4, 4, 4, 0));
final JLabel location = new JShadowedLabel(patch.getRegion().getName() final JLabel location = new JShadowedLabel(patch.getRegion().getName()
+ (showFullTitle() ? " (" + patch.getName() + ")" : "")); + (Strings.isNullOrEmpty(patch.getName()) ? "" : " (" + patch.getName() + ")"));
location.setFont(FontManager.getRunescapeSmallFont()); location.setFont(FontManager.getRunescapeSmallFont());
location.setForeground(Color.WHITE); location.setForeground(Color.WHITE);
@@ -83,30 +84,4 @@ class FarmingPatchPanel extends JPanel
add(topContainer, BorderLayout.NORTH); add(topContainer, BorderLayout.NORTH);
add(progress, BorderLayout.SOUTH); 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;
}
}
} }

View File

@@ -25,6 +25,7 @@
*/ */
package net.runelite.client.plugins.farmingtracker; package net.runelite.client.plugins.farmingtracker;
import com.google.common.base.Strings;
import java.awt.BorderLayout; import java.awt.BorderLayout;
import java.awt.Dimension; import java.awt.Dimension;
import java.awt.GridBagConstraints; import java.awt.GridBagConstraints;
@@ -124,15 +125,20 @@ class FarmingTrackerPanel extends PluginPanel
FarmingPatchPanel p = new FarmingPatchPanel(patch); FarmingPatchPanel p = new FarmingPatchPanel(patch);
/* Show labels to subdivide tabs into sections */ /* Show labels to subdivide tabs into sections */
if ((tab == Tab.SPECIAL if (patch.getImplementation() != lastImpl && !Strings.isNullOrEmpty(patch.getImplementation().getName()))
&& patch.getImplementation().ordinal() > 2
&& patch.getImplementation() != lastImpl)
|| (tab == Tab.TREE
&& patch.getImplementation().ordinal() > 9
&& patch.getImplementation() != lastImpl))
{ {
JLabel groupLabel = new JLabel(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()); groupLabel.setFont(FontManager.getRunescapeSmallFont());
container.add(groupLabel, c); 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 */ /* This is a weird hack to remove the top border on the first tracker of every tab */
if (first) if (first)
{ {
p.setBorder(null);
first = false; first = false;
p.setBorder(null);
} }
} }

View File

@@ -60,32 +60,32 @@ public class FarmingWorld
)); ));
add(new FarmingRegion("Ardougne", 10290, 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, add(new FarmingRegion("Ardougne", 10548,
new FarmingPatch("North", Varbits.FARMING_4771, PatchImplementation.ALLOTMENT), new FarmingPatch("North", Varbits.FARMING_4771, PatchImplementation.ALLOTMENT),
new FarmingPatch("South", Varbits.FARMING_4772, PatchImplementation.ALLOTMENT), new FarmingPatch("South", Varbits.FARMING_4772, PatchImplementation.ALLOTMENT),
new FarmingPatch("Flower", Varbits.FARMING_4773, PatchImplementation.FLOWER), new FarmingPatch("", Varbits.FARMING_4773, PatchImplementation.FLOWER),
new FarmingPatch("Herb", Varbits.FARMING_4774, PatchImplementation.HERB) new FarmingPatch("", Varbits.FARMING_4774, PatchImplementation.HERB)
)); ));
add(new FarmingRegion("Brimhaven", 11058, add(new FarmingRegion("Brimhaven", 11058,
new FarmingPatch("Fruit Tree", Varbits.FARMING_4771, PatchImplementation.FRUIT_TREE), new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.FRUIT_TREE),
new FarmingPatch("Spirit Tree", Varbits.FARMING_4772, PatchImplementation.SPIRIT_TREE) new FarmingPatch("", Varbits.FARMING_4772, PatchImplementation.SPIRIT_TREE)
)); ));
add(new FarmingRegion("Catherby", 11062, add(new FarmingRegion("Catherby", 11062,
new FarmingPatch("North", Varbits.FARMING_4771, PatchImplementation.ALLOTMENT), new FarmingPatch("North", Varbits.FARMING_4771, PatchImplementation.ALLOTMENT),
new FarmingPatch("South", Varbits.FARMING_4772, PatchImplementation.ALLOTMENT), new FarmingPatch("South", Varbits.FARMING_4772, PatchImplementation.ALLOTMENT),
new FarmingPatch("Flower", Varbits.FARMING_4773, PatchImplementation.FLOWER), new FarmingPatch("", Varbits.FARMING_4773, PatchImplementation.FLOWER),
new FarmingPatch("Herb", Varbits.FARMING_4774, PatchImplementation.HERB) new FarmingPatch("", Varbits.FARMING_4774, PatchImplementation.HERB)
)); ));
add(new FarmingRegion("Catherby", 11317, 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, 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, add(new FarmingRegion("Draynor Manor", 12340,
@@ -93,22 +93,22 @@ public class FarmingWorld
)); ));
add(new FarmingRegion("Entrana", 11060, 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, add(new FarmingRegion("Etceteria", 10300,
new FarmingPatch("Bush", Varbits.FARMING_4771, PatchImplementation.BUSH), new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.BUSH),
new FarmingPatch("Spirit Tree", Varbits.FARMING_4772, PatchImplementation.SPIRIT_TREE) new FarmingPatch("", Varbits.FARMING_4772, PatchImplementation.SPIRIT_TREE)
)); ));
add(new FarmingRegion("Falador", 11828, 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, add(new FarmingRegion("Falador", 12083,
new FarmingPatch("North West", Varbits.FARMING_4771, PatchImplementation.ALLOTMENT), new FarmingPatch("North West", Varbits.FARMING_4771, PatchImplementation.ALLOTMENT),
new FarmingPatch("South East", Varbits.FARMING_4772, PatchImplementation.ALLOTMENT), new FarmingPatch("South East", Varbits.FARMING_4772, PatchImplementation.ALLOTMENT),
new FarmingPatch("Flower", Varbits.FARMING_4773, PatchImplementation.FLOWER), new FarmingPatch("", Varbits.FARMING_4773, PatchImplementation.FLOWER),
new FarmingPatch("Herb", Varbits.FARMING_4774, PatchImplementation.HERB) new FarmingPatch("", Varbits.FARMING_4774, PatchImplementation.HERB)
) )
{ {
@Override @Override
@@ -129,23 +129,23 @@ public class FarmingWorld
)); ));
add(new FarmingRegion("Gnome Stronghold", 9781, add(new FarmingRegion("Gnome Stronghold", 9781,
new FarmingPatch("Tree", Varbits.FARMING_4771, PatchImplementation.TREE), new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.TREE),
new FarmingPatch("Fruit Tree", Varbits.FARMING_4772, PatchImplementation.FRUIT_TREE) new FarmingPatch("", Varbits.FARMING_4772, PatchImplementation.FRUIT_TREE)
)); ));
add(new FarmingRegion("Harmony", 15148, add(new FarmingRegion("Harmony", 15148,
new FarmingPatch("Allotment", Varbits.FARMING_4771, PatchImplementation.ALLOTMENT), new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.ALLOTMENT),
new FarmingPatch("Herb", Varbits.FARMING_4772, PatchImplementation.HERB) new FarmingPatch("", Varbits.FARMING_4772, PatchImplementation.HERB)
)); ));
add(new FarmingRegion("Kourend", 7222, add(new FarmingRegion("Kourend", 7222,
new FarmingPatch("North East", Varbits.FARMING_4771, PatchImplementation.ALLOTMENT), new FarmingPatch("North East", Varbits.FARMING_4771, PatchImplementation.ALLOTMENT),
new FarmingPatch("South West", Varbits.FARMING_4772, PatchImplementation.ALLOTMENT), new FarmingPatch("South West", Varbits.FARMING_4772, PatchImplementation.ALLOTMENT),
new FarmingPatch("Flower", Varbits.FARMING_4773, PatchImplementation.FLOWER), new FarmingPatch("", Varbits.FARMING_4773, PatchImplementation.FLOWER),
new FarmingPatch("Herb", Varbits.FARMING_4774, PatchImplementation.HERB) new FarmingPatch("", Varbits.FARMING_4774, PatchImplementation.HERB)
)); ));
add(new FarmingRegion("Kourend", 6711, 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, add(new FarmingRegion("Kourend", 7223,
new FarmingPatch("West 1", Varbits.GRAPES_4953, PatchImplementation.GRAPES), new FarmingPatch("West 1", Varbits.GRAPES_4953, PatchImplementation.GRAPES),
@@ -163,14 +163,14 @@ public class FarmingWorld
)); ));
add(new FarmingRegion("Lletya", 9265, 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, 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, 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, add(new FarmingRegion("Morytania", 13622,
@@ -179,45 +179,45 @@ public class FarmingWorld
add(new FarmingRegion("Morytania", 14391, add(new FarmingRegion("Morytania", 14391,
new FarmingPatch("North West", Varbits.FARMING_4771, PatchImplementation.ALLOTMENT), new FarmingPatch("North West", Varbits.FARMING_4771, PatchImplementation.ALLOTMENT),
new FarmingPatch("South East", Varbits.FARMING_4772, PatchImplementation.ALLOTMENT), new FarmingPatch("South East", Varbits.FARMING_4772, PatchImplementation.ALLOTMENT),
new FarmingPatch("Flower", Varbits.FARMING_4773, PatchImplementation.FLOWER), new FarmingPatch("", Varbits.FARMING_4773, PatchImplementation.FLOWER),
new FarmingPatch("Herb", Varbits.FARMING_4774, PatchImplementation.HERB) new FarmingPatch("", Varbits.FARMING_4774, PatchImplementation.HERB)
)); ));
add(new FarmingRegion("Port Sarim", 12082, 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, add(new FarmingRegion("Rimmington", 11570,
new FarmingPatch("Bush", Varbits.FARMING_4771, PatchImplementation.BUSH) new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.BUSH)
), 11826); ), 11826);
add(new FarmingRegion("Seers' Village", 10551, 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, 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, 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, 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, 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, add(new FarmingRegion("Varrock", 12854,
new FarmingPatch("Tree", Varbits.FARMING_4771, PatchImplementation.TREE) new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.TREE)
), 12853); ), 12853);
add(new FarmingRegion("Yanille", 10288, add(new FarmingRegion("Yanille", 10288,
new FarmingPatch("Hops", Varbits.FARMING_4771, PatchImplementation.HOPS) new FarmingPatch("", Varbits.FARMING_4771, PatchImplementation.HOPS)
)); ));
// Finalize // Finalize

View File

@@ -31,7 +31,7 @@ import lombok.RequiredArgsConstructor;
@Getter @Getter
public enum PatchImplementation public enum PatchImplementation
{ {
CACTUS(Tab.SPECIAL) CACTUS(Tab.SPECIAL, "")
{ {
@Override @Override
PatchState forVarbitValue(int value) PatchState forVarbitValue(int value)
@@ -84,7 +84,7 @@ public enum PatchImplementation
return null; return null;
} }
}, },
BELLADONNA(Tab.SPECIAL) BELLADONNA(Tab.SPECIAL, "")
{ {
@Override @Override
PatchState forVarbitValue(int value) PatchState forVarbitValue(int value)
@@ -122,7 +122,7 @@ public enum PatchImplementation
return null; return null;
} }
}, },
MUSHROOM(Tab.SPECIAL) MUSHROOM(Tab.SPECIAL, "")
{ {
@Override @Override
PatchState forVarbitValue(int value) PatchState forVarbitValue(int value)
@@ -160,7 +160,7 @@ public enum PatchImplementation
return null; return null;
} }
}, },
ALLOTMENT(Tab.ALLOTMENT) ALLOTMENT(Tab.ALLOTMENT, "")
{ {
@Override @Override
PatchState forVarbitValue(int value) PatchState forVarbitValue(int value)
@@ -473,240 +473,7 @@ public enum PatchImplementation
return null; return null;
} }
}, },
FLOWER(Tab.SPECIAL) HERB(Tab.HERB, "")
{
@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)
{ {
@Override @Override
PatchState forVarbitValue(int value) PatchState forVarbitValue(int value)
@@ -970,7 +737,240 @@ public enum PatchImplementation
return null; 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 @Override
PatchState forVarbitValue(int value) PatchState forVarbitValue(int value)
@@ -1209,7 +1209,7 @@ public enum PatchImplementation
return null; return null;
} }
}, },
FRUIT_TREE(Tab.FRUIT_TREE) FRUIT_TREE(Tab.FRUIT_TREE, "Fruit trees")
{ {
@Override @Override
PatchState forVarbitValue(int value) PatchState forVarbitValue(int value)
@@ -1458,7 +1458,7 @@ public enum PatchImplementation
return null; return null;
} }
}, },
HOPS(Tab.SPECIAL) HOPS(Tab.SPECIAL, "Hops")
{ {
@Override @Override
PatchState forVarbitValue(int value) PatchState forVarbitValue(int value)
@@ -1761,7 +1761,7 @@ public enum PatchImplementation
return null; return null;
} }
}, },
TREE(Tab.TREE) TREE(Tab.TREE, "")
{ {
@Override @Override
PatchState forVarbitValue(int value) PatchState forVarbitValue(int value)
@@ -2049,7 +2049,7 @@ public enum PatchImplementation
return null; return null;
} }
}, },
HARDWOOD_TREE(Tab.TREE) HARDWOOD_TREE(Tab.TREE, "Hardwood Trees")
{ {
@Override @Override
PatchState forVarbitValue(int value) PatchState forVarbitValue(int value)
@@ -2137,7 +2137,7 @@ public enum PatchImplementation
return null; return null;
} }
}, },
SPIRIT_TREE(Tab.TREE) SPIRIT_TREE(Tab.TREE, "Spirit Trees")
{ {
@Override @Override
PatchState forVarbitValue(int value) PatchState forVarbitValue(int value)
@@ -2185,7 +2185,7 @@ public enum PatchImplementation
return null; return null;
} }
}, },
SEAWEED(Tab.SPECIAL) SEAWEED(Tab.SPECIAL, "Seaweed")
{ {
@Override @Override
PatchState forVarbitValue(int value) PatchState forVarbitValue(int value)
@@ -2223,7 +2223,7 @@ public enum PatchImplementation
return null; return null;
} }
}, },
CALQUAT(Tab.FRUIT_TREE) CALQUAT(Tab.FRUIT_TREE, "Calquat")
{ {
@Override @Override
PatchState forVarbitValue(int value) PatchState forVarbitValue(int value)
@@ -2271,7 +2271,7 @@ public enum PatchImplementation
return null; return null;
} }
}, },
GRAPES(Tab.SPECIAL) GRAPES(Tab.BUSH, "Grapes")
{ {
@Override @Override
PatchState forVarbitValue(int value) PatchState forVarbitValue(int value)
@@ -2299,16 +2299,7 @@ public enum PatchImplementation
abstract PatchState forVarbitValue(int value); 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 Tab tab;
private final String name;
} }

View File

@@ -36,7 +36,7 @@ public enum Tab
HERB("Herbs", ItemID.GRIMY_RANARR_WEED), HERB("Herbs", ItemID.GRIMY_RANARR_WEED),
TREE("Trees", ItemID.MAHOGANY_LOGS), TREE("Trees", ItemID.MAHOGANY_LOGS),
FRUIT_TREE("Fruit Trees", ItemID.PINEAPPLE), FRUIT_TREE("Fruit Trees", ItemID.PINEAPPLE),
BUSH("Bushes", ItemID.WHITE_BERRIES), BUSH("Bushes", ItemID.REDBERRIES),
SPECIAL("Special", ItemID.MUSHROOM); SPECIAL("Special", ItemID.MUSHROOM);
private final String name; private final String name;