示例#1
0
 public bool WhileInteractionLook(GameObject player)
 {
     if (!FlagHelper.IsSet(flags, ItemFlags.INTERACTABLE))
     {
         return(false);
     }
     return(true);
 }
示例#2
0
        public InstructionBase(ICpu cpu)
        {
            this.cpu = cpu;

            compare = new CompareHelper(cpu);
            flags   = new FlagHelper(cpu);
            branch  = new BranchHelper(cpu);
            bcd     = new BCDHelper(cpu);
        }
示例#3
0
    private void unlockPoint()
    {
        if (FlagHelper.IsSet(buildItemTypeFlags, BuildItemType.NONE))
        {
            buildItemTypeFlags &= ~(BuildItemType.NONE);
        }

        buildItemTypeFlags |= typesToUnlock;

        unlocked = true;
    }
示例#4
0
        public override bool Create(EnterpriseServiceEntity model)
        {
            bool result = base.Create(model);

            if (result == true && model.EnterpriseServiceStatus == Logics.True)
            {
                EnterpriseEntity enterpriseEntity = EnterpriseBLL.Instance.Get(model.EnterpriseGuid);
                enterpriseEntity.CooperateStatus = FlagHelper.AddFlag(enterpriseEntity.CooperateStatus, model.EnterpriseServiceType);
                EnterpriseBLL.Instance.Update(enterpriseEntity);
            }
            return(result);
        }
示例#5
0
        /// <summary>
        /// Creates a new Page image list from the given image object.  Pages
        /// will be extracted into the Page image list if the source is multipage.
        /// </summary>
        /// <param name="image">The given image object.</param>
        /// <param name="convertTo32Bit">Whether to coerce into a 32 bit</param>
        /// <returns>A new Page Image List</returns>
        private static List <PageImage> InternalLoadImage(Image image, bool convertTo32Bit)
        {
            List <PageImage>   ret = new List <PageImage>();
            FrameDimensionType frameDimTypeFlags = ImageHelper.GetFrameDimensionTypes(image.FrameDimensionsList);
            int pages = 0;

            FrameDimension frameType = ImageHelper.FrameDimensionPage;

            //Get the Frame Dimensions if they exist
            if (FlagHelper.IsSet((int)frameDimTypeFlags, (int)FrameDimensionType.Page))
            {
                pages = image.GetFrameCount(ImageHelper.FrameDimensionPage);
                if (pages > 0)
                {
                    frameType = ImageHelper.FrameDimensionPage;
                }
            }

            if (FlagHelper.IsSet((int)frameDimTypeFlags, (int)FrameDimensionType.Time))
            {
                pages = image.GetFrameCount(ImageHelper.FrameDimensionTime);
                if (pages > 0)
                {
                    frameType = ImageHelper.FrameDimensionTime;
                }
            }

            if (FlagHelper.IsSet((int)frameDimTypeFlags, (int)FrameDimensionType.Resolution))
            {
                pages = image.GetFrameCount(ImageHelper.FrameDimensionResolution);
                if (pages > 0)
                {
                    frameType = ImageHelper.FrameDimensionResolution;
                }
            }

            if (pages == 0) //Just try to load the single image
            {
                ret.Add(new PageImage((Bitmap)image, convertTo32Bit));
            }
            else //Otherwise load each page in the proper dimension
            {
                //Foreach frame make a PageInfo
                for (int i = 0; i < pages; i++)
                {
                    image.SelectActiveFrame(frameType, i);
                    ret.Add(new PageImage((Bitmap)image, convertTo32Bit));
                }
            }

            return(ret);
        }
示例#6
0
        /// <summary>
        /// get parse value
        /// </summary>
        /// <param name="input">should be the full form or abbrivation form of the flag which you want to get the value</param>
        /// <returns>return the flag value</returns>
        /// <exception cref="InvalidOperationException">if parse faild will throw exception</exception>
        /// <exception cref="ArgumentException">if input can't match any flags will throw exception</exception>
        public bool GetFlagValue(string input)
        {
            if (!IsSuccess)
            {
                throw new InvalidOperationException();
            }

            if (FlagHelper.FindFlag(input) == null)
            {
                throw new ArgumentException();
            }
            return(FlagHelper.FindFlag(input).Value);
        }
