Szerző Téma: SCMEX  (Megtekintve 3415 alkalommal)

Nem elérhető DrAkE

  • 2078
    • Profil megtekintése
SCMEX
« Dátum: 2012. augusztus 18. - 10:25:28 »
+9 Show voters
SCMEX
 
Leírás:
Gondolom, már nálatok is elõfordult, hogy ha hosszú szöveg jött ki a chatboxban, nem tudtad elolvasni, és ketté kellet osztanod, vagy/és folytatnod kellet az elõzõ szöveget. Ennek segítségével könnyen szétdarabolhatod a (több mint 128) hosszúságú karaktereket, anélkül, hogy valamit is meg kellene csinálnod. A telepítése igen egyszerû, csak a(z) \"a_samp\" függvénykönyvtár alatt kell lenni.
Alap értékként daraboláskor 128 van beállítva, viszont ezt beállíthatod MAXMIMUM 148 karakterre!
Kép:
\"samp090j.png\"
Amint láthatjátok, a hosszú szöveget 4 része bontotta, így olvashatóbbá téve.
Figyelem:
Ha színezed a szöveget, akkor a színkódot is ketté vágja/vághatja, így elveszheti a színhatását a szöveg!
Letöltés:
Pastebin
Solidfiles
 

#if defined scmex_included
#endinput
#endif
#define scmex_included
stock
darabolas_SCM(playerid, color, const text[], darabolas = 128)
{
new
seged1[148 + 1],
valami = 0 - darabolas,
lenght = strlen(text);
while(lenght > (valami += darabolas))
strmid(seged1, text[valami], 0, darabolas), SendClientMessage(playerid, color, seged1);
}
#if defined _ALS_SendClientMessage
    #undef SendClientMessage
#else
    #define _ALS_SendClientMessage
#endif
#define SendClientMessage darabolas_SCM
stock
darabolas_SCMToAll(color, const text[], darabolas = 128)
{
new
seged1[148 + 1],
valami = 0 - darabolas,
lenght = strlen(text);
while(lenght > (valami += darabolas))
strmid(seged1, text[valami], 0, darabolas), SendClientMessageToAll(color, seged1);
}
#if defined _ALS_SendClientMessageToAll
    #undef SendClientMessageToAll
#else
    #define _ALS_SendClientMessageToAll
#endif
#define SendClientMessageToAll darabolas_SCMToAll
« Utoljára szerkesztve: 2012. augusztus 21. - 16:02:32 írta DrAkE »

Nem elérhető ZyZu.

  • Globális moderátor
  • 8939
  • my turbo diesel forum
  • Discord: ZyZu.
    • Profil megtekintése
SCMEX
« Válasz #1 Dátum: 2012. augusztus 18. - 12:18:10 »
0 Show voters
Gyönyõrû!  ;) Szép Munka!

SCMEX
« Válasz #2 Dátum: 2012. augusztus 18. - 17:28:19 »
0 Show voters
\"xkcd-goto.png\"

Nem elérhető Csabesz

  • 7827
    • Profil megtekintése
SCMEX
« Válasz #3 Dátum: 2012. augusztus 18. - 17:32:58 »
0 Show voters
Õ, most megkérdezném hogy 144 karakter az az egész képernyõ szélességét felhasználja? (ebben az esetben pl. elsõ 3 sor)
és nem 128 a max?

Nem elérhető DrAkE

  • 2078
    • Profil megtekintése
SCMEX
« Válasz #4 Dátum: 2012. augusztus 18. - 17:36:48 »
0 Show voters
Nos, igazság szerint, a SendClientMessage maximális hossza 144 karakter (már többen is írták), és ez úgy vélem, hogy felbontás függõ. Részemrõl a 128. karakter utáni rész nem jelenne meg, vagy zavaró lenne.
zsoleszka, ezzel a képpel mire akartál célozni? :D

SCMEX
« Válasz #5 Dátum: 2012. augusztus 18. - 17:53:15 »
0 Show voters
Az én szerény angol tudásommal lefordítva, körülbelül így hangzik magyarul:
 

Átrendezzem a program lefutását, vagy használjam inkább a goto utasítást.


Eh, ez a csavaros megoldás vajon mennyire rossz lehet?

Hát a képek alapján katasztrófa lett a vége.  :D

Nem elérhető DrAkE

  • 2078
    • Profil megtekintése
