Skip to content

UGameplayRules

#include <GameplayRules.h>

Inherits from UActorComponent

Public Functions

Name
bool ApplyDamageConditions(AActor * HitActor, const FDamageTakenEvent & DamageEvent)
[[EAttackerBlockedPolicy]] GetAttackerBlockedPolicy([[EAttackerBlockedPolicy]] InAttackerBlockedPolicy, ATBLCharacter * AttackingCharacter, ATBLCharacter * DefendingCharacter, AInventoryItem * AttackingItem, AInventoryItem * DefendingItem, bool bSameAttackClash)
[[EComboTimingPolicy]] GetComboTimingPolicy([[EComboTimingPolicy]] InComboTimingPolicy, ATBLCharacter * Character, FName CombatState, const FAttackInfo & PrevAttack, const FAttackInfo & NextAttack)
[[ECrowdControlVariant]] GetCrowdControlVariant([[ECrowdControlVariant]] InCrowdControlVariant, AActor * HitActor, FName CombatState, TSubclassOf< AInventoryItem > InventoryItemClass, FName AbilityName, UAttackType * AttackType, bool IsOnHorse)
[[EDefenderBlockedPolicy]] GetDefenderBlockedPolicy(bool & bShouldDisarm, [[EDefenderBlockedPolicy]] InDefenderBlockedPolicy, ATBLCharacter * AttackingCharacter, ATBLCharacter * DefendingCharacter, AInventoryItem * AttackingItem, AInventoryItem * DefendingItem, bool bProjectileAttack, bool bSameAttackClash, bool bWasBlockedWithParryForgivenessWindow)
FVector GetDisarmImpulse(const AInventoryItem * AttackerItem, const FVector HitDirection) const
FGoreEvent GetGoreEventOnDamage(const FDamageTakenEvent & DamageTakenEvent, bool bIsRagdollHit, bool bShouldApplyConditions)
float GetRangedInaccuracy(AInventoryItem * Projectile)
bool IsBlocking(const ATBLCharacter * Character, FName AttackName, FName CombatState, ATBLCharacter * AttackingCharacter) const
bool IsValidSelfInflictedDamageSource(UDamageSource * DamageSource)
void OnDamageTaken([[EOnHitEffect]] & OutHitEffect, [[ECrowdControlVariant]] & OutCrowdControlVariant, [[EOnHitEffect]] InHitEffect, [[ECrowdControlVariant]] InCrowdControlVariant, AActor * HitActor, const FDamageTakenEvent & DamageEvent, FName AttackName, AInventoryItem * AttackingItem, UAttackType * AttackType)
bool OnParryBreak(ATBLCharacter * AttackingCharacter, ATBLCharacter * DefendingCharacter, AInventoryItem * AttackingItem, AInventoryItem * DefendingItem)
void OnProjectileHit([[EOnProjectileHitEffect]] & OutHitEffect, float & OutBounceVelocityModifier, AInventoryItem * Projectile, [[EOnProjectileHitEffect]] InHitEffect, const [[FHitResult]] & InHitResult, float InBounceVelocityModifier)
bool ShouldAttackBeCountered(const ATBLCharacter * HitCharacter, ATBLCharacter * AttackingCharacter, AInventoryItem * AttackingItem, AInventoryItem * DefenderItem) const
bool ShouldBlockSameAttack(ATBLCharacter * AttackingCharacter, ATBLCharacter * DefendingCharacter) const
bool ShouldComboCancelQueue(FName CombatState, const FAttackInfo & Attack)
bool ShouldGotoDowned(AActor * Target, AActor * Initiator, FName AbilityName, AInventoryItem * InventoryItem, UDamageSource * DamageType, const FDamageTakenEvent & DamageTakenEvent)
bool ShouldPlayDamageTaken(const FDamageTakenEvent & DamageTakenEvent)
bool ShouldScoreKill(AController * Killer, AController * Killed, const FDeathDamageTakenEvent & DamageEvent)
bool ShouldStartActiveRiposteWindow(ATBLCharacter * Character)
bool ShouldStartCounterWindow(ATBLCharacter * Character)
bool ShouldStartProjectileCounterWindow(ATBLCharacter * Character)
bool TutorialCanDamage(ATBLCharacter * InitiatorCharacter, AActor * TargetActor)
UGameplayRules()
float UpdateAimPenalty(float DeltaSeconds, const TArray< FAimPenalty > & AimPenalties)

Protected Attributes

Name
float AimPenalty

Updated on 2025-01-21 at 09:02:24 +0100