Compare commits

..

4 Commits
1.19 ... 1.20

Author SHA1 Message Date
3485db8f2d Changed build version number to v2.0.0. 2024-01-27 17:36:40 +00:00
3c5425d0c4 Finished porting to 1.20.1. 2024-01-26 21:23:09 +00:00
60f5d27640 Creative mode tabs:
- Changed translation key for creative mode tab name to follow vanilla.
- Removed old creative mode tab register event handler.
- Created new creative mode tab registration setup.
- Optimized imports.
2024-01-26 21:10:17 +00:00
fb7304ccc4 Changed versions. 2024-01-26 20:50:10 +00:00
18 changed files with 61 additions and 57 deletions

View File

@ -8,7 +8,7 @@ name = Micle's Totem of Reviving
author = Micle author = Micle
buildVersion = 2.0.0 buildVersion = 2.0.0
mcVersion = 1.19.4 mcVersion = 1.20.1
forgeVersion = 45.2.8 forgeVersion = 47.2.20
#jeiVersion = 11.+ #jeiVersion = 11.+

View File

@ -1 +1 @@
rootProject.name = 'TotemOfReviving-1.19' rootProject.name = 'TotemOfReviving-1.20'

View File

@ -30,5 +30,6 @@
"recipes": [ "recipes": [
"totemofreviving:diamond_charge" "totemofreviving:diamond_charge"
] ]
} },
"sends_telemetry_event": false
} }

View File

@ -30,5 +30,6 @@
"recipes": [ "recipes": [
"totemofreviving:diamond_totem" "totemofreviving:diamond_totem"
] ]
} },
"sends_telemetry_event": false
} }

View File

@ -30,5 +30,6 @@
"recipes": [ "recipes": [
"totemofreviving:iron_charge" "totemofreviving:iron_charge"
] ]
} },
"sends_telemetry_event": false
} }

View File

@ -30,5 +30,6 @@
"recipes": [ "recipes": [
"totemofreviving:iron_totem" "totemofreviving:iron_totem"
] ]
} },
"sends_telemetry_event": false
} }

View File

@ -30,5 +30,6 @@
"recipes": [ "recipes": [
"totemofreviving:netherite_charge" "totemofreviving:netherite_charge"
] ]
} },
"sends_telemetry_event": false
} }

View File

@ -30,5 +30,6 @@
"recipes": [ "recipes": [
"totemofreviving:netherite_totem" "totemofreviving:netherite_totem"
] ]
} },
"sends_telemetry_event": false
} }

View File

@ -30,5 +30,6 @@
"recipes": [ "recipes": [
"totemofreviving:straw_charge" "totemofreviving:straw_charge"
] ]
} },
"sends_telemetry_event": false
} }

View File

@ -30,5 +30,6 @@
"recipes": [ "recipes": [
"totemofreviving:straw_totem" "totemofreviving:straw_totem"
] ]
} },
"sends_telemetry_event": false
} }

View File

