Právě je úte 22. kvě 2012 12:31:43
Hosting WEDOS.cz
SLEVA 25% (slevový kód:PAWNO25)

Nejnovější témata:
[Minecraft] SURVIVAL ISLAND - TRAILER od MartinHavo
[HLADAM] Názov web Hostingu od Jakubes
[HELP] NHL 09 od Jakubes
HRAJMINERCAFT.CZ - IndustrialCraft, BuildCraft, RedPower od MajkX
[OCHRANA] FS Control [Identifikovac hack prikazov] od Om3n

Vyzkoušejte antivirus ESET Smart Security 5

Vyhledat témata bez odpovědí | Zobrazit aktivní témata Zobrazit nové příspěvky | Zobrazit vaše příspěvky


Všechny časy jsou v UTC + 1 hodina [ Letní čas ]





Odeslat nové téma Odpovědět na téma  [ Příspěvků: 17 ] 
Autor Zpráva
 Předmět příspěvku: [TUT]Multi Language System
PříspěvekNapsal: pát 13. led 2012 7:57:40 
Nováček
Nováček
Uživatelský avatar
Registrován: úte 27. pro 2011 6:57:28
Příspěvky: 47
Bydliště: Bratislava

Takže vitajte pod vplyvom tažkých sedatív som nevedel čo mám robiť lebo spať sa nedá tak som sa vrhol do pawna a vytvoril jednoduchú vec o ktorú som žiadal QWERa lebo sa mi nechcelo ale vysral sa namňa :hehe:

No dobre idem k veci ide o jednoduchý MultiLanguageSystém ktorý je robený formou STOCKu nieje to nič ťažké ale možno sa vám zíde. Ak niekto nevie čo je to ML System tak to je dosť zlé ;)

ide len o jednu vec takže nejak extra to opisovať nebudem :)

vytvoíme jednu premennú ktorú setneme na 0
0 = SK
1 = CZ
samozrejme nikto si nedá SK/CZ ML dajte si EN/DE/PL atd co len chcete
Citace:
new Jazyk[MAX_PLAYERS] = 0;

Vytvorenie
Názov premennej
Velkost pola pre hracov idealne je si dat cislo ktore odpoveda slotom servera
Nastavíme hodnotu na 0 teda SK
Samotný STOCK
Kód:
stock MLM(playerid,farba,SK[],CZ[])
{
    switch(Jazyk[playerid])
    {
        case 0:{SendClientMessage(playerid,farba,SK);}
        case 1:{SendClientMessage(playerid,farba,CZ);}
    }
    return 1;
}

Príklad použitia:
Kód:
   if (strcmp("/nieco", cmdtext, true, 5) == 0)
    {
        MLM(playerid,ZELENA,"Vitajte","Vítejte");
        return 1;
    }

Odosle to spravu takto
Vitajte
mame setnutu 0 ;)
Prvá správa je SK druhá CZ nepomýlte sa
a nastavovanie premennej pre hráča napríklad príkazom je potrebne do príkazu dat
Kód:
Jazyk[playerid] = 1;

1 alebo 0 to je už na vás tak to je vše ;)
EDIT:
Trosku som sa stym este pohral lebo zrejme budete chciet aj dialogy v ML tak tu je stock na INPUT dialog na ostatne uz je to to iste to si uz budete dokazat aj samy upravit ;)

Kód:
stock MLMDI(playerid,ID,DSI,t1[],pt1[],b1[],bu1[],t2[],pt2[],b2[],bu2[])//playerid dialogID style nadpis podtext buton1 buton2
{
   switch(Jazyk[playerid])
   {
       case 0:{ShowPlayerDialog(playerid,ID,DSI,t1,pt1,b1,bu1);}
       case 1:{ShowPlayerDialog(playerid,ID,DSI,t2,pt2,b2,bu2);}
   }
   return 1;
}

priklad:
Kód:
MLMDI(playerid,5, DIALOG_STYLE_INPUT, "Dobry den", "Vitajte", "klik1", "klik2","Dobre jitro","Vitejte","klik1","klik2");

:v:

