methodName | The name of a method to invoke. |
time | Start invoking after n seconds. |
repeatRate | Repeat every n seconds. |
Invokes the method methodName
in time
seconds, then repeatedly every repeatRate
seconds.
To cancel InvokeRepeating use MonoBehaviour.CancelInvoke.
Note :The time and repeatRate parameters depend on Time.timeScale. For example, if Time.timeScale is 0 InvokeRepeating will not invoke. On the other hand, if Time.timeScale is 2, InvokeRepeating will repeat twice as fast.
using UnityEngine; using System.Collections.Generic;
// Starting in 2 seconds. // a projectile will be launched every 0.3 seconds
public class ExampleScript : MonoBehaviour { public Rigidbody projectile;
void Start() { InvokeRepeating("LaunchProjectile", 2.0f, 0.3f); }
void LaunchProjectile() { Rigidbody instance = Instantiate(projectile);
instance.velocity = Random.insideUnitSphere * 5; } }