本文整理汇总了C++中AWeapon::GetStateForButtonName方法的典型用法代码示例。如果您正苦于以下问题:C++ AWeapon::GetStateForButtonName方法的具体用法?C++ AWeapon::GetStateForButtonName怎么用?C++ AWeapon::GetStateForButtonName使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类AWeapon
的用法示例。
在下文中一共展示了AWeapon::GetStateForButtonName方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: P_CheckWeaponButtons
static void P_CheckWeaponButtons (player_t *player)
{
if (player->Bot == nullptr && bot_observer)
{
return;
}
AWeapon *weapon = player->ReadyWeapon;
if (weapon == nullptr)
{
return;
}
// The button checks are ordered by precedence. The first one to match a
// button press and affect a state change wins.
for (size_t i = 0; i < countof(ButtonChecks); ++i)
{
if ((player->WeaponState & ButtonChecks[i].StateFlag) &&
(player->cmd.ucmd.buttons & ButtonChecks[i].ButtonFlag))
{
FState *state = weapon->GetStateForButtonName(ButtonChecks[i].StateName);
// [XA] don't change state if still null, so if the modder
// sets WRF_xxx to true but forgets to define the corresponding
// state, the weapon won't disappear. ;)
if (state != nullptr)
{
P_SetPsprite(player, PSP_WEAPON, state);
return;
}
}
}
}