IEnumerator MakeSplat(Vector2 startPos, Sprite[] sprites, float delayS) { yield return(new WaitForSeconds(delayS)); int splatAmount = Random.Range(15, 30); //splatData.Add(new SplatPart.SpriteData[splatAmount]); //int splatDataID = splatData.Count - 1; for (int i = 0; i < splatAmount; i++) { GameObject newSplat = new GameObject("Splat"); newSplat.transform.parent = gameObject.transform; newSplat.transform.localPosition = startPos; int size = Random.Range(0, sprites.Length); SpriteRenderer SR = newSplat.AddComponent <SpriteRenderer>(); SR.sprite = sprites[size]; SR.sortingOrder = -14; SplatPart part = newSplat.AddComponent <SplatPart>(); //part.listID = splatDataID; //part.arrayID = i; part.SetBakeTexture(_spriteRenderer); part.Initialize(size, Random.insideUnitCircle, (Vector3)startPos); splatParts.Add(part); } }
public void RemoveSplats() { for (int i = splatParts.Count - 1; i >= 0; i--) { SplatPart part = splatParts[i]; splatParts.RemoveAt(i); GameObject.Destroy(part.gameObject); } }