Szerző Téma: [Leírás] Szöveg kiíratása a játékos feje fölé  (Megtekintve 5230 alkalommal)

Nem elérhető Y2K

  • 488
    • Profil megtekintése
[Leírás] Szöveg kiíratása a játékos feje fölé
« Dátum: 2011. Március 15. - 19:30:17 »
0
SZÖVEG KIÍRÁSA A JÁTÉKOS FEJE FÖLÉ
 
Üdv! Sokan próbálnak szöveget megjeleníteni a játékos feje fölött vagy máshol. Erre a legegyszerûbb megoldás a 3D-szövegek használata.
Elõször, hozzunk létre egy MAX_PLAYERS méretû tömböt, melyet a játékosok 3D-szövegének azonosítóinak tárolására használunk:
 
new Text3D:3DTextIdentifiers[MAX_PLAYERS]; // név lehet bármi, de a Text3D: címke maradjon

 
A játékosok csatlakozásakor, tehát az OnPlayerConnect(playerid) esemény alatt, adjunk értéket a tömbnek, a következõ módon:
 
3DTextIdentifiers[playerid] = Create3DTextLabel(\"példaszöveg\", COLOR_WHITE, 0.0, 0.0, 0.0, 25.0, 0, 0);

 
A Create3DTextLabel paraméterei egyébként:
 

  • text[] = szöveg


  • color = szín


  • Float:X, Float:Y, Float:Z = pozíciók a három tengely mentén (ez esetben lényegtelen, hiszen a játékoshoz fogjuk csatolni)


  • Float:DrawDistance = látótávolság


  • VirtualWorld = virtuális világ, amelyben látható (ez esetben lényegtelen, hiszen a játékoshoz fogjuk csatolni)


  • testLOS = látható-e a falon át? (szerintem nem, de, ahogy gondoljátok)


Ha szövegre például a játékos azonosítóját vagy más számot szeretnénk kiíratni, elõtte formáznunk kell azt...
Szintén az OnPlayerConnect(playerid) esemény alatt vagy más tetszõleges helyen adjuk hozzá a 3D-szöveget a játékoshoz, például így:
 
Attach3DTextLabelToPlayer(3DTextIdentifiers[playerid], playerid, 0.0, 0.0, 0.5);

 
Az Attach3DTextLabelToPlayer paraméterei egyébként:
 

  • Text3D:id = a 3D-szöveg azonosítója (ezt tárolja a tömbünk)


  • playerid = a játékos azonosítója


  • Float:OffsetX, Float:OffsetY, Float:OffsetZ = eltérés a játékostõl (Z-koordináta legyen nagyobb, hogy felette legyen)


Más csak egy maradt hátra, a 3D-szöveg megsemmisítése az OnPlayerDisconnect(playerid, reason) esemény alatt:
 
Delete3DTextLabel(3DTextIdentifiers[playerid]);

 
Kiegészítés: Ha a szöveget és/vagy a színt meg szeretnéd késõbb változtatni, használd az Update3DTextLabelText függvényt, melyrõl bõvebben ITT olvashatsz.
Írta: Y2K (2010. augusztus 4.)
« Utoljára szerkesztve: 2011. Október 06. - 21:55:58 írta 0xC01DFACE »

Nem elérhető SoAP

  • 182
    • Profil megtekintése
[Leírás] Szöveg kiíratása a játékos feje fölé
« Válasz #1 Dátum: 2011. Március 17. - 19:03:02 »
0
Szép, bõ leírás :amazed: :amazed: Szép munka, grat :)

Nem elérhető ALIEN

  • 1163
    • Profil megtekintése
[Leírás] Szöveg kiíratása a játékos feje fölé
« Válasz #2 Dátum: 2011. Március 17. - 19:16:13 »
0
Kösz ez nekem is jól jött, grat!  ;)

Nem elérhető Y2K

  • 488
    • Profil megtekintése
[Leírás] Szöveg kiíratása a játékos feje fölé
« Válasz #3 Dátum: 2011. Március 17. - 19:30:28 »
0
Köszönöm... Igazából ezeket még akkor írtam, amikor nem is éltetek, azóta keringnek a hypertérben. :)

Nem elérhető ALIEN

  • 1163
    • Profil megtekintése
[Leírás] Szöveg kiíratása a játékos feje fölé
« Válasz #4 Dátum: 2011. Március 17. - 19:36:27 »
0
Nálam kicsit rossz:
A változó nevét így nem fogadta el: 3DTextIdentifiers
vagyis a 3-ast,
csak így: DTextIdentifiers
És így jó. Nem tudom ti hogy vagytok vele de nekem nem fogadta el. (De végül is lényegtelen.)
E: Y2K, ezt te is látod vagy csak a másik playerek?
 
Idézetet írta: Y2K date=1300386628\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"6849\" data-ipsquote-contentclass=\"forums_Topic
Köszönöm... Igazából ezeket még akkor írtam, amikor nem is éltetek, azóta keringnek a hypertérben. :)
 
