Beispiel #1
0
void Door::HandelLinkTriggerMsg( LTBOOL bTriggerLink )
{
	// Let our base hadle it first

	ActiveWorldModel::HandleTriggerMsg( );

	// If we are locked then dont do anything else

	if( m_dwPropFlags & AWM_PROP_LOCKED )
	{
		if( m_nCurState == AWM_STATE_OFF || m_nCurState == AWM_STATE_ON )
		{
			// Tell any doorknobs attached to us to play the "locked" animation...

			PlayDoorKnobAni( "Locked" );
		}

		return;
	}

	if( bTriggerLink )
	{
		// Let our link know that we are opening...
		// AIs ignore links and open both doors.

		if( m_nCurState == AWM_STATE_POWERON )
		{
			if( m_hDoorLink && !IsAI( m_hActivateObj ) )
			{
				Door *pDoorLink = (Door*)g_pLTServer->HandleToObject( m_hDoorLink );
				if( pDoorLink )
				{
					pDoorLink->TriggerLink( m_hActivateObj );
				}
			}
		}
	}
}