change the client only method to an Accessor set (#86)

This commit is contained in:
ABKQPO authored and GitHub committed 2026-08-07 17:14:14 +07:00
1 parent 9af2a97ba7
commit f02c7bfe69
4 files changed
+44 -4

No files matched your search

@@ -14,6 +14,7 @@ import fox.spiteful.avaritia.Config;
import fox.spiteful.avaritia.compat.Compat;
import fox.spiteful.avaritia.items.LudicrousItems;
import fox.spiteful.avaritia.mixins.early.minecraft.EntityLivingBaseAccessor;
import fox.spiteful.avaritia.mixins.early.minecraft.PlayerCapabilitiesAccessor;
public class InfinityArmorRuntimeHandler {
@@ -62,7 +63,7 @@ public class InfinityArmorRuntimeHandler {
player.capabilities.isFlying = true;
}
float flightSpeedModifier = InfinityArmorAbilityResolver.getFlightSpeedModifier(chest, player);
player.capabilities.setFlySpeed(resolveFlySpeed(flightSpeedModifier));
((PlayerCapabilitiesAccessor) player.capabilities).setPlayerFlySpeed(resolveFlySpeed(flightSpeedModifier));
playersWithChest.add(key);
return;
}
@@ -71,7 +72,7 @@ public class InfinityArmorRuntimeHandler {
player.capabilities.allowFlying = false;
player.capabilities.isFlying = false;
}
player.capabilities.setFlySpeed(0.05F);
((PlayerCapabilitiesAccessor) player.capabilities).setPlayerFlySpeed(0.05F);
}
private void updateFootAbilities(EntityPlayer player, String key) {
@@ -1,13 +1,14 @@
package fox.spiteful.avaritia.core;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.Set;
import com.gtnewhorizon.gtnhmixins.IEarlyMixinLoader;
import com.gtnewhorizon.gtnhmixins.builders.IMixins;
import cpw.mods.fml.relauncher.IFMLLoadingPlugin;
import fox.spiteful.avaritia.mixins.Mixins;
@IFMLLoadingPlugin.MCVersion("1.7.10")
public class AvaritiaEarlyMixinLoader implements IFMLLoadingPlugin, IEarlyMixinLoader {
@@ -42,6 +43,6 @@ public class AvaritiaEarlyMixinLoader implements IFMLLoadingPlugin, IEarlyMixinL
@Override
public List<String> getMixins(Set<String> loadedCoreMods) {
return Collections.singletonList("minecraft.EntityLivingBaseAccessor");
return IMixins.getEarlyMixins(Mixins.class, loadedCoreMods);
}
}
@@ -0,0 +1,22 @@
package fox.spiteful.avaritia.mixins;
import org.jetbrains.annotations.NotNull;
import com.gtnewhorizon.gtnhmixins.builders.IMixins;
import com.gtnewhorizon.gtnhmixins.builders.MixinBuilder;
public enum Mixins implements IMixins {
MINECRAFT(Side.COMMON, "minecraft.EntityLivingBaseAccessor", "minecraft.PlayerCapabilitiesAccessor");
private final MixinBuilder builder;
Mixins(Side side, String... mixins) {
this.builder = new MixinBuilder().addSidedMixins(side, mixins).setPhase(Phase.EARLY);
}
@Override
public @NotNull MixinBuilder getBuilder() {
return builder;
}
}
@@ -0,0 +1,16 @@
package fox.spiteful.avaritia.mixins.early.minecraft;
import net.minecraft.entity.player.PlayerCapabilities;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.gen.Accessor;
@Mixin(PlayerCapabilities.class)
public interface PlayerCapabilitiesAccessor {
@Accessor("flySpeed")
void setPlayerFlySpeed(float flySpeed);
@Accessor("walkSpeed")
void setPlayerWalkSpeed(float walkSpeed);
}