17 enum class PotionType :
int {
24 enum class PotionVariant :
int {
61 ::ll::TypedStorage<4, 4, int> mId;
62 ::ll::TypedStorage<8, 32, ::std::string> mNameId;
63 ::ll::TypedStorage<8, 32, ::std::string> mPrefix;
64 ::ll::TypedStorage<8, 24, ::std::vector<::MobEffectInstance>> mEffects;
65 ::ll::TypedStorage<8, 24, ::std::vector<::std::string>> mDescriptionIds;
66 ::ll::TypedStorage<4, 4, ::Potion::PotionVariant> mVar;
72 MCAPI
explicit Potion(::std::string_view nameId);
75 ::std::string_view nameId,
76 ::std::string_view descriptionID,
78 ::Potion::PotionVariant var
82 ::std::string_view nameId,
83 ::std::vector<::std::string> descriptionIDs,
84 ::std::vector<::MobEffectInstance> mobEffects,
85 ::Potion::PotionVariant var
88 MCAPI ::std::string _getDescriptionIdCombiningStrings(::Potion::PotionType potiontype)
const;
90 MCAPI ::std::string _getDescriptionIdSingleString(::Potion::PotionType potionType)
const;
92 MCAPI
void appendFormattedPotionText(
94 ::Potion::PotionType potionType,
95 ::Potion::PotionVariant potionVariant,
100 MCAPI ::std::string getDescriptionId(::Potion::PotionType potionType)
const;
102 MCAPI ::std::string getPotencyDescription(::Potion::PotionType potionType,
float timeMod)
const;
110 MCAPI
static void addPotion(::std::shared_ptr<::Potion const> potion);
112 MCAPI
static void appendMobEffectText(
114 ::Potion::PotionVariant potionVariant,
120 MCAPI static ::std::string
121 effectDurationToString(::Potion::PotionType potionType,
float timeMod,
::MobEffectInstance const& effect);
125 MCAPI static ::std::string getBasePotion(::Potion::PotionType type);
127 MCAPI static ::std::string getPotencyDescription(
128 ::Potion::PotionType potionType,
130 ::std::string_view descID,
134 MCAPI static ::std::shared_ptr<::Potion const> getPotion(::std::string_view potionNameId);
142 MCAPI static ::std::shared_ptr<::Potion const>
const& Awkward();
144 MCAPI static ::std::shared_ptr<::Potion const>
const& FireResistance();
146 MCAPI static ::std::shared_ptr<::Potion const>
const& Harming();
148 MCAPI static ::std::shared_ptr<::Potion const>
const& Healing();
150 MCAPI static ::std::shared_ptr<::Potion const>
const& Infested();
152 MCAPI static ::std::shared_ptr<::Potion const>
const& Invisibility();
154 MCAPI static ::std::shared_ptr<::Potion const>
const& Leaping();
156 MCAPI static ::std::shared_ptr<::Potion const>
const& LongFireResistance();
158 MCAPI static ::std::shared_ptr<::Potion const>
const& LongInvisibility();
160 MCAPI static ::std::shared_ptr<::Potion const>
const& LongLeaping();
162 MCAPI static ::std::shared_ptr<::Potion const>
const& LongMundane();
164 MCAPI static ::std::shared_ptr<::Potion const>
const& LongNightvision();
166 MCAPI static ::std::shared_ptr<::Potion const>
const& LongPoison();
168 MCAPI static ::std::shared_ptr<::Potion const>
const& LongRegeneration();
170 MCAPI static ::std::shared_ptr<::Potion const>
const& LongSlowFalling();
172 MCAPI static ::std::shared_ptr<::Potion const>
const& LongSlowness();
174 MCAPI static ::std::shared_ptr<::Potion const>
const& LongStrength();
176 MCAPI static ::std::shared_ptr<::Potion const>
const& LongSwiftness();
178 MCAPI static ::std::shared_ptr<::Potion const>
const& LongTurtleMaster();
180 MCAPI static ::std::shared_ptr<::Potion const>
const& LongWaterBreathing();
182 MCAPI static ::std::shared_ptr<::Potion const>
const& LongWeakness();
184 MCAPI static ::std::shared_ptr<::Potion const>
const& Mundane();
186 MCAPI static ::std::shared_ptr<::Potion const>
const& Nightvision();
188 MCAPI static ::std::shared_ptr<::Potion const>
const& Oozing();
190 MCAPI static ::std::shared_ptr<::Potion const>
const& Poison();
192 MCAPI static ::std::shared_ptr<::Potion const>
const& Regeneration();
194 MCAPI static ::std::shared_ptr<::Potion const>
const& SlowFalling();
196 MCAPI static ::std::shared_ptr<::Potion const>
const& Slowness();
198 MCAPI static ::std::shared_ptr<::Potion const>
const& Strength();
200 MCAPI static ::std::shared_ptr<::Potion const>
const& StrongHarming();
202 MCAPI static ::std::shared_ptr<::Potion const>
const& StrongHealing();
204 MCAPI static ::std::shared_ptr<::Potion const>
const& StrongLeaping();
206 MCAPI static ::std::shared_ptr<::Potion const>
const& StrongPoison();
208 MCAPI static ::std::shared_ptr<::Potion const>
const& StrongRegeneration();
210 MCAPI static ::std::shared_ptr<::Potion const>
const& StrongSlowness();
212 MCAPI static ::std::shared_ptr<::Potion const>
const& StrongStrength();
214 MCAPI static ::std::shared_ptr<::Potion const>
const& StrongSwiftness();
216 MCAPI static ::std::shared_ptr<::Potion const>
const& StrongTurtleMaster();
218 MCAPI static ::std::shared_ptr<::Potion const>
const& Swiftness();
220 MCAPI static ::std::shared_ptr<::Potion const>
const& Thick();
222 MCAPI static ::std::shared_ptr<::Potion const>
const& TurtleMaster();
224 MCAPI static ::std::shared_ptr<::Potion const>
const& Water();
226 MCAPI static ::std::shared_ptr<::Potion const>
const& WaterBreathing();
228 MCAPI static ::std::shared_ptr<::Potion const>
const& Weakness();
230 MCAPI static ::std::shared_ptr<::Potion const>
const& Weaving();
232 MCAPI static ::std::shared_ptr<::Potion const>
const& WindCharged();
234 MCAPI static ::std::shared_ptr<::Potion const>
const& Wither();
236 MCAPI
static int& mLastId();
238 MCAPI static ::std::add_lvalue_reference_t<::std::shared_ptr<::Potion const>[]> mPotionsById();
240 MCAPI static ::std::unordered_map<::std::string, int>& mPotionsByName();
246 MCAPI
void* $ctor(::std::string_view nameId);
249 ::std::string_view nameId,
250 ::std::string_view descriptionID,
252 ::Potion::PotionVariant var
256 ::std::string_view nameId,
257 ::std::vector<::std::string> descriptionIDs,
258 ::std::vector<::MobEffectInstance> mobEffects,
259 ::Potion::PotionVariant var