_________________
Obrázek

Najvzácnejšie čo som kedy mal som stratil a nič som nemohol spraviť aby to tak nebolo.


Naposledy upravil boban88 dne pát 13. led 2012 9:14:18, celkově upraveno 1

Offline
 Profil  
 Předmět příspěvku: Re: [TUT]Multi Language System
PříspěvekNapsal: pát 13. led 2012 8:39:56 
Kendall Johnson "Kendl"
Kendall Johnson "Kendl"
Uživatelský avatar
Registrován: ned 28. zář 2008 13:02:11
Příspěvky: 2742
Bydliště: Dreadlands

Pekné a jednoduché ešte si mohol napísať že ak majú len dva jazyku tak je lepšie použiť bool ako v tomto prípade ale chválim :thumbup:


Offline
 Profil  
 Předmět příspěvku: Re: [TUT]Multi Language System
PříspěvekNapsal: pát 13. led 2012 8:45:50 
Eddie Pulaski
Eddie Pulaski
Uživatelský avatar
Registrován: pát 02. říj 2009 13:59:22
Příspěvky: 1455
Bydliště: ?????????

radši bych použil bool proměnu stejně pracuješ jen z 0/1

ale jinak jednoduché provedení není zbytečně složité a je to i celkem slušně popsáno za mě máš 1 podtrženo

i když jsi mohl popsat samotnou funkci a její parametry ale to je jedno


Offline
 Profil  
 Předmět příspěvku: Re: [TUT]Multi Language System
PříspěvekNapsal: pát 13. led 2012 9:15:05 
Nováček
Nováček
Uživatelský avatar
Registrován: úte 27. pro 2011 6:57:28
Příspěvky: 47
Bydliště: Bratislava

tak este nieco som pridal EDIT je v prvom prispevku
a j bool na 2 staci ale tak pocitam ze ludia si daju aj 3-4 a to si uz dorobit vedia ;)

_________________
Obrázek

Najvzácnejšie čo som kedy mal som stratil a nič som nemohol spraviť aby to tak nebolo.


Offline
 Profil  
 Předmět příspěvku: Re: [TUT]Multi Language System
PříspěvekNapsal: pát 13. led 2012 15:35:18 
Moderátor
Moderátor
Registrován: čtv 28. dub 2011 18:53:54
Příspěvky: 1460

Spíš bych to řešil terárnou podmínkou

Kód:
#define MuLM(%0,%1,%2,%3,%4,%5,%6,%7,%8,%9,%10) ShowPlayerDialog(%0,%1,%2,(Z[%0]) ? %3 : %4,(Z[%0]) ? %5 : %6,(Z[%0]) ? %7 : %8,(Z[%0]) ? %9 : %10)


Nezkoušel jsem ale mělo by to jít

PS.: Proměnnou Z jsem použil jako boolean tj. logická proměnná

_________________
Používejte mozek! Snadněji tak vyřešíte záhadu Schrödingerovy kočky.


Obrázek


Offline
 Profil  
 Předmět příspěvku: Re: [TUT]Multi Language System
PříspěvekNapsal: pát 13. led 2012 15:47:49 
Marc Wayne "B-Dup"
Marc Wayne "B-Dup"
Registrován: úte 13. říj 2009 17:56:16
Příspěvky: 846

Podle mého názoru blbost dávat přímo SCM, lepší by bylo vracet správný string, tedy neco jako
Kód:
stock getMLText(playerid, lang1[], lang2[])
{
    switch(Jazyk[playerid])
    {
        case 0:{return lang1;}
        case 1:{return lang2;}
    }
}


Správností syntaxe si nejsem absolutně jist, pawn už dlouho nedělám.

_________________
Anarchie je jen sekundární název samovolného pořádku.
<?php
while(true)
{
echo "<script>";
echo "alert('Strašně XSSáckej text!')";
echo "</script>";
}


Offline
 Profil  
 Předmět příspěvku: Re: [TUT]Multi Language System
