Пример #1
0
        private void ExecuteTileRule(TilePosition pos, Tile tile, TileRule rule)
        {
            world.stats.executedRules++;

            if (rule.CheckConditions(this, tile, pos))
            {
                rule.Execute(this, tile, pos);
            }
        }
Пример #2
0
        /*
         *  Sprites
         */

        public void SetSprite()
        {
            var spriteName = TileRule != null?TileRule.GetSprite(GetGridPositions()) : Config.Sprite;

            this.SpriteRenderer.sprite       = Assets.GetSprite(spriteName);
            this.SpriteRenderer.sortingOrder = Config.SortingOrder;
            this.SpriteRenderer.color        = Config.Color;
            this.transform.localScale        = Config.Scale;
            this.transform.rotation          = Assets.GetSpriteRotation(spriteName);
        }
Пример #3
0
        public void AddRule(TileRule rule)
        {
            List <TileRule> r = new List <TileRule>();

            if (this.rules != null)
            {
                r.AddRange(this.rules);
            }
            r.Add(rule);
            this.rules = r.ToArray();
        }
Пример #4
0
                public static TileRule FromBaseObject(BaseObject baseObj)
                {
                    if (baseObj == null || baseObj.NativeObject == IntPtr.Zero)
                    {
                        return(null);
                    }
                    TileRule obj = baseObj as  TileRule;

                    if (object.Equals(obj, null))
                    {
                        obj = new TileRule(CreatedWhenConstruct.CWC_NotToCreate);
                        obj.BindNativeObject(baseObj.NativeObject, "CTileRule");
                        obj.IncreaseCast();
                    }

                    return(obj);
                }
Пример #5
0
                public BaseObject Create()
                {
                    TileRule emptyInstance = new TileRule(CreatedWhenConstruct.CWC_NotToCreate);

                    return(emptyInstance);
                }