void C_SpatialEntity::ClientThink() { if( !m_bEnabled && m_flCurWeight == 0.0f ) { m_flWeight = 0.0f; return; } CBaseEntity *pPlayer = C_BasePlayer::GetLocalPlayer( 0 ); if( !pPlayer ) return; Vector playerOrigin = pPlayer->GetAbsOrigin(); m_flWeight = 0.0f; if ( ( m_minFalloff != -1 ) && ( m_maxFalloff != -1 ) && m_minFalloff != m_maxFalloff ) { float dist = (playerOrigin - m_vecOrigin).Length(); m_flWeight = (dist-m_minFalloff) / (m_maxFalloff-m_minFalloff); m_flWeight = fpmax( 0.0f, m_flWeight ); m_flWeight = fpmin( 1.0f, m_flWeight ); m_flInfluence = fpmax( 0.0f, m_minFalloff - dist ); } m_flWeight = m_flCurWeight * ( 1.0f - m_flWeight ); BaseClass::ClientThink(); }
int main(void){ double a,b,c; printf("Enter three floating point number: "); scanf("%lf%lf%lf", &a, &b, &c); printf("\n min\n%7.3f\n", fpmin(a,b,c)); return 0; }
void RagdollComputeApproximateBbox( const ragdoll_t &ragdoll, const Vector &origin, Vector &outMins, Vector &outMaxs ) { Vector mins, maxs; ClearBounds(mins,maxs); for ( int i = 0; i < ragdoll.listCount; i++ ) { Vector objectOrg; ragdoll.list[i].pObject->GetPosition( &objectOrg, NULL ); float radius = physcollision->CollideGetRadius( ragdoll.list[i].pObject->GetCollide() ); for ( int k = 0; k < 3; k++ ) { float ext = objectOrg[k] + radius; maxs[k] = fpmax( maxs[k], ext ); ext = objectOrg[k] - radius; mins[k] = fpmin( mins[k], ext ); } } outMins = mins; outMaxs = maxs; }