本文整理汇总了C++中CClientWeapon::GetAmmoInClips方法的典型用法代码示例。如果您正苦于以下问题:C++ CClientWeapon::GetAmmoInClips方法的具体用法?C++ CClientWeapon::GetAmmoInClips怎么用?C++ CClientWeapon::GetAmmoInClips使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CClientWeapon
的用法示例。
在下文中一共展示了CClientWeapon::GetAmmoInClips方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Update
void CHUDAmmo::Update()
{
HWEAPON hWeapon = g_pPlayerStats->GetCurrentWeaponRecord();
HAMMO hAmmo = g_pPlayerStats->GetCurrentAmmoRecord();
m_bDraw = (hWeapon && hAmmo);
if (hAmmo)
{
DamageType dtAmmoInstDamageType = g_pWeaponDB->GetAmmoInstDamageType( hAmmo);
if (dtAmmoInstDamageType == DT_MELEE)
m_bDraw = false;
}
if (!m_bDraw) return;
CClientWeapon* pClientWeapon = g_pClientWeaponMgr->GetCurrentClientWeapon( );
int nAmmoInClip = pClientWeapon ? pClientWeapon->GetAmmoInClips() : 0;
int nAmmo = g_pPlayerStats->GetCurrentAmmoCount() - nAmmoInClip;
HWEAPONDATA hWpnData = g_pWeaponDB->GetWeaponData(hWeapon, !USE_AI_DATA);
m_bInfinite = g_pWeaponDB->GetBool( hWpnData, WDB_WEAPON_bInfiniteAmmo );
if (!m_bInfinite)
{
wchar_t wstr[32];
FormatString("HUD_Ammo_Format",wstr,LTARRAYSIZE(wstr), nAmmoInClip, nAmmo < 0 ? 0 : nAmmo);
if ((nAmmo > 0) || (nAmmoInClip > 0))
{
EnableFade(true);
}
else
{
ResetFade();
EnableFade( false );
}
m_Text.SetText(wstr);
}
if (m_hLastAmmo != hAmmo)
{
HAMMODATA hAmmoData = g_pWeaponDB->GetAmmoData(hAmmo);
m_hIconTexture.Load( g_pWeaponDB->GetString( hAmmoData, WDB_AMMO_sIcon ) );
SetupQuadUVs(m_IconPoly, m_hIconTexture, 0.0f, 0.0f, 1.0f, 1.0f);
m_hLastAmmo = hAmmo;
}
ResetFade();
}