示例#7
0
    public bool OnActivate(GameObject player)
    {
        if (!FlagHelper.IsSet(flags, ItemFlags.INTERACTABLE))
        {
            return(false);
        }

        if (FlagHelper.IsSet(activateFlags, ActivateFlags.USE))
        {
            return(OnUse(player));
        }

        return(true);
    }
    private bool canToggleBuildMode()
    {
        BuildItem buildItem = prefabObj.GetComponent <BuildItem>();

        if (FlagHelper.IsSet(buildItem.supportedBuildModeFlags, BuildModeFlags.FREE))
        {
            if (FlagHelper.IsSet(buildItem.supportedBuildModeFlags, BuildModeFlags.POINTBASED))
            {
                return(true);
            }
        }

        return(false);
    }
示例#9
0
    public bool OnInteraction(GameObject player)
    {
        if (!FlagHelper.IsSet(flags, ItemFlags.INTERACTABLE))
        {
            return(false);
        }

        if (FlagHelper.IsSet(flags, ItemFlags.LOOTABLE))
        {
            OnLootStart(player);
            LootHandler.OnLoot(this.gameObject, player);
            OnLootEnd(player);
        }

        return(true);
    }
示例#10
0
    private void setBuildMode(GameObject prefab)
    {
        prefabObj = prefab;
        if (FlagHelper.IsSet(prefab.GetComponent <BuildItem>().buildModeFlags, BuildModeFlags.FREE))
        {
            buildMode     = new FreeBuild();
            buildModeFlag = BuildModeFlags.FREE;
        }
        else if (FlagHelper.IsSet(prefab.GetComponent <BuildItem>().buildModeFlags, BuildModeFlags.POINTBASED))
        {
            buildMode     = new PointBuild();
            buildModeFlag = BuildModeFlags.POINTBASED;
        }

        prepareBuildMode();
    }
    private void DoAction(LastBossAction action)
    {
        float x         = 0f;
        float y         = 0f;
        float tolerance = 0.1f;

        if (action.Time <= Time.timeSinceLevelLoad + tolerance)
        {
            if (FlagHelper.IsSet(action.Mask, FinalBossFlag.W))
            {
                y += 1;
            }
            if (FlagHelper.IsSet(action.Mask, FinalBossFlag.A))
            {
                x -= 1;
            }
            if (FlagHelper.IsSet(action.Mask, FinalBossFlag.S))
            {
                y -= 1;
            }
            if (FlagHelper.IsSet(action.Mask, FinalBossFlag.D))
            {
                x += 1;
            }
            if (FlagHelper.IsSet(action.Mask, FinalBossFlag.Roll))
            {
                anim.SetBool("Rolling", true);
                rollCooldown.reset();
                rollDuration.reset();
            }
            if (FlagHelper.IsSet(action.Mask, FinalBossFlag.Attack))
            {
                sword.Swing();
            }
            if (FlagHelper.IsSet(action.Mask, FinalBossFlag.Die))
            {
                Die();
            }

            Actions.RemoveAt(0);
        }

        direction = new Vector3(x, 0, y).normalized;
    }
示例#12
0
        private void UWPFlagView_SizeChanged(object sender, SizeChangedEventArgs e)
        {
            var starSize    = ActualHeight / 10;
            var radius      = ActualHeight / 3;
            var count       = 12;
            var anglesCount = 5;

            foreach (var star in FlagHelper.GetStars(count, (float)radius, anglesCount, (float)starSize, new Xamarin.Forms.Point(ActualWidth / 2, ActualHeight / 2)))
            {
                var points = new PointCollection();
                star.Select(x => new Windows.Foundation.Point(x.X, x.Y)).Apply(x => points.Add(x));

                var polygon = new Polygon();
                polygon.FillRule = FillRule.Nonzero;
                polygon.Fill     = new SolidColorBrush(Color.FromArgb(255, 247, 205, 70));
                polygon.Points   = points;

                Children.Add(polygon);
            }
        }
