Wysłany: 2012-12-15, 11:28
Sillence
Wiek: 26 Na forum: 5157 dni Posty: 1514
Nick w MP: Sillence
Piwa : 1517
Siemka zrobi?em co? takiego:
Kod:
forward UpdateVehiclePrzebieg(playerid);
public UpdateVehiclePrzebieg(playerid)
{
if(IsPlayerInAnyVehicle(playerid))
{
if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
if(GetPlayerSpeed(playerid) >= 160) return przebieg[playerid] += 160/5;
if(GetPlayerSpeed(playerid) >= 155) return przebieg[playerid] += 155/5;
if(GetPlayerSpeed(playerid) >= 150) return przebieg[playerid] += 150/5;
if(GetPlayerSpeed(playerid) >= 145) return przebieg[playerid] += 145/5;
if(GetPlayerSpeed(playerid) >= 140) return przebieg[playerid] += 140/5;
if(GetPlayerSpeed(playerid) >= 135) return przebieg[playerid] += 135/5;
if(GetPlayerSpeed(playerid) >= 130) return przebieg[playerid] += 130/5;
if(GetPlayerSpeed(playerid) >= 125) return przebieg[playerid] += 125/5;
if(GetPlayerSpeed(playerid) >= 120) return przebieg[playerid] += 120/5;
if(GetPlayerSpeed(playerid) >= 115) return przebieg[playerid] += 115/5;
if(GetPlayerSpeed(playerid) >= 110) return przebieg[playerid] += 110/5;
if(GetPlayerSpeed(playerid) >= 105) return przebieg[playerid] += 105/5;
if(GetPlayerSpeed(playerid) >= 100) return przebieg[playerid] += 100/5;
if(GetPlayerSpeed(playerid) >= 95) return przebieg[playerid] += 95/5;
if(GetPlayerSpeed(playerid) >= 90) return przebieg[playerid] += 90/5;
if(GetPlayerSpeed(playerid) >= 85) return przebieg[playerid] += 85/5;
if(GetPlayerSpeed(playerid) >= 80) return przebieg[playerid] += 80/5;
if(GetPlayerSpeed(playerid) >= 75) return przebieg[playerid] += 75/5;
if(GetPlayerSpeed(playerid) >= 70) return przebieg[playerid] += 70/5;
if(GetPlayerSpeed(playerid) >= 65) return przebieg[playerid] += 65/5;
if(GetPlayerSpeed(playerid) >= 60) return przebieg[playerid] += 60/5;
if(GetPlayerSpeed(playerid) >= 55) return przebieg[playerid] += 55/5;
if(GetPlayerSpeed(playerid) >= 50) return przebieg[playerid] += 50/5;
if(GetPlayerSpeed(playerid) >= 45) return przebieg[playerid] += 45/5;
if(GetPlayerSpeed(playerid) >= 40) return przebieg[playerid] += 40/5;
if(GetPlayerSpeed(playerid) >= 35) return przebieg[playerid] += 35/5;
if(GetPlayerSpeed(playerid) >= 30) return przebieg[playerid] += 30/5;
if(GetPlayerSpeed(playerid) >= 25) return przebieg[playerid] += 25/5;
if(GetPlayerSpeed(playerid) >= 20) return przebieg[playerid] += 20/5;
if(GetPlayerSpeed(playerid) >= 15) return przebieg[playerid] += 15/5;
if(GetPlayerSpeed(playerid) >= 10) return przebieg[playerid] += 10/5;
if(GetPlayerSpeed(playerid) >= 5) return przebieg[playerid] += 5/4;
}
}
return 1;
}
I u?ywam tego tak:
Kod: format(string, sizeof(string), "Przebieg:~w~ %.1f km",przebieg[playerid]/1000.0);
TextDrawSetString(Przebieg[i], string);
I nie wiem w czym jest problem. Poruszam si? normalnie pojazdem a przebiegu nie nabija stoi tylko na 0.0 km i nic. Piwa + rep za pomoc
Wysłany: 2012-12-15, 12:02
Combacior
Wiek: 29 Na forum: 5796 dni Posty: 1516
Piwa : 2161
Po pierwsze, to dlaczego przebieg masz jako tablica dla gracza? Powinna by? dla ka?dego pojazdu z osobna. Drugie, gdzie wstawi?e? kod do od?wie?ania pokonanego przebiegu? Trzecie, tablica przebieg jest stworzona jako integer czy float? Musisz wybra? jedno, bo przy od?wie?aniu dodajesz jako integer, a wy?wietlasz jako float.
Dam tutaj troch? kodu ze swojej mapy, reszt? dorobisz sam
Kod: new Float:Distance[1000]; //1000 wystarczy, jak nie to zmie? na MAX_VEHICLES, czyli 2000
new ptimer[50];
forward CarUpdate(i);
public CarUpdate(i)
{
new id = GetPlayerVehicleID(i), Float:Speed[4];
GetVehicleVelocity(id, Speed[0], Speed[1], Speed[2]);
Speed[3] = floatsqroot(floatpower(floatabs(Speed[0]), 2.0) + floatpower(floatabs(Speed[1]), 2.0) + floatpower(floatabs(Speed[2]), 2.0)) * 179.28625;
Distance[id] += Speed[3]/40000;
new s[8]; format(s, 8, "%.1f", Distance[id]);
TextDrawSetString(...);
}
//onplayerstatechange (zrob warunki i odpowiednio niszcz timer)
ptimer[playerid] = SetTimerEx("CarUpdate", 100, 1, "i", playerid);
Jak masz pytania to ?mia?o pisz, na szcz??cie nie zaliczasz si? do grupki znienawidzonej przez moj? osob?
Tagi: przebieg
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: