9
0
mirror of https://github.com/HibiscusMC/HibiscusCommons.git synced 2025-12-19 15:09:26 +00:00

feat: expose helper method to create mount-packets

This commit is contained in:
Boy0000
2025-05-18 21:53:35 +02:00
parent 32402bd44b
commit 026c5b8ce6
9 changed files with 88 additions and 2 deletions

View File

@@ -93,4 +93,6 @@ public interface NMSPackets {
List<Player> sendTo);
void sendToastPacket(Player player, ItemStack icon, Component title, Component description);
Object createMountPacket(int entityId, int[] passengerIds);
}

View File

@@ -1 +1 @@
userdevVersion=2.0.0-beta.14
userdevVersion=2.0.0-beta.17

View File

@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.12-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-bin.zip
networkTimeout=10000
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

View File

@@ -346,4 +346,18 @@ public class NMSPackets extends NMSCommon implements me.lojosho.hibiscuscommons.
public void sendToastPacket(Player player, ItemStack icon, Component title, Component description) {
throw new UnsupportedOperationException("Not implemented in this version.");
}
@Override
public Object createMountPacket(int entityId, int[] passengerIds) {
fakeNmsEntity.setId(entityId);
List<Entity> passengers = Arrays.stream(passengerIds).mapToObj(id -> {
Entity passenger = new ArmorStand(net.minecraft.world.entity.EntityType.ARMOR_STAND, level);
passenger.setId(id);
return passenger;
}).toList();
fakeNmsEntity.passengers = ImmutableList.copyOf(passengers);
ClientboundSetPassengersPacket packet = new ClientboundSetPassengersPacket(fakeNmsEntity);
fakeNmsEntity.passengers = ImmutableList.of();
return packet;
}
}

View File

@@ -415,4 +415,18 @@ public class NMSPackets extends NMSCommon implements me.lojosho.hibiscuscommons.
sendPacket(player, removePacket);
}, 2L);
}
@Override
public Object createMountPacket(int entityId, int[] passengerIds) {
fakeNmsEntity.setId(entityId);
List<Entity> passengers = Arrays.stream(passengerIds).mapToObj(id -> {
Entity passenger = new ArmorStand(net.minecraft.world.entity.EntityType.ARMOR_STAND, level);
passenger.setId(id);
return passenger;
}).toList();
fakeNmsEntity.passengers = ImmutableList.copyOf(passengers);
ClientboundSetPassengersPacket packet = new ClientboundSetPassengersPacket(fakeNmsEntity);
fakeNmsEntity.passengers = ImmutableList.of();
return packet;
}
}

View File

@@ -414,4 +414,18 @@ public class NMSPackets extends NMSCommon implements me.lojosho.hibiscuscommons.
sendPacket(player, removePacket);
}, 2L);
}
@Override
public Object createMountPacket(int entityId, int[] passengerIds) {
fakeNmsEntity.setId(entityId);
List<Entity> passengers = Arrays.stream(passengerIds).mapToObj(id -> {
Entity passenger = new ArmorStand(net.minecraft.world.entity.EntityType.ARMOR_STAND, level);
passenger.setId(id);
return passenger;
}).toList();
fakeNmsEntity.passengers = ImmutableList.copyOf(passengers);
ClientboundSetPassengersPacket packet = new ClientboundSetPassengersPacket(fakeNmsEntity);
fakeNmsEntity.passengers = ImmutableList.of();
return packet;
}
}

View File

@@ -417,4 +417,18 @@ public class NMSPackets extends NMSCommon implements me.lojosho.hibiscuscommons.
sendPacket(player, removePacket);
}, 2L);
}
@Override
public Object createMountPacket(int entityId, int[] passengerIds) {
fakeNmsEntity.setId(entityId);
List<Entity> passengers = Arrays.stream(passengerIds).mapToObj(id -> {
Entity passenger = new ArmorStand(net.minecraft.world.entity.EntityType.ARMOR_STAND, level);
passenger.setId(id);
return passenger;
}).toList();
fakeNmsEntity.passengers = ImmutableList.copyOf(passengers);
ClientboundSetPassengersPacket packet = new ClientboundSetPassengersPacket(fakeNmsEntity);
fakeNmsEntity.passengers = ImmutableList.of();
return packet;
}
}

View File

@@ -454,4 +454,18 @@ public class NMSPackets extends NMSCommon implements me.lojosho.hibiscuscommons.
sendPacket(player, removePacket);
}, 2L);
}
@Override
public Object createMountPacket(int entityId, int[] passengerIds) {
fakeNmsEntity.setId(entityId);
List<Entity> passengers = Arrays.stream(passengerIds).mapToObj(id -> {
Entity passenger = new ArmorStand(net.minecraft.world.entity.EntityType.ARMOR_STAND, level);
passenger.setId(id);
return passenger;
}).toList();
fakeNmsEntity.passengers = ImmutableList.copyOf(passengers);
ClientboundSetPassengersPacket packet = new ClientboundSetPassengersPacket(fakeNmsEntity);
fakeNmsEntity.passengers = ImmutableList.of();
return packet;
}
}

View File

@@ -453,4 +453,18 @@ public class NMSPackets extends NMSCommon implements me.lojosho.hibiscuscommons.
sendPacket(player, removePacket);
}, 2L);
}
@Override
public Object createMountPacket(int entityId, int[] passengerIds) {
fakeNmsEntity.setId(entityId);
List<Entity> passengers = Arrays.stream(passengerIds).mapToObj(id -> {
Entity passenger = new ArmorStand(net.minecraft.world.entity.EntityType.ARMOR_STAND, level);
passenger.setId(id);
return passenger;
}).toList();
fakeNmsEntity.passengers = ImmutableList.copyOf(passengers);
ClientboundSetPassengersPacket packet = new ClientboundSetPassengersPacket(fakeNmsEntity);
fakeNmsEntity.passengers = ImmutableList.of();
return packet;
}
}