示例#13
0
        /// <summary>
        /// Creates a new Page image list from the given image object.  Pages
        /// will be extracted into the Page image list if the source is multipage.
        /// </summary>
        /// <param name="image">The given image object.</param>
        /// <param name="quality"></param>
        /// <returns>A new Page Image List</returns>
        public static List <PageImage> LoadImage(Image image, FaxQuality quality)
        {
            List <PageImage>   ret = new List <PageImage>();
            FrameDimensionType frameDimTypeFlags = ImageHelper.GetFrameDimensionTypes(image.FrameDimensionsList);
            int pages = 0;

            //Get the Frame Dimensions if they exist
            if (FlagHelper.IsSet((int)frameDimTypeFlags, (int)FrameDimensionType.Page))
            {
                pages = image.GetFrameCount(ImageHelper.FrameDimensionPage);
            }

            //Foreach frame make a PageInfo
            for (int i = 0; i < pages; i++)
            {
                image.SelectActiveFrame(ImageHelper.FrameDimensionPage, i);
                ret.Add(new PageImage((Bitmap)image));
            }

            return(ret);
        }
示例#14
0
        public override void DrawRect(CGRect dirtyRect)
        {
            base.DrawRect(dirtyRect);

            var starSize    = Bounds.Height / 10;
            var radius      = Bounds.Height / 3;
            var count       = 12;
            var anglesCount = 5;

            using (CGContext context = NSGraphicsContext.CurrentContext.CGContext)
            {
                NSColor.FromRgb(247, 205, 70).SetFill();

                foreach (var star in FlagHelper.GetStars(count, (float)radius, anglesCount, (float)starSize, new Xamarin.Forms.Point(Bounds.Width / 2, Bounds.Height / 2)))
                {
                    var path = new CGPath();
                    path.AddLines(star.Select(x => x.ToPointF()).ToArray());
                    path.CloseSubpath();
                    context.AddPath(path);
                }
                context.FillPath();
            }
        }
示例#15
0
        public override void Draw(CGRect rect)
        {
            base.Draw(rect);

            var starSize    = Bounds.Height / 10;
            var radius      = Bounds.Height / 3;
            var count       = 12;
            var anglesCount = 5;

            using (CGContext context = UIGraphics.GetCurrentContext())
            {
                UIColor.FromRGB(247, 205, 70).SetFill();

                foreach (var star in FlagHelper.GetStars(count, (float)radius, anglesCount, (float)starSize, Center.ToPoint()))
                {
                    var path = new CGPath();
                    path.AddLines(star.Select(x => x.ToPointF()).ToArray());
                    path.CloseSubpath();
                    context.AddPath(path);
                }
                context.FillPath();
            }
        }
示例#16
0
        protected override void DispatchDraw(Canvas canvas)
        {
            base.DispatchDraw(canvas);

            paint.Color = new Color(17, 52, 147);

            canvas.DrawRect(0, 0, Width, Height, paint);

            var starSize    = Height / 10;
            var radius      = Height / 3;
            var count       = 12;
            var anglesCount = 5;

            paint.Color = Color.Yellow;

            foreach (var star in FlagHelper.GetStars(count, (float)radius, anglesCount, (float)starSize, new Xamarin.Forms.Point(Width / 2, Height / 2)))
            {
                var path   = new Path();
                var points = star.Select(point => (X: point.X, Y: point.Y)).ToList();

                for (int i = 0; i < star.Count(); i++)
                {
                    if (i == 0)
                    {
                        path.MoveTo((float)points[i].X, (float)points[i].Y);
                    }
                    else
                    {
                        path.LineTo((float)points[i].X, (float)points[i].Y);
                    }
                }

                path.Close();

                canvas.DrawPath(path, paint);
            }
        }
示例#17
0
 internal Command(List <Flag> flags)
 {
     Symbol      = null;
     Description = string.Empty;
     FlagHelper  = new FlagHelper(flags);
 }
示例#18
0
 /// <summary>
 /// Creates a new instance of BCDHelper
 /// </summary>
 /// <param name="cpu">cpu to set flags on</param>
 public BCDHelper(ICpu cpu)
 {
     _cpu   = cpu;
     _flags = new FlagHelper(cpu);
 }