19 enum class PotionType :
int {
26 enum class PotionVariant :
int {
63 ::ll::TypedStorage<4, 4, int> mId;
64 ::ll::TypedStorage<8, 32, ::std::string> mNameId;
65 ::ll::TypedStorage<8, 32, ::std::string> mPrefix;
66 ::ll::TypedStorage<8, 24, ::std::vector<::MobEffectInstance>> mEffects;
67 ::ll::TypedStorage<8, 24, ::std::vector<::std::string>> mDescriptionIds;
68 ::ll::TypedStorage<4, 4, ::Potion::PotionVariant> mVar;
73 Potion& operator=(Potion
const&);
79 MCAPI Potion(::Potion
const&);
81 MCAPI
explicit Potion(::std::string_view nameId);
83 MCAPI Potion(::std::string_view nameId, ::std::string_view prefix);
86 ::std::string_view nameId,
87 ::std::string_view descriptionID,
89 ::Potion::PotionVariant var
93 ::std::string_view nameId,
94 ::std::vector<::std::string> descriptionIDs,
95 ::std::vector<::MobEffectInstance> mobEffects,
96 ::Potion::PotionVariant var
99 MCAPI ::std::string _getDescriptionIdCombiningStrings(::Potion::PotionType potiontype)
const;
101 MCAPI ::std::string _getDescriptionIdSingleString(::Potion::PotionType potionType)
const;
103 MCAPI
void appendFormattedPotionText(
105 ::Potion::PotionType potionType,
106 ::Potion::PotionVariant potionVariant,
111 MCAPI ::std::string getDescriptionId()
const;
113 MCAPI ::std::string getDescriptionId(::Potion::PotionType potionType)
const;
115 MCFOLD ::MobEffectInstance
const& getMobEffect()
const;
117 MCAPI
int getMobEffectId()
const;
119 MCFOLD ::std::vector<::MobEffectInstance>
const& getMobEffects()
const;
121 MCFOLD ::std::string getNameId()
const;
123 MCAPI ::std::string getPotencyDescription(::Potion::PotionType potionType,
float timeMod)
const;
125 MCFOLD
int getPotionId()
const;
127 MCFOLD ::Potion::PotionVariant getPotionVariant()
const;
129 MCFOLD ::std::string getPrefix()
const;
137 MCAPI
static void addPotion(::std::shared_ptr<::Potion const> potion);
139 MCAPI
static void appendMobEffectText(
141 ::Potion::PotionVariant potionVariant,
147 MCAPI static ::std::string
148 effectDurationToString(::Potion::PotionType potionType,
float timeMod,
::MobEffectInstance const& effect);
152 MCAPI static ::std::string getBasePotion(::Potion::PotionType type);
154 MCAPI static ::std::string getPotencyDescription(
155 ::Potion::PotionType potionType,
157 ::std::string_view descID,
161 MCAPI static ::std::shared_ptr<::Potion const> getPotion(
int potionId);
163 MCAPI static ::std::shared_ptr<::Potion const> getPotion(::std::string_view potionNameId);
165 MCAPI
static int getPotionCount();
167 MCAPI static ::std::vector<::std::shared_ptr<::Potion const>> getPotions();
171 MCAPI
static void shutdownPotions();
177 MCAPI static ::std::shared_ptr<::Potion const>
const& Awkward();
179 MCAPI static ::std::shared_ptr<::Potion const>
const& FireResistance();
181 MCAPI static ::std::shared_ptr<::Potion const>
const& Harming();
183 MCAPI static ::std::shared_ptr<::Potion const>
const& Healing();
185 MCAPI static ::std::shared_ptr<::Potion const>
const& Infested();
187 MCAPI static ::std::shared_ptr<::Potion const>
const& Invisibility();
189 MCAPI static ::std::shared_ptr<::Potion const>
const& Leaping();
191 MCAPI static ::std::shared_ptr<::Potion const>
const& LongFireResistance();
193 MCAPI static ::std::shared_ptr<::Potion const>
const& LongInvisibility();
195 MCAPI static ::std::shared_ptr<::Potion const>
const& LongLeaping();
197 MCAPI static ::std::shared_ptr<::Potion const>
const& LongMundane();
199 MCAPI static ::std::shared_ptr<::Potion const>
const& LongNightvision();
201 MCAPI static ::std::shared_ptr<::Potion const>
const& LongPoison();
203 MCAPI static ::std::shared_ptr<::Potion const>
const& LongRegeneration();
205 MCAPI static ::std::shared_ptr<::Potion const>
const& LongSlowFalling();
207 MCAPI static ::std::shared_ptr<::Potion const>
const& LongSlowness();
209 MCAPI static ::std::shared_ptr<::Potion const>
const& LongStrength();
211 MCAPI static ::std::shared_ptr<::Potion const>
const& LongSwiftness();
213 MCAPI static ::std::shared_ptr<::Potion const>
const& LongTurtleMaster();
215 MCAPI static ::std::shared_ptr<::Potion const>
const& LongWaterBreathing();
217 MCAPI static ::std::shared_ptr<::Potion const>
const& LongWeakness();
219 MCAPI static ::std::shared_ptr<::Potion const>
const& Mundane();
221 MCAPI static ::std::shared_ptr<::Potion const>
const& Nightvision();
223 MCAPI static ::std::shared_ptr<::Potion const>
const& Oozing();
225 MCAPI static ::std::shared_ptr<::Potion const>
const& Poison();
227 MCAPI static ::std::shared_ptr<::Potion const>
const& Regeneration();
229 MCAPI static ::std::shared_ptr<::Potion const>
const& SlowFalling();
231 MCAPI static ::std::shared_ptr<::Potion const>
const& Slowness();
233 MCAPI static ::std::shared_ptr<::Potion const>
const& Strength();
235 MCAPI static ::std::shared_ptr<::Potion const>
const& StrongHarming();
237 MCAPI static ::std::shared_ptr<::Potion const>
const& StrongHealing();
239 MCAPI static ::std::shared_ptr<::Potion const>
const& StrongLeaping();
241 MCAPI static ::std::shared_ptr<::Potion const>
const& StrongPoison();
243 MCAPI static ::std::shared_ptr<::Potion const>
const& StrongRegeneration();
245 MCAPI static ::std::shared_ptr<::Potion const>
const& StrongSlowness();
247 MCAPI static ::std::shared_ptr<::Potion const>
const& StrongStrength();
249 MCAPI static ::std::shared_ptr<::Potion const>
const& StrongSwiftness();
251 MCAPI static ::std::shared_ptr<::Potion const>
const& StrongTurtleMaster();
253 MCAPI static ::std::shared_ptr<::Potion const>
const& Swiftness();
255 MCAPI static ::std::shared_ptr<::Potion const>
const& Thick();
257 MCAPI static ::std::shared_ptr<::Potion const>
const& TurtleMaster();
259 MCAPI static ::std::shared_ptr<::Potion const>
const& Water();
261 MCAPI static ::std::shared_ptr<::Potion const>
const& WaterBreathing();
263 MCAPI static ::std::shared_ptr<::Potion const>
const& Weakness();
265 MCAPI static ::std::shared_ptr<::Potion const>
const& Weaving();
267 MCAPI static ::std::shared_ptr<::Potion const>
const& WindCharged();
269 MCAPI static ::std::shared_ptr<::Potion const>
const& Wither();
271 MCAPI
static int& mLastId();
273 MCAPI static ::std::add_lvalue_reference_t<::std::shared_ptr<::Potion const>[]> mPotionsById();
275 MCAPI static ::std::unordered_map<::std::string, int>& mPotionsByName();
281 MCAPI
void* $ctor(::Potion
const&);
283 MCAPI
void* $ctor(::std::string_view nameId);
285 MCAPI
void* $ctor(::std::string_view nameId, ::std::string_view prefix);
288 ::std::string_view nameId,
289 ::std::string_view descriptionID,
291 ::Potion::PotionVariant var
295 ::std::string_view nameId,
296 ::std::vector<::std::string> descriptionIDs,
297 ::std::vector<::MobEffectInstance> mobEffects,
298 ::Potion::PotionVariant var