SCMEX
« Válasz #6 Dátum: 2012. augusztus 18. - 18:07:21 »
0 Show voters
És ez alatt azt akarod mondani, hogy rossz, hogy goto utasítást használtam? :D

SCMEX
« Válasz #7 Dátum: 2012. augusztus 18. - 18:18:32 »
0 Show voters
Idézetet írta: DrAkE date=1345306041\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"26404\" data-ipsquote-contentclass=\"forums_Topic
És ez alatt azt akarod mondani, hogy rossz, hogy goto utasítást használtam? :D
 
yep

SCMEX
« Válasz #8 Dátum: 2012. augusztus 18. - 18:41:27 »
0 Show voters
Idézetet írta: DrAkE date=1345304208\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"26404\" data-ipsquote-contentclass=\"forums_Topic
Nos, igazság szerint, a SendClientMessage maximális hossza 144 karakter (már többen is írták), és ez úgy vélem, hogy felbontás függõ. Részemrõl a 128. karakter utáni rész nem jelenne meg, vagy zavaró lenne.
 
tényleg felbontástól függ. 640x480on 70-80 körül van, 800x600on már 100 korül. Írná tovább is, csak a betûméret miatt kimegy a kép jobb oldalán a képernyõbõl  :whistle:


Szép kód. Megoldhatnád, hogy ott darabolja, ahol \' \' (space) van.  :thumbsup:

Nem elérhető DrAkE

  • 2078
    • Profil megtekintése
SCMEX
« Válasz #9 Dátum: 2012. augusztus 18. - 18:48:45 »
0 Show voters
Frissítve!
Így megfelel zsoleszka? :)


Idézetet írta: TengeriMalac date=1345308087\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"26404\" data-ipsquote-contentclass=\"forums_Topic


Nos, igazság szerint, a SendClientMessage maximális hossza 144 karakter (már többen is írták), és ez úgy vélem, hogy felbontás függõ. Részemrõl a 128. karakter utáni rész nem jelenne meg, vagy zavaró lenne.
 
tényleg felbontástól függ. 640x480on 70-80 körül van, 800x600on már 100 korül. Írná tovább is, csak a betûméret miatt kimegy a kép jobb oldalán a képernyõbõl  :whistle:


Szép kód. Megoldhatnád, hogy ott darabolja, ahol \' \' (space) van.  :thumbsup:
 
[/quote]
Éppen meglehet

SCMEX
« Válasz #10 Dátum: 2012. augusztus 18. - 19:40:33 »
0 Show voters
Idézetet írta: DrAkE date=1345308525\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"26404\" data-ipsquote-contentclass=\"forums_Topic
Frissítve!
Így megfelel zsoleszka? :)
 
Sokkal jobb. :D

Nem elérhető kurta999

  • 2759
  • Éllő fédisznó
    • Profil megtekintése
SCMEX
« Válasz #11 Dátum: 2012. augusztus 18. - 19:56:40 »
0 Show voters
Valaki leírná pontosan mér rossz ez a goto utasítás?  :D
Mert énis használom pár helyen, de szeretném tudni.
Mindenhol csak azt írják, hogy rossz.

Nem elérhető Csabesz

  • 7827
    • Profil megtekintése
SCMEX
« Válasz #12 Dátum: 2012. augusztus 18. - 20:35:46 »
0 Show voters
Nem arra akartam kilyukadni, hanem hogy akk ahol formázott sendclientmessage-t használok és 128-ra van állítva a string mérete, ha azt megnövelném 148-ra akkor több mindent is megjeleníthetnék?

SCMEX
« Válasz #13 Dátum: 2012. augusztus 18. - 20:38:03 »
0 Show voters
@Kurta999
Itt találsz valami leírást róla:
http://www.scribd.com/doc/76955552/c-kernighan

Nem elérhető kurta999

  • 2759
  • Éllő fédisznó
    • Profil megtekintése
SCMEX
« Válasz #14 Dátum: 2012. augusztus 19. - 16:08:58 »
0 Show voters
Idézetet írta: DrAkE date=1345382166\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"26404\" data-ipsquote-contentclass=\"forums_Topic
Frissítve!
Kimaradt a SendClientMessageToAll :D
 
Jobb lett volna eztis újra létrehozni ciklus nélkül.
Amúgy köszönöm a leírást.

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal