Skip to content

Commit 1c1c560

Browse files
committed
update old Taggable types
1 parent 6642c71 commit 1c1c560

File tree

7 files changed

+60
-22
lines changed

7 files changed

+60
-22
lines changed

src/main/java/org/spongepowered/api/block/BlockType.java

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,10 @@
2828
import org.spongepowered.api.block.entity.BlockEntity;
2929
import org.spongepowered.api.data.DataHolder;
3030
import org.spongepowered.api.item.ItemType;
31-
import org.spongepowered.api.registry.DefaultedRegistryValue;
31+
import org.spongepowered.api.registry.DefaultedRegistryType;
32+
import org.spongepowered.api.registry.RegistryTypes;
3233
import org.spongepowered.api.state.StateContainer;
33-
import org.spongepowered.api.tag.Taggable;
34+
import org.spongepowered.api.tag.DefaultedTaggable;
3435
import org.spongepowered.api.util.annotation.CatalogedBy;
3536

3637
import java.util.Optional;
@@ -44,7 +45,7 @@
4445
* via {@link BlockEntity}.</p>
4546
*/
4647
@CatalogedBy(BlockTypes.class)
47-
public interface BlockType extends DefaultedRegistryValue, ComponentLike, StateContainer<BlockState>, DataHolder.Immutable<BlockType>, Taggable<BlockType> {
48+
public interface BlockType extends DefaultedTaggable<BlockType>, ComponentLike, StateContainer<BlockState>, DataHolder.Immutable<BlockType> {
4849

4950
/**
5051
* Return the {@link ItemType} that represents this block.
@@ -104,4 +105,8 @@ public interface BlockType extends DefaultedRegistryValue, ComponentLike, StateC
104105
*/
105106
boolean hasBlockEntity();
106107

108+
@Override
109+
default DefaultedRegistryType<BlockType> registryType() {
110+
return RegistryTypes.BLOCK_TYPE;
111+
}
107112
}

src/main/java/org/spongepowered/api/entity/EntityType.java

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,15 +26,16 @@
2626

2727
import net.kyori.adventure.text.ComponentLike;
2828
import org.spongepowered.api.entity.living.player.server.ServerPlayer;
29-
import org.spongepowered.api.registry.DefaultedRegistryValue;
30-
import org.spongepowered.api.tag.Taggable;
29+
import org.spongepowered.api.registry.DefaultedRegistryType;
30+
import org.spongepowered.api.registry.RegistryTypes;
31+
import org.spongepowered.api.tag.DefaultedTaggable;
3132
import org.spongepowered.api.util.annotation.CatalogedBy;
3233

3334
/**
3435
* Describes a type of entity.
3536
*/
3637
@CatalogedBy(EntityTypes.class)
37-
public interface EntityType<A extends Entity> extends DefaultedRegistryValue, ComponentLike, Taggable<EntityType<?>> {
38+
public interface EntityType<A extends Entity> extends DefaultedTaggable<EntityType<? extends Entity>>, ComponentLike {
3839

3940
/**
4041
* If true {@link Entity entities} of this type will not be saved to disk.
@@ -70,4 +71,9 @@ public interface EntityType<A extends Entity> extends DefaultedRegistryValue, Co
7071
* @return The category of this type
7172
*/
7273
EntityCategory category();
74+
75+
@Override
76+
default DefaultedRegistryType<EntityType<? extends Entity>> registryType() {
77+
return RegistryTypes.ENTITY_TYPE;
78+
}
7379
}

src/main/java/org/spongepowered/api/event/cause/entity/damage/DamageType.java

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,10 @@
2828
import org.spongepowered.api.datapack.DataPackSerializable;
2929
import org.spongepowered.api.entity.Entity;
3030
import org.spongepowered.api.event.cause.entity.damage.source.DamageSource;
31-
import org.spongepowered.api.registry.DefaultedRegistryValue;
31+
import org.spongepowered.api.registry.DefaultedRegistryType;
32+
import org.spongepowered.api.registry.RegistryTypes;
33+
import org.spongepowered.api.tag.DefaultedTaggable;
3234
import org.spongepowered.api.tag.Tag;
33-
import org.spongepowered.api.tag.Taggable;
3435
import org.spongepowered.api.util.CopyableBuilder;
3536
import org.spongepowered.api.util.Nameable;
3637
import org.spongepowered.api.util.annotation.CatalogedBy;
@@ -42,7 +43,7 @@
4243
* can damage an {@link Entity} with varying {@link DamageType}s depending on the circumstances.
4344
*/
4445
@CatalogedBy(DamageTypes.class)
45-
public interface DamageType extends DefaultedRegistryValue, Nameable, Taggable<DamageType>, DataPackSerializable {
46+
public interface DamageType extends DefaultedTaggable<DamageType>, Nameable, DataPackSerializable {
4647

4748
/**
4849
* Creates a new {@link Builder} to create a {@link DamageType}.
@@ -88,6 +89,11 @@ static Builder builder() {
8889
*/
8990
DamageEffect effect();
9091

92+
@Override
93+
default DefaultedRegistryType<DamageType> registryType() {
94+
return RegistryTypes.DAMAGE_TYPE;
95+
}
96+
9197
/**
9298
* A builder to create {@link DamageType}s.
9399
*/

src/main/java/org/spongepowered/api/fluid/FluidType.java

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,10 @@
3030
import org.spongepowered.api.data.DataHolder;
3131
import org.spongepowered.api.data.Keys;
3232
import org.spongepowered.api.item.ItemType;
33-
import org.spongepowered.api.registry.DefaultedRegistryValue;
33+
import org.spongepowered.api.registry.DefaultedRegistryType;
34+
import org.spongepowered.api.registry.RegistryTypes;
3435
import org.spongepowered.api.state.StateContainer;
35-
import org.spongepowered.api.tag.Taggable;
36+
import org.spongepowered.api.tag.DefaultedTaggable;
3637
import org.spongepowered.api.util.annotation.CatalogedBy;
3738

3839
/**
@@ -48,6 +49,10 @@
4849
* than how vanilla implementations handle them.</p>
4950
*/
5051
@CatalogedBy(FluidTypes.class)
51-
public interface FluidType extends DefaultedRegistryValue, StateContainer<FluidState>, DataHolder.Immutable<FluidType>, Taggable<FluidType> {
52+
public interface FluidType extends DefaultedTaggable<FluidType>, StateContainer<FluidState>, DataHolder.Immutable<FluidType> {
5253

54+
@Override
55+
default DefaultedRegistryType<FluidType> registryType() {
56+
return RegistryTypes.FLUID_TYPE;
57+
}
5358
}

src/main/java/org/spongepowered/api/item/ItemType.java

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,9 @@
2828
import org.spongepowered.api.block.BlockType;
2929
import org.spongepowered.api.data.DataHolder;
3030
import org.spongepowered.api.item.inventory.ItemStack;
31-
import org.spongepowered.api.registry.DefaultedRegistryValue;
32-
import org.spongepowered.api.tag.Taggable;
31+
import org.spongepowered.api.registry.DefaultedRegistryType;
32+
import org.spongepowered.api.registry.RegistryTypes;
33+
import org.spongepowered.api.tag.DefaultedTaggable;
3334
import org.spongepowered.api.util.annotation.CatalogedBy;
3435

3536
import java.util.Optional;
@@ -39,7 +40,7 @@
3940
* A type of item.
4041
*/
4142
@CatalogedBy(ItemTypes.class)
42-
public interface ItemType extends DefaultedRegistryValue, ComponentLike, DataHolder.Immutable<ItemType>, Taggable<ItemType> {
43+
public interface ItemType extends DefaultedTaggable<ItemType>, ComponentLike, DataHolder.Immutable<ItemType> {
4344

4445
/**
4546
* Gets the corresponding {@link BlockType} of this item if one exists.
@@ -89,4 +90,9 @@ public interface ItemType extends DefaultedRegistryValue, ComponentLike, DataHol
8990
* @return true if this type is any of the given item types
9091
*/
9192
boolean isAnyOf(ItemType... types);
93+
94+
@Override
95+
default DefaultedRegistryType<ItemType> registryType() {
96+
return RegistryTypes.ITEM_TYPE;
97+
}
9298
}

src/main/java/org/spongepowered/api/item/enchantment/EnchantmentType.java

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,16 +27,17 @@
2727
import net.kyori.adventure.text.ComponentLike;
2828
import org.spongepowered.api.block.entity.EnchantmentTable;
2929
import org.spongepowered.api.item.inventory.ItemStackLike;
30-
import org.spongepowered.api.registry.DefaultedRegistryValue;
30+
import org.spongepowered.api.registry.DefaultedRegistryType;
31+
import org.spongepowered.api.registry.RegistryTypes;
32+
import org.spongepowered.api.tag.DefaultedTaggable;
3133
import org.spongepowered.api.tag.EnchantmenTypeTags;
32-
import org.spongepowered.api.tag.Taggable;
3334
import org.spongepowered.api.util.annotation.CatalogedBy;
3435

3536
/**
3637
* Represents a modifier on an item that has various effects.
3738
*/
3839
@CatalogedBy(EnchantmentTypes.class)
39-
public interface EnchantmentType extends DefaultedRegistryValue, ComponentLike, Taggable<EnchantmentType> {
40+
public interface EnchantmentType extends DefaultedTaggable<EnchantmentType>, ComponentLike {
4041

4142
/**
4243
* Gets the weight of this enchantment type.
@@ -130,4 +131,8 @@ default boolean isCurse() {
130131
return this.is(EnchantmenTypeTags.CURSE);
131132
}
132133

134+
@Override
135+
default DefaultedRegistryType<EnchantmentType> registryType() {
136+
return RegistryTypes.ENCHANTMENT_TYPE;
137+
}
133138
}

src/main/java/org/spongepowered/api/world/biome/Biome.java

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,9 @@
3535
import org.spongepowered.api.entity.EntityCategory;
3636
import org.spongepowered.api.entity.EntityType;
3737
import org.spongepowered.api.entity.living.golem.SnowGolem;
38-
import org.spongepowered.api.registry.DefaultedRegistryValue;
39-
import org.spongepowered.api.tag.Taggable;
40-
import org.spongepowered.api.util.Builder;
38+
import org.spongepowered.api.registry.DefaultedRegistryType;
39+
import org.spongepowered.api.registry.RegistryTypes;
40+
import org.spongepowered.api.tag.DefaultedTaggable;
4141
import org.spongepowered.api.util.Color;
4242
import org.spongepowered.api.util.CopyableBuilder;
4343
import org.spongepowered.api.util.annotation.CatalogedBy;
@@ -60,7 +60,7 @@
6060
* Represents a biome.
6161
*/
6262
@CatalogedBy(Biomes.class)
63-
public interface Biome extends DefaultedRegistryValue, DataHolder, Taggable<Biome>, DataPackSerializable {
63+
public interface Biome extends DefaultedTaggable<Biome>, DataHolder, DataPackSerializable {
6464

6565
/**
6666
* Creates a new {@link Builder} to create a {@link Biome}.
@@ -286,6 +286,11 @@ default Optional<SoundConfig.BackgroundMusic> backgroundMusic() {
286286
return this.get(Keys.BACKGROUND_MUSIC);
287287
}
288288

289+
@Override
290+
default DefaultedRegistryType<Biome> registryType() {
291+
return RegistryTypes.BIOME;
292+
}
293+
289294
/**
290295
* A builder to create {@link Biome}s.
291296
*/

0 commit comments

Comments
 (0)