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: CANNONN - 2012. február 18. - 22:42:04

Cím: Textdraw külön játékoshoz
Írta: CANNONN - 2012. február 18. - 22:42:04
Sziasztok!
Valaki tudna segíteni abban, hogy, hogyan kell olyan textdrawot létrehozni, ami külön-külön játékosnak van!
Itt módosítom a textdrawot:
 
new string[128];
format(string,sizeof(string),\"Pénz: $%i ,GetPlayerMoney(playerid));
TextDrawSetString(infobar, string);

 
Ezzel az a gond, hogy mindenkinek átírja a textdraw szövegét erre. infobar[playerid] -vel már próbáltam, de az OnGameModeInit-nél gondok vannak!
Köszönöm a segítséget! ;)
Cím: Textdraw külön játékoshoz
Írta: Norby - 2012. február 18. - 23:02:21
OnGameModeInit nél írd erre Pénz: N/A
És TextDrawSetString(infobar[playerid],string);
Cím: Textdraw külön játékoshoz
Írta: CANNONN - 2012. február 18. - 23:05:56
Addig az jó, de nem ismeri az infobar[playerid]-t az OnGameModeInit, ha símán infobar = stb. van akkor is rossz, ötlet?!
Cím: Textdraw külön játékoshoz
Írta: Norby - 2012. február 18. - 23:08:46
Most ez OnGameModeInit nél van ?
 
new string[128];
format(string,sizeof(string),\"Pénz: $%i ,GetPlayerMoney(playerid));
TextDrawSetString(infobar, string);

 
Másold be a TextDrawot..
Cím: Textdraw külön játékoshoz
Írta: CANNONN - 2012. február 18. - 23:13:41
Köszönöm a segítséget, itt van:
[pawn]        infobar[playerid] = TextDrawCreate(-10.000000, 434.000000, \"\");
TextDrawBackgroundColor(infobar[playerid], 255);
TextDrawFont(infobar[playerid], 1);
TextDrawLetterSize(infobar[playerid], 0.500000, 1.899999);
TextDrawColor(infobar[playerid], 65535);
TextDrawSetOutline(infobar[playerid], 0);
TextDrawSetProportional(infobar[playerid], 1);
TextDrawSetShadow(infobar[playerid], 1);
TextDrawUseBox(infobar[playerid], 1);
TextDrawBoxColor(infobar[playerid], 50);
TextDrawTextSize(infobar[playerid], 641.000000, -460.000000);[/pawn]
Cím: Textdraw külön játékoshoz
Írta: Norby - 2012. február 18. - 23:17:15
UI: Ez így nemjó..
Cím: Textdraw külön játékoshoz
Írta: CANNONN - 2012. február 18. - 23:19:38
Nem nagyon értelek :/
Cím: Textdraw külön játékoshoz
Írta: Norby - 2012. február 18. - 23:26:49
Esetleg:
 
public OnGameModeInit()
{
for(new i = 0;i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
        format(str,sizeof(str),\"Pénzed: %d\",GetPlayerMoney(i));
        infobar = TextDrawCreate(-10.000000, 434.000000, str);
TextDrawBackgroundColor(infobar, 255);
TextDrawFont(infobar, 1);
TextDrawLetterSize(infobar, 0.500000, 1.899999);
TextDrawColor(infobar, 65535);
TextDrawSetOutline(infobar, 0);
TextDrawSetProportional(infobar, 1);
TextDrawSetShadow(infobar, 1);
TextDrawUseBox(infobar, 1);
TextDrawBoxColor(infobar, 50);
TextDrawTextSize(infobar, 641.000000, -460.000000);
}
}
return 1;
}

 
Nem biztos hogy jó lesz de egy próbát megér ... :)
Cím: Textdraw külön játékoshoz
Írta: CANNONN - 2012. február 18. - 23:31:23
Azt még nem tudom, hogy jó-e, de így nem jeleníti meg: 
OnPlayerConnect alatt: TextDrawShowForPlayer(playerid,infobar[playerid]);
Edit: Megoldottam, megjeleníti! Ki jár Norbi neked egy +! Köszönöm a segítségedet!
Még mindig rossz! Valamiért ha egyikünk pénze 1000 másiké 10000 akkor átváltoztatja az enyémet is a másikéra. :-\\
Cím: Textdraw külön játékoshoz
Írta: 1ST_Chr - 2012. február 18. - 23:52:56
Szerintem onplayerconnectnél hozd létre a jàtékosnak a textdrawot. Pénz változásnál pedig csak annak az egy játékosnak változzon a textdraw szövege.:)
Cím: Textdraw külön játékoshoz
Írta: Norby - 2012. február 18. - 23:56:53
TextDrawSetStringnél is for ciklust használj...
 
for(new i = 0; i <= MAX_PLAYERS; i++)
{
    format(str,sizeof(str),\"Pénz: %d\",GetPlayerMoney(i));
    TextDrawSetString(infobar,str);
}
Cím: Textdraw külön játékoshoz
Írta: CANNONN - 2012. február 19. - 00:06:24
Idézetet írta: 1ST_Chr date=1329605576\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"17231\" data-ipsquote-contentclass=\"forums_Topic
Szerintem onplayerconnectnél hozd létre a jàtékosnak a textdrawot. Pénz változásnál pedig csak annak az egy játékosnak változzon a textdraw szövege.:)
 
Milyen igaz! Hogy ez hogy nem jutott az eszembe! Köszönöm szépen! Probléma megoldva!
Zárok