//==============================================================================// Név: NYELVKEZELÕ// Verzió: 0.2// Frissítve: 2010/MÁRCUIS/*// Készítõ: Gamestar//==============================================================================#tryinclude \"a_samp\"#define TELEPORT_VERSION \"0.9\"//==============================================================================// Többszöri beágyazás elleni védelem//==============================================================================#if defined _language_included#endinput#endif#define _language_included//==============================================================================// Konfiguráció//==============================================================================// Ha engedélyezni szeretnéd a párbeszédpanel módot, hagyd definiálva#define LANGUAGE_DIALOG// Csak akkor van rá szükség, ha párbeszédpanel mód engedélyezve van,// az azonosítószámát pedig írd át, ha már használva van valahol#define LANGUAGE_DIALOG_ID 3232//==============================================================================// Prototípusok létrehozása//==============================================================================forward OnPlayerChangeLanguage(playerid, newlanguageid);forward OnServerChangeLanguage(newlanguageid);//==============================================================================// Direktívák//==============================================================================#define MAX_LANGUAGES (4)#define MAX_LANGUAGE_SHORT_LEN (32)#define MAX_LANGUAGE_STRINGS (300)#define MAX_LANGUAGE_STRING_LEN (128)#define NO_LANGUAGE (0xFFFF)//==============================================================================// Változók, tárolók létrehozása//==============================================================================enum (<<= 1){LANGUAGE_FLAG_NONE,LANGUAGE_FLAG_ACTIVE = 1,LANGUAGE_FLAG_CHATMODE1,LANGUAGE_FLAG_CHATMODE2};static GL_g_LanguageServerFlag,GL_g_LanguageFlag[ MAX_LANGUAGES ],GL_g_LanguageShort[ MAX_LANGUAGES ][ MAX_LANGUAGE_SHORT_LEN ],GL_g_LanguageStringIdent[ MAX_LANGUAGES ][ MAX_LANGUAGE_STRINGS ][ MAX_LANGUAGE_SHORT_LEN ],GL_g_LanguageString[ MAX_LANGUAGES ][ MAX_LANGUAGE_STRINGS ][ MAX_LANGUAGE_STRING_LEN ],GL_g_LanguageStringCount[ MAX_LANGUAGES ],GL_g_ServerLanguage,GL_g_PlayerLanguage[ MAX_PLAYERS ];/*----------------------------------------------------------------------------*-Függvény:Language_IsActiveParaméterek:languageid - a nyelv azonosítószámaVisszatérés:GL_g_LanguageFlag[ languageid ] & LANGUAGE_FLAG_ACTIVE; ( az azonosító aktivitása )Megjegyzés:--*----------------------------------------------------------------------------*/stock Language_IsActive( languageid ){// Visszatérünk az értékkelreturn GL_g_LanguageFlag[ languageid ] & LANGUAGE_FLAG_ACTIVE;}/*----------------------------------------------------------------------------*-Függvény:Language_SetActive (helyi)Paraméterek:languageid - a nyelv azonosítószámaset - logikai értékVisszatérés:trueMegjegyzés:Ez csak a függvénykönyvtáron belül használható, mert kavarodáshoz vezethet-*----------------------------------------------------------------------------*/static stock Language_SetActive( languageid, set ){// Ha igaz értékif( set ) // Aktívra állítjuk GL_g_LanguageFlag[ languageid ] |= LANGUAGE_FLAG_ACTIVE;// Másképpen pedig inaktívra állítjukelse GL_g_LanguageFlag[ languageid ] &= ~LANGUAGE_FLAG_ACTIVE;// Visszatérésreturn true;}/*----------------------------------------------------------------------------*-Függvény:Language_LoadFormFileParaméterek:languageid - a nyelv azonosítószámafile - a fájl eléréseVisszatérés:true - ha sikeresNO_LANGUAGE - ha sikertelenMegjegyzés:--*----------------------------------------------------------------------------*/stock Language_LoadFormFile( languageid, file[ ] ){// Ha a nyelv nem aktívif( !Language_IsActive( languageid ) ){// Sikertelen visszatérésreturn NO_LANGUAGE;}// Megnézzük létezik-e a fájlif( fexist( file ) ){ // Segédváltozók, megnyitjuk a fájlt, olvasási szándékkal new File:myfile = fopen( file, filemode:io_read ), myline[256]; // Addig olvassuk a fájlt, amíg lehet while( fread( myfile, myline, sizeof( myline ) ) ) { // Ha van beolvasott szöveg if( myline[ 0 ] ) { // Ha csak bejegyzés, akkor kihagyjuk if( myline[ 0 ] == \'#\') continue; // Különválasztjuk a 2 \"szöveget\" new delim = strfind( myline, \"=\" ); // Ha van elválasztó if( delim != -1 ) { // Segédtároló létrehozása new string_ident[ MAX_LANGUAGE_SHORT_LEN ]; // Eltárolás for( new j = 0; j < delim; j++ ) string_ident[ j ] = myline[ j ]; // Hozzáadunk egy rövidítést és egy hozzá tartozó szöveget Language_AddString( languageid, string_ident, myline[ delim + 1 ] ); } }}}return true;}/*----------------------------------------------------------------------------*-Függvény:Language_AddStringParaméterek:languageid - a nyelv azonosítószámaident - a szöveg rövidítésestring - a szövegVisszatérés:true - ha sikeresNO_LANGUAGE - ha sikertelenMegjegyzés:--*----------------------------------------------------------------------------*/stock Language_AddString( languageid, ident[ ], string[ ] ){// Ha a nyelv nem aktívif( !Language_IsActive( languageid ) ){// Sikertelen visszatérésreturn NO_LANGUAGE;}// Ha már nem fér el több szövegif( GL_g_LanguageStringCount[ languageid ] == MAX_LANGUAGE_STRINGS ){ // Jelezzük printf(\"#%i nyelvhez már nem fér el a \'%s\' szöveg!\", languageid, ident ); // Sikertelen visszatérésreturn NO_LANGUAGE;}// Létrehozunk egy változót a könnyebb kezelhetõség érdekébennew entry = GL_g_LanguageStringCount[ languageid ];// Tároljuk a rövidítéststrmid( GL_g_LanguageStringIdent[ languageid ][ entry ], ident, 0, MAX_LANGUAGE_SHORT_LEN, MAX_LANGUAGE_SHORT_LEN );// Tároljuk a szövegetstrmid( GL_g_LanguageString[ languageid ][ entry ], string, 0, MAX_LANGUAGE_STRING_LEN, MAX_LANGUAGE_STRING_LEN );// Növeljük a betöltött szövegek számátGL_g_LanguageStringCount[ languageid ]++;// Visszatérésreturn true;}/*----------------------------------------------------------------------------*-Függvény:Language_SendMessageParaméterek:playerid - játékos azonosítószámacolor - színident - szöveg rövidítése{Float,_}:... - értékekVisszatérés:INVALID_PLAYER_ID - ha sikertelentrueMegjegyzés:--*----------------------------------------------------------------------------*/stock Language_SendMessage( playerid, color, ident[ ],{Float,_}:...){// Ha a játékos nincs csatlakozvaif( !IsPlayerConnected( playerid ) ){ // Sikertlen visszatérés return INVALID_PLAYER_ID;}// Tároló létrehozásanew myString[ 128 ] = \'\\0\';// Szöveg lekérdezéseLanguage_GetString( Language_GetPlayerLanguageID( playerid ), ident, myString, sizeof( myString ) );// Formációnak a forrása: http://pastebin.com/f75c37149new len = strlen(myString),d=0,posArg = 3,dest[512];for( new i = 0; i < len; i++){ if(myString == \'%\') { switch (myString[i+1]) { case \'s\': { new pos, arg, tmppos, str[ 128 ]; while(getarg(posArg,pos)!=\'\\0\') { arg=getarg(posArg,pos++); str[tmppos]=arg; tmppos++; } strins(dest,str,d,strlen(str)); d+=strlen(str); posArg++; i++; } case \'i\', \'d\': { new str[128]; format(str,sizeof(str),\"%d\",getarg(posArg)); strins(dest,str,d,strlen(str)); d+=strlen(str); posArg++; i++; } case \'f\': { new str[128]; format(str,sizeof(str),\"%f\",getarg(posArg)); strins(dest,str,d,strlen(str)); d+=strlen(str); posArg++; i++; } case \'.\': { new len2 = myString[i+2]; if(len2 == 0) { dest[d] = myString; d++; } else { new str[32],formatting[5]; formatting[0] = \'%\'; formatting[1] = \'.\'; formatting[2] = len2; formatting[3] = \'f\'; format(str,sizeof(str),formatting,getarg(posArg)); strins(dest,str,d,len2); d+=len; posArg++; i+= 2; } } default: { dest[d] = myString; d++; } }}else{ dest[d] = myString; d++;}}SendClientMessage(playerid, color, dest);// Visszatérésreturn true;}/*----------------------------------------------------------------------------*-Függvény:Language_SendMessageParaméterek:color - színident - szöveg rövidítése{Float,_}:... - értékekVisszatérés:trueMegjegyzés:--*----------------------------------------------------------------------------*/stock Language_SendMessageToAll( color, ident[ ],{Float,_}:...){// Tároló létrehozásanew myString[ 128 ] = \'\\0\';// Szöveg lekérdezéseLanguage_GetString( Language_GetDefaultLanguage( ), ident, myString, sizeof( myString ) );// Formációnak a forrása: http://pastebin.com/f75c37149new len = strlen(myString),d=0,posArg = 2,dest[512];for(new i=0;i<len;i++){ if(myString == \'%\') { switch (myString[i+1]) { case \'s\': { new pos,arg,tmppos; new str[128]; while(getarg(posArg,pos)!=\'\\0\') { arg=getarg(posArg,pos++); str[tmppos]=arg; tmppos++; } strins(dest,str,d,strlen(str)); d+=strlen(str); posArg++; i++; } case \'i\', \'d\': { new str[128]; format(str,sizeof(str),\"%d\",getarg(posArg)); strins(dest,str,d,strlen(str)); d+=strlen(str); posArg++; i++; } case \'f\': { new str[128]; format(str,sizeof(str),\"%f\",getarg(posArg)); strins(dest,str,d,strlen(str)); d+=strlen(str); posArg++; i++; } case \'.\': { new len2 = myString[i+2]; if(len2 == 0) { dest[d] = myString; d++; } else { new str[32],formatting[5]; formatting[0] = \'%\'; formatting[1] = \'.\'; formatting[2] = len2; formatting[3] = \'f\'; format(str,sizeof(str),formatting,getarg(posArg)); strins(dest,str,d,len2); d+=len; posArg++; i+= 2; } } default: { dest[d] = myString; d++; } }}else{ dest[d] = myString; d++;}}SendClientMessageToAll(color,dest);// Visszatérésreturn true;}/*----------------------------------------------------------------------------*-Függvény:Language_GetStringParaméterek:languageid - a nyelv azonosítószámaident - a szöveg rövidítésedest - célkarakterlánclen - célkarakterlánc méreteVisszatérés:g_Language_Active[ languageid ] ( az azonosító aktivitása )Megjegyzés:--*----------------------------------------------------------------------------*/stock Language_GetString( languageid, ident[ ], dest[ ], len ){// Ha a nyelv nem aktívif( !Language_IsActive( languageid ) ){// Sikertelen visszatérésreturn NO_LANGUAGE;}// Segédváltozónew j;// Megkeressük a rövidítéstfor( j = 0; j < MAX_LANGUAGE_STRINGS; j++ )if( !strcmp( GL_g_LanguageStringIdent[ languageid ][ j ], ident )) break;// Ha nem lett megif( j == MAX_LANGUAGE_STRINGS ){// Sikertelen visszatérésreturn NO_LANGUAGE;}// Beírjuk a célkarakterláncba strmid( dest, GL_g_LanguageString[ languageid ][ j ], 0, strlen( GL_g_LanguageString[ languageid ][ j ] ), len );// Visszatérésreturn true;}/*----------------------------------------------------------------------------*-Függvény:Language_AddParaméterek:languageshort - nyelv rövidítése (pl. English - ENG, German - GER)Visszatérés:true - ha sikeresNO_LANGUAGE - ha sikertelenMegjegyzés:--*----------------------------------------------------------------------------*/stock Language_Add( languageshort[ ] ){// Segédváltozónew languageid;// Ciklus segítségével a legközelebbi szabad azonosító megkeresésefor( languageid = 0; languageid < MAX_LANGUAGES; languageid++ ) if( !Language_IsActive( languageid ) ) break;// Ha túllépi a korlátozást, akkor sikertelenif( languageid == MAX_LANGUAGES ) return NO_LANGUAGE;// Megjegyezzük, hogy aktívLanguage_SetActive( languageid, 1 );// Megadjuk a nyelv rövidítésétLanguage_SetShort( languageid, languageshort );// Visszatérésreturn languageid;}/*----------------------------------------------------------------------------*-Függvény:Language_SetShortParaméterek:languageid - a nyelv azonosítószámalanguageshort - a nyelv új rövidítéseVisszatérés: NO_LANGUAGE - ha sikertelentrueMegjegyzés:--*----------------------------------------------------------------------------*/stock Language_SetShort( languageid, languageshort[ ] ){ // Ha a nyelv nem aktívif( !Language_IsActive( languageid ) ){// Sikertelen visszatérésreturn NO_LANGUAGE;}// Rövidítés módosításastrmid( GL_g_LanguageShort[ languageid ], languageshort, 0, MAX_LANGUAGE_SHORT_LEN, MAX_LANGUAGE_SHORT_LEN );// Visszatérésreturn true;}/*----------------------------------------------------------------------------*-Függvény:Language_GetShortParaméterek:languageid - a nyelv azonosítószámadest - céllen - hosszVisszatérés: NO_LANGUAGE - ha sikertelentrueMegjegyzés:--*----------------------------------------------------------------------------*/stock Language_GetShort( languageid, dest[ ], len ){ // Ha a nyelv nem aktívif( !Language_IsActive( languageid ) ){// Sikertelen visszatérésreturn NO_LANGUAGE;}// Rövidítés tárolásastrmid( dest, GL_g_LanguageShort[ languageid ], 0, MAX_LANGUAGE_SHORT_LEN, len );// Visszatérésreturn true;}/*----------------------------------------------------------------------------*-Függvény:Language_GetCountParaméterek:-Visszatérés: countMegjegyzés:--*----------------------------------------------------------------------------*/stock Language_GetCount( ){// Segédváltozónew count;// Ciklus indítása, és a változó értékének növelése az aktívoknálfor( new j = 0; j < MAX_LANGUAGES; j++ ) if( Language_IsActive( j ) ) count++;// Visszatérésreturn count;}/*----------------------------------------------------------------------------*-Függvény:Language_SetDefaultLanguageParaméterek:languageid - a nyelv azonosítószámaVisszatérés:NO_LANGUAGE - ha sikertelentrueMegjegyzés:--*----------------------------------------------------------------------------*/stock Language_SetDefaultLanguage( languageid ){ // Ha a nyelv nem aktívif( !Language_IsActive( languageid ) ){// Sikertelen visszatérésreturn NO_LANGUAGE;}// Átállítjuk a nyelvetGL_g_ServerLanguage = languageid;// Meghívásif(funcidx(\"OnServerChangeLanguage\")){ CallLocalFunction(\"OnServerChangeLanguage\",\"i\",languageid);}// Visszatérésreturn true;}/*----------------------------------------------------------------------------*-Függvény:Language_GetDefaultLanguageParaméterek:-Visszatérés: GL_g_ServerLanguageMegjegyzés:--*----------------------------------------------------------------------------*/stock Language_GetDefaultLanguage( ){// Visszatérésreturn GL_g_ServerLanguage;}/*----------------------------------------------------------------------------*-Függvény:Language_SetPlayerLanguageParaméterek:playerid - a játékos azonosítószámalanguageid - a nyelv azonosítószámaVisszatérés:NO_LANGUAGE - ha sikertelentrueMegjegyzés:--*----------------------------------------------------------------------------*/stock Language_SetPlayerLanguage( playerid, languageid ){ // Ha a játékos/nyelv nem aktív vagy nincs elég nyelvif( !IsPlayerConnected( playerid ) || !Language_IsActive( languageid ) ){// Sikertelen visszatérésreturn NO_LANGUAGE;}// Modosítjuk a nyelvétGL_g_PlayerLanguage[ playerid ] = languageid;// Meghívásif(funcidx(\"OnPlayerChangeLanguage\")){ CallLocalFunction(\"OnPlayerChangeLanguage\",\"ii\",playerid,languageid);}// Visszatérésreturn true;}/*----------------------------------------------------------------------------*-Függvény:Language_GetPlayerLanguageIDParaméterek:playerid - a játékos azonosítószámaVisszatérés:NO_LANGUAGE - ha sikertelenGL_g_PlayerLanguage[ playerid ]Megjegyzés:--*----------------------------------------------------------------------------*/stock Language_GetPlayerLanguageID( playerid ){// Ha a játékos nem aktívif( !IsPlayerConnected( playerid ) ){ // Sikertelen visszatérés return NO_LANGUAGE;}// Visszatérésreturn GL_g_PlayerLanguage[ playerid ];}/*----------------------------------------------------------------------------*-Függvény:Language_ToggleChatLanguageTagParaméterek:toggle - logikai értékVisszatérés:trueMegjegyzés:--*----------------------------------------------------------------------------*/stock Language_ToggleChatLanguageTag( toggle ){ // Ha igaz értékif( toggle ) // Aktívra állítjuk GL_g_LanguageServerFlag |= LANGUAGE_FLAG_CHATMODE1;// Másképpen pedig inaktívra állítjukelse GL_g_LanguageServerFlag &= ~LANGUAGE_FLAG_CHATMODE1;// Visszatérésreturn true;}/*----------------------------------------------------------------------------*-Függvény:Language_IsChatLanguageTagParaméterek:-Visszatérés:GL_g_LanguageServerFlag & LANGUAGE_FLAG_CHATMODE1Megjegyzés:--*----------------------------------------------------------------------------*/stock Language_IsChatLanguageTag( ){// Visszatérésreturn GL_g_LanguageServerFlag & LANGUAGE_FLAG_CHATMODE1;}/*----------------------------------------------------------------------------*-Függvény:Language_ToggleLanguageChatParaméterek:toggle - logikai értékVisszatérés:trueMegjegyzés:--*----------------------------------------------------------------------------*/stock Language_ToggleLanguageChat( toggle ){ // Ha igaz értékif( toggle ) // Aktívra állítjuk GL_g_LanguageServerFlag |= LANGUAGE_FLAG_CHATMODE2;// Másképpen pedig inaktívra állítjukelse GL_g_LanguageServerFlag &= ~LANGUAGE_FLAG_CHATMODE2;// Visszatérésreturn 1;}/*----------------------------------------------------------------------------*-Függvény: Language_IsLanguageChatParaméterek:-Visszatérés:GL_g_LanguageServerFlag & LANGUAGE_FLAG_CHATMODE2Megjegyzés:--*----------------------------------------------------------------------------*/stock Language_IsLanguageChat( ){// Visszatérésreturn GL_g_LanguageServerFlag & LANGUAGE_FLAG_CHATMODE2;}public OnPlayerConnect( playerid ){// Kiírjuk, hogy válthat nyelvetSendClientMessage( playerid, 0xFF3DF8AA, \"To change the language use \'/language\' command.\" );// Beállítjuk a nyelvét az alapméretezettreLanguage_SetPlayerLanguage( playerid, Language_GetDefaultLanguage( ) );// Ha megindexelhetõif (funcidx(\"Language_OnPlayerConnect\") != -1){ // Visszatérésreturn CallLocalFunction(\"Language_OnPlayerConnect\", \"i\", playerid);}return 1;}public OnPlayerText( playerid, text[ ] ){// Ha a nyelvi beszélgetõ ablak (1 mód) engedélyezve vanif( Language_IsChatLanguageTag( ) ){ // Tárolók létrehozása new myString[ 128 ], myShort[ MAX_LANGUAGE_SHORT_LEN ]; // Rövidítés tárolása Language_GetShort( Language_GetPlayerLanguageID( playerid ), myShort, sizeof( myShort ) ); // Formázás format( myString, sizeof( myString ), \"[%s]: %s\", myShort, text ); // Ha a 2. beszélgetõablak mód engedélyezve van, azaz, csak // az azonos nyelvûek látják egymás üzeneteit if( Language_IsLanguageChat( ) ) { // Ciklus for( new j = 0; j < GetMaxPlayers( ); j++ ) { // Ha a 2 nyelv egyezik if( Language_GetPlayerLanguageID( playerid ) == Language_GetPlayerLanguageID( j ) ) { // Elküldés SendPlayerMessageToPlayer( j, playerid, myString ); // Visszatérés return 0; } }} // Üzenet elküldése mindenkinek SendPlayerMessageToAll( playerid, myString ); // Visszatérés return 0;}// Ha megindexelhetõif (funcidx(\"Language_OnPlayerText\") != -1){ // Visszatérésreturn CallLocalFunction(\"Language_OnPlayerText\", \"is\", playerid, text);}return 1;}public OnFilterScriptInit( ){ // 2 mód letiltásaLanguage_ToggleChatLanguageTag( 0 );Language_ToggleLanguageChat( 0 );// Kijelzésprint(\"*** Nyelvkezelõ 0.1 by Gamestar betöltve ***\");// Ha megindexelhetõif (funcidx(\"Language_OnFilterScriptInit\") != -1){ // Visszatérésreturn CallLocalFunction(\"Language_OnFilterScriptInit\", \"\");}return 1;}public OnGameModeInit( ){ // 2 mód letiltásaLanguage_ToggleChatLanguageTag( 0 );Language_ToggleLanguageChat( 0 );// Kijelzésprint(\"*** Nyelvkezelõ 0.1 by Gamestar betöltve ***\");// Ha megindexelhetõif (funcidx(\"Language_OnGameModeInit\") != -1){ // Visszatérésreturn CallLocalFunction(\"Language_OnGameModeInit\", \"\");}return 1;}public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]){// Ha a párbeszédpanelazonosító egyezikif( dialogid == LANGUAGE_DIALOG_ID ){ // Ha igennel válaszolt if( response == 1 ){ // Tárolók létrehozása new GL_l_Short[ MAX_LANGUAGE_SHORT_LEN ], myString[ 128 ]; // Tároljuk a rövidítését Language_GetShort( listitem, GL_l_Short, sizeof( GL_l_Short ) ); // Formázás format( myString, sizeof( myString ), \"Language succesfull changed to (short): %s\", GL_l_Short ); // Üzenet SendClientMessage( playerid, 0xFFFFFFAA, myString ); // Módosítjuk a nyelvét Language_SetPlayerLanguage( playerid, listitem );}// Ha nem igennel válaszoltelse{ // Nem teszünk semmit}}// Ha megindexelhetõif (funcidx(\"Language_OnDialogResponse\") != -1){ // Visszatérésreturn CallLocalFunction(\"Language_OnDialogResponse\", \"iiiis\", playerid, dialogid, response, listitem, inputtext );}return 0;}#define language_dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, \"\")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1public OnPlayerCommandText( playerid, cmdtext[ ] ){// Parancslanguage_dcmd(language,strlen(\"language\"),cmdtext);// Ha megindexelhetõif (funcidx(\"Language_OnPlayerCommandText\") != -1){ // Visszatérésreturn CallLocalFunction(\"Language_OnPlayerCommandText\", \"is\", playerid, cmdtext );}return 0;}dcmd_language( playerid, params[ ] ){#if defined LANGUAGE_DIALOG#pragma unused params// Tárolók létrehozásanew GL_l_Short[ MAX_LANGUAGE_SHORT_LEN ],myString[ 256 ];// Ciklust indítunkfor( new j = 0; j < MAX_LANGUAGES; j++ ) { // Ha aktív if( Language_IsActive( j ) ) { // Tároljuk a rövidítését Language_GetShort( j, GL_l_Short, sizeof( GL_l_Short ) ); // Formázás format( myString, sizeof( myString ), \"%s\\n%s\", myString, GL_l_Short );}}ShowPlayerDialog( playerid, LANGUAGE_DIALOG_ID, DIALOG_STYLE_LIST, \"MI - Select Language\", myString, \"Apply\", \"Cancel\" );#else// Ha nem adott meg paramétertif( !params[ 0 ] ){ // Tárolók létrehozása new GL_l_Short[ MAX_LANGUAGE_SHORT_LEN ], myString[ 32 ], counter = 1;// Üzenet SendClientMessage( playerid, 0xFFFF00AA, \"Language list:\" ); // Ciklust indítunk for( new j = 0; j < MAX_LANGUAGES; j++ ) { // Ha aktív if( Language_IsActive( j ) ) { // Tároljuk a rövidítését Language_GetShort( j, GL_l_Short, sizeof( GL_l_Short ) ); // Formázás format( myString, sizeof( myString ), \"%d.) %s\", counter, GL_l_Short); // Elküldjük üzenetként SendClientMessage( playerid, 0xAFAFAFAA, myString ); // Növeljük a számlálót counter++; }}// ÜzenetSendClientMessage( playerid, 0xFFFF00AA, \"Usage: /language [short(form list)]\" );}// Ha van paraméterelse{ // Tárolók létrehozása new GL_l_Short[ MAX_LANGUAGE_SHORT_LEN ], myString[ 128 ], j;// Ciklust indítunk for( j = 0; j < MAX_LANGUAGES; j++ ) { // Ha aktív if( Language_IsActive( j ) ) { // Tároljuk a rövidítését Language_GetShort( j, GL_l_Short, sizeof( GL_l_Short ) ); // Ha a rövidítés egyezik, megállunk if( !strcmp( GL_l_Short, params, true ) ) break; }}// Ha nem találtuk megif( j == MAX_LANGUAGES ){ SendClientMessage( playerid, 0xAA3333AA, \"Invalid language short,sorry!\" ); // Sikertelen visszatérés return 1;}// Formázásformat( myString, sizeof( myString ), \"Language succesfull changed to (short): %s\", GL_l_Short );// ÜzenetSendClientMessage( playerid, 0xFFFFFFAA, myString );// MódosításLanguage_SetPlayerLanguage( playerid, j );}#endif// Visszatérésreturn 1;}#undef language_dcmd#if defined _ALS_OnDialogResponse#undef OnDialogResponse#else#define _ALS_OnDialogResponse#endif#define OnDialogResponse Language_OnDialogResponseforward Language_OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]);#if defined _ALS_OnFilterScriptInit#undef OnFilterScriptInit#else#define _ALS_OnFilterScriptInit#endif#define OnFilterScriptInit Language_OnFilterScriptInitforward Language_OnFilterScriptInit();#if defined _ALS_OnGameModeInit#undef OnGameModeInit#else#define _ALS_OnGameModeInit#endif#define OnGameModeInit Language_OnGameModeInitforward Language_OnGameModeInit();#if defined _ALS_OnPlayerConnect#undef OnPlayerConnect#else#define _ALS_OnPlayerConnect#endif#define OnPlayerConnect Language_OnPlayerConnectforward Language_OnPlayerConnect(playerid);#if defined _ALS_OnPlayerText#undef OnPlayerText#else#define _ALS_OnPlayerText#endif#define OnPlayerText Language_OnPlayerTextforward Language_OnPlayerText(playerid, text[]);#if defined _ALS_OnPlayerCommandText#undef OnPlayerCommandText#else#define _ALS_OnPlayerCommandText#endif#define OnPlayerCommandText Language_OnPlayerCommandTextforward Language_OnPlayerCommandText(playerid, cmdtext[ ] );