Ниже приведен простой класс, который запускает и останавливает вращение объекта с помощью двух кнопок, я надеюсь, что он станет отправной точкой того, чего вы пытаетесь достичь.

у меня есть объект. Когда я нажимаю кнопку Spin, я хочу, чтобы она вращалась. Когда я нажимаю кнопку Стоп, я хочу, чтобы она остановилась.

Он вращается нормально, когда его пустое обновление, но когда он в своей собственной функции, он делает это только один раз. Я пытался использовать петлю, но все равно не повезло. Кто-нибудь может мне помочь?

Код C #:

using UnityEngine;
using System.Collections;
using UnityEngine.UI;

public class spin : MonoBehaviour
{
    public float speed = 500f;
    public Button starter;
    public Button stopper;

    int testing = 200;

    void Start () {

        Button btn = starter.GetComponent<Button> ();
        Button butn = stopper.GetComponent<Button> ();

        butn.onClick.AddListener(FidgetSpinnerStop);
        btn.onClick.AddListener(FidgetSpinnerStart);
    }

    void FidgetSpinnerStart ()
    {
        for (int i = 0; i < testing; i++) {
            transform.Rotate (Vector3.up, speed * Time.deltaTime);
            Debug.Log ("Test: " + i);
        }
    }

    void FidgetSpinnerStop ()
    {
        transform.Rotate (Vector3.up, Time.deltaTime);
    }
}

Заранее спасибо!

Ответы на вопрос(1)

Ваш ответ на вопрос