Skip to content

Commit 10c78bc

Browse files
committed
Rename ICreativeTabHelper to IConstructHelper.
1 parent 18f52a6 commit 10c78bc

File tree

12 files changed

+83
-42
lines changed

12 files changed

+83
-42
lines changed

Common/src/main/java/net/darkhax/bookshelf/api/Services.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
import net.darkhax.bookshelf.api.data.ITagHelper;
55
import net.darkhax.bookshelf.api.event.IEventHelper;
66
import net.darkhax.bookshelf.api.registry.IGameRegistries;
7-
import net.darkhax.bookshelf.api.util.ICreativeTabHelper;
7+
import net.darkhax.bookshelf.api.util.IConstructHelper;
88
import net.darkhax.bookshelf.api.util.IInventoryHelper;
99
import net.darkhax.bookshelf.api.util.IPlatformHelper;
1010

@@ -16,8 +16,8 @@ public class Services {
1616
public static final IEventHelper EVENTS = load(IEventHelper.class);
1717
public static final IGameRegistries REGISTRIES = load(IGameRegistries.class);
1818
public static final ITagHelper TAGS = load(ITagHelper.class);
19-
public static final ICreativeTabHelper CREATIVE_TABS = load(ICreativeTabHelper.class);
2019
public static final IInventoryHelper INVENTORY_HELPER = load(IInventoryHelper.class);
20+
public static final IConstructHelper CONSTRUCTS = load(IConstructHelper.class);
2121

2222
public static <T> T load(Class<T> clazz) {
2323

Common/src/main/java/net/darkhax/bookshelf/api/registry/RegistryDataProvider.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ public final RegistryDataProvider withCreativeTab(Supplier<? extends ItemLike> i
6666

6767
public final RegistryDataProvider withCreativeTab(Supplier<? extends ItemLike> iconProvider, String id) {
6868

69-
return this.withCreativeTab(Services.CREATIVE_TABS.createBuilder(this.ownerId, id).setIcon(iconProvider).build());
69+
return this.withCreativeTab(Services.CONSTRUCTS.creativeTab(this.ownerId, id).setIcon(iconProvider).build());
7070
}
7171

7272
public final RegistryDataProvider withCreativeTab(CreativeModeTab tab) {
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
package net.darkhax.bookshelf.api.util;
2+
3+
import net.darkhax.bookshelf.api.item.ICreativeTabBuilder;
4+
import net.minecraft.core.BlockPos;
5+
import net.minecraft.world.level.block.Block;
6+
import net.minecraft.world.level.block.entity.BlockEntity;
7+
import net.minecraft.world.level.block.entity.BlockEntityType;
8+
import net.minecraft.world.level.block.state.BlockState;
9+
10+
import java.util.function.BiFunction;
11+
import java.util.function.Supplier;
12+
13+
public interface IConstructHelper {
14+
15+
ICreativeTabBuilder creativeTab(String namespace, String tabName);
16+
17+
<T extends BlockEntity> Supplier<BlockEntityType<T>> blockEntityType(BiFunction<BlockPos, BlockState, T> factory, Supplier<Block>... blocks);
18+
}

Common/src/main/java/net/darkhax/bookshelf/api/util/ICreativeTabHelper.java

Lines changed: 0 additions & 8 deletions
This file was deleted.
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
package net.darkhax.bookshelf.impl.util;
2+
3+
import net.darkhax.bookshelf.api.item.ICreativeTabBuilder;
4+
import net.darkhax.bookshelf.api.util.IConstructHelper;
5+
import net.fabricmc.fabric.api.object.builder.v1.block.entity.FabricBlockEntityTypeBuilder;
6+
import net.minecraft.core.BlockPos;
7+
import net.minecraft.resources.ResourceLocation;
8+
import net.minecraft.world.level.block.Block;
9+
import net.minecraft.world.level.block.entity.BlockEntity;
10+
import net.minecraft.world.level.block.entity.BlockEntityType;
11+
import net.minecraft.world.level.block.state.BlockState;
12+
13+
import java.util.Arrays;
14+
import java.util.function.BiFunction;
15+
import java.util.function.Supplier;
16+
17+
public class ConstructBuilderFabric implements IConstructHelper {
18+
19+
@Override
20+
public ICreativeTabBuilder creativeTab(String namespace, String tabName) {
21+
22+
return new net.darkhax.bookshelf.impl.item.CreativeTabBuilderFabric(new ResourceLocation(namespace, tabName));
23+
}
24+
25+
@Override
26+
public <T extends BlockEntity> Supplier<BlockEntityType<T>> blockEntityType(BiFunction<BlockPos, BlockState, T> factory, Supplier<Block>... validBlocks) {
27+
28+
return () -> FabricBlockEntityTypeBuilder.create(factory::apply, Arrays.stream(validBlocks).map(Supplier::get).toArray(Block[]::new)).build();
29+
}
30+
}

Fabric/src/main/java/net/darkhax/bookshelf/impl/util/CreativeTabBuilderFabric.java

Lines changed: 0 additions & 14 deletions
This file was deleted.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
net.darkhax.bookshelf.impl.util.ConstructBuilderFabric

Fabric/src/main/resources/META-INF/services/net.darkhax.bookshelf.api.util.ICreativeTabHelper

Lines changed: 0 additions & 1 deletion
This file was deleted.
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
package net.darkhax.bookshelf.impl.util;
2+
3+
import net.darkhax.bookshelf.api.item.ICreativeTabBuilder;
4+
import net.darkhax.bookshelf.api.util.IConstructHelper;
5+
import net.darkhax.bookshelf.impl.item.CreativeTabBuilderForge;
6+
import net.minecraft.core.BlockPos;
7+
import net.minecraft.resources.ResourceLocation;
8+
import net.minecraft.world.level.block.Block;
9+
import net.minecraft.world.level.block.entity.BlockEntity;
10+
import net.minecraft.world.level.block.entity.BlockEntityType;
11+
import net.minecraft.world.level.block.state.BlockState;
12+
13+
import java.util.Arrays;
14+
import java.util.function.BiFunction;
15+
import java.util.function.Supplier;
16+
17+
public class ConstructHelperForge implements IConstructHelper {
18+
19+
@Override
20+
public ICreativeTabBuilder creativeTab(String namespace, String tabName) {
21+
22+
return new CreativeTabBuilderForge(new ResourceLocation(namespace, tabName));
23+
}
24+
25+
@Override
26+
public <T extends BlockEntity> Supplier<BlockEntityType<T>> blockEntityType(BiFunction<BlockPos, BlockState, T> factory, Supplier<Block>... validBlocks) {
27+
28+
return () -> BlockEntityType.Builder.of(factory::apply, Arrays.stream(validBlocks).map(Supplier::get).toArray(Block[]::new)).build(null);
29+
}
30+
}

Forge/src/main/java/net/darkhax/bookshelf/impl/util/CreativeTabHelperForge.java

Lines changed: 0 additions & 15 deletions
This file was deleted.

0 commit comments

Comments
 (0)