using System.Collections; using System.Collections.Generic; using UnityEngine; public class breakable : MonoBehaviour { public Sprite[] sprites; private int oldSprite; private int newSprite; private List availableSprites = new List(); public ParticleSystem collisionParticleSystem; public bool timeToBreak = false; void Start() { oldSprite = 0; for(int i=0; i<3; i++) { availableSprites.Add(i); } int rock = PlayerPrefs.GetInt("rock"); if(rock == 0) { Destroy(gameObject); } } IEnumerator Timer() { if (timeToBreak == true){ PlayerPrefs.SetInt("rock", 0); Destroy(gameObject); } yield return new WaitForSeconds(1); var em = collisionParticleSystem.emission; em.enabled = false; } private void OnTriggerEnter2D(Collider2D collision) { var em = collisionParticleSystem.emission; em.enabled = true; if (collision.tag == "Player") { collisionParticleSystem.Play(); if (oldSprite == 0) { newSprite = availableSprites[1]; oldSprite = 1; GetComponent().sprite = sprites[newSprite]; } else if (oldSprite == 1) { newSprite = availableSprites[2]; oldSprite = 2; GetComponent().sprite = sprites[newSprite]; } else if (oldSprite == 2) { timeToBreak = true; StartCoroutine(Timer()); } GetComponent().sprite = sprites[newSprite]; StartCoroutine(Timer()); } } }