void AShooterWeapon::SetWeaponState(EWeaponState::Type NewState) { const EWeaponState::Type PrevState = CurrentState; if (PrevState == EWeaponState::Firing && NewState != EWeaponState::Firing) { OnBurstFinished(); } CurrentState = NewState; if (PrevState != EWeaponState::Firing && NewState == EWeaponState::Firing) { OnBurstStarted(); } }
void ASWeapon::SetWeaponState(EWeaponState inNewState) { const EWeaponState prevState = CurrentState; if ((prevState == EWeaponState::Firing) && (inNewState != EWeaponState::Firing)) { OnBurstFinished(); } CurrentState = inNewState; if ((prevState != EWeaponState::Firing) && (inNewState == EWeaponState::Firing)) { OnBurstStarted(); } }
void AMagicBattleSoccerWeapon::SetWeaponState(EWeaponState NewState) { const EWeaponState PrevState = LocalState; if (PrevState == EWeaponState::Firing && NewState != EWeaponState::Firing) { OnBurstFinished(); } LocalState = NewState; if (ROLE_Authority == Role) { ServerState = NewState; } if (PrevState != EWeaponState::Firing && NewState == EWeaponState::Firing) { OnBurstStarted(); } }