Exemple #1
0
    private void SetSprite()
    {
        Sprite[] Color = SpriteManager.WireSprites[CableType.ToString()];
        if (Color == null)
        {
            SpriteManager.Instance.InitWireSprites();
            Color = SpriteManager.WireSprites[CableType.ToString()];
        }
        SpriteRenderer SR = gameObject.GetComponentInChildren <SpriteRenderer>();
        //the red sprite is spliced differently than the rest for some reason :^(
        string Compound;

        if (WireEndA < WireEndB)
        {
            Compound = WireEndA + "_" + WireEndB;
        }
        else
        {
            Compound = WireEndB + "_" + WireEndA;
        }
        int spriteIndex = WireDirections.GetSpriteIndex(Compound);

        if (TRay)
        {
            spriteIndex += 36;
        }

        SR.sprite = Color[spriteIndex];
        if (SR.sprite == null)
        {
            Logger.LogError("SetSprite: Couldn't find wire sprite, sprite value didn't return anything!", Category.Electrical);
        }
    }