Esempio n. 1
0
        static ShipUiTargetAssignedGroup AusAstBerecneAssignedModuleOderDroneGrupe(
            UINodeInfoInTree ast)
        {
            if (null == ast)
            {
                return(null);
            }

            bool?IstDrone = null;

            var SpriteAst =
                Optimat.EveOnline.AuswertGbs.Extension.FirstMatchingNodeFromSubtreeBreadthFirst(
                    ast,
                    (kandidaat) => string.Equals("Sprite", kandidaat.PyObjTypName, StringComparison.InvariantCultureIgnoreCase),
                    2,
                    1);

            var IconAst =
                Optimat.EveOnline.AuswertGbs.Extension.FirstMatchingNodeFromSubtreeBreadthFirst(
                    ast,
                    AuswertGbs.Glob.GbsAstTypeIstEveIcon,
                    2,
                    1);

            if (null != SpriteAst)
            {
                var SpriteAstHint = SpriteAst.Hint;

                if (null != SpriteAstHint)
                {
                    IstDrone = Regex.Match(SpriteAstHint, "Drone", RegexOptions.IgnoreCase).Success;
                }
            }

            var IconTextureIdent = IconAst?.TextureIdent0;

            var ModuleOderDroneGrupe = new ShipUiTargetAssignedGroup(ast.AsUIElementIfVisible())
            {
                IconTexture = IconTextureIdent?.AsObjectIdInMemory(),
            };

            return(ModuleOderDroneGrupe);
        }
Esempio n. 2
0
 static public BotEngine.EveOnline.Interface.MemoryStruct.ShipUiTargetAssignedGroup AsOld(this ShipUiTargetAssignedGroup assignedGroup) =>
 assignedGroup == null ? null :
 new BotEngine.EveOnline.Interface.MemoryStruct.ShipUiTargetAssignedGroup(assignedGroup.AsOldUIElement())
 {
     IconTexture = assignedGroup.IconTexture?.AsOld(),
 };