@ -3,8 +3,6 @@ package dev.micle.totemofreviving;
import dev.micle.totemofreviving.proxy.IProxy; import dev.micle.totemofreviving.proxy.IProxy;
import dev.micle.totemofreviving.proxy.Proxy; import dev.micle.totemofreviving.proxy.Proxy;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.CreativeModeTab;
import net.minecraft.world.item.CreativeModeTabs;
import net.minecraftforge.fml.DistExecutor; import net.minecraftforge.fml.DistExecutor;
import net.minecraftforge.fml.ModContainer; import net.minecraftforge.fml.ModContainer;
import net.minecraftforge.fml.ModList; import net.minecraftforge.fml.ModList;
@ -15,7 +13,6 @@ import java.util.Optional;
@Mod(TotemOfReviving.MOD_ID) @Mod(TotemOfReviving.MOD_ID)
public final class TotemOfReviving { public final class TotemOfReviving {
public static final String MOD_ID = "totemofreviving"; public static final String MOD_ID = "totemofreviving";
public static CreativeModeTab CREATIVE_TAB = CreativeModeTabs.getDefaultTab();
private static IProxy proxy; private static IProxy proxy;

View File

@ -1,33 +0,0 @@
package dev.micle.totemofreviving.event.common;
import dev.micle.totemofreviving.TotemOfReviving;
import dev.micle.totemofreviving.setup.ModItems;
import net.minecraft.network.chat.Component;
import net.minecraft.world.item.ItemStack;
import net.minecraftforge.event.CreativeModeTabEvent;
import net.minecraftforge.eventbus.api.SubscribeEvent;
import net.minecraftforge.fml.common.Mod;
@Mod.EventBusSubscriber(modid = TotemOfReviving.MOD_ID)
public class OnCreativeModeTabRegisterEventHandler {
@SubscribeEvent
public static void creativeModeTabRegisterEvent(CreativeModeTabEvent.Register event) {
System.out.println("HERE!");
TotemOfReviving.CREATIVE_TAB = event.registerCreativeModeTab(
TotemOfReviving.createResourceLocation("creative_mode_tab_main"), builder -> builder
.icon(() -> new ItemStack(ModItems.STRAW_TOTEM.get()))
.title(Component.translatable(String.format("tabs.%s.main_tab", TotemOfReviving.MOD_ID)))
.displayItems((featureFlags, output) -> {
output.accept(ModItems.STRAW_TOTEM.get());
output.accept(ModItems.IRON_TOTEM.get());
output.accept(ModItems.DIAMOND_TOTEM.get());
output.accept(ModItems.NETHERITE_TOTEM.get());
output.accept(ModItems.STRAW_CHARGE.get());
output.accept(ModItems.IRON_CHARGE.get());
output.accept(ModItems.DIAMOND_CHARGE.get());
output.accept(ModItems.NETHERITE_CHARGE.get());
})
);
}
}

View File

@ -1,6 +1,5 @@
package dev.micle.totemofreviving.item.charge; package dev.micle.totemofreviving.item.charge;
import dev.micle.totemofreviving.setup.Config;
import net.minecraft.ChatFormatting; import net.minecraft.ChatFormatting;
import net.minecraft.network.chat.Component; import net.minecraft.network.chat.Component;
import net.minecraft.world.item.Item; import net.minecraft.world.item.Item;

View File

@ -49,7 +49,7 @@ public class ReviveTargetPacket {
return; return;
} }
if (!target.getLevel().equals(sender.getLevel()) && !TotemItem.canReviveAcrossDimensions(totemStack)) { if (!target.serverLevel().equals(sender.serverLevel()) && !TotemItem.canReviveAcrossDimensions(totemStack)) {
sender.sendSystemMessage(Component.literal(ChatFormatting.GRAY + target.getDisplayName().getString() + ChatFormatting.WHITE + " is in a different dimension!")); sender.sendSystemMessage(Component.literal(ChatFormatting.GRAY + target.getDisplayName().getString() + ChatFormatting.WHITE + " is in a different dimension!"));
return; return;
} }
@ -60,8 +60,8 @@ public class ReviveTargetPacket {
return; return;
} }
target.teleportTo(sender.getLevel(), sender.position().x, sender.position().y, sender.position().z, sender.getYRot(), sender.getXRot()); target.teleportTo(sender.serverLevel(), sender.position().x, sender.position().y, sender.position().z, sender.getYRot(), sender.getXRot());
target.setGameMode(sender.getLevel().getServer().getDefaultGameType()); target.setGameMode(sender.serverLevel().getServer().getDefaultGameType());
TotemItem.setCharge(totemStack, TotemItem.getCharge(totemStack) - TotemItem.getTargetCost(totemStack)); TotemItem.setCharge(totemStack, TotemItem.getCharge(totemStack) - TotemItem.getTargetCost(totemStack));
totemStack.hurtAndBreak(1, sender, e -> e.broadcastBreakEvent(packet.hand)); totemStack.hurtAndBreak(1, sender, e -> e.broadcastBreakEvent(packet.hand));
sender.sendSystemMessage(Component.literal(ChatFormatting.WHITE + "Successfully revived " + ChatFormatting.GRAY + target.getDisplayName().getString() + "!")); sender.sendSystemMessage(Component.literal(ChatFormatting.WHITE + "Successfully revived " + ChatFormatting.GRAY + target.getDisplayName().getString() + "!"));

View File

@ -0,0 +1,28 @@
package dev.micle.totemofreviving.setup;
import dev.micle.totemofreviving.TotemOfReviving;
import net.minecraft.network.chat.Component;
import net.minecraft.world.item.CreativeModeTab;
import net.minecraftforge.registries.RegistryObject;
public class ModCreativeModeTabs {
public static RegistryObject<CreativeModeTab> MAIN = Registration.CREATIVE_MODE_TABS.register("main",
() -> CreativeModeTab.builder()
.title(Component.translatable(String.format("itemGroup.%s.main", TotemOfReviving.MOD_ID)))
.icon(ModItems.STRAW_TOTEM.get()::getDefaultInstance)
.displayItems((itemDisplayParameters, output) -> {
output.accept(ModItems.STRAW_TOTEM.get());
output.accept(ModItems.IRON_TOTEM.get());
output.accept(ModItems.DIAMOND_TOTEM.get());
output.accept(ModItems.NETHERITE_TOTEM.get());
output.accept(ModItems.STRAW_CHARGE.get());
output.accept(ModItems.IRON_CHARGE.get());
output.accept(ModItems.DIAMOND_CHARGE.get());
output.accept(ModItems.NETHERITE_CHARGE.get());
})
.build()
);
public static void register() {}
}

