private void AppendAddCreature(Creature creature, Position position) { position = gameMap.GetFreePosition(position, creature); ThingSet tSet = gameMap.GetThingsInVicinity(position); AddCachedCreature(creature, position); creature.InitCreatureCheck(this); byte stackpos = gameMap.GetStackPosition(creature, position); foreach (Thing thing in tSet.GetThings()) { thing.AddScreenCreature(creature, position, stackpos); } }