Next: SetBuiltin - AurieFramework/YYToolkit GitHub Wiki
Sets the value of a local built-in or a global built-in variable.
Syntax
AurieStatus GetBuiltin(
[in] std::string_view Name,
[in, optional] CInstance* TargetInstance
[in, optional] int ArrayIndex
[in] RValue& Value
);
Parameters
Name
The case-sensitive name of the built-in variable to access.
[!IMPORTANT] Using this function, you can get the index of either a local built-in (such as
id
,image_index
, etc.), or a global built-in (such asroom
,instance_count
, etc.).A global built-in variable IS NOT the same as a regular global variable, and cannot be treated as such - to look up a global variable, use the
variable_global_get
built-in function, or the GetInstanceMember function together with the global instance obtained from GetGlobalInstance.
TargetInstance
The instance whose built-in variables are being accessed. While this parameter is unused while accessing most global built-in variables, local built-in variables (such as object_index
) rely on this instance being valid and may crash the game if an invalid instance is provided.
ArrayIndex
An optional array index to use when accessing built-in arrays (like argument
). For non-array accesses, specify NULL_INDEX
, defined in YYTK's Shared.hpp
file.
Value
A buffer whose value will be copied into the built-in variable. The contents of this buffer are guaranteed to remain unchanged.
Return Value
On success, the function returns AURIE_SUCCESS
and copies the contents of the Value
buffer into the target built-in variable. If the function fails, it returns a matching error code. If the internal variable lookup facilities aren't available, the function returns AURIE_MODULE_INTERNAL_ERROR
. If the variable referenced by the Name
parameter does not exist, the function returns AURIE_OBJECT_NOT_FOUND
. If the variable can't be set (has no setter), the function returns AURIE_ACCESS_DENIED
.