public static NPC ConvertToNPC(BaseCharacter bc, BasicMap bm) { bm.mapSprites.Remove(bc); NPC temp = new NPC(); temp.baseCharacter = bc; temp.mapPlacedID = bm.identifier; temp.mapActiveID = bm.identifier; bc.parentObject = temp; temp.objectIDAddedOnMap = bc.objectIDAddedOnMap; bc.fromMap = bm; bc.currentMapToDisplayOn = bm; bc.scriptID = -1; bc.script = null; bm.mapNPCs.Add(temp); bm.ForceCheckChunksToConsider(); //Should get rid of any old bc references, to prevent doubles MapObjectHelpClass.objectFromOutsideOnThisMap.Add(temp); MapObjectHelpClass.objectsToUpdateOutsideOfMap.Add(temp); return(temp); }