SetPropertyValueNoWait - ScriptObject

From the Fallout4 CreationKit Wiki
Jump to navigation Jump to search

Member of: ScriptObject Script

Sets a the value of a property on this script by name, asynchronously.

Syntax[edit | edit source]

Function SetPropertyValueNoWait(string asProperyName, Var aValue) native

Parameters[edit | edit source]

  • asPropertyName: The name of the property to set
  • aValue: The value to set the property to

Return Value[edit | edit source]

None.

Examples[edit | edit source]

; Set the value of a few properties on the "CombatOverhaul" script without waiting
; We use CastAs to make sure we don't depend on the script we want to call the function on
ScriptObject combatScript = FormFromOtherMod.CastAs("CombatOverhaul")
; note the '.0' to ensure it is a float, 1 won't work for float properties
combatScript.SetPropertyValueNoWait("DamageMultiplier", 1.0)
; again, casting to ObjectReference from Actor, even though Actor is a descendant
combatScript.SetPropertyValueNoWait("RefToTarget", Game.GetPlayer() as ObjectReference)
; we're now running in parallel with the two property set operations...

Notes[edit | edit source]

  • If the property name don't exist, the function will error. You may want to check for the existence of the mod you want to talk to before using this.
  • The value type must match exactly. You cannot give it a float if the property expects an int, or an Actor if the property expects an ObjectReference. Normally the compiler would do these casts for you in a normal property set, but it doesn't know what the type is, so it is your responsibility to match them up.
  • The compiler cannot check the property name for you, so make sure to triple check everything!

See Also[edit | edit source]