Skip to content

Commit a6ac4f1

Browse files
committed
feat(minecraft): update to 25w46a
Notable Changes: - AbstractMount for carrier handling for Horses and Nautili(sp?) See https://minecraft.wiki/w/Java_Edition_25w46a
1 parent 3630664 commit a6ac4f1

File tree

10 files changed

+30
-17
lines changed

10 files changed

+30
-17
lines changed

generator/src/main/java/org/spongepowered/vanilla/generator/GeneratorMain.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@
2727
import com.github.javaparser.utils.Log;
2828
import com.mojang.datafixers.util.Pair;
2929
import net.minecraft.SharedConstants;
30-
import net.minecraft.util.Util;
3130
import net.minecraft.commands.Commands.CommandSelection;
3231
import net.minecraft.core.HolderLookup;
3332
import net.minecraft.core.LayeredRegistryAccess;
@@ -44,6 +43,7 @@
4443
import net.minecraft.server.packs.resources.MultiPackResourceManager;
4544
import net.minecraft.server.permissions.LevelBasedPermissionSet;
4645
import net.minecraft.tags.TagLoader;
46+
import net.minecraft.util.Util;
4747
import net.minecraft.world.level.WorldDataConfiguration;
4848
import org.spongepowered.vanilla.generator.item.ItemRegistries;
4949
import org.spongepowered.vanilla.generator.world.TagRegistries;

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ mixinConfigs=mixins.sponge.accessors.json,mixins.sponge.api.json,mixins.sponge.c
1111
mixins.sponge.entityactivation.json,mixins.sponge.exploit.json,mixins.sponge.inventory.json,mixins.sponge.movementcheck.json,\
1212
mixins.sponge.tracker.json,mixins.sponge.ipforward.json,mixins.sponge.optimization.json,mixins.sponge.test.json
1313

14-
minecraftVersion=25w45a
14+
minecraftVersion=25w46a
1515
recommendedVersion=0-SNAPSHOT
1616

1717
org.gradle.dependency.verification.console=verbose

src/accessors/java/org/spongepowered/common/accessor/world/inventory/HorseInventoryMenuAccessor.java renamed to src/accessors/java/org/spongepowered/common/accessor/world/inventory/AbstractMountInventoryMenuAccessor.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,14 +24,14 @@
2424
*/
2525
package org.spongepowered.common.accessor.world.inventory;
2626

27-
import net.minecraft.world.entity.animal.horse.AbstractHorse;
28-
import net.minecraft.world.inventory.HorseInventoryMenu;
27+
import net.minecraft.world.entity.LivingEntity;
28+
import net.minecraft.world.inventory.AbstractMountInventoryMenu;
2929
import org.spongepowered.asm.mixin.Mixin;
3030
import org.spongepowered.asm.mixin.gen.Accessor;
3131

