Commit
e20928f7da265577c771b63ca7ce49c35ef19b2b
by md_5SPIGOT-2726: Fix duplicate UUID check not always running
World.addEntity(Entity entity) calls addEntity(entity,
SpawnReason.DEFAULT), which contains the code that was originally in
addEntity (and some event code).
However, WorldServer previously only had addEntity(Entity entity), so if
addEntity(Entity entity, SpawnReason spawnreason) was called directly,
the UUID check that's found in it (the call to 'i') is skipped. This
happens, among other places, in ChunkRegionLoader.spawnEntity (which
/summon uses).
I fixed this by making WorldServer override the SpawnReason version,
rather than the regular version. This is safe to do because the World
version calls the SpawnReason version - it's not necessary to do the
same thing in WorldServer.