M&B: Bannerlord 1.0.0
The horns sound, the ravens gather.
Loading...
Searching...
No Matches
TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel Class Referenceabstract

Inherits TaleWorlds.Core.GameModel.

Inherited by SandBox.GameComponents.SandboxAgentApplyDamageModel, and TaleWorlds.MountAndBlade.DefaultAgentApplyDamageModel.

Public Member Functions

abstract float CalculateDamage (in AttackInformation attackInformation, in AttackCollisionData collisionData, in MissionWeapon weapon, float baseDamage)
 
abstract void DecideMissileWeaponFlags (Agent attackerAgent, MissionWeapon missileWeapon, ref WeaponFlags missileWeaponFlags)
 
abstract void CalculateCollisionStunMultipliers (Agent attackerAgent, Agent defenderAgent, bool isAlternativeAttack, CombatCollisionResult collisionResult, WeaponComponentData attackerWeapon, WeaponComponentData defenderWeapon, out float attackerStunMultiplier, out float defenderStunMultiplier)
 
abstract float CalculateStaggerThresholdMultiplier (Agent defenderAgent)
 
abstract float CalculatePassiveAttackDamage (BasicCharacterObject attackerCharacter, in AttackCollisionData collisionData, float baseDamage)
 
abstract MeleeCollisionReaction DecidePassiveAttackCollisionReaction (Agent attacker, Agent defender, bool isFatalHit)
 
abstract float CalculateShieldDamage (in AttackInformation attackInformation, float baseDamage)
 
abstract float GetDamageMultiplierForBodyPart (BoneBodyPartType bodyPart, DamageTypes type, bool isHuman)
 
abstract bool CanWeaponIgnoreFriendlyFireChecks (WeaponComponentData weapon)
 
abstract bool CanWeaponDismount (Agent attackerAgent, WeaponComponentData attackerWeapon, in Blow blow, in AttackCollisionData collisionData)
 
abstract bool CanWeaponKnockback (Agent attackerAgent, WeaponComponentData attackerWeapon, in Blow blow, in AttackCollisionData collisionData)
 
abstract bool CanWeaponKnockDown (Agent attackerAgent, Agent victimAgent, WeaponComponentData attackerWeapon, in Blow blow, in AttackCollisionData collisionData)
 
abstract bool DecideCrushedThrough (Agent attackerAgent, Agent defenderAgent, float totalAttackEnergy, Agent.UsageDirection attackDirection, StrikeType strikeType, WeaponComponentData defendItem, bool isPassiveUsageHit)
 
abstract bool DecideAgentShrugOffBlow (Agent victimAgent, AttackCollisionData collisionData, in Blow blow)
 Decide if victim agent can successfully shrug off blow. Blows that are shrugged off does not deal damage and does not apply combat mechanics (knock back, knock down etc.) More...
 
abstract bool DecideAgentDismountedByBlow (Agent attackerAgent, Agent victimAgent, in AttackCollisionData collisionData, WeaponComponentData attackerWeapon, in Blow blow)
 Decide if a mounted victim can be dismounted by a blow. Victim must be a mounted human. More...
 
abstract bool DecideAgentKnockedBackByBlow (Agent attackerAgent, Agent victimAgent, in AttackCollisionData collisionData, WeaponComponentData attackerWeapon, in Blow blow)
 Decides if a victim can be knocked back by a blow. Only applies to agents on foot. Victim must not be mounted. More...
 
abstract bool DecideAgentKnockedDownByBlow (Agent attackerAgent, Agent victimAgent, in AttackCollisionData collisionData, WeaponComponentData attackerWeapon, in Blow blow)
 Decides if a victim can be knocked down by a blow. Only applies to agents on foot. Victim must not be mounted More...
 
abstract bool DecideMountRearedByBlow (Agent attackerAgent, Agent victimAgent, in AttackCollisionData collisionData, WeaponComponentData attackerWeapon, in Blow blow)
 Decides if mount can be reared by a blow (i.e. a polearm thrust attack). Victim must be a mount. More...
 
abstract float GetDismountPenetration (Agent attackerAgent, WeaponComponentData attackerWeapon, in Blow blow, in AttackCollisionData collisionData)
 
abstract float GetKnockBackPenetration (Agent attackerAgent, WeaponComponentData attackerWeapon, in Blow blow, in AttackCollisionData collisionData)
 
abstract float GetKnockDownPenetration (Agent attackerAgent, WeaponComponentData attackerWeapon, in Blow blow, in AttackCollisionData collisionData)
 
abstract float GetHorseChargePenetration ()
 

Member Function Documentation

◆ CalculateDamage()

abstract float TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel.CalculateDamage ( in AttackInformation  attackInformation,
in AttackCollisionData  collisionData,
in MissionWeapon  weapon,
float  baseDamage 
)
pure virtual

◆ DecideMissileWeaponFlags()

abstract void TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel.DecideMissileWeaponFlags ( Agent  attackerAgent,
MissionWeapon  missileWeapon,
ref WeaponFlags  missileWeaponFlags 
)
pure virtual

