Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: [SC] ScHaLe poslato Oktobar 21, 2011, 11:55:37 PRE PODNE

Naslov: [Pomoc] Text:Draw Gorivo
Poruka od: [SC] ScHaLe poslato Oktobar 21, 2011, 11:55:37 PRE PODNE
Skripta koju koristim: GF
Detaljan opis problema: Textdraw se pokaze tek kad potrosim litru goriva, umjesto cim sjednem u vozilo :o
Dio skripte:public TrosnjaGoriva()
{
new g;
for(g=0; g<MAX_PLAYERS; g++)
{
    if(IsPlayerConnected(g))
    {
        if(IsPlayerInAnyVehicle(g))
        {
new Poruka = 1;
        new VID = GetPlayerVehicleID(g);
        new KGoriva[128];
        if(Gorivo[VID] >= 1)
        {
        Gorivo[VID]--;
        format(KGoriva, sizeof(KGoriva), "~r~Gorivo: ~w~%d%/40L~n~", Gorivo[VID]);
        TextDrawSetString(TDraw1, KGoriva);
        TextDrawShowForPlayer(g, TDraw1);
}
        else if(Poruka == 1)
        {
            TogglePlayerControllable(g, 0);
            SendClientMessage(g, 0x00FF00FF, "*  Auto nema goriva.");
                    SendClientMessage(g, 0x00FF00FF, "SAVJET: Pisi /izlaz da izades iz auta");
                    Poruka = 0;
        }
}
    }
}
return 1;
}

Neke slike/video za lakse dobivanje pomoci(neobavezno):
Naslov: Odg: [Pomoc] Text:Draw Gorivo
Poruka od: [SC] ScHaLe poslato Oktobar 21, 2011, 12:14:45 POSLE PODNE
Sad se prikaze crvenim slovima "Gorivo:" ali nepise koliko ima sve dok ne potrosi litra :D

Edit:Eto textdraw-a

TDraw1 = TextDrawCreate(487.000000,423.000000,"~r~Gorivo: ~n~~r~Brzina:");
TextDrawUseBox(TDraw1,1);
TextDrawBoxColor(TDraw1,0x00000033);
TextDrawTextSize(TDraw1,631.000000,0.000000);
TextDrawAlignment(TDraw1,0);
TextDrawBackgroundColor(TDraw1,0x000000ff);
TextDrawFont(TDraw1,2);
TextDrawLetterSize(TDraw1,0.399999,1.100000);
TextDrawColor(TDraw1,0xffffffff);
TextDrawSetOutline(TDraw1,1);
TextDrawSetProportional(TDraw1,1);
TextDrawSetShadow(TDraw1,1);


Edit 2:Kada sjednem u drugo vozilo pisu mi litre od prijasnjeg vozila, sve dok ne potrosim litru :S
Naslov: Odg: [Pomoc] Text:Draw Gorivo
Poruka od: Rotcod poslato Oktobar 21, 2011, 13:57:38 POSLE PODNE
Mozda je problem u ovom redu:
if(Gorivo[VID] >= 1)
Probaj malo da se igras sa time ;)
Naslov: Odg: [Pomoc] Text:Draw Gorivo
Poruka od: [SC] ScHaLe poslato Oktobar 21, 2011, 18:12:52 POSLE PODNE
Sta da stavim tu?
Naslov: Odg: [Pomoc] Text:Draw Gorivo
Poruka od: John poslato Oktobar 21, 2011, 20:55:37 POSLE PODNE
1. IsPlayerConnected ti netreba, sve samp funkcije vezane za igrace imaju internu provjeru dal je igrac spojen  ;)
2. IsPlayerInAnyVehicle ti isto netreba, zato sto GetPlayerVehicleID vraca 0 ako nisi u autu, a ako jesi vehicleid  ;)
3. "new Poruka = 1;" nepotrebno i zamjeni "else if(Poruka == 1)" sa samo "else"
4. prvi red "new g;" slobodono to stavis umjesto ovog "g" u for (g.." tako da izgleda "for (new g" za ljepsi izgled koda
5. tvoj problem je taj da ne formatiras i ne pokazes vjerojatno textdraw kad igrac UDJE u auto, znaci "OnPlayerEnterVehicle" ili "OnPlayerStateChange". Pod tim callbackovima dobijes id vozila i kolicinu goriva, zatim formatiras string i pokazes ga igracu

tolko od mene  ;) 
Naslov: Odg: [Pomoc] Text:Draw Gorivo
Poruka od: [SC] ScHaLe poslato Oktobar 22, 2011, 16:29:34 POSLE PODNE
Moze lock uradit cu novi text:draw :D