コード例 #1
0
ファイル: MapNode.cs プロジェクト: polytronicgr/Iceland
        public void RemoveItem(Entity item)
        {
            ItemSpriteComponent spriteComp = (ItemSpriteComponent)item.GetComponent(typeof(ItemSpriteComponent));

            if (spriteComp == null)
            {
                return;
            }

            spriteComp.Sprite.RemoveFromParent();
        }
コード例 #2
0
ファイル: MapNode.cs プロジェクト: polytronicgr/Iceland
        public void AddItem(Entity item)
        {
            ItemSpriteComponent spriteComp = (ItemSpriteComponent)item.GetComponent(typeof(ItemSpriteComponent));

            if (spriteComp == null)
            {
                return;
            }

            AddChild(spriteComp.Sprite);

            CoreGraphics.CGPoint point = map.PositionToPoint(item.Model.StartPosition, true);
            spriteComp.Sprite.Position  = point;
            spriteComp.Sprite.ZPosition = map.ZLevelForPosition(item.Model.StartPosition);
        }
コード例 #3
0
        public static Entity CreateItem(EntityModel model)
        {
            var item = new Entity {
                Name  = model.Name,
                Id    = model.Id,
                Model = model
            };

            if (atlas == null)
            {
                atlas = SKTextureAtlas.FromName("Items");
            }
            var spriteComp = new ItemSpriteComponent(atlas.TextureNamed(model.TextureName), item);

            item.AddComponent(spriteComp);

            var clickableComp = new ClickableComponent();

            item.AddComponent(clickableComp);

            var lookableComp = new LookableComponent();

            item.AddComponent(lookableComp);

            var collectableComp = new CollectibleComponent();

            item.AddComponent(collectableComp);

            var giveableComp = new GiveableComponent();

            item.AddComponent(giveableComp);

            var useableComp = new UseableComponent();

            item.AddComponent(useableComp);

            items [item.Id] = item;

            return(item);
        }