Ejemplo n.º 1
0
        private static unsafe List <PerkAction> GetPerkActions()
        {
            List <PerkAction> perks   = new List <PerkAction>();
            IntPtr            pEngine = N3Engine_t.GetInstance();

            if (pEngine == IntPtr.Zero)
            {
                return(perks);
            }

            foreach (IntPtr pAction in N3EngineClientAnarchy_t.GetSpecialActionList(pEngine)->ToList())
            {
                SpecialActionMemStruct specialAction = *(SpecialActionMemStruct *)pAction;

                if (specialAction.Identity.Type != IdentityType.PerkHash)
                {
                    continue;
                }

                perks.Add(new PerkAction(specialAction.TemplateIdentity, specialAction.Identity.Instance));
            }

            return(perks.OrderBy(perk => perk.Identity.Instance).ToList());
        }