public override void HandleMobSpawn(Packet24MobSpawn par1Packet24MobSpawn) { float d = (float)par1Packet24MobSpawn.XPosition / 32F; float d1 = (float)par1Packet24MobSpawn.YPosition / 32F; float d2 = (float)par1Packet24MobSpawn.ZPosition / 32F; float f = (float)(par1Packet24MobSpawn.Yaw * 360) / 256F; float f1 = (float)(par1Packet24MobSpawn.Pitch * 360) / 256F; EntityLiving entityliving = (EntityLiving)EntityList.CreateEntityByID(par1Packet24MobSpawn.Type, Mc.TheWorld); entityliving.ServerPosX = par1Packet24MobSpawn.XPosition; entityliving.ServerPosY = par1Packet24MobSpawn.YPosition; entityliving.ServerPosZ = par1Packet24MobSpawn.ZPosition; entityliving.RotationYawHead = (float)(par1Packet24MobSpawn.Field_48169_h * 360) / 256F; Entity[] aentity = entityliving.GetParts(); if (aentity != null) { int i = par1Packet24MobSpawn.EntityId - entityliving.EntityId; for (int j = 0; j < aentity.Length; j++) { aentity[j].EntityId += i; } } entityliving.EntityId = par1Packet24MobSpawn.EntityId; entityliving.SetPositionAndRotation(d, d1, d2, f, f1); WorldClient.AddEntityToWorld(par1Packet24MobSpawn.EntityId, entityliving); List <WatchableObject> list = par1Packet24MobSpawn.GetMetadata(); if (list != null) { entityliving.GetDataWatcher().UpdateWatchedObjectsFromList(list); } }
public Packet24MobSpawn(EntityLiving par1EntityLiving) { EntityId = par1EntityLiving.EntityId; Type = (sbyte)EntityList.GetEntityID(par1EntityLiving); XPosition = MathHelper2.Floor_double(par1EntityLiving.PosX * 32D); YPosition = MathHelper2.Floor_double(par1EntityLiving.PosY * 32D); ZPosition = MathHelper2.Floor_double(par1EntityLiving.PosZ * 32D); Yaw = (sbyte)(int)((par1EntityLiving.RotationYaw * 256F) / 360F); Pitch = (sbyte)(int)((par1EntityLiving.RotationPitch * 256F) / 360F); Field_48169_h = (sbyte)(int)((par1EntityLiving.RotationYawHead * 256F) / 360F); MetaData = par1EntityLiving.GetDataWatcher(); }