Szerző Téma: Formázott reklám  (Megtekintve 1105 alkalommal)

Nem elérhető maark

  • 565
    • Profil megtekintése
Formázott reklám
« Dátum: 2013. május 19. - 00:29:27 »
0 Show voters
Sziasztok! Elakadtam..
Lehet azt megcsinálni hogy mátrixban formázott szöveg?
Én így képzelem el, de ez csak egy vázlat hogy ti is megértsétek, mert amúgy ez egy hülyeség:
 
new str[100];
new Adv[][]=
{
    format(str, sizeof str, \"%d a thc értéke\", thc),
    \"Tipp: Ha jármû kéne írd be /v\",
    \"Vicc: Mért feszül superman a ruhája? - Mert S-es\",
    \"Vicc: Mi a különbség a férj és ET között? - Hát ET hazatelefonál\",
    \"Info: Ha találtál valami bugot, vagy hibát kérlek jelentsd nekünk a /bug paranccsal!\"
};

 
Mondjuk még arra is gondoltam hogy meghív egy eljárást, de kifogytam az ötletekbõl, nem bírom megcsinálni.
!Sima timer+új eljárás megoldás nem érdekel!
« Utoljára szerkesztve: 2013. május 19. - 00:37:46 írta maark »

Nem elérhető ZeRo

  • 4620
  • Ex Globális Moderátor
    • Profil megtekintése
Formázott reklám
« Válasz #1 Dátum: 2013. május 19. - 15:52:21 »
+1 Show voters
Szerintem megoldhatod úgy, hogy a kiírásnál generálsz egy véletlen számot, ami azt adja ugye meg, hogy melyik reklámot írja ki, és ha az mondjuk 1, akkor a formázott szöveget írod ki, ha meg más, akkor a számhoz tartozó sort a mátrixodból (a változó értékébõl elveszel 2-t).

Nem elérhető maark

  • 565
    • Profil megtekintése
Formázott reklám
« Válasz #2 Dátum: 2013. május 19. - 17:47:43 »
0 Show voters
forward Adv();
public Adv(){
szam=randomEx(0, 4);
if(szam==0) return SendClientMessageToAll(red, \"Lol\");
if(szam==1) return SendClientMessageToAll(red, \"Lolka\");
if(szam==2) return SendClientMessageToAll(red, \"Loliska\");
if(szam==3){new str[150]; format(str, sizeof str, \"A szerveren %d/50 játékos online!\", Jatekos); SendClientMessageToAll(red, str);}
return 1;
}

 
Nem terheli a szervert? Amúgy köszi az ötletet!
« Utoljára szerkesztve: 2013. május 19. - 17:49:14 írta maark »

Formázott reklám
« Válasz #3 Dátum: 2013. május 19. - 21:46:19 »
+1 Show voters
fölösleges 4 lekérdezés, megoldható lenne hármas operációt használni, vagy switch-et
 
forward Adv();
public Adv(){
        new str[150];
        szam=randomEx(0, 4);
        SendClientMessageToAll(red, (szam==0) ? \"lol\" : (szam== 1) ? \"lolka\" : (szam == 2) ? \"loliska\" : (szam == 3) ? format(str, sizeof str, \"A szerveren %d/50 játékos online!\", Jatekos));
        return 1;
}

 
vagy
 
switch(szam)
{
case 0: SendClientMessageToAll(red, \"lol\");
} // és így a többit is
« Utoljára szerkesztve: 2013. május 19. - 21:56:35 írta Konstantin »

Nem elérhető maark

  • 565
    • Profil megtekintése
Formázott reklám
« Válasz #4 Dátum: 2013. május 19. - 22:43:55 »
0 Show voters
Máreltumó, a 3as operátor. Nem tudom kezelni még :D de meglesz köszi :)

Formázott reklám
« Válasz #5 Dátum: 2013. május 19. - 23:14:49 »
+1 Show voters
Na az elöbbi hibás, így jónak kell lennie:
 
forward Adv();
public Adv(){
        new str[150];
        szam=randomEx(0, 4);
        format(str, sizeof str, \"A szerveren %d/50 játékos online!\", Jatekos);
        SendClientMessageToAll(red, (szam==0) ? \"lol\" : (szam== 1) ? \"lolka\" : (szam == 2) ? \"loliska\" : (szam == 3) ? str);
        return 1;
}

Nem elérhető maark

  • 565
    • Profil megtekintése
Formázott reklám
« Válasz #6 Dátum: 2013. május 19. - 23:23:21 »
0 Show voters
switch megoldás egyszerûbb, nem sikerül ez a 3as operátor. köszi

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal