Difference between revisions of "Lua:autoAssemble"

From Cheat Engine
Jump to navigation Jump to search
(Did I forgot to mention this wiki has syntax highlighting now?)
Line 47: Line 47:
 
== Examples ==
 
== Examples ==
  
 
+
<syntaxhighlight lang="lua">
 
   autoAssemble("{$lua}\n print('Printed Form Auto Assembler Script!')")
 
   autoAssemble("{$lua}\n print('Printed Form Auto Assembler Script!')")
  
Line 116: Line 116:
 
     return 1, 'There was an error with the auto assembler script.'
 
     return 1, 'There was an error with the auto assembler script.'
 
   end
 
   end
 
+
</syntaxhighlight>
  
 
{{LuaSeeAlso}}
 
{{LuaSeeAlso}}

Revision as of 04:33, 18 May 2019

function autoAssemble(AutoAssemblerScript, TargetSelf OPTIONAL, DisableInfo OPTIONAL) : nil,errorstring - boolean, table

function autoAssemble(AutoAssemblerScript, DisableInfo OPTIONAL) : nil,errorstring - boolean, table

runs the auto assembler with the given text. Returns true on success, with as secondary a table you can use when disabling (if TargetSelf is set it will assemble into Cheat Engine itself). If DisableInfo is provided the [Disable] section will be handled.

Tip: Use '[[ ]]' or '[==[ ]==]' quotes for multiline script.

Function Parameters

Parameter Type Description
AutoAssemblerScript string The script to run with Cheat Engine's auto assembler
TargetSelf boolean If set it will assemble into Cheat Engine itself
DisableInfo boolean If provided the [Disable] section will be handled
Parameter Type Description
AutoAssemblerScript string The script to run with Cheat Engine's auto assembler
DisableInfo boolean If provided the [Disable] section will be handled


Examples

  autoAssemble("{$lua}\n print('Printed Form Auto Assembler Script!')")


  local scriptStr = &#91;==&#91;
    alloc(memExample)
    label(returnHere)
    &nbsp;
    memExample:
      mov eax,123
      jmp returnHere
    &nbsp;
    00400500:
      jmp memExample
      returnHere:
  &#93;==&#93;
  &nbsp;
  if autoAssemble(scriptStr) then
    print('The auto assembler script was successful.')
  else
    print('There was an error with the auto assembler script.')
  end


  local scriptStr = [==[
    alloc(memExample)
    label(returnHere)
     
    memExample:
      mov eax,123
      jmp returnHere
     
    00400500:
      jmp memExample
      returnHere:
  ]==]
  ---- Enable script
  local enabledOk, disableInfo = autoAssemble(scriptStr)
  if enabledOk then
    print('The auto assembler script was enabled successfully.')
  else
    print('There was an error enabling the auto assembler script.')
  end
  ---- Disable script
  local disabledOk = autoAssemble(scriptStr, disableInfo)
  if disabledOk then
    disableInfo = nil
    print('The auto assembler script was disabled successfully.')
  else
    print('There was an error disabling the auto assembler script.')
  end


  local scriptStr = &#91;==&#91;
    alloc(memExample2)
    memExample2:
      dd (float)364.12458729
      dd (float)12.65594753
      dd (float)50.75331054
      dd 0
      // player base
      dq 0
      // map base
      dq 0
  &#93;==&#93;
  &nbsp;
  if not autoAssemble(scriptStr, true) then
    return 1, 'There was an error with the auto assembler script.'
  end

See also

Related Functions