Skip to content

Commit b43744a

Browse files
more todo
1 parent 003cfbf commit b43744a

File tree

10 files changed

+60
-44
lines changed

10 files changed

+60
-44
lines changed

src/main/java/com/rae/creatingspace/CreatingSpace.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ public CreatingSpace(IEventBus modEventBus, ModContainer modContainer) {
6565

6666
TagsInit.init();
6767

68-
SoundInit.register();
68+
SoundInit.register(modEventBus);
6969
ItemInit.register();
7070
BlockInit.register();
7171
BlockEntityInit.register();

src/main/java/com/rae/creatingspace/api/squedule/instruction/DestinationInstruction.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@
1313
import net.minecraft.network.chat.Component;
1414
import net.minecraft.resources.ResourceLocation;
1515
import net.minecraft.world.item.ItemStack;
16-
import net.minecraft.world.phys.Vec2;
17-
import net.minecraftforge.api.distmarker.Dist;
18-
import net.minecraftforge.api.distmarker.OnlyIn;
16+
17+
import net.neoforged.api.distmarker.Dist;
18+
import net.neoforged.api.distmarker.OnlyIn;
1919
import org.jetbrains.annotations.NotNull;
2020

2121
import java.util.List;

src/main/java/com/rae/creatingspace/content/fluids/storage/CryogenicTankItem.java

Lines changed: 29 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,23 @@
11
package com.rae.creatingspace.content.fluids.storage;
22

3+
import com.simibubi.create.foundation.ICapabilityProvider;
34
import net.minecraft.ChatFormatting;
5+
import net.minecraft.core.component.DataComponents;
46
import net.minecraft.nbt.CompoundTag;
57
import net.minecraft.network.chat.Component;
68
import net.minecraft.world.item.BlockItem;
79
import net.minecraft.world.item.ItemStack;
810
import net.minecraft.world.item.TooltipFlag;
9-
import net.minecraft.world.level.Level;
11+
import net.minecraft.world.item.component.CustomData;
1012
import net.minecraft.world.level.block.Block;
11-
import net.minecraftforge.common.capabilities.ICapabilityProvider;
12-
import net.minecraftforge.fluids.FluidStack;
13-
import net.minecraftforge.fluids.capability.templates.FluidHandlerItemStack;
13+
14+
import net.neoforged.neoforge.fluids.FluidStack;
15+
import net.neoforged.neoforge.fluids.capability.templates.FluidHandlerItemStack;
1416
import org.jetbrains.annotations.Nullable;
1517

1618
import java.util.List;
19+
import java.util.Objects;
1720

18-
import static net.minecraftforge.fluids.capability.templates.FluidHandlerItemStack.FLUID_NBT_KEY;
1921

2022
public class CryogenicTankItem extends BlockItem {
2123
public CryogenicTankItem(Block block, Properties properties) {
@@ -30,24 +32,30 @@ public Component getName(ItemStack itemStack) {
3032
}
3133

3234
@Override
33-
public void appendHoverText(ItemStack stack, @Nullable Level level, List<Component> components, TooltipFlag tooltipFlag) {
34-
CompoundTag tank = stack.getOrCreateTag().getCompound(FLUID_NBT_KEY);
35-
FluidStack fluid = FluidStack.loadFluidStackFromNBT(tank);
35+
public void appendHoverText(ItemStack stack, TooltipContext context, List<Component> components, TooltipFlag tooltipFlag) {
36+
//TODO make a string constant somewhere for "Fluid"
37+
CustomData data = stack.get(DataComponents.CUSTOM_DATA);
38+
if (data!=null) {
39+
CompoundTag tank = (CompoundTag) data.copyTag().get("Fluid");
3640

37-
if (!fluid.isEmpty()){
38-
components.add(
39-
Component.translatable(fluid.getTranslationKey())
40-
.append(" ")
41-
.append(String.valueOf(fluid.getAmount()))
42-
.append(" / 4000mb")
43-
.withStyle(ChatFormatting.AQUA)
44-
);
45-
}
46-
else {
47-
components.add(Component.literal("empty").withStyle(ChatFormatting.GRAY));
41+
if (tank == null) tank = new CompoundTag();
42+
43+
FluidStack fluid = FluidStack.parseOptional(Objects.requireNonNull(context.registries()),tank);
44+
45+
if (!fluid.isEmpty()) {
46+
components.add(
47+
Component.translatable(fluid.getTranslationKey())
48+
.append(" ")
49+
.append(String.valueOf(fluid.getAmount()))
50+
.append(" / 4000mb")
51+
.withStyle(ChatFormatting.AQUA)
52+
);
53+
} else {
54+
components.add(Component.literal("empty").withStyle(ChatFormatting.GRAY));
55+
}
4856
}
4957

50-
super.appendHoverText(stack, level, components, tooltipFlag);
58+
super.appendHoverText(stack, context, components, tooltipFlag);
5159
}
5260

5361
@Override
@@ -56,7 +64,7 @@ public int getMaxStackSize(ItemStack stack) {
5664
}
5765

5866

59-
67+
//TODO capabilities -> register capabilities in EventHandler with an item fluid capability
6068
@Override
6169
public @Nullable ICapabilityProvider initCapabilities(ItemStack stack, @Nullable CompoundTag nbt) {
6270
return new FluidHandlerItemStack(stack, 4000) {

src/main/java/com/rae/creatingspace/content/recipes/electrolysis/ElectrodeItem.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import net.minecraft.world.entity.item.ItemEntity;
55
import net.minecraft.world.item.Item;
66
import net.minecraft.world.item.ItemStack;
7+
import org.jetbrains.annotations.Nullable;
78

89
import java.util.function.Consumer;
910

@@ -19,7 +20,7 @@ public boolean isDamageable(ItemStack stack) {
1920

2021

2122
@Override
22-
public <T extends LivingEntity> int damageItem(ItemStack stack, int amount, T entity, Consumer<T> onBroken) {
23+
public <T extends LivingEntity> int damageItem(ItemStack stack, int amount, T entity, Consumer<Item> onBroken) {
2324
return super.damageItem(stack, amount, entity, onBroken);
2425
}
2526

src/main/java/com/rae/creatingspace/content/rocket/engine/table/EngineerTableMenu.java

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,16 @@
66
import net.minecraft.client.multiplayer.ClientLevel;
77
import net.minecraft.nbt.NbtOps;
88
import net.minecraft.network.FriendlyByteBuf;
9+
import net.minecraft.network.RegistryFriendlyByteBuf;
910
import net.minecraft.world.entity.player.Inventory;
1011
import net.minecraft.world.entity.player.Player;
1112
import net.minecraft.world.inventory.MenuType;
1213
import net.minecraft.world.inventory.Slot;
1314
import net.minecraft.world.item.ItemStack;
1415
import net.minecraft.world.level.block.entity.BlockEntity;
15-
import net.minecraftforge.items.SlotItemHandler;
16+
import net.neoforged.neoforge.items.IItemHandler;
17+
import net.neoforged.neoforge.items.SlotItemHandler;
18+
1619

1720
import java.util.Objects;
1821

@@ -26,7 +29,7 @@ public RocketEngineerTableBlockEntity.SyncData getSyncData() {
2629
RocketEngineerTableBlockEntity.SyncData syncData;
2730
private Slot outputSlot;
2831

29-
public EngineerTableMenu(MenuType<?> type, int id, Inventory inv, FriendlyByteBuf extraData) {
32+
public EngineerTableMenu(MenuType<?> type, int id, Inventory inv, RegistryFriendlyByteBuf extraData) {
3033
super(type, id, inv, extraData);
3134
}
3235

@@ -43,14 +46,15 @@ public static EngineerTableMenu create(int id, Inventory inv, RocketEngineerTabl
4346
return new EngineerTableMenu(MenuTypesInit.ENGINEER_TABLE.get(), id, inv, be);
4447
}
4548

49+
4650
@Override
47-
protected RocketEngineerTableBlockEntity createOnClient(FriendlyByteBuf extraData) {
51+
protected RocketEngineerTableBlockEntity createOnClient(RegistryFriendlyByteBuf extraData) {
4852
//System.out.println("create on client");
4953
ClientLevel world = Minecraft.getInstance().level;
5054
assert world != null;
5155
BlockEntity blockEntity = world.getBlockEntity(extraData.readBlockPos());
5256
if (blockEntity instanceof RocketEngineerTableBlockEntity engineerTable) {
53-
engineerTable.readClient(Objects.requireNonNull(extraData.readNbt()));
57+
engineerTable.readClient(Objects.requireNonNull(extraData.readNbt()), world.registryAccess());
5458
return engineerTable;
5559
}
5660
//System.out.println("fail");
@@ -60,13 +64,13 @@ protected RocketEngineerTableBlockEntity createOnClient(FriendlyByteBuf extraDat
6064
@Override
6165
protected void initAndReadInventory(RocketEngineerTableBlockEntity contentHolder) {
6266
syncData = RocketEngineerTableBlockEntity.SyncData.getCoded()
63-
.parse(NbtOps.INSTANCE, contentHolder.saveScreenData()).get().orThrow();
67+
.parse(NbtOps.INSTANCE, contentHolder.saveScreenData()).getOrThrow();
6468

6569
}
6670

6771
@Override
6872
protected void addSlots() {
69-
outputSlot = new SlotItemHandler(contentHolder.inventory, 0, 316, 100) {
73+
outputSlot = new SlotItemHandler((IItemHandler) contentHolder.inventory, 0, 316, 100) {
7074
@Override
7175
public boolean mayPlace(ItemStack stack) {
7276
return false;

src/main/java/com/rae/creatingspace/init/graphics/DimensionEffectInit.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,11 @@
33
import com.rae.creatingspace.content.planets.CustomDimensionEffects;
44
import com.rae.creatingspace.init.worldgen.DimensionInit;
55
import net.minecraft.resources.ResourceLocation;
6-
import net.minecraftforge.api.distmarker.Dist;
7-
import net.minecraftforge.api.distmarker.OnlyIn;
8-
import net.minecraftforge.client.event.RegisterDimensionSpecialEffectsEvent;
9-
import net.minecraftforge.eventbus.api.SubscribeEvent;
6+
import net.neoforged.api.distmarker.Dist;
7+
import net.neoforged.api.distmarker.OnlyIn;
8+
import net.neoforged.bus.api.SubscribeEvent;
9+
import net.neoforged.neoforge.client.event.RegisterDimensionSpecialEffectsEvent;
10+
1011

1112
public class DimensionEffectInit {
1213

src/main/java/com/rae/creatingspace/init/ingameobject/SoundInit.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import com.rae.creatingspace.CreatingSpace;
44
import net.minecraft.core.registries.Registries;
55
import net.minecraft.sounds.SoundEvent;
6+
import net.neoforged.bus.api.IEventBus;
67
import net.neoforged.neoforge.registries.DeferredHolder;
78
import net.neoforged.neoforge.registries.DeferredRegister;
89

@@ -19,8 +20,8 @@ public static DeferredHolder<SoundEvent, SoundEvent> registerSound(String id) {
1920
return SOUNDS.register(id,
2021
() -> SoundEvent.createVariableRangeEvent(CreatingSpace.resource(id)));
2122
}
22-
public static void register() {
23-
SOUNDS.register(FMLJavaModLoadingContext.get().getModEventBus());
23+
public static void register(IEventBus modEventBus) {
24+
SOUNDS.register(modEventBus);
2425
}
2526

2627
}

src/main/java/com/rae/creatingspace/legacy/server/items/SmallEngineItem.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,9 +49,9 @@ protected boolean placeBlock(BlockPlaceContext pContext, BlockState pState) {
4949
}
5050

5151
@Override
52-
public void appendHoverText(ItemStack itemStack, @Nullable Level level, List<Component> components, TooltipFlag flag) {
52+
public void appendHoverText(ItemStack itemStack, TooltipContext context, List<Component> components, TooltipFlag flag) {
5353

5454
appendEngineTextDirect(components,PropellantTypeInit.METHALOX.get(), (int) (PropellantTypeInit.METHALOX.get().getMaxISP() * 0.79f),1000, CSConfigs.SERVER.rocketEngine.smallRocketEngineThrust.get());
55-
super.appendHoverText(itemStack, level, components, flag);
55+
super.appendHoverText(itemStack, context, components, flag);
5656
}
5757
}

src/main/java/com/rae/creatingspace/legacy/utilities/data/MassOfBlockReader.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,8 @@ public class MassOfBlockReader {
2626
BLOCKS_MASS_CODEC.fieldOf("values").forGetter(i->i.massMap)
2727
).apply(instance, PartialMassMap::new));
2828

29-
29+
//TODO change to the FormicAPI version : float map reader -> better datapack compat and cleaner implementation
30+
// but will require setting up the maven for it
3031
public static final SingleFileCodecJsonDataManager<PartialMassMap> MASS_HOLDER = new SingleFileCodecJsonDataManager<>("creatingspace_utilities", CreatingSpace.resource("blocks_mass"), PARTIAL_BLOCKS_MASS_CODEC, LOGGER);
3132

3233
public static Map<TagKey<Block>, Integer> getOnlyTags(PartialMassMap data) {
@@ -35,7 +36,7 @@ public static Map<TagKey<Block>, Integer> getOnlyTags(PartialMassMap data) {
3536
for (String key : rawMap.keySet()){
3637
if (key.contains("#")){
3738
String location = key.replace("#","");
38-
ResourceLocation tagLocation = new ResourceLocation(location);
39+
ResourceLocation tagLocation = ResourceLocation.parse(location);
3940
TagKey<Block> blockTag = BlockTags.create(tagLocation);
4041
finalMap.put(blockTag,rawMap.get(key));
4142
}
@@ -48,7 +49,7 @@ public static Map<ResourceLocation, Integer> getWithoutTags(PartialMassMap data)
4849
HashMap<ResourceLocation, Integer> finalMap = new HashMap<>();
4950
for (String key : rawMap.keySet()){
5051
if (!key.contains("#")){
51-
ResourceLocation blockLocation = new ResourceLocation(key);
52+
ResourceLocation blockLocation = ResourceLocation.parse(key);
5253
finalMap.put(blockLocation,rawMap.get(key));
5354
}
5455
}

src/main/java/com/rae/creatingspace/legacy/utilities/data/SingleFileCodecJsonDataManager.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ public Map<ResourceLocation, T> mapValues(Map<ResourceLocation, JsonElement> inp
5050
// if we fail to parse json, log an error and continue
5151
// if we succeeded, add the resulting T to the map
5252
this.codec.decode(JsonOps.INSTANCE, element)
53-
.get()
53+
.getPartialOrThrow()
5454
.ifLeft(result -> newMap.put(this.location, result.getFirst()))
5555
.ifRight(partial -> this.logger.error("Failed to parse data json for {} due to: {}", this.location.toString(), partial.message()));
5656
}

0 commit comments

Comments
 (0)