Страница 1 из 1

Включение фейерверка скриптом

СообщениеДобавлено: 10 сен 2018, 18:38
xrou
Здравствуйте коллеги. Делаю арканоид на unity в 2д. По сценарию, при прохождении уровня, сцена заканчивается фейерверком. Написал переключение уровней, работает, фейерверк отдельно работает. Но как сделать включение анимации фейерверка не догоняю(она должна быть после уничтожения кирпичика, в скрипте идет счет очков, одно начисляется за уничтожение одного блока). Можно сделать не включение анимации а создание объекта(вообще этот "фейерверк" это настроенный particle system), он создавался по префабу но выдает ошибку(сейчас уже не выдает да и объект не создается).
Счет очков идет в скрипте управления мячом
Скрытый текст:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.Threading;
using UnityEngine.SceneManagement;
using UnityEngine.UI;
using System.Diagnostics;

public class Move_ball1 : MonoBehaviour
{

public bool win = false;

void Start()
{

rig = GetComponent<Rigidbody2D>();
rig.AddForce(new Vector3(Random.Range(-0.35f, 0.35f), 1f) * Time.deltaTime * power_ball);
}

void Update()
{


if (gameObject.transform.position.y <= -5f)
{
Invoke("Restart", 1f);
}

if (bounce == 48)
{
win = true;
}
}
void Restart()
{
SceneManager.LoadScene(SceneManager.GetActiveScene().name);
Time.timeScale = 1;

}
//... тут проверка на попадание в кирпич

public int bounce;//переменная счета очков


скрипт создания фейерверка и переключения сцен

Скрытый текст:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;

public class EnableFirework : MonoBehaviour
{
public float interval = 2.3f;
public GameObject fire;
private GameObject ball;

void Start()
{
ball = GameObject.Find("ball");
StartCoroutine(Spawn());
}

IEnumerator Spawn()
{
while (ball.GetComponent<Move_ball1>().win == true)
{
Instantiate(fire, new Vector2(0f, 0f), Quaternion.identity);
yield return new WaitForSeconds(interval);
SceneManager.LoadScene("SampleScene_2");
}
}
}



И если что-то менять то напишите что и где)
Заранее спасибо.

Re: Включение фейерверка скриптом

СообщениеДобавлено: 11 сен 2018, 07:19
xrou
Проблема решена.
Спавним систему частиц в момент набора счетчиком заданной суммы.

Re: Включение фейерверка скриптом

СообщениеДобавлено: 11 сен 2018, 08:52
alt3d
а еще можно particleSystem.Play();