Mergevos/open-language
Minimalistic multi-language library designed for open.mp.
Este repositorio no tiene archivo de licencia. Se puede leer, pero eso por sí solo no da permiso para reutilizarlo.
Instalar con sampctl
sampctl package install Mergevos/open-language
Ejecútalo en la carpeta de tu proyecto. sampctl descarga el paquete y sus dependencias.
Depende de 5 paquetes
README.md
language
Minimalistic multi language library.
Installation
Simply install to your project:
sampctl install Mergevos/open-language
Include in your code and begin using the library:
#include <language>
Usage
Simply declare a new language like:
new Language: serbian;
new Language: english;
public OnGameModeInit()
{
serbian = Language_Init("Serbian");
english = Language_Init("English");
return 1;
}
Add a translation key like:
Language_AddKey(serbian, "TESTKEY", "Supak %d");
Language_AddKey(serbian, "BUTTON_YES", "Daa");
Language_AddKey(serbian, "INFO", "Ja sam novi mali peder\nvolim vas");
Everytime a SendClientMessage was sent with this key as text, it will send the value. This also goes for GameTextForPlayer, SendPlayerMessageToPlayer, ShowPlayerDialog...
No new send functions, only hooks.
Full example:
public OnPlayerSpawn(playerid)
{
Language_SetPlayer(playerid, serbian);
Language_AddKey(serbian, "TESTKEY", "Supak %d");
Language_AddKey(serbian, "BUTTON_YES", "Daa");
Language_AddKey(serbian, "INFO", "Ja sam novi mali peder\nvolim vas");
Language_AddKey(english, "TESTKEY", "Ass %d");
Language_AddKey(english, "BUTTON_YES", "YES");
Language_AddKey(english, "INFO", "I'm small gay\nlove yall");
SendClientMessage(playerid, -1, "Testiramo scm %d %s", 0, ReturnPlayerName(playerid));
SendClientMessage(playerid, -1, "TESTKEY", 33);
SendClientMessageToAll(-1, "SCMTA test %d", 33);
SendClientMessageToAll(-1, "");
SendPlayerMessageToPlayer(playerid, playerid, "testiramo spmp");
SendPlayerMessageToPlayer(playerid, playerid, "INFO");
GameTextForPlayer(playerid, "BUTTON_YES", 3000, 4);
Language_SetPlayer(playerid, english);
SendClientMessage(playerid, -1, "Testiramo scm %d %s", 0, ReturnPlayerName(playerid));
SendClientMessage(playerid, -1, "TESTKEY", 33);
SendPlayerMessageToPlayer(playerid, playerid, "testiramo spmp");
SendPlayerMessageToPlayer(playerid, playerid, "INFO");
GameTextForPlayer(playerid, "BUTTON_YES", 3000, 4);
SendClientMessageToAll(-1, "SCMTA test");
SendClientMessageToAll(-1, "BUTTON_YES");
new lang[MAX_LANG_NAME];
Language_GetName(Language_GetPlayer(playerid), lang);
SendClientMessage(playerid, -1, "Player's language is %s", lang);
ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "Caption", "INFO", "BUTTON_YES", "BUTTON_YES");
return 1;
}
Testing
To test, simply run the package:
sampctl package run
Esta página se genera con lo que GitHub publica sobre el repositorio. samp.directory no aloja el código. Informar de un problema con esta ficha