Wysłany: 2013-02-10, 15:49
Sillence
Wiek: 26 Na forum: 5157 dni Posty: 1514
Nick w MP: Sillence
Piwa : 1517
Witajcie. Mam w mojej mapce tak? linijk?:
Kod: if(Paliwo[vehid] < 1)
{
PustyBak[i] = 1;
GameTextForPlayer(i,"~w~~n~~n~~n~Koniec Paliwa. Zatankuj lub wezwij Pomoc Drogowq.",3000,3);
}
I jak si? pojazd zrespi a w baku b?dzie pe?no to temu graczowi co tego pojazu przez respem u?ywa? wyskakuje ten komunikat Koniec paliwa.
O co z tym chodzi. Jak to naprawi? ?
Piwa + Rep
Wysłany: 2013-02-10, 15:57
B!4CK
Never give UP!
Wiek: 32 Na forum: 5810 dni Posty: 1047
Nick w MP: John
Piwa : 1891
A poka? komende /respawn
Podpis
Cześć
[you]
!
Projekt, który poruszy scenę platformy SA:MP!
Wysłany: 2013-02-10, 16:04
Sillence
Wiek: 26 Na forum: 5157 dni Posty: 1514
Nick w MP: Sillence
Piwa : 1517
blackelegy , Nie mam takiej komendy ale jak jest Kod: to tam na samym ko?cu jest czas respawnu
Wysłany: 2013-02-10, 16:14
B!4CK
Never give UP!
Wiek: 32 Na forum: 5810 dni Posty: 1047
Nick w MP: John
Piwa : 1891
To tam gdzie masz respawn poszukaj :
PustyBak[i] = 1;
Jak masz tak to zamie? na :
PustyBak[i] = 0; i powinno ?miga?.
Podpis
Cześć
[you]
!
Projekt, który poruszy scenę platformy SA:MP!
Wysłany: 2013-02-10, 16:37
Quis
Wszechwiedzący
Wiek: 31 Na forum: 5146 dni Posty: 464
Nick w MP: Quis
Piwa : 1110
Kod:
Ten warunek z jakiego? powodu si? spe?nia. Daj linijk? wcze?niej co? takiego:
Kod: printf("Paliwo pojazdu %d: %d", vehid, Paliwo[vehid]);
I zobacz co wy?wietli w konsoli.
Wysłany: 2013-02-10, 16:49
Sillence
Wiek: 26 Na forum: 5157 dni Posty: 1514
Nick w MP: Sillence
Piwa : 1517
Wysłany: 2013-02-10, 16:55
Quis
Wszechwiedzący
Wiek: 31 Na forum: 5146 dni Posty: 464
Nick w MP: Quis
Piwa : 1110
_FasteR_ , jak cz?sto ten kod si? wykonuje? Taka wiadomo?? jest tylko w tym miejscu, mo?e gdzie? indziej?
Wysłany: 2013-02-10, 16:58
Sillence
Wiek: 26 Na forum: 5157 dni Posty: 1514
Nick w MP: Sillence
Piwa : 1517
Znaczy tak mam zrobiony licznik:
Kod: forward LicznikInfo(playerid);
public LicznikInfo(playerid)
{
new vehid = GetPlayerVehicleID(playerid);
new string[256];
for (new i=0; i<MAX_PLAYERS; i++) {
format(string, sizeof(string), "Predkosc:~w~ %d km/h", GetPlayerSpeed(i));
TextDrawSetString(Predkosc[i], string);
format(string, sizeof(string), "Paliwo:~w~ %d l",Gas[vehid]);
TextDrawSetString(Paliwo[i], string);
if(Paliwo[vehid] < 1)
{
PustyBak[i] = 1;
GameTextForPlayer(i,"~w~~n~~n~~n~Koniec Paliwa. Zatankuj lub wezwij Pomoc Drogowq.",3000,3);
}
new Float:ZyciePojazdu;
GetVehicleHealth(GetPlayerVehicleID(i), ZyciePojazdu);
format(string, sizeof(string), "Stan:~w~ %.0f/1000",ZyciePojazdu-0);
TextDrawSetString(Stan[i], string);
format(string, sizeof(string), "Pojazd:~w~ %s",carname[i]);
TextDrawSetString(Pojazd[i], string);
format(string, sizeof(string), "Przebieg:~w~ %.1f km",przebieg[playerid]/1000.0);
TextDrawSetString(Przebieg[i], string);
}
return 1;
}
Dok?adnie to samo dzieje si? gdy np pojazd mi wybuchnie
[ Dodano : 2013-02-10, 16:59 ]
Kod od?wie?a si? co 1 sekund?
Wysłany: 2013-02-10, 17:01
Quis
Wszechwiedzący
Wiek: 31 Na forum: 5146 dni Posty: 464
Nick w MP: Quis
Piwa : 1110
A mo?esz pokaza? jak wygl?da timer (SetTimer)? Ten kod og?lnie ma ma?o sensu, bo niby jest przyczepiony do jednego gracza, a i tak jest w nim p?tla na wszystkich graczy.
Kod: GameTextForPlayer(i,"~w~~n~~n~~n~Koniec Paliwa. Zatankuj lub wezwij Pomoc Drogowq.",3000,3);
Wy?wietla si? 3 sekundy, a skoro timer od?wie?a si? co sekund?, to wy?wietla kilka naraz. Kiedy? mia?em tak ?e si? bugowa?o i wy?wietla?o po kilku sekundach to samo ponownie.
Pozdrawiam
Wysłany: 2013-02-10, 17:04
Sillence
Wiek: 26 Na forum: 5157 dni Posty: 1514
Nick w MP: Sillence
Piwa : 1517
SetTimer("LicznikInfo", 1000, true);
[ Dodano : 2013-02-10, 17:19 ]
Hmmm... A jest mo?e taki warunek ?e jak pojazd zostanie zrespiony to wy?wietli nam wiadomo?? ?
Wysłany: 2013-02-10, 17:32
Quis
Wszechwiedzący
Wiek: 31 Na forum: 5146 dni Posty: 464
Nick w MP: Quis
Piwa : 1110
_FasteR_ , przypatrz si? co masz tutaj:
Kod: forward LicznikInfo(playerid);
public LicznikInfo(playerid)
I tutaj:
Kod: SetTimer("LicznikInfo", 1000, true);
U?yj funkcji SetTimerEx i dodaj playerid do argument?w. W timerze brak podanego argumentu, i funkcja wykonuje si? tylko dla ID 0, a p?tla jest niepotrzebna.
Albo chocia? usu? to "playerid" z definicji funkcji.
Druga rzecz:
Kod: new vehid = GetPlayerVehicleID(playerid);
Pobierasz ID pojazdu gracza o ID 0 (bo w tej funkcji playerid zawsze =0), dlatego masz z tym skryptem takie problemy.
Naucz si? prosz? u?ywa? timer?w, bo kiepsko to wygl?da. Naprawd?
I jeszcze jedna rzecz:
Kod:
Od ZyciaPojazdu odejmujesz "0"? W jakim celu? Podpowiadam, bo mo?e przypadkiem jest tam to 0 (zamiast np. 10 albo 100).
Pozdrawiam
Tagi: respawn
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: