|
@@ -19,6 +19,7 @@
|
|
|
|
|
|
package me.shedaniel.architectury.networking.fabric;
|
|
package me.shedaniel.architectury.networking.fabric;
|
|
|
|
|
|
|
|
+import me.shedaniel.architectury.extensions.network.EntitySpawnExtension;
|
|
import me.shedaniel.architectury.networking.NetworkManager;
|
|
import me.shedaniel.architectury.networking.NetworkManager;
|
|
import net.fabricmc.api.EnvType;
|
|
import net.fabricmc.api.EnvType;
|
|
import net.fabricmc.api.Environment;
|
|
import net.fabricmc.api.Environment;
|
|
@@ -59,6 +60,9 @@ public class SpawnEntityPacket {
|
|
buffer.writeDouble(deltaMovement.x);
|
|
buffer.writeDouble(deltaMovement.x);
|
|
buffer.writeDouble(deltaMovement.y);
|
|
buffer.writeDouble(deltaMovement.y);
|
|
buffer.writeDouble(deltaMovement.z);
|
|
buffer.writeDouble(deltaMovement.z);
|
|
|
|
+ if (entity instanceof EntitySpawnExtension) {
|
|
|
|
+ ((EntitySpawnExtension) entity).saveAdditionalSpawnData(buffer);
|
|
|
|
+ }
|
|
return NetworkManager.toPacket(NetworkManager.s2c(), PACKET_ID, buffer);
|
|
return NetworkManager.toPacket(NetworkManager.s2c(), PACKET_ID, buffer);
|
|
}
|
|
}
|
|
|
|
|
|
@@ -102,6 +106,9 @@ public class SpawnEntityPacket {
|
|
entity.absMoveTo(x, y, z, xRot, yRot);
|
|
entity.absMoveTo(x, y, z, xRot, yRot);
|
|
entity.setYHeadRot(yHeadRot);
|
|
entity.setYHeadRot(yHeadRot);
|
|
entity.setYBodyRot(yHeadRot);
|
|
entity.setYBodyRot(yHeadRot);
|
|
|
|
+ if (entity instanceof EntitySpawnExtension) {
|
|
|
|
+ ((EntitySpawnExtension) entity).loadAdditionalSpawnData(buf);
|
|
|
|
+ }
|
|
Minecraft.getInstance().level.putNonPlayerEntity(id, entity);
|
|
Minecraft.getInstance().level.putNonPlayerEntity(id, entity);
|
|
entity.lerpMotion(deltaX, deltaY, deltaZ);
|
|
entity.lerpMotion(deltaX, deltaY, deltaZ);
|
|
});
|
|
});
|