Difference between revisions of "Lua:wordToByteTable"

From Cheat Engine
Jump to navigation Jump to search
Line 40: Line 40:
 
   local bt = wordToByteTable(10)
 
   local bt = wordToByteTable(10)
 
   for i, v in ipairs(bt) do
 
   for i, v in ipairs(bt) do
     print(i, string.format('%02X', v))
+
     print(i - 1, string.format('%02X', v))
 
   end
 
   end
  
 
Output:
 
Output:
   1 0A  
+
   0 0A  
   2 00  
+
   1 00  
  
  
Line 51: Line 51:
 
   local bt = wordToByteTable(10.9)
 
   local bt = wordToByteTable(10.9)
 
   for i, v in ipairs(bt) do
 
   for i, v in ipairs(bt) do
     print(i, string.format('%02X', v))
+
     print(i - 1, string.format('%02X', v))
 
   end
 
   end
  
 
Output:
 
Output:
   1 0A  
+
   0 0A  
   2 00  
+
   1 00  
  
  
Line 63: Line 63:
 
                             --2 1 0
 
                             --2 1 0
 
   for i, v in ipairs(bt) do
 
   for i, v in ipairs(bt) do
     print(i, string.format('%02X', v))
+
     print(i - 1, string.format('%02X', v))
 
   end
 
   end
  
 
Output:
 
Output:
   1 00  
+
   0 00  
   2 FF  
+
   1 FF  
  
  

Revision as of 05:43, 9 March 2017

function wordToByteTable(Number)

Converts a WORD (2 bytes) to a byte table.


Note: If the number is a float only the integer no greater than or no less than the given value will be used.

Same as value from 'math.floor'.

 i.e.: 8.1 : 8, 8.9 : 8, -8.1 : -8, -8.9 : -8


Note: If the number is larger than a WORD (2 bytes) only the lower portion of the number will be used.

 i.e.: 0xFFFF00 : 0xFF00
         2 1 0      1 0


Function Parameters

Parameter Type Description
Number number The number to convert to a byte table


Examples

Code:

 local bt = wordToByteTable(0xFFFF)
                            --1 0
 writeBytes('00123ABC', bt)


Code:

 local bt = wordToByteTable(10)
 for i, v in ipairs(bt) do
   print(i - 1, string.format('%02X', v))
 end

Output:

 0 0A 
 1 00 


Code:

 local bt = wordToByteTable(10.9)
 for i, v in ipairs(bt) do
   print(i - 1, string.format('%02X', v))
 end

Output:

 0 0A 
 1 00 


Code:

 local bt = wordToByteTable(0xFFFF00)
                            --2 1 0
 for i, v in ipairs(bt) do
   print(i - 1, string.format('%02X', v))
 end

Output:

 0 00 
 1 FF 


See also

Related Functions