GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Segítségkérés => A témát indította: JDHGamers - 2014. március 23. - 08:02:14

Cím: TextDraw kérdés
Írta: JDHGamers - 2014. március 23. - 08:02:14
Helló Fórum!
TextDrawba hogy tudom azt beleírni, hogy amikor valaki megöl, akkor a játékos nevét írja a TextDraw-ba? Pl. Téged megölt ZyZu, vagy Téged megölt cappsy, ezt hogy csináljam?
Cím: TextDraw kérdés
Írta: KovaNovik - 2014. március 23. - 08:56:13
Csinálj egy Textdrawot Zamaroth editorjával, másold be a mododba, és használd a TextDrawSetString függvényt :)
Cím: TextDraw kérdés
Írta: Dfoglalo - 2014. március 23. - 11:10:52
Ha tényleg csak arra kell, hogy kiírd, hogy ki ölte meg õt, majd eltüntesd azt néhány másodpercen belül, akkor bõven elég GameText-et használni. Mutatom:
 
public OnPlayerDeath(playerid, killerid, reason)
{
    new string[128]; // Ha akarod, kiszámolhatod, hogy hány cellára van szükség.
    format(string,sizeof(string),\"~r~Megölt téged ~y~%s\", Nev(killerid)); // A gyilkos nevét lekérdezve megformázzuk a karakterláncot. Piros lesz a sima szöveg, és sárga a név.
    GameTextForPlayer(playerid, string, 3500, 6); // A feliratot 3,5 másodpercig mutatja, 6-os stílussal.
    return 1;
}

 
Színek, szimbólumok és stílusok
Név függvény
Cím: TextDraw kérdés
Írta: KovaNovik - 2014. március 23. - 14:01:14
Idézetet írta: Dfoglalo date=1395569452\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"47313\" data-ipsquote-contentclass=\"forums_Topic
Ha tényleg csak arra kell, hogy kiírd, hogy ki ölte meg õt, majd eltüntesd azt néhány másodpercen belül, akkor bõven elég GameText-et használni. Mutatom:
 
public OnPlayerDeath(playerid, killerid, reason)
{
    new string[128]; // Ha akarod, kiszámolhatod, hogy hány cellára van szükség.
    format(string,sizeof(string),\"~r~Megölt téged ~y~%s\", Nev(killerid)); // A gyilkos nevét lekérdezve megformázzuk a karakterláncot. Piros lesz a sima szöveg, és sárga a név.
    GameTextForPlayer(playerid, string, 3500, 6); // A feliratot 3,5 másodpercig mutatja, 6-os stílussal.
    return 1;
}

 
Színek, szimbólumok és stílusok
Név függvény
 
Off: Ehhez fixchars is kéne, nem?
Cím: TextDraw kérdés
Írta: Dfoglalo - 2014. március 23. - 14:07:24
A sima textdrawhoz is kell fixchars, abban az esetben, ha különleges szimbólumokat, ékezetes betûket használ az ember. Ahogyan itt is. Szóval emiatt ne fájjon az ember feje. Különben is, 2 perc sincs betenni azt, ráadásul minden értelmes, magyar nyelvet használó módba az ember szinte azonnal beteszi azt az inc-t. Azért ajánlottam ezt, mert így sokkal egyszerûbb megoldani a dolgot, de ha õ macerálni akar vele, használat sima textdrawot is. De ez sokkal egyszerûbb megoldás, gyakorlatilag ugyanazzal a hatással. Csupán megspórol vele egy textdraw létrehozást, amikor csatlakozik a player, minden alkalommal, egy textdraw eltüntetést, egy timer készítést, egy callback létrehozást a timernek, benne textdraw eltüntetést, stb. Így pedig megvan egyetlen egy sorból. (+ string változó létrehozása és string formázása, de az a másik változatban is szükséges lenne.)
Cím: TextDraw kérdés
Írta: ZyZu. - 2014. március 23. - 17:12:08
Idézetet írta: Dfoglalo date=1395569452\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"47313\" data-ipsquote-contentclass=\"forums_Topic
Ha tényleg csak arra kell, hogy kiírd, hogy ki ölte meg õt, majd eltüntesd azt néhány másodpercen belül, akkor bõven elég GameText-et használni. Mutatom:
 
public OnPlayerDeath(playerid, killerid, reason)
{
    new string[128]; // Ha akarod, kiszámolhatod, hogy hány cellára van szükség.
    format(string,sizeof(string),\"~r~Megölt téged ~y~%s\", Nev(killerid)); // A gyilkos nevét lekérdezve megformázzuk a karakterláncot. Piros lesz a sima szöveg, és sárga a név.
    GameTextForPlayer(playerid, string, 3500, 6); // A feliratot 3,5 másodpercig mutatja, 6-os stílussal.
    return 1;
}

 
Színek, szimbólumok és stílusok
Név függvény
 
Nem lesz jó. Ha a játékos beírja /kill akkor is ki fogja írni.. :)
 
if( killerid != INVALID_PLAYER_ID )
Cím: TextDraw kérdés
Írta: Dfoglalo - 2014. március 23. - 17:17:48
Idézetet írta: ZyZu. date=1395591128\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"47313\" data-ipsquote-contentclass=\"forums_Topic


Ha tényleg csak arra kell, hogy kiírd, hogy ki ölte meg õt, majd eltüntesd azt néhány másodpercen belül, akkor bõven elég GameText-et használni. Mutatom:
 
public OnPlayerDeath(playerid, killerid, reason)
{
    new string[128]; // Ha akarod, kiszámolhatod, hogy hány cellára van szükség.
    format(string,sizeof(string),\"~r~Megölt téged ~y~%s\", Nev(killerid)); // A gyilkos nevét lekérdezve megformázzuk a karakterláncot. Piros lesz a sima szöveg, és sárga a név.
    GameTextForPlayer(playerid, string, 3500, 6); // A feliratot 3,5 másodpercig mutatja, 6-os stílussal.
    return 1;
}

 
Színek, szimbólumok és stílusok
Név függvény
 
Nem lesz jó. Ha a játékos beírja /kill akkor is ki fogja írni.. :)
 
if( killerid != INVALID_PLAYER_ID )

 

[/quote]
Nem volt feltétel, hogy akkor ne írja ki, szóval... :) Ettõl függetlenül pedig mûködik, mindent jól le is írtam, szóval az sem a megfelelõ állítás, hogy \"Nem lesz jó.\". ;)
Cím: TextDraw kérdés
Írta: JDHGamers - 2014. március 23. - 18:15:38
Köszönöm szépen a válaszokat, a témát zárom, az ügy megoldva...
Cím: TextDraw kérdés
Írta: JDHGamers - 2014. március 23. - 08:02:14
Helló Fórum!
TextDrawba hogy tudom azt beleírni, hogy amikor valaki megöl, akkor a játékos nevét írja a TextDraw-ba? Pl. Téged megölt ZyZu, vagy Téged megölt cappsy, ezt hogy csináljam?
Cím: TextDraw kérdés
Írta: KovaNovik - 2014. március 23. - 08:56:13
Csinálj egy Textdrawot Zamaroth editorjával, másold be a mododba, és használd a TextDrawSetString függvényt :)
Cím: TextDraw kérdés
Írta: Dfoglalo - 2014. március 23. - 11:10:52
Ha tényleg csak arra kell, hogy kiírd, hogy ki ölte meg õt, majd eltüntesd azt néhány másodpercen belül, akkor bõven elég GameText-et használni. Mutatom:
 
