コード例 #1
0
ファイル: ModManager.cs プロジェクト: EmpioDavion/Lizard
        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;
        }
コード例 #2
0
ファイル: ModManager.cs プロジェクト: EmpioDavion/Lizard
        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;
        }
コード例 #3
0
ファイル: ModManager.cs プロジェクト: EmpioDavion/Lizard
        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);
        }
コード例 #4
0
ファイル: Mod.cs プロジェクト: EmpioDavion/Lizard
        private static Sprite LoadSkillSprite(Player.SkillState skill)
        {
            IModSkill modSkill = (IModSkill)skill;

            return(LoadObjectSprite(skill, skill.skillID, "Skill", modSkill.SkillImage));
        }