Пример #1
0
 public void ResetScratchCard()
 {
     if (CycleRewardsManager.Instance.CurrentScratchDay != UserDataControl.Instance.UserData.RewardsData.lastClaimedScratch)
     {
         currentPrize       = prizes[GetRewardByDay];
         RawardImage.sprite = currentPrize.sprite;
         Card.Reset();
     }
 }
Пример #2
0
        private void Awake()
        {
            Progress.OnProgress += OnProgress_Handler;
            if (Card.MainCamera == null)
            {
                Card.MainCamera = MainCamera;
            }

            if (Card.ScratchSurface == null)
            {
                scratchSurfaceMaterial             = new Material(MaskShader);
                scratchSurfaceMaterial.mainTexture = ScratchSurfaceSprite.texture;
                Card.ScratchSurface = scratchSurfaceMaterial;
            }

            if (Card.Eraser == null)
            {
                eraserMaterial             = new Material(BrushShader);
                eraserMaterial.mainTexture = EraseTexture;
                Card.Eraser = eraserMaterial;
            }

            if (Card.Progress == null)
            {
                progressMaterial = new Material(MaskProgressShader);
                Card.Progress    = progressMaterial;
            }

            switch (RenderType)
            {
            case ScratchCardRenderType.MeshRenderer:
                MeshCard.SetActive(true);
                SpriteCard.SetActive(false);
                ImageCard.SetActive(false);
                Card.Surface = MeshCard.transform;
                MeshCard.GetComponent <Renderer>().material = scratchSurfaceMaterial;
                break;

            case ScratchCardRenderType.SpriteRenderer:
                MeshCard.SetActive(false);
                SpriteCard.SetActive(true);
                ImageCard.SetActive(false);
                Card.Surface = SpriteCard.transform;
                var sprite = SpriteCard.GetComponent <SpriteRenderer>();
                sprite.sprite   = ScratchSurfaceSprite;
                sprite.material = scratchSurfaceMaterial;
                break;

            case ScratchCardRenderType.CanvasRenderer:
                MeshCard.SetActive(false);
                SpriteCard.SetActive(false);
                ImageCard.SetActive(true);
                Card.Surface = ImageCard.transform;
                var image = ImageCard.GetComponent <Image>();
                image.sprite       = ScratchSurfaceSprite;
                image.material     = scratchSurfaceMaterial;
                currentPrize       = prizes[GetRewardByDay];
                RawardImage.sprite = currentPrize.sprite;
                break;
            }
        }