internal static void LoadModSkillStatData(Player player, IModSkill modSkill) { const string statId = "Skills"; Logger.Log($"Loading skill stat data for {modSkill.DisplayName} for player {player.playerID + 1}"); Dictionary <string, StatData> dictionary = StatManager.data[statId][player.skillCategory]; SkillStats skillStats = modSkill.Stats; skillStats.Initialize(); skillStats.targetNames[0] = "EnemyHurtBox"; skillStats.targetNames[1] = "DestructibleHurtBox"; skillStats.targetNames[4] = "FFAHurtBox"; StatData statData = new StatData(skillStats, player.skillCategory); List <string> val = statData.GetValue <List <string> >("targetNames", -1); if (val.Contains(Globals.allyHBStr) || val.Contains(Globals.enemyHBStr)) { val.Add(Globals.ffaHBStr); } if (val.Contains(Globals.allyFCStr) || val.Contains(Globals.enemyFCStr)) { val.Add(Globals.ffaFCStr); } string id = statData.GetValue <string>("ID", -1); dictionary[id] = statData; StatManager.globalSkillData[id] = statData; }
private static void UpdateModDescription(string skillID, IModSkill modSkill) { object skillInfo = ModSkillDescriptions[skillID]; SkillLink.id.SetValue(skillInfo, skillID); SkillLink.displayName.SetValue(skillInfo, modSkill.DisplayName); SkillLink.description.SetValue(skillInfo, modSkill.Description); SkillLink.empowered.SetValue(skillInfo, modSkill.Empowered); ModSkillDescriptions[skillID] = skillInfo; System.Collections.IDictionary skillInfoDict = (System.Collections.IDictionary)SkillLink.dict.GetValue(null); skillInfoDict[skillID] = skillInfo; }
internal static void AddModSkill(Player.SkillState skill, UnityEngine.Sprite sprite) { IModSkill modSkill = (IModSkill)skill; ModSkills.Add(skill.skillID, modSkill); ModSkillImages.Add(skill.skillID, sprite); foreach (int tier in modSkill.Tiers) { LootManager.skillTierDict[tier].Add(skill.skillID); } UpdateModDescription(skill.skillID, modSkill); }
private static Sprite LoadSkillSprite(Player.SkillState skill) { IModSkill modSkill = (IModSkill)skill; return(LoadObjectSprite(skill, skill.skillID, "Skill", modSkill.SkillImage)); }