Difference between revisions of "Lua:Class:MemoryRecord"
Jump to navigation
Jump to search
m (→Properties: Fixed typo in Color's description.) |
|||
(13 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
− | MemoryRecord '''class''': ('''Inheritance''': ''[[Object]]'') | + | [[Category:Lua]] |
+ | MemoryRecord '''class''': ('''Inheritance''': ''[[Lua:Class:Object|Object]]'') | ||
The memory record objects are the entries you see in the address list. | The memory record objects are the entries you see in the address list. | ||
Line 24: | Line 25: | ||
: The address the memoryrecord points to. | : The address the memoryrecord points to. | ||
− | ; Type : | + | ; Type : integer |
: The variable type of this record. See vtByte to vtCustom | : The variable type of this record. See vtByte to vtCustom | ||
:* If the type is vtString then the following properties are available: | :* If the type is vtString then the following properties are available: | ||
Line 34: | Line 35: | ||
:* If the type is vtByteArray then the following properties are available | :* If the type is vtByteArray then the following properties are available | ||
:** Aob.Size: Number of bytes | :** Aob.Size: Number of bytes | ||
+ | :'''From ''defines.lua''''': | ||
+ | vtByte=0 | ||
+ | vtWord=1 | ||
+ | vtDword=2 | ||
+ | vtQword=3 | ||
+ | vtSingle=4 | ||
+ | vtDouble=5 | ||
+ | vtString=6 | ||
+ | vtUnicodeString=7 --Only used by autoguess | ||
+ | vtByteArray=8 | ||
+ | vtBinary=9 | ||
+ | vtAutoAssembler=11 | ||
+ | vtPointer=12 --Only used by autoguess and structures | ||
+ | vtCustom=13 | ||
+ | vtGrouped=14 | ||
; CustomTypeName : string | ; CustomTypeName : string | ||
Line 43: | Line 59: | ||
; Value : string | ; Value : string | ||
: The value in stringform. | : The value in stringform. | ||
+ | |||
+ | ; IsGroupHeader : boolean | ||
+ | : Set to true to change the memory record into a group header. | ||
+ | : All properties and functions related to address, type, and value are ignored when true. | ||
; Selected : boolean | ; Selected : boolean | ||
Line 51: | Line 71: | ||
; Color : integer | ; Color : integer | ||
− | : The memory record's | + | : The memory record's RGB color integer. |
; ShowAsHex : boolean | ; ShowAsHex : boolean | ||
Line 74: | Line 94: | ||
: Number of hotkeys attached to this memory record. | : Number of hotkeys attached to this memory record. | ||
− | ; Hotkey[''index''] : [[GenericHotkey]] | + | ; Hotkey[''index''] : [[Lua:Class:GenericHotkey|GenericHotkey]] |
: Array to index the hotkeys. | : Array to index the hotkeys. | ||
+ | |||
+ | ; Options : string | ||
+ | : A string of the set "Group Config" options in the format ''''[optionName,...]'''' | ||
+ | : Valid options are: | ||
+ | moHideChildren | ||
+ | moActivateChildrenAsWell | ||
+ | moDeactivateChildrenAsWell | ||
+ | moRecursiveSetValue | ||
+ | moAllowManualCollapseAndExpand | ||
+ | moManualExpandCollapse | ||
+ | : example: '[moHideChildren,moAllowManualCollapseAndExpand,moManualExpandCollapse]' | ||
+ | |||
+ | ; Collapsed : boolean | ||
+ | : only works when manual expand/collapse is set in group config options ('''moManualExpandCollapse''') | ||
; OnActivate : function(''memoryrecord'', ''before'', ''currentstate'') : boolean | ; OnActivate : function(''memoryrecord'', ''before'', ''currentstate'') : boolean | ||
Line 90: | Line 124: | ||
; DontSave : boolean | ; DontSave : boolean | ||
: Don't save this memoryrecord and it's children | : Don't save this memoryrecord and it's children | ||
+ | |||
+ | ; DropDownLinked: boolean | ||
+ | : if dropdown list refers to list of another memory record eg. (memrec name) | ||
+ | |||
+ | ; DropDownLinkedMemrec: string | ||
+ | : Description of linked memrec or emptystring if not linked | ||
+ | |||
+ | ; DropDownList: StringList | ||
+ | : list of "value:description" lines, lists are still separate objects when linked, read-write | ||
+ | |||
+ | ; DropDownReadOnly: boolean | ||
+ | : true if 'Disallow manual user input' is set | ||
+ | |||
+ | ; DropDownDescriptionOnly: boolean | ||
+ | : self explanatory | ||
+ | |||
+ | ; DisplayAsDropDownListItem: boolean | ||
+ | : self explanatory | ||
+ | |||
+ | ; DropDownCount: integer | ||
+ | : equivalent to .DropDownList.Count | ||
+ | |||
+ | ; DropDownValue: Array | ||
+ | : Array to access values in DropDownList (ReadOnly) | ||
+ | |||
+ | ; DropDownDescription: Array | ||
+ | : Array to access Descriptions in DropDownList (ReadOnly) | ||
== Methods == | == Methods == | ||
; getDescription() : string | ; getDescription() : string | ||
− | : Returns the memory record's | + | : Returns the memory record's description. |
; setDescription() | ; setDescription() | ||
− | : Sets the memory record's | + | : Sets the memory record's description. |
; getAddress() : integer - (integer, table) | ; getAddress() : integer - (integer, table) | ||
Line 123: | Line 184: | ||
: Appends the current memory record to the given memory record | : Appends the current memory record to the given memory record | ||
− | ; getHotkey(''index'') : [[GenericHotkey]] | + | ; getHotkey(''index'') : [[Lua:Class:GenericHotkey|GenericHotkey]] |
: Returns the hotkey from the hotkey array | : Returns the hotkey from the hotkey array | ||
− | ; getHotkeyByID(''integer'') : [[GenericHotkey]] | + | ; getHotkeyByID(''integer'') : [[Lua:Class:GenericHotkey|GenericHotkey]] |
: Returns the hotkey with the given id | : Returns the hotkey with the given id | ||
+ | |||
+ | ; [''index''] : MemoryRecord | ||
+ | : Same as 'Child[''index'']' | ||
+ | : Default accessor. | ||
== Examples == | == Examples == | ||
+ | <syntaxhighlight lang="lua"> | ||
local addressList = getAddressList() | local addressList = getAddressList() | ||
local mrHealth = addressList.getMemoryRecordByDescription('Health') | local mrHealth = addressList.getMemoryRecordByDescription('Health') | ||
print(mrHealth.Description) | print(mrHealth.Description) | ||
− | print(mrHealth.Active and ' | + | print(mrHealth.Active and 'True' or 'False') |
+ | </syntaxhighlight> | ||
− | + | {{LuaSeeAlso}} | |
− | |||
− | |||
=== Related Functions === | === Related Functions === | ||
− | * [[getMainForm]] | + | * [[Lua:getMainForm|getMainForm]] |
− | * [[getAddressList]] | + | * [[Lua:getAddressList|getAddressList]] |
=== Related Classes === | === Related Classes === | ||
− | * [[Addresslist]] | + | * [[Lua:Class:Addresslist|Addresslist]] |
Latest revision as of 20:02, 6 September 2021
MemoryRecord class: (Inheritance: Object)
The memory record objects are the entries you see in the address list.
Properties[edit]
- ID : integer
- Unique ID.
- Index : integer
- The index ID for this record. 0 is top. (ReadOnly)
- Description : string- The description of the memory record.
- Address : string
- Get/set the interpretable address string. Useful for simple address settings.
- OffsetCount : integer
- The number of offsets. Set to 0 for a normal address.
- Offset[index] : integer
- Array to access each offset.
- CurrentAddress : integer
- The address the memoryrecord points to.
- Type : integer
- The variable type of this record. See vtByte to vtCustom
- If the type is vtString then the following properties are available:
- String.Size: Number of characters in the string
- String.Unicode: boolean
- If the type is vtBinary then the following properties are available
- Binary.Startbit: First bit to start reading from
- Binary.Size: Number of bits
- If the type is vtByteArray then the following properties are available
- Aob.Size: Number of bytes
- If the type is vtString then the following properties are available:
- From defines.lua:
vtByte=0 vtWord=1 vtDword=2 vtQword=3 vtSingle=4 vtDouble=5 vtString=6 vtUnicodeString=7 --Only used by autoguess vtByteArray=8 vtBinary=9 vtAutoAssembler=11 vtPointer=12 --Only used by autoguess and structures vtCustom=13 vtGrouped=14
- CustomTypeName : string
- If the type is vtCustomType this will contain the name of the CustomType
- Script : string
- If the type is vtAutoAssembler this will contain the auto assembler script
- Value : string
- The value in stringform.
- IsGroupHeader : boolean
- Set to true to change the memory record into a group header.
- All properties and functions related to address, type, and value are ignored when true.
- Selected : boolean
- Set to true if selected (ReadOnly)
- Active : boolean
- Set to true to activate/freeze, false to deactivate/unfreeze
- Color : integer
- The memory record's RGB color integer.
- ShowAsHex : boolean
- Self explanatory
- ShowAsSigned : boolean
- Self explanatory
- AllowIncrease : boolean
- Allow value increasing, unfreeze will reset it to false
- AllowDecrease : boolean
- Allow value decreasing, unfreeze will reset it to false
- Count : integer
- Number of children
- Child[index] : MemoryRecord
- Array to access the child records
- HotkeyCount : integer
- Number of hotkeys attached to this memory record.
- Hotkey[index] : GenericHotkey
- Array to index the hotkeys.
- Options : string
- A string of the set "Group Config" options in the format '[optionName,...]'
- Valid options are:
moHideChildren moActivateChildrenAsWell moDeactivateChildrenAsWell moRecursiveSetValue moAllowManualCollapseAndExpand moManualExpandCollapse
- example: '[moHideChildren,moAllowManualCollapseAndExpand,moManualExpandCollapse]'
- Collapsed : boolean
- only works when manual expand/collapse is set in group config options (moManualExpandCollapse)
- OnActivate : function(memoryrecord, before, currentstate) : boolean
- The function to call when the memoryrecord will change (or changed) Active to true.
- If before is true, not returning true will cause the activation to stop.
- OnDeactivate : function(memoryrecord,before,currentstate) : boolean
- The function to call when the memoryrecord will change (or changed) Active to false.
- If before is true, not returning true will cause the deactivation to stop.
- OnDestroy : function
- Called when the memoryrecord is destroyed.
- DontSave : boolean
- Don't save this memoryrecord and it's children
- DropDownLinked: boolean
- if dropdown list refers to list of another memory record eg. (memrec name)
- DropDownLinkedMemrec: string
- Description of linked memrec or emptystring if not linked
- DropDownList: StringList
- list of "value:description" lines, lists are still separate objects when linked, read-write
- DropDownReadOnly: boolean
- true if 'Disallow manual user input' is set
- DropDownDescriptionOnly: boolean
- self explanatory
- DisplayAsDropDownListItem: boolean
- self explanatory
- DropDownCount: integer
- equivalent to .DropDownList.Count
- DropDownValue: Array
- Array to access values in DropDownList (ReadOnly)
- DropDownDescription: Array
- Array to access Descriptions in DropDownList (ReadOnly)
Methods[edit]
- getDescription() : string
- Returns the memory record's description.
- setDescription()
- Sets the memory record's description.
- getAddress() : integer - (integer, table)
- Returns the interpretable addressstring of this record.
- If it is a pointer, it returns a second result as a table filled with the offsets
- setAddress(string)
- Sets the interpretable address string, and if offsets are provided make it a pointer
- getOffsetCount() : integer
- Returns the number of offsets for this memoryrecord
- setOffsetCount(integer)
- Lets you set the number of offsets
- getOffset(index) : integer
- Gets the offset at the given index
- setOffset(index, value)
- Sets the offset at the given index
- getCurrentAddress() : integer
- Returns the current address as an integer (the final result of the interpretable address and pointer offsets)
- appendToEntry(memrec)
- Appends the current memory record to the given memory record
- getHotkey(index) : GenericHotkey
- Returns the hotkey from the hotkey array
- getHotkeyByID(integer) : GenericHotkey
- Returns the hotkey with the given id
- [index]
- MemoryRecord
- Same as 'Child[index]'
- Default accessor.
Examples[edit]
local addressList = getAddressList()
local mrHealth = addressList.getMemoryRecordByDescription('Health')
print(mrHealth.Description)
print(mrHealth.Active and 'True' or 'False')