Mikstury
Mikstury, to materiały możliwe do spożycia, które przyznają istocie efekt. Gracz może warzyć mikstury używając statywu alchemicznego, lub otrzymując je jako przedmioty (itemy) z innych mechanik w grze.
Własne Mikstury
Tak samo jak przedmioty i bloki, mikstury muszą być zarejestrowane.
Tworzenie Własnej Mikstury
Zacznijmy od zdeklarowania pola do przechowania twojej instancji 'Potion'. Będziemy bezpośrednio używać klasy implementującej 'ModInitializer' do przechowywania owej mikstury.
java
Registry.register(
BuiltInRegistries.POTION,
ResourceLocation.fromNamespaceAndPath(FabricDocsReference.MOD_ID, "tater"),
new Potion("tater",
new MobEffectInstance(
FabricDocsReferenceEffects.TATER,
3600,
0)));
@Override1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
Instancja 'MobEffectInstance' posiada 3 argumenty:
Holder<MobEffect> type- Efekt. Używamy naszego własnego efektu tutaj. Alternatywnie, możesz użyć efektów gry niezmodyfikowanej za pomocą domyślnej klasy 'MobEffects'.int duration- Czas trwania efektu w tickach.int amplifier- Mnożnik dla efektu. Na przykład, Pośpiech II będzie mieć mnożnik o wartości 1.
INFO
Aby stworzyć swój własny efekt, proszę zobacz poradnik o Efektach.
Rejestrowanie Mikstury
W naszym inicjalizatorze będziemy używać wydarzenia 'FabricPotionBrewingBuilder.BUILD' aby zarejestrować nasza miksturę używając metody 'PotionBrewing.addMix'.
java
FabricBrewingRecipeRegistryBuilder.BUILD.register(builder -> {
builder.addMix(
// Input potion.
Potions.WATER,
// Ingredient
Items.POTATO,
// Output potion.
BuiltInRegistries.POTION.wrapAsHolder(TATER_POTION)
);
});
}
}1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
'addMix' posiada 3 argumenty:
Holder<Potion> input- Wpis w rejestrze oryginalnej mikstury. Zazwyczaj może to być Butelka Wody (Water Bottle) albo Niezidentyfikowana Mikstura (Awkward Potion).Item item- Przedmiot, który jest głównym składnikiem mikstury.Holder<Potion> output- Wpis w rejestrze mikstury wyjściowej.
Z zarejestrowaniem, możesz wywarzyć Kartoflowa miksturę używając ziemniaka.




