mirror of
https://github.com/openmoh/openmohaa.git
synced 2025-04-29 06:07:57 +03:00
Actor improvements p2
This commit is contained in:
parent
da28beeab4
commit
32fddb163f
37 changed files with 718 additions and 710 deletions
|
@ -8996,6 +8996,16 @@ void ScriptThread::StoppedWaitFor( const_str name, bool bDeleting )
|
|||
}
|
||||
}
|
||||
|
||||
ScriptThread *ScriptThread::CreateThreadInternal(const ScriptVariable& label)
|
||||
{
|
||||
return m_ScriptVM->GetScriptClass()->CreateThreadInternal(label);
|
||||
}
|
||||
|
||||
ScriptThread * ScriptThread::CreateScriptInternal(const ScriptVariable & label)
|
||||
{
|
||||
return m_ScriptVM->GetScriptClass()->CreateScriptInternal(label);
|
||||
}
|
||||
|
||||
void ScriptThread::Pause()
|
||||
{
|
||||
Stop();
|
||||
|
@ -9018,35 +9028,27 @@ void ScriptThread::Stop( void )
|
|||
|
||||
void ScriptThread::Wait( float time )
|
||||
{
|
||||
Stop();
|
||||
|
||||
m_ScriptVM->m_ThreadState = THREAD_WAITING;
|
||||
|
||||
Director.AddTiming( this, time );
|
||||
StartTiming(time);
|
||||
m_ScriptVM->Suspend();
|
||||
}
|
||||
|
||||
void ScriptThread::StartTiming(float time)
|
||||
{
|
||||
if (m_ScriptVM->ThreadState() == THREAD_WAITING)
|
||||
{
|
||||
m_ScriptVM->m_ThreadState = THREAD_RUNNING;
|
||||
Director.RemoveTiming(this);
|
||||
}
|
||||
else if (m_ScriptVM->ThreadState() == THREAD_SUSPENDED)
|
||||
{
|
||||
m_ScriptVM->m_ThreadState = THREAD_RUNNING;
|
||||
CancelWaitingAll();
|
||||
}
|
||||
Stop();
|
||||
|
||||
m_ScriptVM->m_ThreadState = THREAD_WAITING;
|
||||
|
||||
if (time < 0)
|
||||
{
|
||||
time = 0;
|
||||
}
|
||||
|
||||
Director.AddTiming(this, time);
|
||||
}
|
||||
|
||||
void ScriptThread::StartTiming(void)
|
||||
{
|
||||
StartTiming(level.inttime);
|
||||
StartTiming(0);//start timing now
|
||||
}
|
||||
|
||||
CLASS_DECLARATION( Listener, ScriptThread, NULL )
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue