Szerző Téma: Nyelvi üzenet/dialog  (Megtekintve 2275 alkalommal)

Nem elérhető Live

  • 507
    • Profil megtekintése
Nyelvi üzenet/dialog
« Dátum: 2013. május 19. - 20:18:47 »
+6 Show voters
Helló!
Elkészítettem egy Nyelvi üzenet/dialog szkriptet.
 
#include <a_samp>
#include <zcmd>
new Language[MAX_PLAYERS]; // Létrehozzuk az összes játékosnak || 0 = angol || 1 = magyar
#define DIALOG_TEST 0 // Definiáljuk a TEST dialogot
public OnPlayerConnect(playerid) {
Language[playerid] = 0; // Beállítjuk csatlakozáskor a játékosnak automatikusan angolra
return 1;
}
CMD:tesztuzi(playerid, params[]) { // Létrehozzuk a /tesztuzi parancsot
SendLanguagedMessage(playerid, \"Magyar üzenet\", \"English message\"); // Elkdüljük az üzenetet
return 1;
}
CMD:english(playerid, params[]) return Language[playerid] = 0; // Beállítjuk a játékosnak az angolt
CMD:magyar(playerid, params[]) return Language[playerid] = 1; // Beállítjuk a játékosnak a magyart
CMD:tesztdialog(playerid, params[]) {
SendLanguagedDialog(playerid, DIALOG_TEST, DIALOG_STYLE_MSGBOX, \"Magyar\", \"English\", \"Magyar üzenet\", \"English message\", \"Ok\", \"\");
// Elküldjük neki a dialogos parancsot
return 1;
}
stock SendLanguagedMessage(playerid, hungarian[], english[]) {
if(Language[playerid] == 0) { // Ha angol van a játékosnak beállítva
    SendClientMessage(playerid, -1, english); // Eldküljük az angol üzenet
} else { // Ha magyar
SendClientMessage(playerid, -1, hungarian); // Elküldjük a magyar üzenetet
}
return 1;
}
stock SendLanguagedDialog(playerid, dialogid, dialogstyle, huntitle[], engtitle[], hungarian[], english[], button1[], button2[]) {
if(Language[playerid] == 0) { // Ha angol van a játékosnak beállítva
    ShowPlayerDialog(playerid, dialogid, dialogstyle, engtitle, english, button1, button2); // Felmutatjuk neki az angol dialogot
} else { // Ha magyar
ShowPlayerDialog(playerid, dialogid, dialogstyle, huntitle, hungarian, button1, button2); // Felmutatjuk neki a magyar dialogot
}
return 1;
}

 
Ez nem egy nyelv választó, hanem hogyha a Nyelv be van állítva például angolra akkor angolul írja ki az üzenetet.
Használat:
 
// Üzenet:
SendLanguagedMessage(playerid, \"magyar üzenet\", \"english message\");
// Dialog:
SendLanguagedDialog(playerid, dialogid, dialogstyle, \"Magyar\", \"English\", \"Magyar üzenet\", \"English message\", \"Ok\", \"\");

Nyelvi üzenet/dialog
« Válasz #1 Dátum: 2013. május 19. - 23:01:21 »
0 Show voters
Nem rossz, de egy ilyet pár perc megcsinálni..

Nem elérhető BoOy

  • 3209
  • 2013-as év szkriptere
    • Profil megtekintése
Nyelvi üzenet/dialog
« Válasz #2 Dátum: 2013. május 19. - 23:57:51 »
0 Show voters
Idézetet írta: norbi39 date=1368997281\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"37579\" data-ipsquote-contentclass=\"forums_Topic
Nem rossz, de egy ilyet pár perc megcsinálni..
 
És nem tök mind1?
Amúgy szerintem jó lett grat.

xD1999

  • Vendég
Nyelvi üzenet/dialog
« Válasz #3 Dátum: 2013. május 20. - 11:39:32 »
0 Show voters
Sztem is jó lett

Nyelvi üzenet/dialog
« Válasz #4 Dátum: 2013. május 20. - 15:39:27 »
0 Show voters
Hasznos :D Még esetleg egy ToAll is lehetett volna :P

Nem elérhető TheDon

  • 159
    • Profil megtekintése
Nyelvi üzenet/dialog
« Válasz #5 Dátum: 2013. május 21. - 13:15:25 »
+1 Show voters
Idézetet írta: _KaRi_ date=1369057167\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"37579\" data-ipsquote-contentclass=\"forums_Topic
Hasznos :D Még esetleg egy ToAll is lehetett volna :P
 

stock SendLanguagedMessage(playerid, color, hungarian[], english[])
{
   if(Language[playerid] == 0) {
      SendClientMessage(playerid, color, english);
   else
      SendClientMessage(playerid, color, hungarian);
   return 1;
}
stock SendLanguagedMessageToAll(color, hungarian[], english[])
{
   for(new i = 0; i < MAX_PLAYERS; i++)
      if(IsPlayerConnected(i))
         SendLanguagedMessage(i, color, hungarian, english);
   return 1;
}

 
Így megfelel?
E:
Kiegészítettem, hogy színezni is lehessen. Gondolom ez alap lenne így.
« Utoljára szerkesztve: 2013. május 21. - 13:34:38 írta TheDon »

Nem elérhető Live

  • 507
    • Profil megtekintése
Nyelvi üzenet/dialog
« Válasz #6 Dátum: 2013. május 21. - 13:53:58 »
0 Show voters

stock SendLanguagedDialogForAll(dialogid, dialogstyle, huntitle[], engtitle[], hungarian[], english[], button1[], button2[]) {
for(new i; i < MAX_PLAYERS; i++) {
if(IsPlayerConnected(i))
if(Language == 0) {
                     ShowPlayerDialog(i, dialogid, dialogstyle, engtitle, english, button1, button2);
} else {
                     ShowPlayerDialog(i, dialogid, dialogstyle, huntitle, hungarian, button1, button2);
}
}
}

 
Elküldi minden játékosnak a dialogot.. Akinek magyar nyelv van beállítva annak magyar dialogot küld, akinek angol annak angolt  ;)
Használat:
 
SendLanguagedDialogForAll(DIALOG_ID, DIALOG_STYLE, \"Párbeszéd ablak cím\", \"Dialog title\", \"Magyar üzenet\", \"English message\", \"Gomb1\", \"Gomb2\");
« Utoljára szerkesztve: 2013. május 21. - 13:57:42 írta Live »

Nem elérhető TheDon

  • 159
    • Profil megtekintése
Nyelvi üzenet/dialog
« Válasz #7 Dátum: 2013. május 21. - 14:17:56 »
0 Show voters
Idézetet írta: Live date=1369137238\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"37579\" data-ipsquote-contentclass=\"forums_Topic


stock SendLanguagedDialogForAll(dialogid, dialogstyle, huntitle[], engtitle[], hungarian[], english[], button1[], button2[]) {
for(new i; i < MAX_PLAYERS; i++) {
if(IsPlayerConnected(i))
if(Language == 0) {
                     ShowPlayerDialog(i, dialogid, dialogstyle, engtitle, english, button1, button2);
} else {
                     ShowPlayerDialog(i, dialogid, dialogstyle, huntitle, hungarian, button1, button2);
}
}
}

 
Elküldi minden játékosnak a dialogot.. Akinek magyar nyelv van beállítva annak magyar dialogot küld, akinek angol annak angolt  ;)
Használat:
 
SendLanguagedDialogForAll(DIALOG_ID, DIALOG_STYLE, \"Párbeszéd ablak cím\", \"Dialog title\", \"Magyar üzenet\", \"English message\", \"Gomb1\", \"Gomb2\");

 

Nem kötekedésbõl de van olyan alkalom amikor minden játékosnak el kell küldeni egy dialogot?

Nem elérhető Live

  • 507
    • Profil megtekintése
Nyelvi üzenet/dialog
« Válasz #8 Dátum: 2013. május 21. - 15:12:20 »
0 Show voters
Nem tudom :D
Én ilyen izékhez gondoltam, hogy kiíratni, hogy RESTART lesz vagy a Szerver lezárásra kerül stb...

Nem elérhető TheDon

  • 159
    • Profil megtekintése
Nyelvi üzenet/dialog
« Válasz #9 Dátum: 2013. május 21. - 19:34:47 »
0 Show voters
Idézetet írta: Live date=1369141940\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"37579\" data-ipsquote-contentclass=\"forums_Topic
Nem tudom :D
Én ilyen izékhez gondoltam, hogy kiíratni, hogy RESTART lesz vagy a Szerver lezárásra kerül stb...
 
Nem egyrõl beszélünk. Te a SendLanguagedMessageToAll-t mondod én meg a dialogosat. De szerintem már tudom a választ a kérdésemre.

Nem elérhető BeNiBoY

  • 1342
    • Profil megtekintése
Nyelvi üzenet/dialog
« Válasz #10 Dátum: 2013. május 23. - 15:29:43 »
0 Show voters
Én hülye.. hogy nem gondoltam a stockolásra. Az én szeróm is 2 nyelvû, minden szövegnél külön-külön használtam a változólekérdezést. Kösz :D

Nyelvi üzenet/dialog
« Válasz #11 Dátum: 2013. május 26. - 09:29:48 »
0 Show voters
Idézetet írta: TheDon date=1369134925\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"37579\" data-ipsquote-contentclass=\"forums_Topic


Hasznos :D Még esetleg egy ToAll is lehetett volna :P
 

stock SendLanguagedMessage(playerid, color, hungarian[], english[])
{
   if(Language[playerid] == 0) {
      SendClientMessage(playerid, color, english);
   else
      SendClientMessage(playerid, color, hungarian);
   return 1;
}
stock SendLanguagedMessageToAll(color, hungarian[], english[])
{
   for(new i = 0; i < MAX_PLAYERS; i++)
      if(IsPlayerConnected(i))
         SendLanguagedMessage(i, color, hungarian, english);
   return 1;
}

 
Így megfelel?
E:
Kiegészítettem, hogy színezni is lehessen. Gondolom ez alap lenne így.
 
[/quote]
Tökély :D felhasználom :)

Nem elérhető TheDon

  • 159
    • Profil megtekintése
Nyelvi üzenet/dialog
« Válasz #12 Dátum: 2013. június 05. - 07:46:59 »
0 Show voters
Idézetet írta: _KaRi_ date=1369553388\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"37579\" data-ipsquote-contentclass=\"forums_Topic


 

Hasznos :D Még esetleg egy ToAll is lehetett volna :P
 

stock SendLanguagedMessage(playerid, color, hungarian[], english[])
{
   if(Language[playerid] == 0) {
      SendClientMessage(playerid, color, english);
   else
      SendClientMessage(playerid, color, hungarian);
   return 1;
}
stock SendLanguagedMessageToAll(color, hungarian[], english[])
{
   for(new i = 0; i < MAX_PLAYERS; i++)
      if(IsPlayerConnected(i))
         SendLanguagedMessage(i, color, hungarian, english);
   return 1;
}

 
Így megfelel?
E:
Kiegészítettem, hogy színezni is lehessen. Gondolom ez alap lenne így.
 
[/quote]
Tökély :D felhasználom :)
 
[/quote]
csak nyugodtan. azért van

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal