Esempio n. 1
0
    public void SetInHand(ItemsSprites _ItemsSprites)
    {
        if (_ItemsSprites != null)
        {
            if (spriteType == SpriteHandType.RightHand)
            {
                spriteHandler.spriteData = _ItemsSprites.RightHand.Data;
            }
            else
            {
                spriteHandler.spriteData = _ItemsSprites.LeftHand.Data;
            }

            spriteHandler.spriteData.isPaletteds = new List <bool>()
            {
                _ItemsSprites.IsPaletted
            };
            spriteHandler.spriteData.palettes = new List <List <Color> >()
            {
                new List <Color>(_ItemsSprites.Palette)
            };

            PushTexture();
        }
    }
    private void CheckAndApplyPalette()
    {
        isPaletted = false;
        //image.material.SetInt("_IsPaletted", 0);

        if (prefab.TryGetComponent(out ItemAttributesV2 prefabAttributes))
        {
            ItemsSprites sprites = prefabAttributes.ItemSprites;
            if (sprites.IsPaletted)
            {
                palette = sprites.Palette;
                Debug.Assert(palette != null, "Palette must not be null on paletteable objects.");

                isPaletted = true;
                image.material.SetInt("_IsPaletted", 1);
                image.material.SetInt("_PaletteSize", palette.Count);
                image.material.SetColorArray("_ColorPalette", palette.ToArray());
                palette = new List <Color>(image.material.GetColorArray("_ColorPalette"));
            }
            else
            {
                palette = null;
            }
        }

        if (isPaletted == false)
        {
            image.material.SetInt("_IsPaletted", 0);
        }
    }
    private void CheckAndApplyPalette(ref SpriteRenderer renderer)
    {
        bool isPaletted = false;

        if (toClone.TryGetComponent(out ItemAttributesV2 prefabAttributes))
        {
            ItemsSprites sprites = prefabAttributes.ItemSprites;
            if (sprites.IsPaletted)
            {
                List <Color> palette = sprites.Palette;
                Debug.Assert(palette != null, "Palette must not be null on paletteable objects.");
                MaterialPropertyBlock block = new MaterialPropertyBlock();
                renderer.GetPropertyBlock(block);
                List <Vector4> pal = palette.ConvertAll((c) => new Vector4(c.r, c.g, c.b, c.a));
                block.SetVectorArray("_ColorPalette", pal);
                block.SetInt("_PaletteSize", pal.Count);
                block.SetInt("_IsPaletted", 1);
                renderer.SetPropertyBlock(block);

                isPaletted = true;
            }
        }

        if (!isPaletted)
        {
            renderer.material.SetInt("_IsPaletted", 0);
        }
    }
Esempio n. 4
0
    private void SetUpFromClothingData(EquippedData equippedData)
    {
        var SpriteSOData = new ItemsSprites();

        SpriteSOData.LeftHand      = (equippedData.InHandsLeft);
        SpriteSOData.RightHand     = (equippedData.InHandsRight);
        SpriteSOData.InventoryIcon = (equippedData.ItemIcon);
        spriteHandlerController.SetSprites(SpriteSOData);
    }
 /// <summary>
 /// Sets all the related sprites for items Currently supports only one item sprite
 /// </summary>
 public void SetSprites(ItemsSprites newSprites)
 {
     if (!Initialised)
     {
         Initialise();
     }
     itemAttributes.SetSprites(newSprites);
     pickupable.SetPlayerItemsSprites(newSprites);
     SetIcon(newSprites);
     pickupable.RefreshUISlotImage();
 }
Esempio n. 6
0
    private void SetUpFromClothingData(EquippedData equippedData)
    {
        var SpriteSOData = new ItemsSprites();

        SpriteSOData.Palette             = new List <Color>(equippedData.Palette);
        SpriteSOData.SpriteLeftHand      = (equippedData.SpriteInHandsLeft);
        SpriteSOData.SpriteRightHand     = (equippedData.SpriteInHandsRight);
        SpriteSOData.SpriteInventoryIcon = (equippedData.SpriteItemIcon);
        SpriteSOData.IsPaletted          = equippedData.IsPaletted;

        myItem.SetSprites(SpriteSOData);
    }
Esempio n. 7
0
 public void SetPlayerItemsSprites(ItemsSprites _ItemsSprites, int _spriteIndex = 0, int _variantIndex = 0)
 {
     if (itemSlot != null)
     {
         var equipment = itemSlot.Player.GetComponent <Equipment>();
         if (equipment == null)
         {
             return;
         }
         var CT = equipment.GetClothingItem(itemSlot.NamedSlot.Value);
         CT.SetInHand(_ItemsSprites);
     }
 }
Esempio n. 8
0
    public void SetInHand(ItemsSprites _ItemsSprites)
    {
        if (_ItemsSprites != null)
        {
            if (spriteType == SpriteHandType.RightHand)
            {
                spriteHandler.SetSpriteSO(_ItemsSprites.SpriteRightHand, Network: false);
            }
            else
            {
                spriteHandler.SetSpriteSO(_ItemsSprites.SpriteLeftHand, Network: false);
            }

            spriteHandler.SetPaletteOfCurrentSprite(_ItemsSprites.Palette, Network: false);
        }
    }
Esempio n. 9
0
    public void SetInHand(ItemsSprites _ItemsSprites)
    {
        if (_ItemsSprites != null)
        {
            if (spriteType == SpriteHandType.RightHand)
            {
                spriteHandler.spriteData = _ItemsSprites.RightHand.Data;
            }
            else
            {
                spriteHandler.spriteData = _ItemsSprites.LeftHand.Data;
            }

            PushTexture();
        }
    }
    private void SetIcon(ItemsSprites newSprites)
    {
        if (!Initialised)
        {
            Initialise();
        }
        if (spriteHandler != null)
        {
            newSprites.InventoryIcon.Data.palettes = new List <List <Color> >()
            {
                new List <Color>(newSprites.Palette)
            };
            newSprites.InventoryIcon.Data.isPaletteds = new List <bool>()
            {
                newSprites.IsPaletted
            };

            spriteHandler.SetInfo(newSprites.InventoryIcon.Data);
        }
        else if (spriteRenderer != null)
        {
            spriteRenderer.sprite = newSprites.InventoryIcon.Data.ReturnFirstSprite();
        }
    }