代码中的计时器
Timer within code
在我的代码中,我想实现一个定时器,让死亡在初始化前等待 2 秒。
void OnCollisionEnter2D(Collision2D other)
{
Die();
}
void Die()
{
Application.LoadLevel(Application.loadedLevel);
}
死亡是瞬间的,我希望它在初始化前等待 2 秒。
有什么想法吗?
在某处用 2000 初始化一个计时器并定义一个处理程序,如下所示:
//...
Timer tmr = new Timer();
tmr.Interval = 2000; // 20 seconds
tmr.Tick += timerHandler;
tmr.Start(); // The countdown is launched!
//...
private void timerHandler(object sender, EventArgs e) {
//handle death
}
//...
如果你只是想让它在两秒后发生,你可以试试这个 -
void OnCollisionEnter2D(Collision2D other)
{
Invoke ("Die", 2.0f);
}
void Die()
{
Application.LoadLevel(Application.loadedLevel);
}
试试这个:
void OnCollisionEnter2D(Collision2D other)
{
Thread Dying = new Thread(()=>Die());
Dying.Start(); //start a death in new thread so can do other stuff in main thread
}
void Die()
{
Thread.Sleep(2000); //wait for 2 seconds
Application.LoadLevel(Application.loadedLevel);
}
在我的代码中,我想实现一个定时器,让死亡在初始化前等待 2 秒。
void OnCollisionEnter2D(Collision2D other)
{
Die();
}
void Die()
{
Application.LoadLevel(Application.loadedLevel);
}
死亡是瞬间的,我希望它在初始化前等待 2 秒。
有什么想法吗?
在某处用 2000 初始化一个计时器并定义一个处理程序,如下所示:
//...
Timer tmr = new Timer();
tmr.Interval = 2000; // 20 seconds
tmr.Tick += timerHandler;
tmr.Start(); // The countdown is launched!
//...
private void timerHandler(object sender, EventArgs e) {
//handle death
}
//...
如果你只是想让它在两秒后发生,你可以试试这个 -
void OnCollisionEnter2D(Collision2D other)
{
Invoke ("Die", 2.0f);
}
void Die()
{
Application.LoadLevel(Application.loadedLevel);
}
试试这个:
void OnCollisionEnter2D(Collision2D other)
{
Thread Dying = new Thread(()=>Die());
Dying.Start(); //start a death in new thread so can do other stuff in main thread
}
void Die()
{
Thread.Sleep(2000); //wait for 2 seconds
Application.LoadLevel(Application.loadedLevel);
}