Show / Hide Table of Contents

Class AddStatBonusIfHasFactFixed

Working replacement for Owlcat's AddStatBonusIfHasFact. Instantiate using constructors.

Inheritance
System.Object
Kingmaker.Blueprints.BlueprintComponent
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>
Kingmaker.UnitLogic.UnitFactComponentDelegate<Kingmaker.EntitySystem.EmptyComponentData>
Kingmaker.UnitLogic.Buffs.Components.UnitBuffComponentDelegate<Kingmaker.EntitySystem.EmptyComponentData>
Kingmaker.UnitLogic.Buffs.Components.UnitBuffComponentDelegate
AddStatBonusIfHasFactFixed
Implements
Owlcat.Runtime.Core.Logging.ICanBeLogContext
Kingmaker.Blueprints.IHavePrototype
Kingmaker.EntitySystem.IRuntimeEntityFactComponentProvider
Kingmaker.PubSubSystem.IUnitGainFactHandler
Kingmaker.PubSubSystem.IUnitLostFactHandler
Kingmaker.PubSubSystem.IUnitSubscriber
Kingmaker.PubSubSystem.ISubscriber
Inherited Members
Kingmaker.UnitLogic.Buffs.Components.UnitBuffComponentDelegate<Kingmaker.EntitySystem.EmptyComponentData>.OnRemoved()
Kingmaker.UnitLogic.Buffs.Components.UnitBuffComponentDelegate<Kingmaker.EntitySystem.EmptyComponentData>.CreateRuntimeFactComponent()
Kingmaker.UnitLogic.Buffs.Components.UnitBuffComponentDelegate<Kingmaker.EntitySystem.EmptyComponentData>.Buff
Kingmaker.UnitLogic.UnitFactComponentDelegate<Kingmaker.EntitySystem.EmptyComponentData>.Fact
Kingmaker.UnitLogic.UnitFactComponentDelegate<Kingmaker.EntitySystem.EmptyComponentData>.Param
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.ClearData()
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.GetSubscribingUnit()
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.CreateRuntimeFactComponent()
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.OnFactAttached()
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.OnInitialize()
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.OnActivate()
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.OnDeactivate()
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.OnTurnOn()
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.OnTurnOff()
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.OnPreSave()
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.OnPostLoad()
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.OnApplyPostLoadFixes()
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.OnViewDidAttach()
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.OnViewWillDetach()
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.OnDispose()
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.OnRecalculate()
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.Runtime
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.Owner
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.Fact
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.Context
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.Data
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.MaybeData
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.IsReapplying
Kingmaker.Blueprints.BlueprintComponent.<OwnerBlueprint>k__BackingField
Kingmaker.Blueprints.BlueprintComponent.m_Flags
Kingmaker.Blueprints.BlueprintComponent.name
Kingmaker.Blueprints.BlueprintComponent.m_PrototypeLink
Kingmaker.Blueprints.BlueprintComponent.ApplyValidation(Owlcat.QA.Validation.ValidationContext, System.Int32)
Kingmaker.Blueprints.BlueprintComponent.Instantiate<T>(T)
Kingmaker.Blueprints.BlueprintComponent.OnDeserialized(System.Runtime.Serialization.StreamingContext)
Kingmaker.Blueprints.BlueprintComponent.ToString()
Kingmaker.Blueprints.BlueprintComponent.False
Kingmaker.Blueprints.BlueprintComponent.OwnerBlueprint
Kingmaker.Blueprints.BlueprintComponent.Disabled
Kingmaker.Blueprints.BlueprintComponent.PrototypeLink
Namespace: BlueprintCore.Blueprints.Components.Replacements
Assembly: BlueprintCore.dll
Syntax
[AllowMultipleComponents]
[TypeId("3dcfce44-a7dd-48fe-9331-3681a43dbfa4")]
public class AddStatBonusIfHasFactFixed : UnitBuffComponentDelegate, ICanBeLogContext, IHavePrototype, IRuntimeEntityFactComponentProvider, IUnitGainFactHandler, IUnitLostFactHandler, IUnitSubscriber, ISubscriber
Remarks

Based on AddStatBonusIfHasFactTTT from TabletopTweaks-Core

Constructors

| Improve this Doc View Source

AddStatBonusIfHasFactFixed(StatType, ContextValue, List<Blueprint<BlueprintUnitFactReference>>, List<Blueprint<BlueprintUnitFactReference>>, ModifierDescriptor, Boolean, Boolean)

Declaration
public AddStatBonusIfHasFactFixed(StatType stat, ContextValue bonus, List<Blueprint<BlueprintUnitFactReference>> requiredFacts, List<Blueprint<BlueprintUnitFactReference>> excludeFacts = null, ModifierDescriptor descriptor = ModifierDescriptor.None, bool requireAllFacts = true, bool invertCondition = false)
Parameters
Type Name Description
Kingmaker.EntitySystem.Stats.StatType stat

