Skip to content

Latest commit

 

History

History
43 lines (39 loc) · 1.82 KB

api.md

File metadata and controls

43 lines (39 loc) · 1.82 KB

M@

  • Parameters:
    • volatile vardata[]: volatile vardata[]_INFO
    • dataSize: dataSize_INFO
    • &pointer: &pointer_INFO
    • ds2 = 1: ds2 = 1_INFO
  • Returns:
  • Remarks: This function modifies "vardata" well beyond its original limits to contain information on the structure of the enum used to define "val". This code uses the name and size information passed in the additional parameters as strings, and makes assumptions about how the compiler lays out memory to combine all the passed strings in to one big string in what could be ROM, but in SA:MP isn't. This takes a human readable(ish) description of the array elements and converts it in to a much simpler to read format for the computer to use later when loading and storing data.

N@

  • Parameters:
    • val[][]: val[][]_INFO
    • volatile vardata[]: volatile vardata[]_INFO
    • {K@, L@, M@, N@, _}:...: {K@, L@, M@, N@, _}:..._INFO
  • Returns:
  • Remarks: This function modifies "vardata" well beyond its original limits to contain information on the structure of the enum used to define "val". This code uses the name and size information passed in the additional parameters as strings, and makes assumptions about how the compiler lays out memory to combine all the passed strings in to one big string in what could be ROM, but in SA:MP isn't. This takes a human readable(ish) description of the array elements and converts it in to a much simpler to read format for the computer to use later when loading and storing data. The description above is no longer the case. This code now just saves the size of the data, the number of players in the array, the address of the data, a pointer to another data set and the name of this data. This is by far much simpler than the old version.