diff --git a/src/test/java/net/modificationstation/sltest/entity/player/PlayerHandler.java b/src/test/java/net/modificationstation/sltest/entity/player/PlayerHandler.java deleted file mode 100644 index dba089950..000000000 --- a/src/test/java/net/modificationstation/sltest/entity/player/PlayerHandler.java +++ /dev/null @@ -1,45 +0,0 @@ -package net.modificationstation.sltest.entity.player; - -import net.minecraft.entity.player.PlayerEntity; - -public class PlayerHandler implements net.modificationstation.stationapi.api.entity.player.PlayerHandler { - - private final PlayerEntity player; - - public PlayerHandler(PlayerEntity playerBase) { - player = playerBase; - } - - @Override - public boolean jump() { -// int tests = 1000; -// int listeners = 1; -// int dispatches = 1000000; -// long total = 0; -// long min = Long.MAX_VALUE; -// long max = Long.MIN_VALUE; -// EventBus bmBus = StationAPI.EVENT_BUS; -// bmBus.register(SLTest.Listener.class); -// for (int i = 0; i < tests; i++) { -//// for (int j = 0; j < listeners; j++) -// long startTS = System.nanoTime(); -// for (int j = 0; j < dispatches; j++) -// bmBus.post(new SLTest.TestEvent()); -// long stopTS = System.nanoTime(); -// long result = stopTS - startTS; -// System.out.println("Took: " + result + "ns"); -// total += result; -// if (result < min) -// min = result; -// if (result > max) -// max = result; -// } -// System.out.println("Tests: " + tests); -// System.out.println("Listeners: " + listeners); -// System.out.println("Dispatches: " + dispatches); -// System.out.println("Average: " + total / tests + "ns"); -// System.out.println("Min: " + min + "ns"); -// System.out.println("Max: " + max + "ns"); - return false; - } -} diff --git a/src/test/java/net/modificationstation/sltest/entity/player/PlayerHandlerListener.java b/src/test/java/net/modificationstation/sltest/entity/player/PlayerHandlerListener.java deleted file mode 100644 index 7e8c33819..000000000 --- a/src/test/java/net/modificationstation/sltest/entity/player/PlayerHandlerListener.java +++ /dev/null @@ -1,12 +0,0 @@ -package net.modificationstation.sltest.entity.player; - -import net.mine_diver.unsafeevents.listener.EventListener; -import net.modificationstation.stationapi.api.event.entity.player.PlayerEvent; - -public class PlayerHandlerListener { - - @EventListener - public void registerPlayerHandlers(PlayerEvent.HandlerRegister event) { - event.playerHandlers.add(new PlayerHandler(event.player)); - } -} diff --git a/src/test/resources/fabric.mod.json b/src/test/resources/fabric.mod.json index 3ef1d5b6f..3436de72c 100644 --- a/src/test/resources/fabric.mod.json +++ b/src/test/resources/fabric.mod.json @@ -25,7 +25,6 @@ "net.modificationstation.sltest.SLTest", "net.modificationstation.sltest.recipe.RecipeListener", "net.modificationstation.sltest.achievement.AchievementListener", - "net.modificationstation.sltest.entity.player.PlayerHandlerListener", "net.modificationstation.sltest.level.gen.ChunkListener", "net.modificationstation.sltest.entity.EntityListener", "net.modificationstation.sltest.tileentity.TileEntityListener", diff --git a/station-armor-api-v0/src/main/java/net/modificationstation/stationapi/api/item/ArmorUtil.java b/station-armor-api-v0/src/main/java/net/modificationstation/stationapi/api/item/ArmorUtil.java deleted file mode 100644 index 70a5c30ec..000000000 --- a/station-armor-api-v0/src/main/java/net/modificationstation/stationapi/api/item/ArmorUtil.java +++ /dev/null @@ -1,28 +0,0 @@ -package net.modificationstation.stationapi.api.item; - -import net.minecraft.item.ArmorItem; -import net.minecraft.item.ItemStack; - -public class ArmorUtil { - /** - * This is not perfect, but it gets very close to exact vanilla. Uses double to allow for extra precision. - * Gets vanilla armor reduction for the given armor piece. - */ - public static double getVanillaArmorReduction(ItemStack armor) { - double var1 = 0; - double var2 = 0; - double var3 = 0; - - if (armor != null && armor.getItem() instanceof ArmorItem actualArmor) { - double var5 = armor.getMaxDamage(); - double var6 = armor.getDamage2(); - double var7 = var5 - var6; - var2 += var7; - var3 += var5; - double var8 = actualArmor.maxProtection; - var1 += var8; - } - - return ((var1 - 1D) * var2 / var3 + 1D) / 5; - } -} diff --git a/station-armor-api-v0/src/main/java/net/modificationstation/stationapi/api/item/CustomArmorValue.java b/station-armor-api-v0/src/main/java/net/modificationstation/stationapi/api/item/CustomArmorValue.java deleted file mode 100644 index 8a39ffa3b..000000000 --- a/station-armor-api-v0/src/main/java/net/modificationstation/stationapi/api/item/CustomArmorValue.java +++ /dev/null @@ -1,7 +0,0 @@ -package net.modificationstation.stationapi.api.item; - -import net.minecraft.entity.player.PlayerEntity; - -public interface CustomArmorValue { - double modifyDamageDealt(PlayerEntity player, int armorSlot, int initialDamage, double currentAdjustedDamage); -} diff --git a/station-armor-api-v0/src/main/java/net/modificationstation/stationapi/impl/item/CustomArmorValuesImpl.java b/station-armor-api-v0/src/main/java/net/modificationstation/stationapi/impl/item/CustomArmorValuesImpl.java deleted file mode 100644 index 1eae19e8f..000000000 --- a/station-armor-api-v0/src/main/java/net/modificationstation/stationapi/impl/item/CustomArmorValuesImpl.java +++ /dev/null @@ -1,53 +0,0 @@ -package net.modificationstation.stationapi.impl.item; - -import net.mine_diver.unsafeevents.listener.EventListener; -import net.minecraft.entity.player.PlayerEntity; -import net.minecraft.item.ArmorItem; -import net.minecraft.item.ItemStack; -import net.modificationstation.stationapi.api.StationAPI; -import net.modificationstation.stationapi.api.entity.player.PlayerBaseSuper; -import net.modificationstation.stationapi.api.entity.player.PlayerHandler; -import net.modificationstation.stationapi.api.event.entity.player.PlayerEvent; -import net.modificationstation.stationapi.api.item.ArmorUtil; -import net.modificationstation.stationapi.api.item.CustomArmorValue; -import net.modificationstation.stationapi.api.mod.entrypoint.Entrypoint; -import net.modificationstation.stationapi.api.mod.entrypoint.EventBusPolicy; - -@Entrypoint(eventBus = @EventBusPolicy(registerInstance = false)) -@EventListener(phase = StationAPI.INTERNAL_PHASE) -public class CustomArmorValuesImpl { - @EventListener - private static void calcArmorDamageReduce(PlayerEvent.HandlerRegister event) { - event.playerHandlers.add(new ArmorHandler(event.player)); - } - - private record ArmorHandler(PlayerEntity player) implements PlayerHandler { - @Override - public boolean damageEntityBase(int initialDamage) { - double damageAmount = initialDamage; - ItemStack[] armor = player.inventory.armor; - - for (int i = 0; i < armor.length; i++) { - ItemStack armorInstance = armor[i]; - // This solution is not exact with vanilla, but is WAY better than previous solutions which weren't even close to vanilla. - if (armorInstance != null) { - if (armorInstance.getItem() instanceof CustomArmorValue armorValue) { - double damageNegated = armorValue.modifyDamageDealt(player, i, initialDamage, damageAmount); - damageAmount -= damageNegated; - } else if (armorInstance.getItem() instanceof ArmorItem) { - damageAmount -= ArmorUtil.getVanillaArmorReduction(armorInstance); - armorInstance.damage(initialDamage, null); - if (armorInstance.count <= 0) { - armor[i] = null; - } - } - if (damageAmount < 0) { - damageAmount = 0; - } - } - } - ((PlayerBaseSuper) player).superDamageEntity((int) damageAmount); - return true; - } - } -} diff --git a/station-armor-api-v0/src/main/resources/fabric.mod.json b/station-armor-api-v0/src/main/resources/fabric.mod.json index 09a726049..c8ed29904 100644 --- a/station-armor-api-v0/src/main/resources/fabric.mod.json +++ b/station-armor-api-v0/src/main/resources/fabric.mod.json @@ -19,9 +19,6 @@ "environment": "*", "entrypoints": { - "stationapi:event_bus": [ - "net.modificationstation.stationapi.impl.item.CustomArmorValuesImpl" - ] }, "mixins": [ "station-armor-api-v0.mixins.json" diff --git a/station-player-api-v0/src/main/java/net/modificationstation/stationapi/api/entity/player/PlayerBaseSettersGetters.java b/station-player-api-v0/src/main/java/net/modificationstation/stationapi/api/entity/player/PlayerBaseSettersGetters.java deleted file mode 100644 index 19baffb06..000000000 --- a/station-player-api-v0/src/main/java/net/modificationstation/stationapi/api/entity/player/PlayerBaseSettersGetters.java +++ /dev/null @@ -1,30 +0,0 @@ -package net.modificationstation.stationapi.api.entity.player; - -import java.util.Random; - -public interface PlayerBaseSettersGetters { - - void doFall(float fallDist); - - float getFallDistance(); - - void setFallDistance(float f); - - boolean getSleeping(); - - boolean getJumping(); - - void doJump(); - - Random getRandom(); - - void setYSize(float f); - - void setActionState(float newMoveStrafing, float newMoveForward, boolean newIsJumping); - - void setMoveForward(float value); - - void setMoveStrafing(float value); - - void setIsJumping(boolean value); -} diff --git a/station-player-api-v0/src/main/java/net/modificationstation/stationapi/api/entity/player/PlayerBaseSuper.java b/station-player-api-v0/src/main/java/net/modificationstation/stationapi/api/entity/player/PlayerBaseSuper.java deleted file mode 100644 index bad38f03d..000000000 --- a/station-player-api-v0/src/main/java/net/modificationstation/stationapi/api/entity/player/PlayerBaseSuper.java +++ /dev/null @@ -1,28 +0,0 @@ -package net.modificationstation.stationapi.api.entity.player; - -import net.minecraft.block.Material; -import net.minecraft.entity.Entity; - -public interface PlayerBaseSuper { - void superMoveFlying(float f, float f1, float f2); - - boolean superIsInsideOfMaterial(Material material); - - float superGetEntityBrightness(float f); - - String superGetHurtSound(); - - void superFall(float f); - - void superJump(); - - void superDamageEntity(int i); - - double superGetDistanceSqToEntity(Entity entity); - - boolean superHandleWaterMovement(); - - boolean superHandleLavaMovement(); - - void superUpdatePlayerActionState(); -} diff --git a/station-player-api-v0/src/main/java/net/modificationstation/stationapi/api/entity/player/PlayerHandler.java b/station-player-api-v0/src/main/java/net/modificationstation/stationapi/api/entity/player/PlayerHandler.java deleted file mode 100644 index 004a7b890..000000000 --- a/station-player-api-v0/src/main/java/net/modificationstation/stationapi/api/entity/player/PlayerHandler.java +++ /dev/null @@ -1,206 +0,0 @@ -package net.modificationstation.stationapi.api.entity.player; - -import net.minecraft.block.Block; -import net.minecraft.block.Material; -import net.minecraft.block.SignBlock; -import net.minecraft.block.entity.DispenserBlockEntity; -import net.minecraft.block.entity.FurnaceBlockEntity; -import net.minecraft.class_141; -import net.minecraft.entity.Entity; -import net.minecraft.inventory.Inventory; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NbtCompound; - -public interface PlayerHandler { - - default boolean onLivingUpdate() { - return false; - } - - default boolean updatePlayerActionState() { - return false; - } - - default boolean handleKeyPress(int i, boolean flag) { - return false; - } - - default boolean writeEntityBaseToNBT(NbtCompound tag) { - return false; - } - - default boolean readEntityBaseFromNBT(NbtCompound tag) { - return false; - } - - default boolean setEntityBaseDead() { - return false; - } - - default boolean onDeath(Entity killer) { - return false; - } - - default boolean respawn() { - return false; - } - - default boolean attackEntityBaseFrom(Entity attacker, int damage) { - return false; - } - - default double getDistanceSq(double d, double d1, double d2, double answer) { - return answer; - } - - default boolean isInWater(boolean inWater) { - return inWater; - } - - default boolean onExitGUI() { - return false; - } - - default boolean heal(int i) { - return false; - } - - default boolean canTriggerWalking(boolean canTrigger) { - return canTrigger; - } - - default int getPlayerArmorValue(int armor) { - return armor; - } - - default float getCurrentPlayerStrVsBlock(Block block, float f) { - return f; - } - - default boolean moveFlying(float x, float y, float z) { - return false; - } - - default boolean moveEntityBase(double x, double y, double d) { - return false; - } - - default class_141 sleepInBedAt(int x, int y, int z, class_141 status) { - return status; - } - - default float getEntityBaseBrightness(float f, float brightness) { - return brightness; - } - - default boolean pushOutOfBlocks(double x, double y, double d) { - return false; - } - - default boolean onUpdate() { - return false; - } - - default void afterUpdate() { - } - - default boolean moveEntityBaseWithHeading(float f, float f1) { - return false; - } - - default boolean isOnLadder(boolean onLadder) { - return onLadder; - } - - default boolean isInsideOfMaterial(Material material, boolean inMaterial) { - return inMaterial; - } - - default boolean isSneaking(boolean sneaking) { - return sneaking; - } - - default boolean dropCurrentItem() { - return false; - } - - default boolean dropPlayerItem(ItemStack itemstack) { - return false; - } - - default boolean displayGUIEditSign(SignBlock sign) { - return false; - } - - default boolean displayGUIChest(Inventory iinventory) { - return false; - } - - default boolean displayWorkbenchGUI(int i, int j, int k) { - return false; - } - - default boolean displayGUIFurnace(FurnaceBlockEntity furnace) { - return false; - } - - default boolean displayGUIDispenser(DispenserBlockEntity dispenser) { - return false; - } - - default boolean sendChatMessage(String s) { - return false; - } - - default String getHurtSound(String previous) { - return null; - } - - default Boolean canHarvestBlock(Block block, Boolean previous) { - return null; - } - - default boolean fall(float f) { - return false; - } - - default boolean jump() { - return false; - } - - default boolean damageEntityBase(int i) { - return false; - } - - default Double getDistanceSqToEntityBase(Entity EntityBase, Double previous) { - return null; - } - - default boolean attackTargetEntityBaseWithCurrentItem(Entity EntityBase) { - return false; - } - - default Boolean handleWaterMovement(Boolean previous) { - return null; - } - - default Boolean handleLavaMovement(Boolean previous) { - return null; - } - - default boolean dropPlayerItemWithRandomChoice(ItemStack itemstack, boolean flag) { - return false; - } - - default void beforeUpdate() { - } - - default void beforeMoveEntityBase(double d3, double d4, double d5) { - } - - default void afterMoveEntityBase(double d3, double d4, double d5) { - } - - default void beforeSleepInBedAt(int l, int i1, int j1) { - } -} diff --git a/station-player-api-v0/src/main/java/net/modificationstation/stationapi/api/entity/player/PlayerHandlerContainer.java b/station-player-api-v0/src/main/java/net/modificationstation/stationapi/api/entity/player/PlayerHandlerContainer.java deleted file mode 100644 index 8039962f4..000000000 --- a/station-player-api-v0/src/main/java/net/modificationstation/stationapi/api/entity/player/PlayerHandlerContainer.java +++ /dev/null @@ -1,8 +0,0 @@ -package net.modificationstation.stationapi.api.entity.player; - -import java.util.List; - -public interface PlayerHandlerContainer { - - List getPlayerHandlers(); -} \ No newline at end of file diff --git a/station-player-api-v0/src/main/java/net/modificationstation/stationapi/api/event/entity/player/PlayerEvent.java b/station-player-api-v0/src/main/java/net/modificationstation/stationapi/api/event/entity/player/PlayerEvent.java index bdc0e7ea8..b9221b027 100644 --- a/station-player-api-v0/src/main/java/net/modificationstation/stationapi/api/event/entity/player/PlayerEvent.java +++ b/station-player-api-v0/src/main/java/net/modificationstation/stationapi/api/event/entity/player/PlayerEvent.java @@ -6,9 +6,6 @@ import net.minecraft.entity.player.PlayerEntity; import net.minecraft.util.hit.HitResultType; import net.modificationstation.stationapi.api.StationAPI; -import net.modificationstation.stationapi.api.entity.player.PlayerHandler; - -import java.util.List; @SuperBuilder public abstract class PlayerEvent extends Event { @@ -20,10 +17,4 @@ public static class Reach extends PlayerEvent { public final HitResultType type; public double currentReach; } - - @SuperBuilder - @EventPhases(StationAPI.INTERNAL_PHASE) - public static class HandlerRegister extends PlayerEvent { - public final List playerHandlers; - } } diff --git a/station-player-api-v0/src/main/java/net/modificationstation/stationapi/impl/entity/player/PlayerAPI.java b/station-player-api-v0/src/main/java/net/modificationstation/stationapi/impl/entity/player/PlayerAPI.java deleted file mode 100644 index 80320deb8..000000000 --- a/station-player-api-v0/src/main/java/net/modificationstation/stationapi/impl/entity/player/PlayerAPI.java +++ /dev/null @@ -1,523 +0,0 @@ -package net.modificationstation.stationapi.impl.entity.player; - -import net.minecraft.block.Block; -import net.minecraft.block.Material; -import net.minecraft.block.SignBlock; -import net.minecraft.block.entity.DispenserBlockEntity; -import net.minecraft.block.entity.FurnaceBlockEntity; -import net.minecraft.class_141; -import net.minecraft.entity.Entity; -import net.minecraft.entity.player.PlayerEntity; -import net.minecraft.inventory.Inventory; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NbtCompound; -import net.modificationstation.stationapi.api.entity.player.PlayerHandler; -import net.modificationstation.stationapi.api.entity.player.PlayerHandlerContainer; - -public class PlayerAPI { - - public static PlayerHandler getPlayerHandler(PlayerEntity player, Class pb) { - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - if (pb.isInstance(((PlayerHandlerContainer) player).getPlayerHandlers().get(i))) { - return ((PlayerHandlerContainer) player).getPlayerHandlers().get(i); - } - } - return null; - } - - public static boolean onLivingUpdate(PlayerEntity player) { - boolean override = false; - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) player).getPlayerHandlers().get(i).onLivingUpdate()) { - override = true; - } - } - - return override; - } - - public static boolean respawn(PlayerEntity player) { - boolean override = false; - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) player).getPlayerHandlers().get(i).respawn()) { - override = true; - } - } - - return override; - } - - public static boolean moveFlying(PlayerEntity player, float x, float y, float z) { - boolean override = false; - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) player).getPlayerHandlers().get(i).moveFlying(x, y, z)) { - override = true; - } - } - - return override; - } - - public static boolean updatePlayerActionState(PlayerEntity player) { - boolean override = false; - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) player).getPlayerHandlers().get(i).updatePlayerActionState()) { - override = true; - } - } - - return override; - } - - public static boolean handleKeyPress(PlayerEntity player, int j, boolean flag) { - boolean override = false; - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) player).getPlayerHandlers().get(i).handleKeyPress(j, flag)) { - override = true; - } - } - - return override; - } - - public static boolean writeEntityToNBT(PlayerEntity player, NbtCompound tag) { - boolean override = false; - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) player).getPlayerHandlers().get(i).writeEntityBaseToNBT(tag)) { - override = true; - } - } - - return override; - } - - public static boolean readEntityFromNBT(PlayerEntity player, NbtCompound tag) { - boolean override = false; - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) player).getPlayerHandlers().get(i).readEntityBaseFromNBT(tag)) { - override = true; - } - } - - return override; - } - - public static boolean onExitGUI(PlayerEntity player) { - boolean override = false; - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) player).getPlayerHandlers().get(i).onExitGUI()) { - override = true; - } - } - - return override; - } - - public static boolean setEntityDead(PlayerEntity player) { - boolean override = false; - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) player).getPlayerHandlers().get(i).setEntityBaseDead()) { - override = true; - } - } - - return override; - } - - public static boolean onDeath(PlayerEntity player, Entity killer) { - boolean override = false; - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) player).getPlayerHandlers().get(i).onDeath(killer)) { - override = true; - } - } - - return override; - } - - public static boolean attackEntityFrom(PlayerEntity player, Entity attacker, int damage) { - boolean override = false; - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) player).getPlayerHandlers().get(i).attackEntityBaseFrom(attacker, damage)) { - override = true; - } - } - - return override; - } - - public static double getDistanceSq(PlayerEntity player, double d, double d1, double d2, double answer) { - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - answer = ((PlayerHandlerContainer) player).getPlayerHandlers().get(i).getDistanceSq(d, d1, d2, answer); - } - - return answer; - } - - public static boolean isInWater(PlayerEntity player, boolean inWater) { - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - inWater = ((PlayerHandlerContainer) player).getPlayerHandlers().get(i).isInWater(inWater); - } - - return inWater; - } - - public static boolean canTriggerWalking(PlayerEntity player, boolean canTrigger) { - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - canTrigger = ((PlayerHandlerContainer) player).getPlayerHandlers().get(i).canTriggerWalking(canTrigger); - } - - return canTrigger; - } - - public static boolean heal(PlayerEntity player, int j) { - boolean override = false; - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) player).getPlayerHandlers().get(i).heal(j)) { - override = true; - } - } - - return override; - } - - public static int getPlayerArmorValue(PlayerEntity player, int armor) { - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - armor = ((PlayerHandlerContainer) player).getPlayerHandlers().get(i).getPlayerArmorValue(armor); - } - - return armor; - } - - public static float getCurrentPlayerStrVsBlock(PlayerEntity player, Block block, float f) { - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - f = ((PlayerHandlerContainer) player).getPlayerHandlers().get(i).getCurrentPlayerStrVsBlock(block, f); - } - - return f; - } - - public static boolean moveEntity(PlayerEntity player, double d, double d1, double d2) { - boolean override = false; - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) player).getPlayerHandlers().get(i).moveEntityBase(d, d1, d2)) { - override = true; - } - } - - return override; - } - - public static class_141 sleepInBedAt(PlayerEntity player, int x, int y, int z) { - class_141 status = null; - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - status = ((PlayerHandlerContainer) player).getPlayerHandlers().get(i).sleepInBedAt(x, y, z, status); - } - - return status; - } - - public static float getEntityBrightness(PlayerEntity player, float f, float brightness) { - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - f = ((PlayerHandlerContainer) player).getPlayerHandlers().get(i).getEntityBaseBrightness(f, brightness); - } - - return f; - } - - public static boolean pushOutOfBlocks(PlayerEntity player, double d, double d1, double d2) { - boolean override = false; - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) player).getPlayerHandlers().get(i).pushOutOfBlocks(d, d1, d2)) { - override = true; - } - } - - return override; - } - - public static boolean onUpdate(PlayerEntity player) { - boolean override = false; - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) player).getPlayerHandlers().get(i).onUpdate()) { - override = true; - } - } - - return override; - } - - public static void afterUpdate(PlayerEntity player) { - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - ((PlayerHandlerContainer) player).getPlayerHandlers().get(i).afterUpdate(); - } - - } - - public static boolean moveEntityWithHeading(PlayerEntity player, float f, float f1) { - boolean override = false; - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) player).getPlayerHandlers().get(i).moveEntityBaseWithHeading(f, f1)) { - override = true; - } - } - - return override; - } - - public static boolean isOnLadder(PlayerEntity player, boolean onLadder) { - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - onLadder = ((PlayerHandlerContainer) player).getPlayerHandlers().get(i).isOnLadder(onLadder); - } - - return onLadder; - } - - public static boolean isInsideOfMaterial(PlayerEntity player, Material material, boolean inMaterial) { - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - inMaterial = ((PlayerHandlerContainer) player).getPlayerHandlers().get(i).isInsideOfMaterial(material, inMaterial); - } - - return inMaterial; - } - - public static boolean isSneaking(PlayerEntity player, boolean sneaking) { - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - sneaking = ((PlayerHandlerContainer) player).getPlayerHandlers().get(i).isSneaking(sneaking); - } - - return sneaking; - } - - public static boolean dropCurrentItem(PlayerEntity player) { - boolean override = false; - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) player).getPlayerHandlers().get(i).dropCurrentItem()) { - override = true; - } - } - - return override; - } - - public static boolean dropPlayerItem(PlayerEntity player, ItemStack itemstack) { - boolean override = false; - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) player).getPlayerHandlers().get(i).dropPlayerItem(itemstack)) { - override = true; - } - } - - return override; - } - - public static boolean displayGUIEditSign(PlayerEntity player, SignBlock sign) { - boolean override = false; - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) player).getPlayerHandlers().get(i).displayGUIEditSign(sign)) { - override = true; - } - } - - return override; - } - - public static boolean displayGUIChest(PlayerEntity player, Inventory inventory) { - boolean override = false; - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) player).getPlayerHandlers().get(i).displayGUIChest(inventory)) { - override = true; - } - } - - return override; - } - - public static boolean displayWorkbenchGUI(PlayerEntity player, int i, int j, int k) { - boolean override = false; - for (int n = 0; n < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); n++) { - if (((PlayerHandlerContainer) player).getPlayerHandlers().get(n).displayWorkbenchGUI(i, j, k)) { - override = true; - } - } - - return override; - } - - public static boolean displayGUIFurnace(PlayerEntity player, FurnaceBlockEntity furnace) { - boolean override = false; - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) player).getPlayerHandlers().get(i).displayGUIFurnace(furnace)) { - override = true; - } - } - - return override; - } - - public static boolean displayGUIDispenser(PlayerEntity player, DispenserBlockEntity dispenser) { - boolean override = false; - for (int i = 0; i < ((PlayerHandlerContainer) player).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) player).getPlayerHandlers().get(i).displayGUIDispenser(dispenser)) { - override = true; - } - } - - return override; - } - - public static boolean sendChatMessage(PlayerEntity PlayerBase, String s) { - boolean flag = false; - for (int i = 0; i < ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().get(i).sendChatMessage(s)) { - flag = true; - } - } - - return flag; - } - - public static String getHurtSound(PlayerEntity PlayerBase) { - String result = null; - for (int i = 0; i < ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().size(); i++) { - String baseResult = ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().get(i).getHurtSound(result); - if (baseResult != null) { - result = baseResult; - } - } - - return result; - } - - public static Boolean canHarvestBlock(PlayerEntity PlayerBase, Block block) { - Boolean result = null; - for (int i = 0; i < ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().size(); i++) { - Boolean baseResult = ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().get(i).canHarvestBlock(block, result); - if (baseResult != null) { - result = baseResult; - } - } - - return result; - } - - public static boolean fall(PlayerEntity PlayerBase, float f) { - boolean flag = false; - for (int i = 0; i < ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().get(i).fall(f)) { - flag = true; - } - } - - return flag; - } - - public static boolean jump(PlayerEntity PlayerBase) { - boolean flag = false; - for (int i = 0; i < ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().get(i).jump()) { - flag = true; - } - } - - return flag; - } - - public static boolean damageEntity(PlayerEntity PlayerBase, int i1) { - boolean flag = false; - for (int i = 0; i < ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().get(i).damageEntityBase(i1)) { - flag = true; - } - } - - return flag; - } - - public static Double getDistanceSqToEntity(PlayerEntity PlayerBase, Entity entity) { - Double result = null; - for (int i = 0; i < ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().size(); i++) { - Double baseResult = ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().get(i).getDistanceSqToEntityBase(entity, result); - if (baseResult != null) { - result = baseResult; - } - } - - return result; - } - - public static boolean attackTargetEntityWithCurrentItem(PlayerEntity PlayerBase, Entity entity) { - boolean flag = false; - for (int i = 0; i < ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().get(i).attackTargetEntityBaseWithCurrentItem(entity)) { - flag = true; - } - } - - return flag; - } - - public static Boolean handleWaterMovement(PlayerEntity PlayerBase) { - Boolean result = null; - for (int i = 0; i < ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().size(); i++) { - Boolean baseResult = ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().get(i).handleWaterMovement(result); - if (baseResult != null) { - result = baseResult; - } - } - - return result; - } - - public static Boolean handleLavaMovement(PlayerEntity PlayerBase) { - Boolean result = null; - for (int i = 0; i < ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().size(); i++) { - Boolean baseResult = ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().get(i).handleLavaMovement(result); - if (baseResult != null) { - result = baseResult; - } - } - - return result; - } - - public static boolean dropPlayerItemWithRandomChoice(PlayerEntity PlayerBase, ItemStack itemstack, boolean flag1) { - boolean flag = false; - for (int i = 0; i < ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().size(); i++) { - if (((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().get(i).dropPlayerItemWithRandomChoice(itemstack, flag1)) { - flag = true; - } - } - - return flag; - } - - public static void beforeUpdate(PlayerEntity PlayerBase) { - for (int i = 0; i < ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().size(); i++) { - ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().get(i).beforeUpdate(); - } - - } - - public static void beforeMoveEntity(PlayerEntity PlayerBase, double d, double d1, double d2) { - for (int i = 0; i < ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().size(); i++) { - ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().get(i).beforeMoveEntityBase(d, d1, d2); - } - - } - - public static void afterMoveEntity(PlayerEntity PlayerBase, double d, double d1, double d2) { - for (int i = 0; i < ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().size(); i++) { - ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().get(i).afterMoveEntityBase(d, d1, d2); - } - - } - - public static void beforeSleepInBedAt(PlayerEntity PlayerBase, int i1, int j, int k) { - for (int i = 0; i < ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().size(); i++) { - ((PlayerHandlerContainer) PlayerBase).getPlayerHandlers().get(i).beforeSleepInBedAt(i1, j, k); - } - - } - -} diff --git a/station-player-api-v0/src/main/java/net/modificationstation/stationapi/mixin/player/PlayerEntityMixin.java b/station-player-api-v0/src/main/java/net/modificationstation/stationapi/mixin/player/PlayerEntityMixin.java deleted file mode 100644 index 0a82daa73..000000000 --- a/station-player-api-v0/src/main/java/net/modificationstation/stationapi/mixin/player/PlayerEntityMixin.java +++ /dev/null @@ -1,494 +0,0 @@ -package net.modificationstation.stationapi.mixin.player; - -import net.fabricmc.api.EnvType; -import net.fabricmc.api.Environment; -import net.minecraft.block.Block; -import net.minecraft.block.Material; -import net.minecraft.block.entity.DispenserBlockEntity; -import net.minecraft.block.entity.FurnaceBlockEntity; -import net.minecraft.class_141; -import net.minecraft.entity.Entity; -import net.minecraft.entity.LivingEntity; -import net.minecraft.entity.player.PlayerEntity; -import net.minecraft.entity.player.PlayerInventory; -import net.minecraft.inventory.Inventory; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NbtCompound; -import net.minecraft.world.World; -import net.modificationstation.stationapi.api.StationAPI; -import net.modificationstation.stationapi.api.entity.player.PlayerBaseSettersGetters; -import net.modificationstation.stationapi.api.entity.player.PlayerBaseSuper; -import net.modificationstation.stationapi.api.entity.player.PlayerHandler; -import net.modificationstation.stationapi.api.entity.player.PlayerHandlerContainer; -import net.modificationstation.stationapi.api.event.entity.player.PlayerEvent; -import net.modificationstation.stationapi.impl.entity.player.PlayerAPI; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.Unique; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; - -import java.util.ArrayList; -import java.util.List; -import java.util.Random; - -@Mixin(PlayerEntity.class) -class PlayerEntityMixin extends LivingEntity implements PlayerBaseSettersGetters, PlayerHandlerContainer, PlayerBaseSuper { - @Shadow - public PlayerInventory inventory; - @Shadow - protected boolean sleeping; - @Unique - private List playerBases; - - private PlayerEntityMixin(World world) { - super(world); - } - - @Override - public List getPlayerHandlers() { - if (playerBases == null) { - playerBases = new ArrayList<>(); - StationAPI.EVENT_BUS.post( - PlayerEvent.HandlerRegister.builder() - .player((PlayerEntity) (Object) this) - .playerHandlers(playerBases) - .build() - ); - } - return playerBases; - } - - @Inject( - method = "method_910", - at = @At("HEAD"), - cancellable = true - ) - private void stationapi_onUpdatePlayerActionState(CallbackInfo ci) { - if (PlayerAPI.updatePlayerActionState((PlayerEntity) (Object) this)) - ci.cancel(); - } - - @Inject( - method = "writeNbt", - at = @At("HEAD"), - cancellable = true - ) - private void stationapi_onWriteEntityToNBT(NbtCompound nbtTagCompound, CallbackInfo ci) { - if (PlayerAPI.writeEntityToNBT((PlayerEntity) (Object) this, nbtTagCompound)) - ci.cancel(); - } - - @Inject( - method = "readNbt", - at = @At("HEAD"), - cancellable = true - ) - private void stationapi_onReadEntityFromNBT(NbtCompound nbtTagCompound, CallbackInfo ci) { - if (PlayerAPI.readEntityFromNBT((PlayerEntity) (Object) this, nbtTagCompound)) - ci.cancel(); - } - - @Inject( - method = "closeScreen", - at = @At("HEAD"), - cancellable = true - ) - private void stationapi_onCloseScreen(CallbackInfo ci) { - if (PlayerAPI.onExitGUI((PlayerEntity) (Object) this)) - ci.cancel(); - } - - @Inject( - method = "method_486", - at = @At("HEAD"), - cancellable = true - ) - private void stationapi_onDisplayGUIChest(Inventory iInventory, CallbackInfo ci) { - if (PlayerAPI.displayGUIChest((PlayerEntity) (Object) this, iInventory)) - ci.cancel(); - } - - @Inject( - method = "method_484", - at = @At("HEAD"), - cancellable = true - ) - private void stationapi_onDisplayWorkbenchGUI(int i, int i1, int i2, CallbackInfo ci) { - if (PlayerAPI.displayWorkbenchGUI((PlayerEntity) (Object) this, i, i1, i2)) - ci.cancel(); - } - - @Inject( - method = "method_487", - at = @At("HEAD"), - cancellable = true - ) - private void stationapi_onDisplayGUIFurnace(FurnaceBlockEntity tileEntityFurnace, CallbackInfo ci) { - if (PlayerAPI.displayGUIFurnace((PlayerEntity) (Object) this, tileEntityFurnace)) - ci.cancel(); - } - - @Inject( - method = "method_485", - at = @At("HEAD"), - cancellable = true - ) - private void stationapi_onDisplayGUIDispenser(DispenserBlockEntity tileEntityDispenser, CallbackInfo ci) { - if (PlayerAPI.displayGUIDispenser((PlayerEntity) (Object) this, tileEntityDispenser)) - ci.cancel(); - } - - @Override - public void method_1340(double v, double v1, double v2) { - if (PlayerAPI.moveEntity((PlayerEntity) (Object) this, v, v1, v2)) - return; - super.method_1340(v, v1, v2); - } - - @Inject( - method = "method_511", - at = @At("RETURN"), - cancellable = true - ) - private void stationapi_getStrength(Block arg, CallbackInfoReturnable cir) { - cir.setReturnValue(PlayerAPI.getCurrentPlayerStrVsBlock((PlayerEntity) (Object) this, arg, cir.getReturnValue())); - } - - @Override - public void method_939(int i) { - if (!PlayerAPI.heal(((PlayerEntity) (Object) this), i)) - super.method_939(i); - } - - @Environment(EnvType.CLIENT) - @Inject( - method = "respawn", - at = @At("HEAD"), - cancellable = true - ) - private void stationapi_onRespawnPlayer(CallbackInfo ci) { - if (PlayerAPI.respawn((PlayerEntity) (Object) this)) - ci.cancel(); - } - - @Inject( - method = "method_937", - at = @At("HEAD"), - cancellable = true - ) - private void stationapi_onLivingUpdate(CallbackInfo ci) { - if (PlayerAPI.onLivingUpdate((PlayerEntity) (Object) this)) - ci.cancel(); - } - - @Inject( - method = "tick()V", - at = @At("HEAD"), - cancellable = true - ) - private void stationapi_beforeTick(CallbackInfo ci) { - PlayerAPI.beforeUpdate((PlayerEntity) (Object) this); - if (PlayerAPI.onUpdate((PlayerEntity) (Object) this)) - ci.cancel(); - } - - @Inject( - method = "tick()V", - at = @At("RETURN") - ) - private void afterTick(CallbackInfo ci) { - PlayerAPI.afterUpdate((PlayerEntity) (Object) this); - } - - @Override - public void superMoveFlying(float f, float f1, float f2) { - super.method_1324(f, f1, f2); - } - - @Override - public void move(double v, double v1, double v2) { - PlayerAPI.beforeMoveEntity((PlayerEntity) (Object) this, v, v1, v2); - if (!PlayerAPI.moveEntity((PlayerEntity) (Object) this, v, v1, v2)) { - super.move(v, v1, v2); - } - PlayerAPI.afterMoveEntity((PlayerEntity) (Object) this, v, v1, v2); - } - - @Inject( - method = "method_495", - at = @At("HEAD"), - cancellable = true - ) - public void stationapi_trySleep(int i, int i1, int i2, CallbackInfoReturnable cir) { - PlayerAPI.beforeSleepInBedAt((PlayerEntity) (Object) this, i, i1, i2); - class_141 enumstatus = PlayerAPI.sleepInBedAt((PlayerEntity) (Object) this, i, i1, i2); - if (enumstatus != null) - cir.setReturnValue(enumstatus); - } - - @Override - public void doFall(float fallDist) { - this.method_1389(fallDist); - } - - @Override - public float getFallDistance() { - return field_1636; - } - - @Override - public void setFallDistance(float f) { - field_1636 = f; - } - - @Override - public boolean getSleeping() { - return sleeping; - } - - @Override - public boolean getJumping() { - return jumping; - } - - @Override - public void doJump() { - method_944(); - } - - @Override - public Random getRandom() { - return random; - } - - @Override - public void setYSize(float f) { - eyeHeight = f; - } - - @Inject( - method = "method_945", - at = @At("HEAD"), - cancellable = true - ) - private void stationapi_travel(float f, float f1, CallbackInfo ci) { - if (PlayerAPI.moveEntityWithHeading((PlayerEntity) (Object) this, f, f1)) - ci.cancel(); - } - - @Override - public boolean method_932() { - return PlayerAPI.isOnLadder((PlayerEntity) (Object) this, super.method_932()); - } - - @Override - public void setActionState(float newMoveStrafing, float newMoveForward, boolean newIsJumping) { - setMoveStrafing(newMoveStrafing); - setMoveForward(newMoveForward); - setIsJumping(newIsJumping); - } - - @Override - public boolean isInFluid(Material material) { - return PlayerAPI.isInsideOfMaterial((PlayerEntity) (Object) this, material, super.isInFluid(material)); - } - - @Inject( - method = "dropSelectedItem()V", - at = @At("HEAD"), - cancellable = true - ) - private void stationapi_dropSelectedItem(CallbackInfo ci) { - if (PlayerAPI.dropCurrentItem((PlayerEntity) (Object) this)) - ci.cancel(); - } - - @Inject( - method = "dropItem(Lnet/minecraft/item/ItemStack;)V", - at = @At("HEAD"), - cancellable = true - ) - private void stationapi_dropItem(ItemStack arg, CallbackInfo ci) { - if (PlayerAPI.dropPlayerItem((PlayerEntity) (Object) this, arg)) - ci.cancel(); - } - - @Override - public boolean superIsInsideOfMaterial(Material material) { - return super.isInFluid(material); - } - - @Override - public float superGetEntityBrightness(float f) { - return super.method_1394(f); - } - - @Override - public String method_912() { - String hurtSound = PlayerAPI.getHurtSound((PlayerEntity) (Object) this); - if (hurtSound != null) { - return hurtSound; - } - return super.method_912(); - } - - @Override - public String superGetHurtSound() { - return super.method_912(); - } - - @Inject( - method = "method_514", - at = @At("HEAD"), - cancellable = true - ) - private void stationapi_canRemoveBlock(Block arg, CallbackInfoReturnable cir) { - Boolean canHarvestBlock = PlayerAPI.canHarvestBlock((PlayerEntity) (Object) this, arg); - if (canHarvestBlock != null) - cir.setReturnValue(canHarvestBlock); - } - - @Override - public void method_1389(float f) { - if (!PlayerAPI.fall((PlayerEntity) (Object) this, f)) { - super.method_1389(f); - } - } - - @Inject( - method = "method_1389", - at = @At("HEAD"), - cancellable = true - ) - private void stationapi_handleFallDamage(float height, CallbackInfo ci) { - if (PlayerAPI.fall((PlayerEntity) (Object) this, height)) - ci.cancel(); - } - - @Override - public void superFall(float f) { - super.method_1389(f); - } - - @Inject( - method = "method_944", - at = @At("HEAD"), - cancellable = true - ) - private void stationapi_jump(CallbackInfo ci) { - if (PlayerAPI.jump((PlayerEntity) (Object) this)) - ci.cancel(); - } - - @Override - public void superJump() { - super.method_944(); - } - - @Override - public void superDamageEntity(int i) { - super.method_946(i); - } - - @Override - public double method_1352(Entity entity) { - Double result = PlayerAPI.getDistanceSqToEntity((PlayerEntity) (Object) this, entity); - if (result != null) - return result; - return super.method_1352(entity); - } - - @Override - public double superGetDistanceSqToEntity(Entity entity) { - return super.method_1352(entity); - } - - // ??? - /*public void superAttackTargetEntityWithCurrentItem(EntityBase entity) { - super.attack(entity); - }*/ - - @Inject( - method = "attack", - at = @At("HEAD"), - cancellable = true - ) - private void stationapi_attackTargetEntityWithCurrentItem(Entity arg, CallbackInfo ci) { - if (PlayerAPI.attackTargetEntityWithCurrentItem((PlayerEntity) (Object) this, arg)) - ci.cancel(); - } - - @Override - public boolean isSubmergedInWater() { - Boolean result = PlayerAPI.handleWaterMovement((PlayerEntity) (Object) this); - if (result != null) - return result; - return super.isSubmergedInWater(); - } - - @Override - public boolean superHandleWaterMovement() { - return super.isSubmergedInWater(); - } - - @Override - public boolean method_1335() { - Boolean result = PlayerAPI.handleLavaMovement((PlayerEntity) (Object) this); - if (result != null) - return result; - return super.method_1335(); - } - - @Override - public boolean superHandleLavaMovement() { - return super.method_1335(); - } - - // ??? - /*public void superDropPlayerItemWithRandomChoice(ItemInstance itemstack, boolean flag) { - super.dropItem(itemstack, flag); - }*/ - - @Inject( - method = "dropItem(Lnet/minecraft/item/ItemStack;Z)V", - at = @At("HEAD"), - cancellable = true - ) - public void stationapi_dropPlayerItemWithRandomChoice(ItemStack arg, boolean flag, CallbackInfo ci) { - if (PlayerAPI.dropPlayerItemWithRandomChoice((PlayerEntity) (Object) this, arg, flag)) - ci.cancel(); - } - - @Inject( - method = "method_946", - at = @At("HEAD"), - cancellable = true - ) - private void stationapi_applyDamage(int initialDamage, CallbackInfo ci) { - if (PlayerAPI.damageEntity((PlayerEntity) (Object) this, initialDamage)) - ci.cancel(); - } - - @Override - public void superUpdatePlayerActionState() { - super.method_910(); - } - - @Override - public void setMoveForward(float value) { - this.field_1060 = value; - } - - @Override - public void setMoveStrafing(float value) { - this.field_1029 = value; - } - - @Override - public void setIsJumping(boolean value) { - this.jumping = value; - } -} diff --git a/station-player-api-v0/src/main/java/net/modificationstation/stationapi/mixin/player/client/ClientPlayerEntityMixin.java b/station-player-api-v0/src/main/java/net/modificationstation/stationapi/mixin/player/client/ClientPlayerEntityMixin.java deleted file mode 100644 index 9e2745e5d..000000000 --- a/station-player-api-v0/src/main/java/net/modificationstation/stationapi/mixin/player/client/ClientPlayerEntityMixin.java +++ /dev/null @@ -1,46 +0,0 @@ -package net.modificationstation.stationapi.mixin.player.client; - -import net.minecraft.entity.player.ClientPlayerEntity; -import net.minecraft.entity.player.PlayerInventory; -import net.modificationstation.stationapi.impl.entity.player.PlayerAPI; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.Redirect; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; - -@Mixin(ClientPlayerEntity.class) -class ClientPlayerEntityMixin { - @Inject(method = "method_136", at = @At("HEAD"), cancellable = true) - private void stationapi_onHandleKeyPress(int i, boolean b, CallbackInfo ci) { - if (PlayerAPI.handleKeyPress((ClientPlayerEntity) (Object) this, i, b)) - ci.cancel(); - } - - @Redirect(method = "method_141", at = @At(value = "INVOKE", target = "Lnet/minecraft/entity/player/PlayerInventory;method_687()I")) - private int stationapi_redirectGetPlayerArmorValue(PlayerInventory inventoryPlayer) { - return PlayerAPI.getPlayerArmorValue((ClientPlayerEntity) (Object) this, inventoryPlayer.method_687()); - } - - @Inject(method = "method_1373", at = @At("RETURN"), cancellable = true) - private void stationapi_isSneaking(CallbackInfoReturnable cir) { - cir.setReturnValue(PlayerAPI.isSneaking((ClientPlayerEntity) (Object) this, cir.getReturnValue())); - } - - @Inject(method = "pushOutOfBlock", at = @At("HEAD"), cancellable = true) - private void stationapi_injectPushOutOfBlocks(double v, double v1, double v2, CallbackInfoReturnable cir) { - if (PlayerAPI.pushOutOfBlocks((ClientPlayerEntity) (Object) this, v, v1, v2)) - cir.setReturnValue(false); - } - - @Inject(method = "sendChatMessage(Ljava/lang/String;)V", at = @At("HEAD")) - private void stationapi_sendChatMessage(String string, CallbackInfo ci) { - PlayerAPI.sendChatMessage((ClientPlayerEntity) (Object) this, string); - } - - // ??? - /*public float superGetCurrentPlayerStrVsBlock(BlockBase block) { - return super.getStrengh(block); - }*/ -} diff --git a/station-player-api-v0/src/main/resources/station-player-api-v0.mixins.json b/station-player-api-v0/src/main/resources/station-player-api-v0.mixins.json index 4db4834fd..f540ebaed 100644 --- a/station-player-api-v0/src/main/resources/station-player-api-v0.mixins.json +++ b/station-player-api-v0/src/main/resources/station-player-api-v0.mixins.json @@ -3,15 +3,9 @@ "minVersion": "0.8", "package": "net.modificationstation.stationapi.mixin.player", "compatibilityLevel": "JAVA_17", - "mixins": [ - "PlayerEntityMixin" - ], "server": [ "server.ServerPlayNetworkHandlerAccessor" ], - "client": [ - "client.ClientPlayerEntityMixin" - ], "injectors": { "defaultRequire": 1 }