Bonjour 🙂
Je vous partage ce petit bout de code qui permet d'obtenir la traduction d'un texte en indiquant la langue de départ et celle d'arrivé.
function translate(t: text, from: text, to: text) :: text:
set {_edited} to "x9K7M5v49QBLJb4 %uncolored {_t}% x9K7M5v49QBLJb4"
replace all " " with "%%20" in {_edited}
set {_text} to "http://api.mymemory.translated.net/get?q=%{_edited}%§langpair=%{_from}%|%{_to}%"
replace "§" with "&" in {_text}
set {_url} to text from "%{_text}%"
set {_split1::*} to {_url} split by " x9K7M5v49QBLJb4"
set {_split2::*} to {_split1::1} split by "x9K7M5v49QBLJb4 "
set {_final} to convert unicode "%{_split2::2}%" to text
return "%{_final}%"
A vous de trouver à quoi ça peut bien servir 🙂
J'ai fais par exemple un petit système de traduction du chat en fonction de la langue des différents joueurs connecté.
on chat:
loop all players:
if country code of player is not country code of loop-player:
cancel event
message "&a%player%: &7 %translate(message, country code of player, country code of loop-player, player)%" to the loop-player
else:
message "&a%player%: &7 %message%" to the loop-player
"country code of player" vient de l'addon WolvSK.
Sinon, vous pouvez toujours passer par une variable pour définir la langue du joueur.
La langue doit être indiqué dans le format ISO 639-1. Je vous mets un petit lien avec la liste des codes pour différentes langues.
http://www.loc.gov/standards/iso639-2/php/code_list.php