PříspěvekNapsal: pát 13. led 2012 16:14:04 
Kendall Johnson "Kendl"
Kendall Johnson "Kendl"
Uživatelský avatar
Registrován: sob 31. črc 2010 16:52:29
Příspěvky: 2858
Bydliště: Chomutov

pekne promyslene :thumbup:

_________________
Seznam programovacích učebnic zdarma

"Jsem vyjímečný.Proto se svým jednáním a chováním nemůžu zapadnout a vy mě budete nazývat jedním slovem "d*bil",protože mě nedokážete pochopit."

"Nic není tak těžké aby to lidský duch nepřekonal"

"Smějte se mi že jsem jiný,ale já se směju vám že vy jste všichni stejní"


Offline
 Profil  
 Předmět příspěvku: Re: [TUT]Multi Language System
PříspěvekNapsal: pát 13. led 2012 17:42:42 
Carl Johnson "CJ"
Carl Johnson "CJ"
Uživatelský avatar
Registrován: čtv 29. led 2009 20:03:51
Příspěvky: 4540
Bydliště: Blava ne ?

boban88 píše:
vytvoril jednoduchú vec o ktorú som žiadal QWERa lebo sa mi nechcelo ale vysral sa namňa :hehe:

ehm...
Spoiler:
[1. 1. 2012 16:33:37] denis granec: ale nechec sa mi
[1. 1. 2012 16:33:40] denis granec: *nechce
[1. 1. 2012 16:33:42] boban88: halooo moderator ziadam o pomoc ? :D
[1. 1. 2012 16:33:47] denis granec: je to preena a string a podmienka
[1. 1. 2012 16:33:56] denis granec: no neviem kto bol globálny moderátor na pawno.cz :D
[1. 1. 2012 16:34:05] boban88: presne bol :D
[1. 1. 2012 16:34:14] boban88: ale ty si :D
[1. 1. 2012 16:34:23] boban88: a si modik pawno sekcie tak neser :D
[1. 1. 2012 16:34:47] boban88: tak najdi mi aspon henten mozno si to prerobim ak by sa mi chcelo :D
[1. 1. 2012 16:37:30] denis granec: new Language[MAX_PLAYERS];

stock SCM(id,c,l[],ll[]){
if(Language[id] == 0) SendClientMessage(id,c,l);
else SendClientMessage(id,c,ll);
}
[1. 1. 2012 16:38:10] boban88: wtf ?
[1. 1. 2012 16:39:31] denis granec: a máš ML
[1. 1. 2012 16:40:11] denis granec: a ešte
stock SCMTA(c,l[],ll[]){
ForPlayers(i){
SCM(i,c,l,ll);
}
}
[1. 1. 2012 16:40:20] denis granec: lenže ty asi nemáš funkciu "ForPlayers"
[1. 1. 2012 16:40:28] denis granec: a tak sprav obyčjaný cyklus
[1. 1. 2012 16:41:24] boban88: tvl ja som ztoho k***t serem nato nebude ML :D
[1. 1. 2012 16:41:44] denis granec: preoč
[1. 1. 2012 16:41:54] denis granec: iba SCM(playerid,-1,"Ahoj","Hi");
[1. 1. 2012 16:42:09] denis granec: alebo
SCMTA(-1,"Ahok","Hi");
[1. 1. 2012 16:42:12] denis granec: a je to
[1. 1. 2012 16:45:13] boban88: ach
[1. 1. 2012 16:45:37] denis granec: ?
[1. 1. 2012 16:46:17] boban88: hodis mi sem picovinu ked ti hovorim ze ani stock na playername si uz nwm poskladat :D
[1. 1. 2012 16:47:11] denis granec: čo ?
[1. 1. 2012 16:47:15] denis granec: hodil som ti sem úplný script omg
[1. 1. 2012 16:47:56] boban88: jebem nato


stačilo dať do nazov.pwn alebo nazov.inc

new Jazyk[MAX_PLAYERS] = 0;

