Class UpgradeDataProvider<T extends UpgradeBase,R extends UpgradeSerialiser<? extends T>>
java.lang.Object
dan200.computercraft.api.upgrades.UpgradeDataProvider<T,R>
- Type Parameters:
T
- The base class of upgrades.R
- The upgrade serialiser to register for.
- All Implemented Interfaces:
net.minecraft.data.DataProvider
- Direct Known Subclasses:
PocketUpgradeDataProvider
,TurtleUpgradeDataProvider
public abstract class UpgradeDataProvider<T extends UpgradeBase,R extends UpgradeSerialiser<? extends T>>
extends Object
implements net.minecraft.data.DataProvider
A data generator/provider for turtle and pocket computer upgrades. This should not be extended directly, instead see
the other subclasses.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final record
UpgradeDataProvider.Upgrade<R extends UpgradeSerialiser<?>>
A constructed upgrade instance, producedaddUpgrades(Consumer)
.Nested classes/interfaces inherited from interface net.minecraft.data.DataProvider
net.minecraft.data.DataProvider.Factory<T extends net.minecraft.data.DataProvider>
-
Field Summary
Fields inherited from interface net.minecraft.data.DataProvider
FIXED_ORDER_FIELDS, KEY_COMPARATOR, LOGGER
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
UpgradeDataProvider
(net.minecraft.data.PackOutput output, String name, String folder, net.minecraft.resources.ResourceKey<net.minecraft.core.Registry<R>> registry) -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract void
addUpgrades
(Consumer<UpgradeDataProvider.Upgrade<R>> addUpgrade) Add all turtle or pocket computer upgrades.final R
existingSerialiser
(net.minecraft.resources.ResourceLocation id) final String
getName()
run
(net.minecraft.data.CachedOutput cache) final UpgradeDataProvider.Upgrade<R>
Register an upgrade using a "simple" serialiser (e.g.final UpgradeDataProvider.Upgrade<R>
simpleWithCustomItem
(net.minecraft.resources.ResourceLocation id, R serialiser, net.minecraft.world.item.Item item) Register an upgrade using a "simple" serialiser (e.g.
-
Constructor Details
-
UpgradeDataProvider
-
-
Method Details
-
simple
public final UpgradeDataProvider.Upgrade<R> simple(net.minecraft.resources.ResourceLocation id, R serialiser) Register an upgrade using a "simple" serialiser (e.g.TurtleUpgradeSerialiser.simple(Function)
).- Parameters:
id
- The ID of the upgrade to create.serialiser
- The simple serialiser.- Returns:
- The constructed upgrade, ready to be passed off to
addUpgrades(Consumer)
's consumer.
-
simpleWithCustomItem
public final UpgradeDataProvider.Upgrade<R> simpleWithCustomItem(net.minecraft.resources.ResourceLocation id, R serialiser, net.minecraft.world.item.Item item) Register an upgrade using a "simple" serialiser (e.g.TurtleUpgradeSerialiser.simple(Function)
).- Parameters:
id
- The ID of the upgrade to create.serialiser
- The simple serialiser.item
- The crafting upgrade for this item.- Returns:
- The constructed upgrade, ready to be passed off to
addUpgrades(Consumer)
's consumer.
-
addUpgrades
Add all turtle or pocket computer upgrades.Example
public class TurtleDataProvider extends TurtleUpgradeDataProvider { public TurtleDataProvider(PackOutput output) { super(output); } @Override protected void addUpgrades(Consumer<Upgrade<TurtleUpgradeSerialiser<?>>> addUpgrade) { simpleWithCustomItem( new ResourceLocation(ExampleMod.MOD_ID, "example_turtle_upgrade"), ExampleMod.EXAMPLE_TURTLE_UPGRADE, Items.COMPASS ).add(addUpgrade); } }
- Parameters:
addUpgrade
- A callback used to register an upgrade.
-
run
- Specified by:
run
in interfacenet.minecraft.data.DataProvider
-
getName
- Specified by:
getName
in interfacenet.minecraft.data.DataProvider
-
existingSerialiser
-
getGeneratedUpgrades
-