PDA

Просмотр полной версии : [Вопрос] Система автопробега



Andrik851
23.06.2019, 12:35
Добрый день подскажите пожалуйста стоит система пробега с файлскрипта врезал ее вмод и не могу правильно прописать в текстдрав спидометра на показателе файлскрипта данные автопробега начисляются правильно 000001 далее 000002 и так далее но вот когда прописал в текстдрав все начинается с 100213 далее 100518 и так далее.Пожалуйста подскажитекак правильно прописать чтобывсе начислялось правильно как в файлскрипте.

вот вся система автопробега



new Float:Probeg[MAX_VEHICLES] = 0.0;
new ProbegVeh[MAX_VEHICLES]=0;





forward ToProbeg(playerid);




stock LoadTimers()
{
secupdate = SetTimer("SecUpdate", ONE_SECOND_UPDATE, 1);
badengine = SetTimer("BadEngine", ONE_HUNDRED_MSECOND, 1);
BotUpdate = SetTimer("fBotUpdate", 1800000, 1);
SetTimer("ToProbeg", 1000, 1);//прибавляем пробег
return true;
}



public ToProbeg(playerid)
{
new string[256];
if(!IsPlayerInAnyVehicle(playerid)) return 1;
new Float:sp = GetSpeedKMH(playerid);
new Float:l = (sp/2)/1000;
Probeg[GetPlayerVehicleID(playerid)] += l;
ProbegVeh[GetPlayerVehicleID(playerid)] = floatround(Probeg[GetPlayerVehicleID(playerid)]);
format(string,sizeof(string),"~w~~n~~n~~n~~n~~n~~n ~~n~~n~~n~~n~%06d~b~ km",ProbegVeh[GetPlayerVehicleID(playerid)]);
GameTextForPlayer(playerid,string, 1500, 3);
return 1;
}


stock GetSpeedKMH(playerid)
{
new Float:ST[4];
if(IsPlayerInAnyVehicle(playerid))
GetVehicleVelocity(GetPlayerVehicleID(playerid),ST[0],ST[1],ST[2]);
else GetPlayerVelocity(playerid,ST[0],ST[1],ST[2]);
ST[3] = floatsqroot(floatpower(floatabs(ST[0]), 2.0) + floatpower(floatabs(ST[1]), 2.0) + floatpower(floatabs(ST[2]), 2.0)) * 253.3;
return floatround(ST[3]);
}





и вот сам спидометр куда нужно вставить показатели автопробега



forward UpdateSpeedometr(playerid);
public UpdateSpeedometr(playerid)
{
CheckCar(playerid);
if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
new sID = GetPlayerVehicleID(playerid);
if(IsAPlane(sID) || IsABoat(sID) || IsAMoped(sID)) return true;

UnSurfCar(sID);

new str[7], strmodel[24];
format(str, sizeof(str),"%i",SpeedVehicle(playerid) / 2);
PlayerTextDrawSetString(playerid, PSPEEDAK[playerid][1], str);//Speed
format(str, sizeof(str),FixText("%i л."),Fuel[sID]);
PlayerTextDrawSetString(playerid, PSPEEDAK[playerid][2], str);//Fuel
format(str, sizeof(str),FixText("%i км."),Probeg[sID]);
PlayerTextDrawSetString(playerid, PSPEEDAK[playerid][3], str);//автопробег
format(strmodel, sizeof(strmodel),"%s",FixText(VehicleNameS[GetVehicleModel(sID)-400]));
PlayerTextDrawSetString(playerid, PSPEEDAK[playerid][0], strmodel);//Модель

PlayerTextDrawSetString(playerid, PSPEEDAK[playerid][7], (Engine[sID])?(FixText("Заведен")):(FixText("Заглушен")));//Двигатель
PlayerTextDrawSetString(playerid, PSPEEDAK[playerid][6], (IsLocked[sID])?(FixText("Закрыты")):(FixText("Открыты")));//Двери
PlayerTextDrawSetString(playerid, PSPEEDAK[playerid][5], (Lights[sID])?(FixText("Включен")):(FixText("Выключен")));//Фары
}
return false;
}



И хохранение в базу данных идет примерно с такими значениями 1006450012