tú hodnotu 0 nastaví aj bez nastavenia... ale kebyže dáš
new Jazyk[MAX_PLAYERS] = 50;
tak hodnotu 50 nastaví iba prvej premene (Jazyk[0]) ostatné premeny (for(new i = 1; i < MAX_PLAYERS;i++) printf("%d %d",i,Jazyk[i])) budú mať hodnotu 0
treba určenú hodnotu nastaviť všetkým premenám a to takto
new Jazyk[MAX_PLAYERS] = {50,...}; // nastaví všetkým premenám hodnotu 50

_________________
Moja tvorba http://pastebin.com/u/PatchwerkQWER
Ak chceš byť lepší ako ja, a budeš sa snažiť budeš lepší ! Už len pri pomyslení na to, že si lepší než ja, ťa posunie dopredu. Ale nezabudni ! Musíš sa snažiť. A potom zistíš to, čo vie pár ľudí - že som lama a moje scripty sú nič oproti tomu, čo môžeš vytvoriť ty. Tak sa prekonaj ako kedysi ja, a natri to všetkým ! Uprav budúcnosť pre svoj prospech


Offline
 Profil  
 Předmět příspěvku: Re: [TUT]Multi Language System
PříspěvekNapsal: pát 13. led 2012 17:47:51 
Moderátor
Moderátor
Registrován: čtv 28. dub 2011 18:53:54
Příspěvky: 1460

Ještě SCM & SCMTA pomocí define

Kód:
#define SCM2(%0,%1,%2,%3) SendClientMessage(%0,%1,(Z[%0]) ? %2 : %3)


Kód:
#define SCMTA2(%0,%1,%2) SendClientMessageToAll(%0,(Z[%0]) ? %1 : %2)

_________________
Používejte mozek! Snadněji tak vyřešíte záhadu Schrödingerovy kočky.


Obrázek


Naposledy upravil Mort dne pát 13. led 2012 17:51:29, celkově upraveno 1

Offline
 Profil  
 Předmět příspěvku: Re: [TUT]Multi Language System
PříspěvekNapsal: pát 13. led 2012 17:49:30 
Cesar Vialpando
Cesar Vialpando
Uživatelský avatar
Registrován: stř 11. lis 2009 16:04:05
Příspěvky: 1916
Bydliště: NightCore a GrooveRadio

urobil by som to inak... Dost blbe, lebo to posiela SendClientMessage, napr niekto potrebuje SendClientMessageToAll alebo na dialog, na poziadanie urobim TUT

_________________
PWNED.CZ pre Slovakov


Offline
 Profil  
 Předmět příspěvku: Re: [TUT]Multi Language System
PříspěvekNapsal: pát 13. led 2012 17:52:21 
Carl Johnson "CJ"
Carl Johnson "CJ"
Uživatelský avatar
Registrován: čtv 29. led 2009 20:03:51
Příspěvky: 4540
Bydliště: Blava ne ?

Mort píše:
Kód:
#define SCMTA2(%0,%1,%2) SendClientMessageToAll(%0,(Z[%0]) ? %1 : %2)

blbosť...

_________________
Moja tvorba http://pastebin.com/u/PatchwerkQWER
Ak chceš byť lepší ako ja, a budeš sa snažiť budeš lepší ! Už len pri pomyslení na to, že si lepší než ja, ťa posunie dopredu. Ale nezabudni ! Musíš sa snažiť. A potom zistíš to, čo vie pár ľudí - že som lama a moje scripty sú nič oproti tomu, čo môžeš vytvoriť ty. Tak sa prekonaj ako kedysi ja, a natri to všetkým ! Uprav budúcnosť pre svoj prospech


Offline
 Profil  
 Předmět příspěvku: Re: [TUT]Multi Language System
PříspěvekNapsal: pát 13. led 2012 17:53:23 
Moderátor
Moderátor
Registrován: čtv 28. dub 2011 18:53:54
Příspěvky: 1460

QWER píše:
Mort píše:
Kód:
#define SCMTA2(%0,%1,%2) SendClientMessageToAll(%0,(Z[%0]) ? %1 : %2)

blbosť...


Důvod?

_________________
Používejte mozek! Snadněji tak vyřešíte záhadu Schrödingerovy kočky.


Obrázek


Offline
 Profil  
 Předmět příspěvku: Re: [TUT]Multi Language System
