- Found in:
- Vanilla
Description
Wiki Description
Calls a global function synchronously and returns whatever that function does.
Documentation Comment
Calls a global function specified by name. Note that the compiler cannot check that the function
exists, nor that the parameters are the right type. It will also not be able to auto-cast, so
you must pre-cast the parameters to the right type (derived or parent types won't work). Will
error if the function or script type are not valid or don't exist
Caveats
CK Wiki - Notes
- If the script name or function 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 parameter types must match exactly. You cannot insert a float into the param array if the function expects an int, or a Actor if the function expects an ObjectReference. Normally the compiler would do these casts for you in a normal function call, but it doesn't know what the parameters are, so it is your responsibility to match them up.
- The compiler cannot check the script name, function name, or parameters for you, so make sure to triple check everything!
Parameters
stringasScriptName
CK Wiki Description
The name of the script containing the function
stringasFuncName
CK Wiki Description
The name of the function to call
var[]aParams
CK Wiki Description
The list of parameters to pass
Examples
; Call "bool Function Exists() global" on script "ScriptExtender" and make a choice based on the return value
Var result = Utility.CallGlobalFunction("ScriptExtender", "Exists", new Var[0])
bool exists = result as bool
if (exists)
Debug.Trace("We have an extender, so do something cool!")
endIf; Call "Function AddExternalItem(Form akItem) global" on script "CoolModScript"
; Assume we have an armor property "MyCoolArmor" to pass off
Var[] params = new Var[1]
params[0] = MyCoolArmor as Form ; Must cast as form by hand, even though armor is derived from form
Utility.CallGlobalFunction("CoolModScript", "AddExternalItem", params)Auto-Generated Example
string myString__asScriptName
string myString__asFuncName
var[] myVarArray__aParams
var returnedValue = Utility.CallGlobalFunction(myString__asScriptName, myString__asFuncName, myVarArray__aParams)Related Pages
Additional References
View this function’s page on the Fallout 4 Creation Kit Wiki
