GTAMulti.com - Türkiye'nin Türkçe GTA Sitesi

[ANLATIM] Çift Dilli Sunucu Yapmak

Başlatan Victory, 17 Ocak 2018, 17:56:29

« önceki - sonraki »

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Victory

Alıntı
Öncelikle merhaba arkadaşlar. Bu bölümün, biraz ölü olduğunu farkettim ve bu anlatımımla bölümü canlandırmak istedim. Anlatım çok basit aslında, öncelikle modun başına;

#define DIALOG_DIL 777

olarak, definemizi tanıtıyoruz. Daha sonra, değişkenimizi, modun boş bir yerinde tanıtıyoruz.

new Dil[MAX_PLAYERS];

Değişkenimizi tanıttık sonra, OnPlayerConnect publicine gidiyoruz ve boş bir yere, kodumuzu yapıştırıyoruz.

Dil[playerid] = 1;

OnPlayerDisconnect publicine geliyoruz ve boş bir yere, kodumuzu yapıştırıyoruz.

Dil[playerid] = 0;

Değişkenlerimizi ekledikten sonra, her hangi bir dialogun veya cümleyi yazmadan önce, şu fonksiyonu ekliyoruz,

scm(playerid, "Buraya Türkçe cümle gelecek.", "Buraya Ingilizce cümle gelecek.");

Daha sonra, OnDialogResponse publicine gidiyoruz ve bu kodu yapıştırıyoruz.

switch(dialogid)
{
case DIALOG_DIL:
    {
    if(response)
    {
        switch(listitem)
        {
        case 0:
{
                Dil[playerid] = 1;
    SendClientMessage(playerid,00xFFFFFFAA, "Bilgi: Your in-game language is set as English.");
}
    case 1:
{
Dil[playerid] = 2;
SendClientMessage(playerid, 00xFFFFFFAA, "Bilgi: Oyun içi diliniz {00FF00}Türkçe olarak ayarlandı.");
                 }
          }
    }
}


Çift dil başarıyla eklendi. Dil seçimi yapmak için, bir komut ekliyoruz.

CMD:dil(playerid, params[])
{
ShowPlayerDialog(playerid, DIALOG_DIL, DIALOG_STYLE_LIST, "Language Selection/Dil Seçimi", "English: Your game language is set to English.nTürkçe: Oyun diliniz Türkçe olarak ayarlanır.","Seç","");
return 1;
}


Bu komutlarla, sunucuda dilinizi ayarlıyabilirsiniz. Diyorsunuz ki, girişte bu dialogun çıkmasını istiyorum. Bir stock oluşturarak, girişe bu dialogu ekliyebiliriz. Modun en sonuna gidiyoruz ve bu stockları yapıştırıyoruz,

stock DilSecimi(playerid)
{
ShowPlayerDialog(playerid, DIALOG_DIL, DIALOG_STYLE_LIST, "Language Selection/Dil Seçimi", "English: Your game language is set to English.nTürkçe: Oyun diliniz Türkçe olarak ayarlanır.","Select/Seç","");
return 1;
}

stock scm(playerid, trmessage[], enmessage[]){
switch(Dil[playerid])
{
case 1: SendClientMessage(playerid, -1, enmessage);
case 2: SendClientMessage(playerid, -1, trmessage);
}
return true;
}


Son olarak, OnPlayerConnect publicine gidip, fonksiyonumuzu ekliyoruz.

DilSecimi(playerid);

Çift dilli sunucu yapımını başarıyla tamamladık. İlk anlatımım olduğu için, bir eksiğim varsa, konu altından belirtirseniz, düzeltebilirim. Gerisi sizde. :)


Pablo

Alıntı




Pawnotürk Üyesi 2017-2020

pag


HyperCharge


mtb


2017-2024

TRSinan28

Alıntı yapılan: -Poseidon- - 28 Ocak 2018, 15:05:59

Güzel anlatım başarılar.

Kardeşim iyi post kasıyorsun,üstte de yorum atmışsın dikkat et.


FelleR