OFF: Igaz Augusztus 4. után születtem pár nappal  :amazed:
« Utoljára szerkesztve: 2011. Március 17. - 19:45:14 írta ALIEN »

Nem elérhető Y2K

  • 488
    • Profil megtekintése
[Leírás] Szöveg kiíratása a játékos feje fölé
« Válasz #5 Dátum: 2011. Március 17. - 19:56:24 »
0
Hát igen, számmal nem kezdõdhet a változó neve... Most látszik, hogy mennyire figyelnek oda a másik fórumon, mert még 5 napja is kaptam hozzászólást erre, de több mint fél év alatt senki nem vette észre ezeket a hibákat...

[Leírás] Szöveg kiíratása a játékos feje fölé
« Válasz #6 Dátum: 2011. Május 06. - 15:56:10 »
0
öm hali nemvagyok pro scripter \"még :D \" de miaz h \"\"esemény alatt\"\" ?
nenézzetek hülyének,és bocs h kérdezek :D

Nem elérhető Mambo

  • 4239
    • Profil megtekintése
[Leírás] Szöveg kiíratása a játékos feje fölé
« Válasz #7 Dátum: 2011. Május 06. - 16:09:22 »
0
Idézetet írta: norbee0170 date=1304690170\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"6849\" data-ipsquote-contentclass=\"forums_Topic
öm hali nemvagyok pro scripter \"még :D \" de miaz h \"\"esemény alatt\"\" ?
nenézzetek hülyének,és bocs h kérdezek :D
az csak annyi, hogy az Onplayerconnectnél fut le. az esemény az amikor a játékos csatlakozik

[Leírás] Szöveg kiíratása a játékos feje fölé
« Válasz #8 Dátum: 2011. Július 26. - 21:30:38 »
0
Csuma. ez mind szép és jó de nekem olyan kellene hogy amit beírsz azt írja ki a neved fölé.. üzenetet.
amit beírsz azt írja ki a neved fölé.. üzenetet.
plíz help és elõre is köszi.. ;)

Kovacs_Bela

  • Vendég
[Leírás] Szöveg kiíratása a játékos feje fölé
« Válasz #9 Dátum: 2011. Július 26. - 22:08:53 »
0
Kis keresés a samp wikin, hasznos dolgokra képes :)

Ebben pont az a példa.

ha rákeresnél a
SetPlayerChatBubble-re az jobb lenne :)

Remélem sokat segítettem
« Utoljára szerkesztve: 2011. Július 26. - 22:12:44 írta [R]obo[T] »

[Leírás] Szöveg kiíratása a játékos feje fölé
« Válasz #10 Dátum: 2011. Július 26. - 22:12:07 »
0
Köszi Szépen, Szép Leírás  ^-^

[Leírás] Szöveg kiíratása a játékos feje fölé
« Válasz #11 Dátum: 2011. Július 27. - 22:37:04 »
0
Idézetet írta: Y2K date=1300213817\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"6849\" data-ipsquote-contentclass=\"forums_Topic
Sokan próbálnak szöveget megjeleníteni a játékos feje fölött vagy máshol. Erre a legegyszerûbb megoldás a 3D-szövegek használata.
 
Szerintem ez egyszerûbb:
[pawn]
SetPlayerChatBubble(playerid, text, szín, láthatóság, idõ);
[/pawn]
Példa:
[pawn]public OnPlayerText(playerid, text[])
{
    SetPlayerChatBubble(playerid, text, 0xFFFFFFFF, 80.0, 9000);
    return 1;
}[/pawn]
« Utoljára szerkesztve: 2011. Szeptember 24. - 07:45:36 írta 0xC01DFACE »

[Leírás] Szöveg kiíratása a játékos feje fölé
« Válasz #12 Dátum: 2011. Szeptember 24. - 07:23:22 »
0
mi a parancs hoza

Koncz_Norbert

  • Vendég
[Leírás] Szöveg kiíratása a játékos feje fölé
« Válasz #13 Dátum: 2011. Szeptember 24. - 07:49:32 »
+1
Idézetet írta: N@rbirock date=1316841802\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"6849\" data-ipsquote-contentclass=\"forums_Topic
mi a parancs hozzá
 
Nincs parancs hozzá. Márha Gumikacsa hozzászólására gondolsz.
Egyszerûen írsz a chatboxba és megjelenik a karakter fölött. ( Kivéve neked nem fog. )

Nem elérhető JackBronson

  • 1499
  • ??
    • Profil megtekintése
[Leírás] Szöveg kiíratása a játékos feje fölé
« Válasz #14 Dátum: 2011. Szeptember 25. - 16:02:03 »
0
Idézetet írta: N@rbirock date=1316841802\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"6849\" data-ipsquote-contentclass=\"forums_Topic
mi a parancs hoza
 
Alapból ha irsz akkor megjelenik annál a fügvénynél.
De ezt már 0xC01DFACE leirta.

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal