Beispiel #1
0
        void RecurseTree(AbilityTreeNode node)
        {
            if (!seenNodes.Add(node.Ptr))
            {
                return;
            }

            if (node.CheckValue3 == true)
            {
                return;
            }

            nodes.Add(node);

            RecurseTree(node.Left);
            RecurseTree(node.Parent);
            RecurseTree(node.Right);
        }
Beispiel #2
0
        public int GetSkillTS(int Skill)
        {
            int headPtr = Memory.ReadInt(Process.handle, Process.Modules.Game + 0x8e3930);

            headPtr = Memory.ReadInt(Process.handle, headPtr + 0x1e4);
            AbilityTreeNode head = new AbilityTreeNode(headPtr);

            nodes     = new List <AbilityTreeNode>();
            seenNodes = new HashSet <int>();
            RecurseTree(head);


            foreach (var node in nodes)
            {
                if (node.AbilityID == Skill)
                {
                    return(node.AbilityCooldownTS);
                }
            }

            return(0);
        }