// Corelib Submission: Translate - An addon designed to make translation easy and as automated as possible. // Created by Sean "retaliation" Rowswell // Version 1.00A Initial Release // // server_language - This is a server variable and should not be used by addon authors. The number of languages is unrestricted as you can add as many as you want (you can even create your own language and use that) // translate block load { es_xset translate_temp1 0 es_xset translate_temp2 0 es_xset translate_temp3 0 es_xset translate_temp4 0 es_xexists translate_temp1 command translate ifx false(translate_temp1) do { es_xregcmd translate translate/command "Make your script compatable with easy translation by users" } es_xexists translate_temp1 variable server_language ifx false(translate_temp1) do { es_xset server_language english } } block command { ifx false(server_language) do { es_xset server_language english } es_xgetargc translate_temp1 ifx parse("translate_temp1 = 3") do { es_xgetargv translate_temp1 1 es_xgetargv translate_temp2 2 es_xgetargv translate_temp3 3 ifx true(translate_temp1) do { ifx true(translate_temp2) do { es_xexists translate_temp4 keygroup languages ifx true(translate_temp4) do { es_xkeygroupdelete languages } es_xformatv translate_temp2 "|%1" translate_temp2 es_keygroupload languages server_var(translate_temp2) es_xexists translate_temp4 keyvalue languages english test ifx true(translate_temp4) do { es_exists translate_temp4 key languages server_var(server_language) ifx true(translate_temp4) do { es_exists translate_temp4 keyvalue languages server_var(server_language) server_var(translate_temp3) ifx true(translate_temp4) do { es_keygetvalue translate_temp4 languages server_var(server_language) server_var(translate_temp3) es_set server_var(translate_temp1) server_var(translate_temp4) es_xkeygroupdelete languages } else do { es_xdbgmsg 0 translate: ERROR Message key not found } } else do { es_xdbgmsg 0 translate: ERROR Current language not supported } } else do { es_xdbgmsg 0 translate: ERROR Invalid language database, test key not found } } else do { es_xdbgmsg 0 translate: ERROR Invalid location '0' } } else do { es_xdbgmsg 0 translate: ERROR Invalid variable '0' } } else do { es_xdbgmsg 0 translate: ERROR Invalid number of arguments es_xdbgmsg 0 Syntax: translate } }