39 lines
1.2 KiB
Java
39 lines
1.2 KiB
Java
package dev.zontreck.otemod.enchantments;
|
|
|
|
import net.minecraft.server.MinecraftServer;
|
|
import net.minecraft.server.level.ServerPlayer;
|
|
import net.minecraftforge.event.TickEvent;
|
|
import net.minecraftforge.event.entity.living.LivingEvent;
|
|
import net.minecraftforge.eventbus.api.SubscribeEvent;
|
|
import net.minecraftforge.fml.common.Mod;
|
|
import net.minecraftforge.server.ServerLifecycleHooks;
|
|
|
|
@Mod.EventBusSubscriber
|
|
public class EnchantmentEvents
|
|
{
|
|
private static boolean canTick = false;
|
|
@SubscribeEvent
|
|
public static void onServerTick(TickEvent.ServerTickEvent event)
|
|
{
|
|
if(event.phase == TickEvent.Phase.START)
|
|
{
|
|
MinecraftServer server = ServerLifecycleHooks.getCurrentServer();
|
|
canTick = server!=null && server.getTickCount()%20==0;
|
|
}
|
|
}
|
|
|
|
@SubscribeEvent
|
|
public static void onTick(LivingEvent.LivingUpdateEvent tick)
|
|
{
|
|
if(canTick)
|
|
{
|
|
// Process Enchantments
|
|
|
|
if(tick.getEntityLiving() instanceof ServerPlayer sp)
|
|
{
|
|
FlightEnchantment.runEntityTick(sp);
|
|
ConsumptionMending.onEntityTick(sp);
|
|
}
|
|
}
|
|
}
|
|
}
|