public Character AddCharacterFromRoster(string NewCharacterName, Dictionary <string, BaseSkillRequirement> DicRequirement, Dictionary <string, BaseEffect> DicEffect) { RosterCharacter RosterCharacter; DicRosterCharacter.TryGetValue(NewCharacterName, out RosterCharacter); if (RosterCharacter != null) { Character NewCharacter = new Character(RosterCharacter.FilePath, GameScreen.ContentFallback, DicRequirement, DicEffect); NewCharacter.DicCharacterLink = new Dictionary <string, Character.CharacterLinkTypes>(RosterCharacter.DicCharacterLink); NewCharacter.TeamTags.AddTag("Present"); NewCharacter.Level = 1; if (NewCharacter.Slave != null) { NewCharacter.Slave.Level = 1; } TeamCharacters.Add(NewCharacter); CreateCharacterRosterDependencies(); return(NewCharacter); } return(null); }