Monstercat
Well-known member
- Joined
- Feb 26, 2013
- Messages
- 281
- Reaction score
- 5
Hey i translated this CLEO but there are a few mistranslated Opcodes, some I have already corrected itself.
ERROR's:
until file.Open(hFILE, "CLEOINIccmd.txt", "wt")
file.Close(hFILE)
ERROR's:
until file.Open(hFILE, "CLEOINIccmd.txt", "wt")
file.Close(hFILE)
Code:
{$CLEO .cs}
thread "kidoj"
03F0: enable_text_draw 1
0000: NOP
:load_samp_base
if not 0@ = SAMP.Base()
then 0A93: end_custom_thread
end
while not SAMP.Available()
wait 100
end
const
st_CCMD_INFO = 1@
ptr_CCMD_INFO = 2@
hFILE = 3@
pSTRING = 4@
COUNT_OFFSET = 5@
pSTRING_SIZE = 6@
MAX_STRING_SIZE = 256
NULL = 0
st_CCMD_SIZE = 51200
end
var
st_CCMD_INFO : int
ptr_CCMD_INFO : int
COUNT_OFFSET : int
pSTRING_SIZE : int
end
:alloc_mem
0AC8: st_CCMD_INFO st_CCMD_SIZE
0AC8: pSTRING MAX_STRING_SIZE
ptr_CCMD_INFO = st_CCMD_INFO
:reg_command
0B34: samp register_client_command "ccmd" to_label @start_script
0B34: samp register_client_command "ccmdrs" to_label @restart_script
:check_directory
if 8AE4: directory_exist "CLEOINI"
then
repeat
wait 100
until 0AE5: create_directory "CLEOINI"
0AF8: samp add_message_to_chat "{FFFF00}***{FFFFFF}CCMD: {FF0000}ERROR! {FFFFFF}Directory {FFFF00}'CLEOINI' {FFFFFF}not found, created a new!" 0xFFFFFF
end
:check_ini_file
if 8AAB: not file_exists "CLEOINIccmd.txt"
then
repeat
wait 0
until file.Open(hFILE, "CLEOINIccmd.txt", "wt")
wait 10
file.Close(hFILE)
0AF8: samp add_message_to_chat "{FFFF00}***{FFFFFF}CCMD: {FF0000}ERROR! {FFFFFF}File {FFFF00}'CLEOINIccmd.txt' {FFFFFF}not found, created a new!" 0xFFFFFF
end
wait 10
gosub @create_list
while true
wait 0
end
:alloc_mem_zero
memset pSTRING NULL MAX_STRING_SIZE
memset st_CCMD_INFO NULL st_CCMD_SIZE
return
:free_alloc_mem
0AC9: st_CCMD_INFO
0AC9: pSTRING
return
:create_list
gosub @alloc_mem_zero
COUNT_OFFSET = 0
if file.Open(hFILE, "CLEOINIccmd.txt", "rt")
then
repeat
wait 0
memset pSTRING NULL MAX_STRING_SIZE
if 0AD7: read_string_from_file hFILE to pSTRING size MAX_STRING_SIZE
then
0C17: pSTRING_SIZE = strlen pSTRING
memcpy st_CCMD_INFO pSTRING pSTRING_SIZE
st_CCMD_INFO += pSTRING_SIZE
0A8C: write_memory st_CCMD_INFO size 1 value 10 virtual_protect 0
COUNT_OFFSET++
end
until file.EOF(hFILE)
file.Close(hFILE)
0AF8: samp add_message_to_chat "{FFFF00}***{FFFFFF}CCMD: List successfully loaded! Number of lines: %d." 0xFFFFFF COUNT_OFFSET
0AF8: samp add_message_to_chat "{FFFF00}***{FFFFFF}CCMD: Script Commands: {FFFF00}/ccmd, /ccmdrs." 0xFFFFFF
end
0A8C: write_memory st_CCMD_INFO size 1 value 0 virtual_protect 0
st_CCMD_INFO = ptr_CCMD_INFO
return
:start_script
0B3B: samp show_dialog id 2002 caption "Information:" text st_CCMD_INFO button_1 "Close" button_2 "" style 0
cmd_ret
:restart_script
0AF8: samp add_message_to_chat "{FFFF00}***{FFFFFF}CCMD: The script has successfully restarted!" 0xFFFFFF
gosub @create_list
cmd_ret