Browse Source

Fix motion_thread save-restore (#351)

sohl1.2
Roman Chistokhodov 2 years ago committed by GitHub
parent
commit
882c9f6ec8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 9
      dlls/triggers.cpp

9
dlls/triggers.cpp

@ -4568,6 +4568,7 @@ void CTriggerMotion::Use( CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYP @@ -4568,6 +4568,7 @@ void CTriggerMotion::Use( CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYP
class CMotionThread : public CPointEntity
{
public:
void Spawn();
void Think( void );
virtual int Save( CSave &save );
@ -4581,7 +4582,7 @@ public: @@ -4581,7 +4582,7 @@ public:
EHANDLE m_hLocus;
EHANDLE m_hTarget;
};
LINK_ENTITY_TO_CLASS( motion_thread, CPointEntity );
LINK_ENTITY_TO_CLASS( motion_thread, CMotionThread );
TYPEDESCRIPTION CMotionThread::m_SaveData[] =
{
@ -4595,6 +4596,11 @@ TYPEDESCRIPTION CMotionThread::m_SaveData[] = @@ -4595,6 +4596,11 @@ TYPEDESCRIPTION CMotionThread::m_SaveData[] =
IMPLEMENT_SAVERESTORE(CMotionThread,CPointEntity);
void CMotionThread::Spawn() //AJH
{
pev->classname = MAKE_STRING("motion_thread"); //We need this for save/restore to work
}
void CMotionThread::Think( void )
{
if( m_hLocus == 0 || m_hTarget == 0 )
@ -4803,6 +4809,7 @@ void CMotionManager::Affect( CBaseEntity *pTarget, CBaseEntity *pActivator ) @@ -4803,6 +4809,7 @@ void CMotionManager::Affect( CBaseEntity *pTarget, CBaseEntity *pActivator )
CMotionThread *pThread = GetClassPtr( (CMotionThread*)NULL );
if (pThread == NULL) return; //error?
pThread->Spawn();
pThread->m_hLocus = pActivator;
pThread->m_hTarget = pTarget;
pThread->m_iszPosition = m_iszPosition;

Loading…
Cancel
Save