32-
@Mixin(HorseInventoryMenu.class)
33-
public interface HorseInventoryMenuAccessor {
32+
@Mixin(AbstractMountInventoryMenu.class)
33+
public interface AbstractMountInventoryMenuAccessor {
3434

35-
@Accessor("horse") AbstractHorse accessor$horse();
35+
@Accessor("mount") LivingEntity accessor$mount();
3636

3737
}

src/accessors/resources/mixins.sponge.accessors.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@
138138
"world.inventory.BrewingStandMenuAccessor",
139139
"world.inventory.DispenserMenuAccessor",
140140
"world.inventory.HopperMenuAccessor",
141-
"world.inventory.HorseInventoryMenuAccessor",
141+
"world.inventory.AbstractMountInventoryMenuAccessor",
142142
"world.inventory.ItemCombinerMenuAccessor",
143143
"world.inventory.MerchantMenuAccessor",
144144
"world.inventory.ResultSlotAccessor",

src/main/java/org/spongepowered/common/inventory/util/ContainerUtil.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,11 +49,11 @@
4949
import org.spongepowered.common.SpongeCommon;
5050
import org.spongepowered.common.accessor.world.inventory.AbstractContainerMenuAccessor;
5151
import org.spongepowered.common.accessor.world.inventory.AbstractFurnaceMenuAccessor;
52+
import org.spongepowered.common.accessor.world.inventory.AbstractMountInventoryMenuAccessor;
5253
import org.spongepowered.common.accessor.world.inventory.BeaconMenuAccessor;
5354
import org.spongepowered.common.accessor.world.inventory.BrewingStandMenuAccessor;
5455
import org.spongepowered.common.accessor.world.inventory.DispenserMenuAccessor;
5556
import org.spongepowered.common.accessor.world.inventory.HopperMenuAccessor;
56-
import org.spongepowered.common.accessor.world.inventory.HorseInventoryMenuAccessor;
5757
import org.spongepowered.common.accessor.world.inventory.ItemCombinerMenuAccessor;
5858
import org.spongepowered.common.accessor.world.inventory.MerchantMenuAccessor;
5959
import org.spongepowered.common.accessor.world.inventory.ResultSlotAccessor;
@@ -291,8 +291,8 @@ private static Lens generateAdapterLens(final SlotLensProvider slots, final int
291291
return ContainerUtil.carrierOrNull(((BrewingStandMenuAccessor) container).accessor$brewingStand());
292292
} else if (container instanceof BeaconMenu) {
293293
return new SpongeBlockEntityCarrier(((BeaconMenuAccessor) container).accessor$access().evaluate(Level::getBlockEntity).orElse(null), container);
294-
} else if (container instanceof HorseInventoryMenuAccessor) {
295-
return (Carrier) ((HorseInventoryMenuAccessor) container).accessor$horse();
294+
} else if (container instanceof AbstractMountInventoryMenuAccessor) {
295+
return (Carrier) ((AbstractMountInventoryMenuAccessor) container).accessor$mount();
296296
} else if (container instanceof MerchantMenuAccessor && ((MerchantMenuAccessor) container).accessor$trader() instanceof Carrier) {
297297
return (Carrier) ((MerchantMenuAccessor) container).accessor$trader();
298298
} else if (container instanceof ItemCombinerMenuAccessor) {

src/mixins/java/org/spongepowered/common/mixin/api/minecraft/world/entity/animal/nautilus/AbstractNautilusMixin_API.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,18 +24,25 @@
2424
*/
2525
package org.spongepowered.common.mixin.api.minecraft.world.entity.animal.nautilus;
2626

27+
import net.minecraft.world.SimpleContainer;
2728
import net.minecraft.world.entity.animal.nautilus.AbstractNautilus;
2829
import org.spongepowered.api.data.Keys;
2930
import org.spongepowered.api.data.value.Value;
3031
import org.spongepowered.api.entity.living.animal.NautilusLike;
32+
import org.spongepowered.api.item.inventory.Carrier;
33+
import org.spongepowered.api.item.inventory.type.CarriedInventory;
3134
import org.spongepowered.asm.mixin.Mixin;
35+
import org.spongepowered.asm.mixin.Shadow;
36+
import org.spongepowered.common.inventory.util.InventoryUtil;
3237
import org.spongepowered.common.mixin.api.minecraft.world.entity.TamableAnimalMixin_API;
3338

3439
import java.util.Set;
3540

3641
@Mixin(AbstractNautilus.class)
3742
public abstract class AbstractNautilusMixin_API extends TamableAnimalMixin_API implements NautilusLike {
3843

44+
@Shadow protected SimpleContainer inventory;
45+
3946
@Override
4047
protected Set<Value.Immutable<?>> api$getVanillaValues() {
4148
final Set<Value.Immutable<?>> values = super.api$getVanillaValues();
@@ -47,4 +54,10 @@ public abstract class AbstractNautilusMixin_API extends TamableAnimalMixin_API i
4754

4855
return values;
4956
}
57+
58+
59+
@Override
60+
public CarriedInventory<? extends Carrier> inventory() {
61+
return InventoryUtil.carriedWrapperInventory(this.inventory, this);
62+
}
5063
}

src/mixins/java/org/spongepowered/common/mixin/core/world/entity/player/PlayerMixin_Attack.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ public abstract class PlayerMixin_Attack extends LivingEntityMixin_Damage implem
140140
}
141141

142142
@Inject(method = "attack",
143-
at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/player/Player;makeSound(Lnet/minecraft/sounds/SoundEvent;)V"), slice = @Slice(
143+
at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/player/Player;playServerSideSound(Lnet/minecraft/sounds/SoundEvent;)V"), slice = @Slice(
144144
from = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/player/Player;isSprinting()Z", ordinal = 0),
145145
to = @At(value = "INVOKE", target = "Lnet/minecraft/world/item/Item;getAttackDamageBonus(Lnet/minecraft/world/entity/Entity;FLnet/minecraft/world/damagesource/DamageSource;)F")))
146146
private void attack$captureStrongSprint(final Entity target, final CallbackInfo ci) {

src/mixins/java/org/spongepowered/common/mixin/inventory/event/server/level/ServerPlayerMixin_Inventory.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation;
3030
import com.llamalad7.mixinextras.sugar.Cancellable;
3131
import net.minecraft.network.protocol.Packet;
32-
import net.minecraft.network.protocol.game.ClientboundHorseScreenOpenPacket;
32+
import net.minecraft.network.protocol.game.ClientboundMountScreenOpenPacket;
3333
import net.minecraft.network.protocol.game.ClientboundOpenScreenPacket;
3434
import net.minecraft.server.level.ServerLevel;
3535
import net.minecraft.server.level.ServerPlayer;
@@ -226,7 +226,7 @@ public abstract class ServerPlayerMixin_Inventory extends PlayerMixin_Inventory
226226
ci.cancel();
227227
return menu;
228228
}
229-
this.connection.send(new ClientboundHorseScreenOpenPacket(menu.containerId, $$4, $$3.getId()));
229+
this.connection.send(new ClientboundMountScreenOpenPacket(menu.containerId, $$4, $$3.getId()));
230230
return menu;
231231
}
232232

src/mixins/java/org/spongepowered/common/mixin/inventory/impl/TraitMixin_ContainerBridge_Inventory.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,14 +27,14 @@
2727
import net.minecraft.world.entity.player.Player;
2828
import net.minecraft.world.inventory.AbstractContainerMenu;
2929
import net.minecraft.world.inventory.AbstractFurnaceMenu;
30+
import net.minecraft.world.inventory.AbstractMountInventoryMenu;
3031
import net.minecraft.world.inventory.BeaconMenu;
3132
import net.minecraft.world.inventory.BrewingStandMenu;
3233
import net.minecraft.world.inventory.ChestMenu;
3334
import net.minecraft.world.inventory.CraftingMenu;
3435
import net.minecraft.world.inventory.DispenserMenu;
3536
import net.minecraft.world.inventory.EnchantmentMenu;
3637
import net.minecraft.world.inventory.HopperMenu;
37-
import net.minecraft.world.inventory.HorseInventoryMenu;
3838
import net.minecraft.world.inventory.InventoryMenu;
3939
import net.minecraft.world.inventory.ItemCombinerMenu;
4040
import net.minecraft.world.inventory.MenuType;
@@ -60,7 +60,7 @@
6060
ItemCombinerMenu.class,
6161
BrewingStandMenu.class,
6262
BeaconMenu.class,
63-
HorseInventoryMenu.class,
63+
AbstractMountInventoryMenu.class,
6464
MerchantMenu.class,
6565
InventoryMenu.class,
6666
CraftingMenu.class

0 commit comments

Comments
 (0)