private static SaveData.SerializableAbilityMap ConvertAbilityMapForSaving(IDictionary <KeyCode, Ability> abilityMap) { var saveMap = new SaveData.SerializableAbilityMap(); foreach (var mapping in abilityMap) { saveMap.Add(mapping.Key, mapping.Value?.Name); } return(saveMap); }
private static Dictionary <KeyCode, Ability> ConvertAbilityMapForPlaying(SaveData.SerializableAbilityMap abilityMap) { var loadMap = new Dictionary <KeyCode, Ability>(); foreach (var mapping in abilityMap) { if (string.IsNullOrEmpty(mapping.Value)) { loadMap.Add(mapping.Key, null); } else { var ability = GameManager.Instance.Player.Abilities[mapping.Value]; loadMap.Add(mapping.Key, ability); } } return(loadMap); }