PříspěvekNapsal: pát 13. led 2012 17:54:00 
Carl Johnson "CJ"
Carl Johnson "CJ"
Uživatelský avatar
Registrován: čtv 29. led 2009 20:03:51
Příspěvky: 4540
Bydliště: Blava ne ?

"%0" je pri SCMTA farba... :eh:

_________________
Moja tvorba http://pastebin.com/u/PatchwerkQWER
Ak chceš byť lepší ako ja, a budeš sa snažiť budeš lepší ! Už len pri pomyslení na to, že si lepší než ja, ťa posunie dopredu. Ale nezabudni ! Musíš sa snažiť. A potom zistíš to, čo vie pár ľudí - že som lama a moje scripty sú nič oproti tomu, čo môžeš vytvoriť ty. Tak sa prekonaj ako kedysi ja, a natri to všetkým ! Uprav budúcnosť pre svoj prospech


Offline
 Profil  
 Předmět příspěvku: Re: [TUT]Multi Language System
PříspěvekNapsal: pát 13. led 2012 17:55:06 
Moderátor
Moderátor
Registrován: čtv 28. dub 2011 18:53:54
Příspěvky: 1460

QWER píše:
"%0" je pri SCMTA farba... :eh:


Ano ... a co?

_________________
Používejte mozek! Snadněji tak vyřešíte záhadu Schrödingerovy kočky.


Obrázek


Offline
 Profil  
 Předmět příspěvku: Re: [TUT]Multi Language System
PříspěvekNapsal: pát 13. led 2012 17:57:12 
Carl Johnson "CJ"
Carl Johnson "CJ"
Uživatelský avatar
Registrován: čtv 29. led 2009 20:03:51
Příspěvky: 4540
Bydliště: Blava ne ?

Tak to poviem inak... SCMTA nemá parameter "playerid" :crazy:

_________________
Moja tvorba http://pastebin.com/u/PatchwerkQWER
Ak chceš byť lepší ako ja, a budeš sa snažiť budeš lepší ! Už len pri pomyslení na to, že si lepší než ja, ťa posunie dopredu. Ale nezabudni ! Musíš sa snažiť. A potom zistíš to, čo vie pár ľudí - že som lama a moje scripty sú nič oproti tomu, čo môžeš vytvoriť ty. Tak sa prekonaj ako kedysi ja, a natri to všetkým ! Uprav budúcnosť pre svoj prospech


Offline
 Profil  
 Předmět příspěvku: Re: [TUT]Multi Language System
PříspěvekNapsal: pát 13. led 2012 18:05:57 
Moderátor
Moderátor
Registrován: čtv 28. dub 2011 18:53:54
Příspěvky: 1460

Ah ... už vím co myslíš :D

_________________
Používejte mozek! Snadněji tak vyřešíte záhadu Schrödingerovy kočky.


Obrázek


Offline
 Profil  
 Předmět příspěvku: Re: [TUT]Multi Language System
PříspěvekNapsal: pát 13. led 2012 18:30:28 
Carl Johnson "CJ"
Carl Johnson "CJ"
Uživatelský avatar
Registrován: čtv 29. led 2009 20:03:51
Příspěvky: 4540
Bydliště: Blava ne ?

takže cyklus a SCM...

_________________
Moja tvorba http://pastebin.com/u/PatchwerkQWER
Ak chceš byť lepší ako ja, a budeš sa snažiť budeš lepší ! Už len pri pomyslení na to, že si lepší než ja, ťa posunie dopredu. Ale nezabudni ! Musíš sa snažiť. A potom zistíš to, čo vie pár ľudí - že som lama a moje scripty sú nič oproti tomu, čo môžeš vytvoriť ty. Tak sa prekonaj ako kedysi ja, a natri to všetkým ! Uprav budúcnosť pre svoj prospech


Offline
 Profil  
Zobrazit příspěvky za předchozí:  Seřadit podle  
Odeslat nové téma Odpovědět na téma  [ Příspěvků: 17 ] 

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]


 Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé


Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Hledat:
Přejít na: