RuneHive-Tarnish
Neural OSRS Enhancement Framework
Loading...
Searching...
No Matches
Herb.java
1package com.osroyale.content.skill.impl.farming.plants;
2
3import java.util.HashMap;
4import java.util.Map;
5
44
45public enum Herb implements Plant {
46 GUAM(5291, 199, 9, 60, 11, 12.5, 4, 8),
47 MARRENTILL(5292, 201, 14, 60, 13.5, 15, 11, 15),
48 TARROMIN(5293, 203, 19, 60, 16, 18, 18, 22),
49 HARRALANDER(5294, 205, 26, 60, 21.5, 24, 25, 29),
50 GOUT_TUBER(6311, 3261, 29, 60, 105, 45, 192, 196),
51 RANARR(5295, 207, 32, 60, 27, 30.5, 32, 36),
52 TOADFLAX(5296, 3049, 38, 60, 34, 38.5, 39, 43),
53 IRIT(5297, 209, 44, 60, 43, 48.5, 46, 50),
54 AVANTOE(5298, 211, 50, 60, 54.5, 61.5, 53, 57),
55 KUARM(5299, 213, 56, 60, 69, 78, 0x44, 72),
56 SNAPDRAGON(5300, 3051, 62, 60, 87.5, 98.5, 75, 79),
57 CADANTINE(5301, 215, 67, 60, 106.5, 120, 82, 86),
58 LANTADYME(5302, 2485, 73, 60, 134.5, 151.5, 89, 93),
59 DWARF(5303, 217, 79, 60, 170.5, 192, 96, 100),
60 TORSOL(5304, 219, 85, 60, 199.5, 224.5, 103, 107);
61
62 private final int seedId;
63 private final int harvestId;
64 private final int levelRequired;
65 private final int growthTime;
66 private final double plantingXp;
67 private final double harvestXp;
68 private final int startingState;
69 private final int endingState;
70
71 private static final Map<Integer, Herb> HERBS = new HashMap<>();
72
73 static {
74 for (Herb data : Herb.values()) {
75 HERBS.put(data.seedId, data);
76 }
77 }
78
79 private static final String[][] MESSAGES = new String[][] {
80 {"The seed has only just been planted."},
81 {"The herb is now ankle height."},
82 {"The herb is now knee height."},
83 {"The herb is now mid-thigh height."},
84 {"The herb is fully grown and ready to harvest."}
85 };
86
87 Herb(int seedId, int harvestId, int levelRequired, int growthTime, double plantingXp, double harvestXp, int startingState, int endingState) {
88 this.seedId = seedId;
89 this.harvestId = harvestId;
90 this.levelRequired = levelRequired;
91 this.growthTime = growthTime;
92 this.plantingXp = plantingXp;
93 this.harvestXp = harvestXp;
94 this.startingState = startingState;
95 this.endingState = endingState;
96 }
97
98 public static Herb forId(int seedId) {
99 return HERBS.get(seedId);
100 }
101
102 @Override
103 public int getSeedId() {
104 return seedId;
105 }
106
107 @Override
108 public int getHarvestId() {
109 return harvestId;
110 }
111
112 @Override
113 public int getLevelRequired() {
114 return levelRequired;
115 }
116
117 @Override
118 public int getGrowthTime() {
119 return growthTime;
120 }
121
122
123
124 @Override
125 public double getPlantingXp() {
126 return plantingXp;
127 }
128
129 @Override
130 public double getHarvestXp() {
131 return harvestXp;
132 }
133
134 @Override
135 public int getStartingState() {
136 return startingState;
137 }
138
139 @Override
140 public int getEndingState() {
141 return endingState;
142 }
143
144 @Override
145 public int getSeedAmount() {
146 return 1;
147 }
148
149 @Override
150 public String getProductType() {
151 return "herb";
152 }
153
154 @Override
155 public int getFlowerProtect() {
156 return -1;
157 }
158
159 @Override
160 public int[] getPaymentToWatch() {
161 return new int[0];
162 }
163
164 @Override
165 public String[][] getInspectMessages() {
166 return MESSAGES;
167 }
168
169}