您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ GetHealth函数代码示例

51自学网 2021-06-01 21:08:57
  C++
这篇教程C++ GetHealth函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中GetHealth函数的典型用法代码示例。如果您正苦于以下问题:C++ GetHealth函数的具体用法?C++ GetHealth怎么用?C++ GetHealth使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了GetHealth函数的28个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: if

bool CActorCondition::IsLimping() const{	if(m_fPower< m_fLimpingPowerBegin || GetHealth() < m_fLimpingHealthBegin)		m_bLimping = true;	else if(m_fPower > m_fLimpingPowerEnd && GetHealth() > m_fLimpingHealthEnd)		m_bLimping = false;	return m_bLimping;}
开发者ID:zcaliptium,项目名称:xray-16,代码行数:8,


示例2: GetActiveWeapon

//=========================================================// Calcula la nueva velocidad del jugador dependiendo del// peso de la arma.//=========================================================float CIN_Player::CalculateSpeed(CBaseCombatWeapon *pWeapon, float speed){    // No se especifico el arma, obtenerla automaticamente.    if ( pWeapon == NULL )        pWeapon = GetActiveWeapon();    ConVarRef hl2_sprintspeed("hl2_sprintspeed");    ConVarRef hl2_walkspeed("hl2_walkspeed");    // Obtenemos la velocidad inicial.    if ( speed == 0 && IsSprinting() )        speed = hl2_sprintspeed.GetFloat();    if ( speed == 0 && !IsSprinting() )        speed = hl2_walkspeed.GetFloat();    float newSpeed = speed;    // Arma válida.    if ( pWeapon )    {        // Obtenemos el peso del arma.        float weaponWeight = pWeapon->GetWpnData().m_WeaponWeight;        // El arma es muy ligera, te da velocidad.        if ( weaponWeight < 0 )        {            weaponWeight	= fabs(weaponWeight);            newSpeed		= newSpeed + weaponWeight;        }        else            newSpeed = newSpeed - weaponWeight;    }    // Menos de 40% de salud.    if ( GetHealth() <= 40 )    {        // Disminuimos más velocidad entre menos salud tengamos.        if ( GetHealth() <= 5 )            newSpeed = newSpeed - 10;        else if ( GetHealth() <= 10 )            newSpeed = newSpeed - 5;        else if ( GetHealth() <= 20 )            newSpeed = newSpeed - 3;        else if ( GetHealth() <= 40 )            newSpeed = newSpeed - 2;    }    if ( newSpeed < 10 )        newSpeed = 10;    return newSpeed;}
开发者ID:InfoSmart,项目名称:InSource-Singleplayer,代码行数:61,


示例3: Update