public OnPlayerDeath(playerid, killerid, reason)
{
    new string[128]; // Ha akarod, kiszámolhatod, hogy hány cellára van szükség.
    format(string,sizeof(string),\"~r~Megölt téged ~y~%s\", Nev(killerid)); // A gyilkos nevét lekérdezve megformázzuk a karakterláncot. Piros lesz a sima szöveg, és sárga a név.
    GameTextForPlayer(playerid, string, 3500, 6); // A feliratot 3,5 másodpercig mutatja, 6-os stílussal.
    return 1;
}

 
Színek, szimbólumok és stílusok
Név függvény
Cím: TextDraw kérdés
Írta: KovaNovik - 2014. március 23. - 14:01:14
Idézetet írta: Dfoglalo date=1395569452\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"47313\" data-ipsquote-contentclass=\"forums_Topic
Ha tényleg csak arra kell, hogy kiírd, hogy ki ölte meg õt, majd eltüntesd azt néhány másodpercen belül, akkor bõven elég GameText-et használni. Mutatom:
 
public OnPlayerDeath(playerid, killerid, reason)
{
    new string[128]; // Ha akarod, kiszámolhatod, hogy hány cellára van szükség.
    format(string,sizeof(string),\"~r~Megölt téged ~y~%s\", Nev(killerid)); // A gyilkos nevét lekérdezve megformázzuk a karakterláncot. Piros lesz a sima szöveg, és sárga a név.
    GameTextForPlayer(playerid, string, 3500, 6); // A feliratot 3,5 másodpercig mutatja, 6-os stílussal.
    return 1;
}

 
Színek, szimbólumok és stílusok
Név függvény
 
Off: Ehhez fixchars is kéne, nem?
Cím: TextDraw kérdés
Írta: Dfoglalo - 2014. március 23. - 14:07:24
A sima textdrawhoz is kell fixchars, abban az esetben, ha különleges szimbólumokat, ékezetes betûket használ az ember. Ahogyan itt is. Szóval emiatt ne fájjon az ember feje. Különben is, 2 perc sincs betenni azt, ráadásul minden értelmes, magyar nyelvet használó módba az ember szinte azonnal beteszi azt az inc-t. Azért ajánlottam ezt, mert így sokkal egyszerûbb megoldani a dolgot, de ha õ macerálni akar vele, használat sima textdrawot is. De ez sokkal egyszerûbb megoldás, gyakorlatilag ugyanazzal a hatással. Csupán megspórol vele egy textdraw létrehozást, amikor csatlakozik a player, minden alkalommal, egy textdraw eltüntetést, egy timer készítést, egy callback létrehozást a timernek, benne textdraw eltüntetést, stb. Így pedig megvan egyetlen egy sorból. (+ string változó létrehozása és string formázása, de az a másik változatban is szükséges lenne.)
Cím: TextDraw kérdés
Írta: ZyZu. - 2014. március 23. - 17:12:08
Idézetet írta: Dfoglalo date=1395569452\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"47313\" data-ipsquote-contentclass=\"forums_Topic
Ha tényleg csak arra kell, hogy kiírd, hogy ki ölte meg õt, majd eltüntesd azt néhány másodpercen belül, akkor bõven elég GameText-et használni. Mutatom:
 
public OnPlayerDeath(playerid, killerid, reason)
{
    new string[128]; // Ha akarod, kiszámolhatod, hogy hány cellára van szükség.
    format(string,sizeof(string),\"~r~Megölt téged ~y~%s\", Nev(killerid)); // A gyilkos nevét lekérdezve megformázzuk a karakterláncot. Piros lesz a sima szöveg, és sárga a név.
    GameTextForPlayer(playerid, string, 3500, 6); // A feliratot 3,5 másodpercig mutatja, 6-os stílussal.
    return 1;
}

 
Színek, szimbólumok és stílusok
Név függvény
 
Nem lesz jó. Ha a játékos beírja /kill akkor is ki fogja írni.. :)
 
if( killerid != INVALID_PLAYER_ID )
Cím: TextDraw kérdés
Írta: Dfoglalo - 2014. március 23. - 17:17:48
Idézetet írta: ZyZu. date=1395591128\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"47313\" data-ipsquote-contentclass=\"forums_Topic


Ha tényleg csak arra kell, hogy kiírd, hogy ki ölte meg õt, majd eltüntesd azt néhány másodpercen belül, akkor bõven elég GameText-et használni. Mutatom:
 
public OnPlayerDeath(playerid, killerid, reason)
{
    new string[128]; // Ha akarod, kiszámolhatod, hogy hány cellára van szükség.
    format(string,sizeof(string),\"~r~Megölt téged ~y~%s\", Nev(killerid)); // A gyilkos nevét lekérdezve megformázzuk a karakterláncot. Piros lesz a sima szöveg, és sárga a név.
    GameTextForPlayer(playerid, string, 3500, 6); // A feliratot 3,5 másodpercig mutatja, 6-os stílussal.
    return 1;
}

 
Színek, szimbólumok és stílusok
Név függvény
 
Nem lesz jó. Ha a játékos beírja /kill akkor is ki fogja írni.. :)
 
if( killerid != INVALID_PLAYER_ID )

 

[/quote]
Nem volt feltétel, hogy akkor ne írja ki, szóval... :) Ettõl függetlenül pedig mûködik, mindent jól le is írtam, szóval az sem a megfelelõ állítás, hogy \"Nem lesz jó.\". ;)
Cím: TextDraw kérdés
Írta: JDHGamers - 2014. március 23. - 18:15:38
Köszönöm szépen a válaszokat, a témát zárom, az ügy megoldva...