◆ CalculateCollisionStunMultipliers()

abstract void TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel.CalculateCollisionStunMultipliers ( Agent  attackerAgent,
Agent  defenderAgent,
bool  isAlternativeAttack,
CombatCollisionResult  collisionResult,
WeaponComponentData  attackerWeapon,
WeaponComponentData  defenderWeapon,
out float  attackerStunMultiplier,
out float  defenderStunMultiplier 
)
pure virtual

◆ CalculateStaggerThresholdMultiplier()

abstract float TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel.CalculateStaggerThresholdMultiplier ( Agent  defenderAgent)
pure virtual

◆ CalculatePassiveAttackDamage()

abstract float TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel.CalculatePassiveAttackDamage ( BasicCharacterObject  attackerCharacter,
in AttackCollisionData  collisionData,
float  baseDamage 
)
pure virtual

◆ DecidePassiveAttackCollisionReaction()

abstract MeleeCollisionReaction TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel.DecidePassiveAttackCollisionReaction ( Agent  attacker,
Agent  defender,
bool  isFatalHit 
)
pure virtual

◆ CalculateShieldDamage()

abstract float TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel.CalculateShieldDamage ( in AttackInformation  attackInformation,
float  baseDamage 
)
pure virtual

◆ GetDamageMultiplierForBodyPart()

abstract float TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel.GetDamageMultiplierForBodyPart ( BoneBodyPartType  bodyPart,
DamageTypes  type,
bool  isHuman 
)
pure virtual

◆ CanWeaponIgnoreFriendlyFireChecks()

abstract bool TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel.CanWeaponIgnoreFriendlyFireChecks ( WeaponComponentData  weapon)
pure virtual

◆ CanWeaponDismount()

abstract bool TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel.CanWeaponDismount ( Agent  attackerAgent,
WeaponComponentData  attackerWeapon,
in Blow  blow,
in AttackCollisionData  collisionData 
)
pure virtual

◆ CanWeaponKnockback()

abstract bool TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel.CanWeaponKnockback ( Agent  attackerAgent,
WeaponComponentData  attackerWeapon,
in Blow  blow,
in AttackCollisionData  collisionData 
)
pure virtual

◆ CanWeaponKnockDown()

abstract bool TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel.CanWeaponKnockDown ( Agent  attackerAgent,
Agent  victimAgent,
WeaponComponentData  attackerWeapon,
in Blow  blow,
in AttackCollisionData  collisionData 
)
pure virtual

◆ DecideCrushedThrough()

abstract bool TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel.DecideCrushedThrough ( Agent  attackerAgent,
Agent  defenderAgent,
float  totalAttackEnergy,
Agent.UsageDirection  attackDirection,
StrikeType  strikeType,
WeaponComponentData  defendItem,
bool  isPassiveUsageHit 
)
pure virtual

◆ DecideAgentShrugOffBlow()

abstract bool TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel.DecideAgentShrugOffBlow ( Agent  victimAgent,
AttackCollisionData  collisionData,
in Blow  blow 
)
pure virtual

◆ DecideAgentDismountedByBlow()

abstract bool TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel.DecideAgentDismountedByBlow ( Agent  attackerAgent,
Agent  victimAgent,
in AttackCollisionData  collisionData,
WeaponComponentData  attackerWeapon,
in Blow  blow 
)
pure virtual

◆ DecideAgentKnockedBackByBlow()

abstract bool TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel.DecideAgentKnockedBackByBlow ( Agent  attackerAgent,
Agent  victimAgent,
in AttackCollisionData  collisionData,
WeaponComponentData  attackerWeapon,
in Blow  blow 
)
pure virtual

◆ DecideAgentKnockedDownByBlow()

abstract bool TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel.DecideAgentKnockedDownByBlow ( Agent  attackerAgent,
Agent  victimAgent,
in AttackCollisionData  collisionData,
WeaponComponentData  attackerWeapon,
in Blow  blow 
)
pure virtual

◆ DecideMountRearedByBlow()

abstract bool TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel.DecideMountRearedByBlow ( Agent  attackerAgent,
Agent  victimAgent,
in AttackCollisionData  collisionData,
WeaponComponentData  attackerWeapon,
in Blow  blow 
)
pure virtual

◆ GetDismountPenetration()

abstract float TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel.GetDismountPenetration ( Agent  attackerAgent,
WeaponComponentData  attackerWeapon,
in Blow  blow,
in AttackCollisionData  collisionData 
)
pure virtual

◆ GetKnockBackPenetration()

abstract float TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel.GetKnockBackPenetration ( Agent  attackerAgent,
WeaponComponentData  attackerWeapon,
in Blow  blow,
in AttackCollisionData  collisionData 
)
pure virtual

◆ GetKnockDownPenetration()

abstract float TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel.GetKnockDownPenetration ( Agent  attackerAgent,
WeaponComponentData  attackerWeapon,
in Blow  blow,
in AttackCollisionData  collisionData 
)
pure virtual

◆ GetHorseChargePenetration()

abstract float TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel.GetHorseChargePenetration ( )
pure virtual