void Base::Update(){    //update the health bar to display minion damage    if (GetHealth() > 0)    {        m_HealthBar->setWidth(GetHealth());    }}
开发者ID:sammut91,项目名称:TDG-DIstinction,代码行数:9,


示例4: Assert

//-----------------------------------------------------------------------------// Purpose: Powerup has just started//-----------------------------------------------------------------------------void CBaseCombatCharacter::PowerupStart( int iPowerup, float flAmount, CBaseEntity *pAttacker, CDamageModifier *pDamageModifier ){	Assert( iPowerup >= 0 && iPowerup < MAX_POWERUPS );	switch( iPowerup )	{	case POWERUP_BOOST:		{			// Players can be boosted over their max			int iMaxBoostedHealth;			if ( IsPlayer() )			{				iMaxBoostedHealth = GetMaxHealth() + GetMaxHealth() / 2;			}			else			{				iMaxBoostedHealth = GetMaxHealth();			}			// Can we boost health further?			if ( GetHealth() < iMaxBoostedHealth )			{				int maxHealthToAdd = iMaxBoostedHealth - GetHealth();				// It uses floating point in here so it doesn't lose the fractional healing part on small frame times.				float flHealthToAdd = flAmount + m_flFractionalBoost;				int nHealthToAdd = (int)flHealthToAdd;				m_flFractionalBoost = flHealthToAdd - nHealthToAdd; 				if ( nHealthToAdd )				{					int nHealthAdded = min( nHealthToAdd, maxHealthToAdd );					if ( IsPlayer() )					{						((CBaseTFPlayer*)this)->TakeHealthBoost( nHealthAdded, GetMaxHealth(), 25 );					}					else					{						TakeHealth( nHealthAdded, DMG_GENERIC );					}					TFStats()->IncrementPlayerStat( pAttacker, TF_PLAYER_STAT_HEALTH_GIVEN, nHealthAdded );				}			}		}		break;	case POWERUP_EMP:		{			// EMP removes adrenalin rush			SetPowerup( POWERUP_RUSH, false );		}		break;	default:		break;	}}
开发者ID:Axitonium,项目名称:SourceEngine2007,代码行数:60,


示例5: SetHealth

void CBurnBot::TakeDamage(IBaseObject* _pIn){	 if (_pIn->GetID() == OBJ_TURRET)	 {		 SetHealth(GetHealth() - ((CTurret*)_pIn)->GetDamage());		 SetWasHit(true);	 }	if(((CBullet*)_pIn)->GetType() == SPECIALBULLET)		SetHealth(0.0f);	else		SetHealth(GetHealth() - ((CBullet*)_pIn)->GetDamage());	SetWasHit(true);}
开发者ID:ianalcid08,项目名称:FinalProject,代码行数:13,


示例6: GetHealth

//-----------------------------------------------------------------------------// Purpose://-----------------------------------------------------------------------------BuildingHudAlert_t C_BaseObject::GetBuildingAlertLevel( void ){	float flHealthPercent = GetHealth() / GetMaxHealth();	BuildingHudAlert_t alertLevel = BUILDING_HUD_ALERT_NONE;	if ( HasSapper() )	{		alertLevel = BUILDING_HUD_ALERT_SAPPER;	}	else if ( !IsBuilding() && flHealthPercent < 0.33 )	{		alertLevel = BUILDING_HUD_ALERT_VERY_LOW_HEALTH;	}	else if ( !IsBuilding() && flHealthPercent < 0.66 )	{		alertLevel = BUILDING_HUD_ALERT_LOW_HEALTH;	}	BuildingHudAlert_t iFakeAlert = (BuildingHudAlert_t)cl_obj_fake_alert.GetInt();	if ( iFakeAlert > BUILDING_HUD_ALERT_NONE &&		iFakeAlert < MAX_BUILDING_HUD_ALERT_LEVEL )	{		alertLevel = iFakeAlert;	}	return alertLevel;}
开发者ID:Deathreus,项目名称:TF2Classic,代码行数:32,


示例7: Tick

void cCreeper::Tick(std::chrono::milliseconds a_Dt, cChunk & a_Chunk){	super::Tick(a_Dt, a_Chunk);	if (!IsTicking())	{		// The base class tick destroyed us		return;	}	if (((GetTarget() == nullptr) || !TargetIsInRange()) && !m_BurnedWithFlintAndSteel)	{		if (m_bIsBlowing)		{			m_ExplodingTimer = 0;			m_bIsBlowing = false;			m_World->BroadcastEntityMetadata(*this);		}	}	else	{		if (m_bIsBlowing)		{			m_ExplodingTimer += 1;		}		if ((m_ExplodingTimer == 30) && (GetHealth() > 0.0))  // only explode when not already dead		{			m_World->DoExplosionAt((m_bIsCharged ? 5 : 3), GetPosX(), GetPosY(), GetPosZ(), false, esMonster, this);			Destroy();  // Just in case we aren't killed by the explosion		}	}}
开发者ID:lkolbly,项目名称:MCServer,代码行数:32,


示例8: EquipSuit

void CSDKPlayer::CheatImpulseCommands( int iImpulse ){	if ( iImpulse != 101 )	{		BaseClass::CheatImpulseCommands( iImpulse );		return ;	}	gEvilImpulse101 = true;	EquipSuit();	GiveNamedItem( "weapon_mp5" );	GiveNamedItem( "weapon_grenade" );	GiveNamedItem( "weapon_shotgun" );	// Give the player everything!	GiveAmmo( 90, AMMO_BULLETS );	GiveAmmo( 3, AMMO_GRENADE );		if ( GetHealth() < 100 )	{		TakeHealth( 25, DMG_GENERIC );	}	gEvilImpulse101		= false;}
开发者ID:paralin,项目名称:hl2sdk,代码行数:26,


示例9: IsValid

bool Entity::IsValid(){	if( !GetPointer() )		return false;	if( !GetBoneMatrix() )		return false;	if( !GetTeamNum() )		return false;	if( IsDead() )		return false;	if( IsDormant() )		return false;	if( GetOrigin().IsZero() )		return false;	if( GetHealth() < 1 )		return false;	return true;}
开发者ID:A5-,项目名称:CSGO-External,代码行数:25,


示例10: CEnemy

CGrunt::CGrunt(float fHealthScale) : CEnemy(20){	CEntity::m_eType = ENT_ENEMY;	SetEnemyType(Grunt);	AnimationManager::GetInstance()->LoadAnimationFile("config/Grunt_Walk_Animation.xml");	AnimationManager::GetInstance()->LoadAnimationFile("config/Grunt_Death_Animation.xml");	AnimationManager::GetInstance()->LoadAnimationFile("config/Grunt_Attack_Animation.xml");	AnimationManager::GetInstance()->LoadAnimationFile("config/Grunt_Flinch_Animation.xml");	AnimationManager::GetInstance()->LoadAnimationFile("config/Grunt_Knocked_Down_Animation.xml");	GetAnimInfo()->SetAnimationName("Grunt_Walk_Animation");	SetBaseAnimations(ENT_ENEMY);	punching = false;	cooldown = 0.0f;	SetHealth((int)(GetHealth()*(1.0f + fHealthScale)));	SetIdleAnim("Grunt_Walk_Animation");	m_bFlipped = false;	m_fMoveAway = 0.0f;	m_bEvadeUp = false;	m_fPosXOld = 0.0f;	m_fPosYOld = 0.0f;	m_fUpdateOldPos = 0.0f;	m_nExpPts = 50;	CSGD_EventSystem::GetInstance()->RegisterClient("New_Player", this);	CSGD_EventSystem::GetInstance()->RegisterClient("ModifyHealth", this);	CSGD_EventSystem::GetInstance()->RegisterClient("Self Destruct", this);}
开发者ID:kendellm,项目名称:Trials-of-Mastery,代码行数:34,


示例11: GetPosition

void CClientVehicle::Serialize(CBitStream * pBitStream){	// Write the vehicle position	CVector3 vecPosition;	GetPosition(vecPosition);	pBitStream->Write(vecPosition);	// Write the vehicle rotation	CVector3 vecRotation;	GetRotation(vecRotation);	pBitStream->Write(vecRotation);	// Write the vehicle move speed	CVector3 vecMoveSpeed;	GetMoveSpeed(vecMoveSpeed);	pBitStream->Write(vecMoveSpeed);	// Write the vehicle turn speed	CVector3 vecTurnSpeed;	GetTurnSpeed(vecTurnSpeed);	pBitStream->Write(vecTurnSpeed);	// Write the vehicle health	pBitStream->Write(GetHealth());}
开发者ID:Azon099,项目名称:networked-iv,代码行数:25,


示例12: GetPosition

void Bullet::Update(float fDeltaTime){	if (GetActive())	{		Vector2 position = GetPosition();		Vector2 velocity = GetVelocity();		position += velocity * fDeltaTime;		SetPosition(position);		RecalculateAABB();		GameObject* other = nullptr;		bool collision = CollisionManager::GetSingleton()->IsColliding(this, &other);		if (collision && other->GetCollisionLayer() == ECOLLISIONLAYER_ALL)		{			other->SetHealth(GetHealth() - 30);			SetActive(false);		}		Engine::GetSingleton()->GetSpriteBatch()->GetViewRect(&minX, &minY, &maxX, &maxY);		if (position.x > maxX)			SetActive(false);		else if (position.x < minX)			SetActive(false);		else if (position.y > maxY)			SetActive(false);		else if (position.y < minY)			SetActive(false);	}	return;}
开发者ID:richard-stern,项目名称:SpaceCowboy,代码行数:31,


示例13: inputInfoCopy

int	CSDKPlayer::OnTakeDamage( const CTakeDamageInfo &info ){	CTakeDamageInfo inputInfoCopy( info );	// If you shoot yourself, make it hurt but push you less	if ( inputInfoCopy.GetAttacker() == this && inputInfoCopy.GetDamageType() == DMG_BULLET )	{		inputInfoCopy.ScaleDamage( 5.0f );		inputInfoCopy.ScaleDamageForce( 0.05f );	}	int ret = BaseClass::OnTakeDamage( inputInfoCopy );	m_DmgOrigin = info.GetDamagePosition();#ifdef PLAYER_IGNORE_FALLDAMAGE	// ignore fall damage if instructed to do so by input	if ( ( info.GetDamageType() & DMG_FALL ) )	{		inputInfoCopy.SetDamage(0.0f);		return 0;	}#endif#ifdef PLAYER_HEALTH_REGEN	if ( GetHealth() < 100 )	{		m_fTimeLastHurt = gpGlobals->curtime;	}#endif	return ret;}
开发者ID:gamenew09,项目名称:SourceSDK2010,代码行数:32,


示例14: SendOnFootData

void CLocalPlayer::SendOnFootData(){	RakNet::BitStream PlayerBitStream_send;	PlayerBitStream_send.Write((MessageID)ID_SEND_PLAYER_DATA);	PlayerBitStream_send.Write(NetworkManager->playerid);	PlayerBitStream_send.Write(GetType());	PlayerBitStream_send.Write(GetModel());	PlayerBitStream_send.Write(GetHealth());	PlayerBitStream_send.Write(GetArmour());	PlayerBitStream_send.Write(GetCoords().x);	PlayerBitStream_send.Write(GetCoords().y);	PlayerBitStream_send.Write(GetCoords().z);	PlayerBitStream_send.Write(GetHeading());	PlayerBitStream_send.Write(GetQuaternion().fX);	PlayerBitStream_send.Write(GetQuaternion().fY);	PlayerBitStream_send.Write(GetQuaternion().fZ);	PlayerBitStream_send.Write(GetQuaternion().fW);	PlayerBitStream_send.Write(AI::GET_PED_DESIRED_MOVE_BLEND_RATIO(playerPed));	PlayerBitStream_send.Write(GetVelocity().x);	PlayerBitStream_send.Write(GetVelocity().y);	PlayerBitStream_send.Write(GetVelocity().z);	PlayerBitStream_send.Write(LocalPlayer->GetVehicle());	PlayerBitStream_send.Write(time(0));	NetworkManager->client->Send(&PlayerBitStream_send, MEDIUM_PRIORITY, RELIABLE_ORDERED, 0, RakNet::UNASSIGNED_SYSTEM_ADDRESS, true);}
开发者ID:jayr0flmc,项目名称:FiveMP,代码行数:34,


示例15: ToTFPlayer

//-----------------------------------------------------------------------------// Purpose: Player has waved his crosshair over this entity. Display appropriate hints.//-----------------------------------------------------------------------------void C_BaseObject::DisplayHintTo( C_BasePlayer *pPlayer ){	bool bHintPlayed = false;	C_TFPlayer *pTFPlayer = ToTFPlayer(pPlayer);	if ( InSameTeam( pPlayer ) )	{		// We're looking at a friendly object. 		if ( HasSapper() )		{			bHintPlayed = pPlayer->HintMessage( HINT_OBJECT_HAS_SAPPER, true, true );		}		if ( pTFPlayer->IsPlayerClass( TF_CLASS_ENGINEER ) )		{			// I'm an engineer.			// If I'm looking at a constructing object, let me know I can help build it (but not 			// if I built it myself, since I've already got that hint from the wrench).			if ( !bHintPlayed && IsBuilding() && GetBuilder() != pTFPlayer )			{				bHintPlayed = pPlayer->HintMessage( HINT_ENGINEER_USE_WRENCH_ONOTHER, false, true );			}			// If it's damaged, I can repair it			if ( !bHintPlayed && !IsBuilding() && GetHealth() < GetMaxHealth() )			{				bHintPlayed = pPlayer->HintMessage( HINT_ENGINEER_REPAIR_OBJECT, false, true );			}		}	}}
开发者ID:Deathreus,项目名称:TF2Classic,代码行数:36,


示例16: GetHealth

void Creature::RegenerateHealth(){    uint32 curValue = GetHealth();    uint32 maxValue = GetMaxHealth();    if (curValue >= maxValue) return;    float HealthIncreaseRate = sWorld.getRate(RATE_HEALTH);    float Spirit = GetStat(STAT_SPIRIT);    if( HealthIncreaseRate <= 0 ) HealthIncreaseRate = 1;    uint32 addvalue = 0;    if(isPet())    {        if( GetPower(POWER_MANA) > 0 )            addvalue = uint32(Spirit * 0.25 * HealthIncreaseRate);        else            addvalue = uint32(Spirit * 0.80 * HealthIncreaseRate);    }    else        addvalue = maxValue/3;    ModifyHealth(addvalue);}
开发者ID:chrayn,项目名称:mangos-06,代码行数:27,


示例17: GetPlayerPed

void CLocalPlayer::SendPassengerSync( void ){	// Are we not connected to the network?	if( !pCore->GetNetworkModule()->IsConnected() )		return;	// Are we dead?	if( IsDead() )		return;	// Get the vehicle instance	CNetworkVehicle * pVehicle = pCore->GetVehicleManager()->GetFromGameGUID( GetPlayerPed()->GetCurrentVehicle()->m_dwGUID );	// Did we fail to find the vehicle?	if( !pVehicle )		return;	// Construct a new bitstream	RakNet::BitStream pBitStream;	// Construct a new passenger sync data structure	InPassengerSync passengerSync;	// Get the player health	passengerSync.m_fHealth = GetHealth ();	// Get the player selected weapon	passengerSync.m_dwSelectedWeapon = GetSelectedWeapon ();	// Write the sync structure to the bitstream	pBitStream.Write( (char *)&passengerSync, sizeof(InPassengerSync) );	// Send the bitstream to the server	pCore->GetNetworkModule()->Call( RPC_PASSENGER_SYNC, &pBitStream, LOW_PRIORITY, UNRELIABLE_SEQUENCED, true );}
开发者ID:DarkKlo,项目名称:maf2mp,代码行数:35,


示例18: WorldSpaceCenter

void C_ASW_Alien::ClientThink(){	BaseClass::ClientThink();	// asw temp fix demo playback 	//ASWUpdateClientSideAnimation();	m_vecLastRenderedPos = WorldSpaceCenter();	m_vecAutoTargetRadiusPos = GetLocalAutoTargetRadiusPos();	if ( GetHealth() > 0 && m_bElectroStunned && m_fNextElectroStunEffect <= gpGlobals->curtime)	{		// apply electro stun effect		HACK_GETLOCALPLAYER_GUARD( "C_ASW_Alien::ClientThink FX_ElectroStun" );		FX_ElectroStun(this);		m_fNextElectroStunEffect = gpGlobals->curtime + RandomFloat( 0.3, 1.0 );		//Msg( "%f - ElectroStunEffect/n", gpGlobals->curtime );	}	UpdateFireEmitters();	C_ASW_Player* pPlayer = C_ASW_Player::GetLocalASWPlayer();	if ( pPlayer && pPlayer->IsSniperScopeActive() )	{		m_GlowObject.SetRenderFlags( true, true );	}	else	{		m_GlowObject.SetRenderFlags( false, false );	}}
开发者ID:Au-heppa,项目名称:swarm-sdk,代码行数:31,


示例19: Msg

int CASW_Simple_Alien::OnTakeDamage( const CTakeDamageInfo &info ){	// don't get hurt if our attacker is our friend	if (info.GetAttacker() && info.GetAttacker()->Classify() != CLASS_NONE)	{		// Proper way to check, but BCC default relationship array is private :/		//Disposition_t disp = CBaseCombatCharacter::m_DefaultRelationship[Classify()][info.GetAttacker()->Classify()].disposition;		//if (disp == D_LI)			//return 0;		// Hacky way to stop simple aliens getting hurt by other Infested aliens		Class_T c = info.GetAttacker()->Classify();		if ( IsAlienClass( c ) )			return 0;	}	if (asw_debug_alien_damage.GetBool())	{		Msg("%d %s hurt by %f dmg/n", entindex(), GetClassname(), info.GetDamage());	}	int iDamage = BaseClass::OnTakeDamage(info);	if (iDamage > 0 && GetHealth() > 0)	{		PainSound(info);	}	return iDamage;}
开发者ID:jtanx,项目名称:ch1ckenscoop,代码行数:30,


示例20: SetExperience

void CTurtle::Update(float fElapsedTime){	m_vAnimations[m_nCurrAnimation].Update(fElapsedTime);	if(GetExperience() >= (100 * GetLevel()))	{		CBattleMap::GetInstance()->PlaySFX(CAssets::GetInstance()->aBMcowabungaSnd);		SetExperience(0/*GetExperience()-(100* GetLevel())*/);		SetLevel(GetLevel() + 1);		SetHealthMax((int)((float)GetMaxHealth() * 1.25f));		SetHealth((int)((float)GetMaxHealth()));		SetBaseAP(GetBaseAP()+2);		SetStrength( (int)( (float)GetStrength() * 1.2f ) );		SetDefense( (int) ( (float)GetDefense() * 1.2f ) );		SetAccuracy( (int) ( (float)GetAccuracy() * 1.2f ) );		SetSpeed( (int) ( (float)GetSpeed() * 1.2f ) );	}	if( GetHealth() <= 0)	{		if(GetAlive() == true)		{			CBattleMap::GetInstance()->DecrementNumChars();			CBattleMap::GetInstance()->DecrementNumTurtles();			CBattleMap::GetInstance()->SetTurtleDead();			SetAlive(false);			if(GetCurrAnimNum() != 9)				SetCurrAnim(9);			SetPosZ(0.9f);		}	}}
开发者ID:marvelman610,项目名称:tmntactis,代码行数:30,


示例21: GetCharacterMovement

void AMech_RPGCharacter::Tick(float DeltaTime) {	Super::Tick(DeltaTime);	if (!isDead) {		GetCharacterMovement()->MaxWalkSpeed = speed * speedModifier;		if (GetHealth() < GetMaxHealth()) {			float regen = !inCombat ? GetMaxHealth() * 0.15 : healthRegen;			health += regen * DeltaTime;			GetFloatingStats()->UpdateHealthBar();			if (GetCharacterStats() != nullptr) {				GetCharacterStats()->UpdateHealthBar();			}		}		if (stats->GetUserWidgetObject() != nullptr && stats->GetUserWidgetObject() != nullptr) {			if (mIsChildOf(GetController(), AMech_RPGPlayerController::StaticClass()) && GetTopDownCamera() != nullptr) {				UMiscLibrary::SetCameraRot(FRotator(-GetTopDownCamera()->GetComponentRotation().Pitch, UMiscLibrary::GetWidgetYaw(GetTopDownCamera()) + 90, 0));				GetStats()->SetWorldRotation(UMiscLibrary::GetCameraRot());			}			else if (GetStats() != nullptr) {				GetStats()->SetWorldRotation(UMiscLibrary::GetCameraRot());			}		}	}	CLAMP(health, GetMaxHealth(), 0);}
开发者ID:belven,项目名称:Mech_RPG,代码行数:29,


示例22: ModifyHealth

int32 Unit::ModifyHealth(int32 val){    int32 gain = 0;    if (val == 0)        return 0;    int32 curHealth = (int32)GetHealth();    int32 newHealth = val + curHealth;    if (newHealth <= 0)    {        SetHealth(0);        return -curHealth;    }    int32 maxHealth = (int32)GetMaxHealth();    if (newHealth < maxHealth)    {        SetHealth(newHealth);        gain = newHealth - curHealth;    }    else if (curHealth != maxHealth)    {        SetHealth(maxHealth);        gain = maxHealth - curHealth;    }    return gain;}
开发者ID:Fredi,项目名称:Cpp,代码行数:31,


示例23: PrintEnemies

void PrintEnemies(Enemies enemies) {    Unit enemy;    char stringEnemyClass[11];    char stringRetaliates[13];    POINT enemyLocation;    for (int i = 0; i < enemies.count; ++i) {        enemy = *enemies.enemy[i].unit;        UnitClassName(GetUnitClass(enemy), stringEnemyClass);        if (enemies.enemy[i].canRetaliate) {            strcpy(stringRetaliates, "(Retaliates)");        } else {            strcpy(stringRetaliates, "");        }        enemyLocation = GetLocation(enemy);        printf("%d. %s (%d,%d) | Health %d/%d %s/n",             1+i,             stringEnemyClass,             enemyLocation.X,             enemyLocation.Y,            GetHealth(enemy),             GetMaximumHealth(enemy),            stringRetaliates        );    }}
开发者ID:Septica,项目名称:if2110-battle_for_olympia,代码行数:29,


示例24: Q_snprintf

//-----------------------------------------------------------------------------// Purpose: Draw any debug text overlays// Output : Current text offset from the top//-----------------------------------------------------------------------------int CBreakable::DrawDebugTextOverlays(void) {	int text_offset = BaseClass::DrawDebugTextOverlays();	if (m_debugOverlays & OVERLAY_TEXT_BIT) 	{		if ( GetMaxHealth() )		{			char tempstr[512];			Q_snprintf(tempstr,sizeof(tempstr),"Health: %i",GetHealth());			EntityText(text_offset,tempstr,0);			text_offset++;		}		if ( m_iszBasePropData != NULL_STRING )		{			char tempstr[512];			Q_snprintf(tempstr, sizeof(tempstr),"Base PropData: %s", STRING(m_iszBasePropData) );			EntityText( text_offset, tempstr, 0);			text_offset++;		}	}	return text_offset;}
开发者ID:Biohazard90,项目名称:g-string_2013,代码行数:29,


示例25: OnTakeDamage

//-----------------------------------------------------------------------------// Purpose: //-----------------------------------------------------------------------------int CPhysBox::OnTakeDamage( const CTakeDamageInfo &info ){	// note: if motion is disabled, OnTakeDamage can't apply physics force	int ret = BaseClass::OnTakeDamage( info );	// Check our health against the threshold:	if( m_damageToEnableMotion > 0 && GetHealth() < m_damageToEnableMotion )	{		// only do this once		m_damageToEnableMotion = 0;		IPhysicsObject *pPhysicsObject = VPhysicsGetObject();		if ( pPhysicsObject != NULL )		{			pPhysicsObject->Wake();			pPhysicsObject->EnableMotion( true );						VPhysicsTakeDamage( info );		}	}	if ( info.GetInflictor() )	{		m_OnDamaged.FireOutput( info.GetAttacker(), this );	}	return ret;}
开发者ID:RaisingTheDerp,项目名称:raisingthebar,代码行数:31,


示例26: GetDistanceFromTarget

void Agent::Search() //Orange{	searching = true;	int mouseX, mouseY;	Input::GetSingleton()->GetMouseXY(&mouseX, &mouseY);	float fDist = GetDistanceFromTarget((float)mouseX, (float)mouseY);	// Actuation	Wander(180, 60, 60);	// Transition	if (searchTimer > 3)	{		searching = false;		searchTimer = 0;		SetColour(Colour::Green);	}	if (fDist < m_nSightRange)	{		searching = false;		searchTimer = 0;		SetColour(Colour::Red);	}	if (GetHealth() <= 50)	{		searching = false;		searchTimer = 0;		SetColour(Colour::Blue);	}}
开发者ID:kwmoore81,项目名称:Guard-Patrol,代码行数:31,


示例27: KilledBy

void cSlime::KilledBy(TakeDamageInfo & a_TDI){	if (GetHealth() > 0)	{		return;	}	if (m_Size != 1)	{		cFastRandom Random;		int SpawnAmount = 2 + Random.NextInt(3);		for (int i = 0; i < SpawnAmount; ++i)		{			double AddX = (i % 2 - 0.5) * m_Size / 4.0;			double AddZ = (i / 2 - 0.5) * m_Size / 4.0;			cSlime * NewSlime = new cSlime(m_Size / 2);			NewSlime->SetPosition(GetPosX() + AddX, GetPosY() + 0.5, GetPosZ() + AddZ);			NewSlime->SetYaw(Random.NextFloat(1.0f) * 360.0f);			m_World->SpawnMobFinalize(NewSlime);		}	}	super::KilledBy(a_TDI);}
开发者ID:DjKiDD,项目名称:MCServer,代码行数:25,


示例28: switch

void CNPC_Zombine::RunTask( const Task_t *pTask ){	switch ( pTask->iTask )	{		case TASK_WAIT_FOR_MOVEMENT_STEP:		case TASK_WAIT_FOR_MOVEMENT:		{			BaseClass::RunTask( pTask );			if ( IsOnFire() && IsSprinting() )			{				StopSprint();			}			//Only do this if I have an enemy			if ( GetEnemy() )			{				if ( AllowedToSprint() == true )				{					Sprint( ( GetHealth() <= GetMaxHealth() * 0.5f ) );					return;				}				if ( HasGrenade() )				{					if ( IsSprinting() )					{						GetNavigator()->SetMovementActivity( (Activity)ACT_ZOMBINE_GRENADE_RUN );					}					else					{						GetNavigator()->SetMovementActivity( (Activity)ACT_ZOMBINE_GRENADE_WALK );					}					return;				}				if ( GetNavigator()->GetMovementActivity() != ACT_WALK )				{					if ( IsSprinting() == false )					{						GetNavigator()->SetMovementActivity( ACT_WALK );					}				}			}			else			{				GetNavigator()->SetMovementActivity( ACT_WALK );			}					break;		}		default:		{			BaseClass::RunTask( pTask );			break;		}	}}
开发者ID:Baer42,项目名称:source-sdk-2013,代码行数:59,



注:本文中的GetHealth函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ GetHealthPercent函数代码示例
C++ GetHeadingFromVector函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。