func (chunk *Chunk) removeEntity(s gamerules.INonPlayerEntity) { e := s.GetEntityId() chunk.shard.entityMgr.RemoveEntityById(e) delete(chunk.entities, e) // Tell all subscribers that the spawn's entity is destroyed. buf := new(bytes.Buffer) proto.WriteEntityDestroy(buf, e) chunk.reqMulticastPlayers(-1, buf.Bytes()) chunk.storeDirty = true }
// Tells the chunk to take posession of the item/mob from another chunk. func (chunk *Chunk) transferEntity(s gamerules.INonPlayerEntity) { chunk.entities[s.GetEntityId()] = s chunk.storeDirty = true }