public void RemoveNpc(GameCharacter.Npc npc)
        {
            npc.RemoveSeenByAllOther();

            characters_npcs.Remove(npc);
            characters.Remove(npc);

            Log.Log("Removed npc: " + npc.Id);
        }
        /////////// Public ///////////

        public void AddNpc(GameCharacter.Npc npc, Position2D position = null)
        {
            if (position != null)
            {
                npc.Position.Set(position);
            }

            npc.SetID(NextCharacterID);

            characters.Add(npc);
            characters_npcs.Add(npc);

            Log.Log("Added npc: " + npc.Id);

            UpdateCharacterView(npc);
        }