View File

@ -1,7 +1,8 @@
package dev.micle.totemofreviving.setup; package dev.micle.totemofreviving.setup;
import dev.micle.totemofreviving.TotemOfReviving; import dev.micle.totemofreviving.TotemOfReviving;
import dev.micle.totemofreviving.event.common.OnCreativeModeTabRegisterEventHandler; import net.minecraft.core.registries.Registries;
import net.minecraft.world.item.CreativeModeTab;
import net.minecraft.world.item.Item; import net.minecraft.world.item.Item;
import net.minecraftforge.eventbus.api.IEventBus; import net.minecraftforge.eventbus.api.IEventBus;
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
@ -13,12 +14,16 @@ public class Registration {
public static final DeferredRegister<Item> ITEMS = public static final DeferredRegister<Item> ITEMS =
DeferredRegister.create(ForgeRegistries.ITEMS, TotemOfReviving.MOD_ID); DeferredRegister.create(ForgeRegistries.ITEMS, TotemOfReviving.MOD_ID);
public static final DeferredRegister<CreativeModeTab> CREATIVE_MODE_TABS =
DeferredRegister.create(Registries.CREATIVE_MODE_TAB, TotemOfReviving.MOD_ID);
public static void register() { public static void register() {
IEventBus modEventBus = FMLJavaModLoadingContext.get().getModEventBus(); IEventBus modEventBus = FMLJavaModLoadingContext.get().getModEventBus();
ITEMS.register(modEventBus); ITEMS.register(modEventBus);
ModItems.register(); ModItems.register();
modEventBus.register(OnCreativeModeTabRegisterEventHandler.class); CREATIVE_MODE_TABS.register(modEventBus);
ModCreativeModeTabs.register();
} }
} }

View File

@ -6,7 +6,7 @@
# The name of the mod loader type to load - for regular FML @Mod mods it should be javafml # The name of the mod loader type to load - for regular FML @Mod mods it should be javafml
modLoader = "javafml" #mandatory modLoader = "javafml" #mandatory
# A version range to match for said mod loader - for regular FML @Mod it will be the forge version # A version range to match for said mod loader - for regular FML @Mod it will be the forge version
loaderVersion = "[45,)" #mandatory This is typically bumped every Minecraft version by Forge. See our download page for lists of versions. loaderVersion = "[47,)" #mandatory This is typically bumped every Minecraft version by Forge. See our download page for lists of versions.
# The license for you mod. This is mandatory metadata and allows for easier comprehension of your redistributive properties. # The license for you mod. This is mandatory metadata and allows for easier comprehension of your redistributive properties.
# Review your options at https://choosealicense.com/. All rights reserved is the default copyright stance, and is thus the default here. # Review your options at https://choosealicense.com/. All rights reserved is the default copyright stance, and is thus the default here.
license = "All Rights Reserved" license = "All Rights Reserved"
@ -43,7 +43,7 @@ Mod for reviving players in a hardcore world.
# Does this dependency have to exist - if not, ordering below must be specified # Does this dependency have to exist - if not, ordering below must be specified
mandatory = true #mandatory mandatory = true #mandatory
# The version range of the dependency # The version range of the dependency
versionRange = "[45,)" #mandatory versionRange = "[47,)" #mandatory
# An ordering relationship for the dependency - BEFORE or AFTER required if the relationship is not mandatory # An ordering relationship for the dependency - BEFORE or AFTER required if the relationship is not mandatory
ordering = "NONE" ordering = "NONE"
# Side this dependency is applied on - BOTH, CLIENT or SERVER # Side this dependency is applied on - BOTH, CLIENT or SERVER
@ -53,6 +53,6 @@ Mod for reviving players in a hardcore world.
modId = "minecraft" modId = "minecraft"
mandatory = true mandatory = true
# This version range declares a minimum of the current minecraft version up to but not including the next major version # This version range declares a minimum of the current minecraft version up to but not including the next major version
versionRange = "[1.19.4,1.20)" versionRange = "[1.20.1,1.20.2)"
ordering = "NONE" ordering = "NONE"
side = "BOTH" side = "BOTH"

View File

@ -1,5 +1,5 @@
{ {
"tabs.totemofreviving.main_tab": "Micle's Totem of Reviving", "itemGroup.totemofreviving.main": "Micle's Totem of Reviving",
"item.totemofreviving.straw_totem": "Straw totem of reviving", "item.totemofreviving.straw_totem": "Straw totem of reviving",
"item.totemofreviving.iron_totem": "Iron totem of reviving", "item.totemofreviving.iron_totem": "Iron totem of reviving",
"item.totemofreviving.diamond_totem": "Diamond totem of reviving", "item.totemofreviving.diamond_totem": "Diamond totem of reviving",