Stat to which the bonus applies

Kingmaker.UnitLogic.Mechanics.ContextValue bonus

Bonus value to apply

System.Collections.Generic.List<Blueprint<Kingmaker.Blueprints.BlueprintUnitFactReference>> requiredFacts

List of facts the unit must have.

System.Collections.Generic.List<Blueprint<Kingmaker.Blueprints.BlueprintUnitFactReference>> excludeFacts

List of facts which block the bonus. This is checked first and applies regardless of requireAllFacts

Kingmaker.Enums.ModifierDescriptor descriptor

Descriptor used for effect stacking behavior.

System.Boolean requireAllFacts

Defaults to true.

trueBonus applies only if the unit has all facts in requiredFacts
falseBonus applies if the unit has any fact in requiredFacts
System.Boolean invertCondition

Defaults to false.

invertConditionrequireAllFacts
falsefalseBonus applies only if the unit has any fact in requiredFacts
falsetrueBonus applies if the unit has all facts in requiredFacts
truefalseBonus applies only if the unit has no fact in requiredFacts
truetrueBonus applies only if the unit does not have all facts in requiredFacts

Fields

| Improve this Doc View Source

Bonus

Declaration
public ContextValue Bonus
Field Value
Type Description
Kingmaker.UnitLogic.Mechanics.ContextValue
| Improve this Doc View Source

Descriptor

Declaration
public ModifierDescriptor Descriptor
Field Value
Type Description
Kingmaker.Enums.ModifierDescriptor
| Improve this Doc View Source

InvertCondition

Declaration
public bool InvertCondition
Field Value
Type Description
System.Boolean
| Improve this Doc View Source

m_ExcludeFacts

Declaration
public BlueprintUnitFactReference[] m_ExcludeFacts
Field Value
Type Description
Kingmaker.Blueprints.BlueprintUnitFactReference[]
| Improve this Doc View Source

m_RequiredFacts

Declaration
[SerializeField]
[ValidateNotEmpty]
public BlueprintUnitFactReference[] m_RequiredFacts
Field Value
Type Description
Kingmaker.Blueprints.BlueprintUnitFactReference[]
| Improve this Doc View Source

RequireAllFacts

Declaration
public bool RequireAllFacts
Field Value
Type Description
System.Boolean
| Improve this Doc View Source

Stat

Declaration
public StatType Stat
Field Value
Type Description
Kingmaker.EntitySystem.Stats.StatType

Properties

| Improve this Doc View Source

ExcludeFacts

Declaration
public ReferenceArrayProxy<BlueprintUnitFact, BlueprintUnitFactReference> ExcludeFacts { get; }
Property Value
Type Description
Kingmaker.Blueprints.ReferenceArrayProxy<Kingmaker.Blueprints.Facts.BlueprintUnitFact, Kingmaker.Blueprints.BlueprintUnitFactReference>
| Improve this Doc View Source

RequiredFacts

Declaration
public ReferenceArrayProxy<BlueprintUnitFact, BlueprintUnitFactReference> RequiredFacts { get; }
Property Value
Type Description
Kingmaker.Blueprints.ReferenceArrayProxy<Kingmaker.Blueprints.Facts.BlueprintUnitFact, Kingmaker.Blueprints.BlueprintUnitFactReference>

Methods

| Improve this Doc View Source

HandleUnitGainFact(EntityFact)

Declaration
public void HandleUnitGainFact(EntityFact fact)
Parameters
Type Name Description
Kingmaker.EntitySystem.EntityFact fact
| Improve this Doc View Source

HandleUnitLostFact(EntityFact)

Declaration
public void HandleUnitLostFact(EntityFact fact)
Parameters
Type Name Description
Kingmaker.EntitySystem.EntityFact fact
| Improve this Doc View Source

OnTurnOff()

Declaration
public override void OnTurnOff()
Overrides
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.OnTurnOff()
| Improve this Doc View Source

OnTurnOn()

Declaration
public override void OnTurnOn()
Overrides
Kingmaker.EntitySystem.EntityFactComponentDelegate<Kingmaker.EntitySystem.Entities.UnitEntityData, Kingmaker.EntitySystem.EmptyComponentData>.OnTurnOn()

Implements

Owlcat.Runtime.Core.Logging.ICanBeLogContext
Kingmaker.Blueprints.IHavePrototype
Kingmaker.EntitySystem.IRuntimeEntityFactComponentProvider
Kingmaker.PubSubSystem.IUnitGainFactHandler
Kingmaker.PubSubSystem.IUnitLostFactHandler
Kingmaker.PubSubSystem.IUnitSubscriber
Kingmaker.PubSubSystem.ISubscriber
  • Improve this Doc
  • View Source
In This Article
Back to top Generated by DocFX