//------------------------------------------------------------------------
void CVehicleDamageBehaviorBlowTire::OnVehicleEvent(EVehicleEvent event, const SVehicleEventParams& params)
{
	assert(event == eVE_Timer);

  // notify AI passengers
  IScriptTable* pTable = m_pVehicle->GetEntity()->GetScriptTable();
  HSCRIPTFUNCTION scriptFunction(NULL);
  
  if (pTable && pTable->GetValue("OnVehicleImmobilized", scriptFunction) && scriptFunction)
  {
    Script::Call(gEnv->pScriptSystem, scriptFunction, pTable);
		gEnv->pScriptSystem->ReleaseFunc(scriptFunction);
  }
}
//------------------------------------------------------------------------
void CVehicleDamageBehaviorBlowTire::OnVehicleEvent(EVehicleEvent event, const SVehicleEventParams& params)
{
  switch (event)
  {
  case eVE_Timer:
    {
      if (params.iParam == m_aiImmobilizedTimer)
      {
        // notify AI passengers
        IScriptTable* pTable = m_pVehicle->GetEntity()->GetScriptTable();
        HSCRIPTFUNCTION scriptFunction(NULL);
        
        if (pTable && pTable->GetValue("OnVehicleImmobilized", scriptFunction) && scriptFunction)
        {
          Script::Call(gEnv->pScriptSystem, scriptFunction, pTable);
        }

        m_aiImmobilizedTimer = -1;
      }
    }
    break;
  }
}