Esempio n. 1
0
        public override void OnRender(RenderTarget Target)
        {
            if (mask != null)
            {
                Target.Layer += 3;

                for (int i = 0; i < items.Count; i++)
                {
                    if (mask.Contains(items[i]))
                    {
                        Target.DrawSprite(itemWindows[i].Position, maskSprite);
                    }
                }


                Target.Layer -= 3;
            }

            if (selection != null && selection.Count > 0)
            {
                Target.Layer += 3;

                for (int i = 0; i < itemWindows.Length; i++)
                {
                    if (gridPositions[i] >= 0 && gridPositions[i] < items.Count &&
                        selection.Contains(items[gridPositions[i]]))
                    {
                        Target.DrawSprite(itemWindows[i].Position, selectionSprite);
                    }
                }


                Target.Layer -= 3;
            }
        }
Esempio n. 2
0
        bool CanConstruct(IItemCollection primary, IItemCollection secondary, ConstructionInfo construction)
        {
            for (int i = 0; i < construction.Items.Length; i++)
            {
                if (!primary.Contains(construction.Items[i]) && !secondary.Contains(construction.Items[i]))
                {
                    return(false);
                }
            }

            for (int i = 0; i < construction.Tools.Length; i++)
            {
                if (!primary.Contains(construction.Tools[i]) && !secondary.Contains(construction.Tools[i]))
                {
                    return(false);
                }
            }

            return(true);
        }
Esempio n. 3
0
        bool MainItemsAvailable(IItemCollection primary, IItemCollection secondary, ConstructionInfo construction)
        {
            for (int i = 0; i < construction.MainItems.Length; i++)
            {
                if (primary.Contains(construction.MainItems[i]) || secondary.Contains(construction.MainItems[i]))
                {
                    return(true);
                }
            }

            return(false);
        }