REDNODE / GAME API

DamageSystem

classnative name gameDamageSystemnative

extends IDamageSystem › IReplicatedGameSystem › IGameSystem › IScriptable › ISerializable

Properties 3

NameTypeFlags
previewLockBoolscriptedpublic
previewRWLockTempRWLockscriptedpublic
previewTargetpreviewTargetStructscriptedpublic

Methods 106

protected final func AllowWeaponCrit(attackData: ref<AttackData>) -> Boolscripted
private final func ApplyStatusEffectByApplicationRate(hitEvent: ref<gameHitEvent>, statType: gamedataStatType, effect: TweakDBID)scripted
private final func CacheLocalVars(hitEvent: ref<gameHitEvent>, cache: ref<CacheData>)scripted
private final func CalculateDamageVariants(hitEvent: ref<gameHitEvent>)scripted
private final func CalculateGlobalModifiers(hitEvent: ref<gameHitEvent>, cache: ref<CacheData>)scripted
private final func CalculateSourceModifiers(hitEvent: ref<gameHitEvent>, cache: ref<CacheData>)scripted
private final func CalculateSourceVsTargetModifiers(hitEvent: ref<gameHitEvent>)scripted
private final func CalculateTargetModifiers(hitEvent: ref<gameHitEvent>)scripted
private final func CalculateVehicleTargetMeleeDamage(weaponObject: ref<WeaponObject>, attackType: gamedataAttackType, isBodySlam: Bool, statSystem: ref<StatsSystem>) -> Floatscripted
private final func CalculateVehicleTargetRangedDamage(weaponObject: ref<WeaponObject>, chargeDamageMultiplier: Float, statSystem: ref<StatsSystem>) -> Floatscripted
private final func CheckForQuickExit(hitEvent: ref<gameHitEvent>, cache: ref<CacheData>) -> Boolscripted
private final func CheckProjectionPipelineTargetConditions(hitEvent: ref<gameProjectedHitEvent>) -> Boolscripted
public final func ClearPreviewTargetStruct()scripted
private final func ConvertDPSToHitDamage(hitEvent: ref<gameHitEvent>)scripted
public final func ConvertHitDataToDamageInfo(hitEvent: ref<gameHitEvent>) -> array<DamageInfo>scripted
private final func CreateDebugDataName(gameObject: wref<GameObject>) -> CNamescripted
private final func DealDamages(hitEvent: ref<gameHitEvent>)scripted
private final func DeathCheck(hitEvent: ref<gameHitEvent>)scripted
private final func DEBUG_InvulnerabilityCheckForVehicle(hitEvent: ref<gameHitEvent>) -> Boolscripted
private final func DebugDraw_VehicleHit(gameInstance: GameInstance, hitPosition: Vector4, hitDirection: Vector4, hitMagnitude: Float)scripted
private final func FillInDamageBlackboard(hitEvent: ref<gameHitEvent>)scripted
private final func GatherDebugData(hitEvent: ref<gameHitEvent>, cache: ref<CacheData>, out hitDebugData: ref<HitDebugData>)scripted
private final func GatherServerData(hitEvent: ref<gameHitEvent>, cache: ref<CacheData>, out serverHitData: ref<ServerHitData>)scripted
protected final func GetArmorPenetrationValue(weapon: ref<WeaponObject>, hitEvent: ref<gameHitEvent>) -> Floatscripted
protected final func GetCritDamageModifier(statSystem: ref<StatsSystem>, attackData: ref<AttackData>) -> Floatscripted
static native func GetDamageModFromCurve(curve: CName, value: Float) -> Float
protected final func GetHeadshotDamageModifier(statSystem: ref<StatsSystem>, attackData: ref<AttackData>) -> Floatscripted
private final func GetHitReactionZone(hitEvent: ref<gameProjectedHitEvent>) -> EHitReactionZonescripted
private final const func GetSubAttackSubType(attackData: ref<AttackData>) -> gamedataAttackSubtypescripted
protected final func GetVehiclePerksDamageMultiplier(attackData: ref<AttackData>) -> Floatscripted
protected final func GetWeakspotDamageModifier(statSystem: ref<StatsSystem>, attackData: ref<AttackData>) -> Floatscripted
private final func ImmortalityCheck(hitEvent: ref<gameHitEvent>, cache: ref<CacheData>)scripted
private final func InvulnerabilityCheck(hitEvent: ref<gameHitEvent>, cache: ref<CacheData>)scripted
private final func IsImmune(target: ref<GameObject>, statusEffectID: TweakDBID, attackData: ref<AttackData>) -> Boolscripted
public final func IsOverridenExplosionVsVehicleHit(hitEvent: ref<gameHitEvent>) -> Boolscripted
private final func IsTargetImmortal(cache: ref<CacheData>) -> Boolscripted
private final func IsTargetInvulnerable(cache: ref<CacheData>) -> Boolscripted
private final func ModifyHitData(hitEvent: ref<gameHitEvent>)scripted
private final func ModifyHitFlagsForPlayer(hitEvent: ref<gameHitEvent>, cache: ref<CacheData>)scripted
private final func PostProcess(hitEvent: ref<gameHitEvent>)scripted
private final func PreProcess(hitEvent: ref<gameHitEvent>, cache: ref<CacheData>) -> Boolscripted
private final func PreProcessVehicleTarget(hitEvent: ref<gameHitEvent>)scripted
private final func Process(hitEvent: ref<gameHitEvent>, cache: ref<CacheData>)scripted
public final func ProcessArmor(hitEvent: ref<gameHitEvent>)scripted
public final func ProcessBikeMelee(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessBlockAndDeflect(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessBulletBlockAndDeflect(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessBulletDeflect(hitEvent: ref<gameHitEvent>, isBulletTimeActive: Bool, blockingItem: wref<ItemObject>)scripted
private final func ProcessChargeAttack(hitEvent: ref<gameHitEvent>, cache: ref<CacheData>)scripted
private final func ProcessClientHit(serverHitData: ref<ServerHitData>)scripted
private final func ProcessClientKill(serverKillData: ref<ServerKillData>)scripted
public final func ProcessCriticalHit(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessCrowdTarget(hitEvent: ref<gameHitEvent>)scripted
public final func ProcessCyberwareModifiers(hitEvent: ref<gameHitEvent>)scripted
public final func ProcessDamageMultipliers(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessDamageReduction(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessDeviceExplosionDamageToTierNPC(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessDeviceTarget(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessDodge(hitEvent: ref<gameHitEvent>)scripted
public final func ProcessEffectiveRange(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessEvasion(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessGrenadeExplosionDamageToPlayer(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessHitReaction(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessInstantKill(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessLevelDifference(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessLocalizedDamage(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessMissPipeline(missEvent: ref<gameMissEvent>)scripted
private final func ProcessMitigation(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessNPCPassengerVehicleCollision(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessOneShotProtection(hitEvent: ref<gameHitEvent>)scripted
public final func ProcessOnVehicleMitigation(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessPierceAttack(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessPipeline(hitEvent: ref<gameHitEvent>, cache: ref<CacheData>)scripted
private final func ProcessPlayerFixedPercentageOverride(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessPlayerIncomingDamageMultiplier(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessProjectionPipeline(hitEvent: ref<gameProjectedHitEvent>, cache: ref<CacheData>)scripted
private final func ProcessQuickHackModifiers(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessRagdollHit(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessReturnedDamage(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessRicochet(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessSpreadingMultiplier(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessStatusEffectApplicationStats(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessStatusEffects(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessStealthAttack(hitEvent: ref<gameHitEvent>)scripted
native func ProcessSyncStageCallbacks(stage: gameDamagePipelineStage, hitEvent: ref<gameHitEvent>, damagePipelineType: DMGPipelineType)
native func ProcessSyncStageMissCallbacks(missEvent: ref<gameMissEvent>)
private final func ProcessTurretAttack(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessTurretDamageTakenFromMelee(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessVehicleHit(hitEvent: ref<gameHitEvent>)scripted
private final func ProcessVehicleTarget(hitEvent: ref<gameHitEvent>, cache: ref<CacheData>)scripted
public final func ProcessVehicleVsExplosion(hitEvent: ref<gameHitEvent>)scripted
native func QueueHitEvent(evt: ref<gameHitEvent>, receiver: wref<GameObject>)
native func QueueMissEvent(evt: ref<gameMissEvent>)
native func RegisterListener(damageListener: ref<ScriptedDamageSystemListener>, registereeID: EntityID, callbackType: gameDamageCallbackType, opt damagePipelineType: DMGPipelineType)
native func RegisterSyncListener(damageListener: ref<ScriptedDamageSystemListener>, registereeID: EntityID, callbackType: gameDamageCallbackType, stage: gameDamagePipelineStage, opt damagePipelineType: DMGPipelineType)
private final func ScalePlayerDamage(hitEvent: ref<gameHitEvent>)scripted
private final func SendDamageEvents(hitEvent: ref<gameHitEvent>, resourcesLost: script_ref<array<SDamageDealt>>)scripted
private final func SendDamageRequestToPreventionSystem(hitEvent: ref<gameHitEvent>)scripted
private final func SendVehicleImpactTelemetryIfValid(hitEvent: ref<gameHitEvent>)scripted
public final func SetPreviewLock(newState: Bool)scripted
private final func SetPreviewTargetStruct(trackedTarget: wref<GameObject>, bodyPart: EHitReactionZone, hittingBreach: Bool)scripted
private final func SetTutorialFact(factName: CName)scripted
private final func ShouldProcessStatusEffectsOnVehicleDriver(hitEvent: ref<gameHitEvent>, out driverEntityID: EntityID) -> Boolscripted
native func StartProjectionPipeline(evt: ref<gameProjectedHitEvent>)
native func UnregisterListener(damageListener: ref<ScriptedDamageSystemListener>, registereeID: EntityID, callbackType: gameDamageCallbackType, opt damagePipelineType: DMGPipelineType)
native func UnregisterSyncListener(damageListener: ref<ScriptedDamageSystemListener>, registereeID: EntityID, callbackType: gameDamageCallbackType, stage: gameDamagePipelineStage, opt damagePipelineType: DMGPipelineType)