Skripta koju koristim:Editujem jednu
Detaljan opis problema: Imam 2 warninga i 2 linije.Radim kilometrazu za vozila,nzm sta sam pogrijesio
Dio skripte:if(VoziloInfo[GetPlayerVehicleID(i)][cOwned] == 1) { PlayerTextDrawShow(i, TDSpeedo2[i]); }
Linija 1
PlayerTextDrawSetString(i, TDSpeedo2[i], str);
Linija 2
C:\Users\Sa Le\Desktop\GModovi\BLRP\gamemodes\NLRP.pwn(32407) : warning 213: tag mismatch
C:\Users\Sa Le\Desktop\GModovi\BLRP\gamemodes\NLRP.pwn(32438) : warning 213: tag mismatch
2 Warninga Linija 32407 je prvi kod
A 32438 drugi kod :P
Neke slike/video za lakse dobivanje pomoci(neobavezno)://
Jel problem da nam das taj kod posto problem ni ja ne vidim u ovim linijama a moguce da ti nesto drugo pravi problem.
Evo za prvo
public timer_fuel_lower()
{
for(new i=0;i<MAX_PLAYERS;i++) { //loop for all players
if (isrefuelling[i]) continue; //stop when a player is already refuelling
new vid = GetPlayerVehicleID(i);
new objective;
if(!VoziloJeAvion(vid) || !VoziloJeBrod(vid) || !VoziloJeBicikla(vid))
{
if(VoziloJePokrenuto[vid] == 1)
{
if (GetPlayerVehicleSeat(i) == 0)
{
fuel[vid] -= 0.1;
if (fuel[vid]<0.1)
{
fuel[vid] = 0.0;
GameTextForPlayer(i,"~r~Rezervoar je prazan...",5000,4);
GetVehicleParamsEx(vid,motor,slights,alarm,vrata,Hauba,boot,objective);
SetVehicleParamsEx(vid,VEHICLE_PARAMS_OFF,slights,alarm,vrata,Hauba,boot,objective);
VoziloJePokrenuto[vid] = 0;
new stringa[125];
format(stringa,sizeof stringa,"~r~...");
TextDrawSetString(td_fuel[i],stringa);
}
}
}
new stringz[256];
format(stringz,sizeof stringz,"%.1f",fuel[vid]);
TextDrawSetString(td_fuel[i],stringz);
if(VoziloInfo[GetPlayerVehicleID(i)][cOwned] == 1) { PlayerTextDrawShow(i, TDSpeedo2[i]); }
}
}
return 1;
}
A evo i za drugo
public CPresoTimer()
{
for (new i = 0; i < MAX_PLAYERS; i++)
{
if (IsPlayerConnected (i))
{
if (IsPlayerInAnyVehicle (i))
{
if (GetPlayerState (i) == PLAYER_STATE_DRIVER)
{
new vehid = GetPlayerVehicleID (i);
if (VehicleType (GetVehicleModel (vehid) < 0 )) return 0;
new Float: vehpos [3];
new str[64];
GetVehiclePos (vehid, vehpos [0], vehpos [1], vehpos [2]);
vehpos [0] = vehpos [0] - old_veh_pos [vehid][0];
vehpos [1] = vehpos [1] - old_veh_pos [vehid][1];
vehpos [2] = vehpos [2] - old_veh_pos [vehid][2];
GetVehiclePos (vehid, old_veh_pos [vehid][0], old_veh_pos [vehid][1], old_veh_pos [vehid][2]);
new Float: distance = floatsqroot (vehpos [0] * vehpos [0] + vehpos [1] * vehpos [1] + vehpos [2] * vehpos [2]);
VoziloInfo[vehid][cPreso] = VoziloInfo[vehid][cPreso] + distance * 4 / 5;
format(str, sizeof (str), "%06d KM", MetersToMiles(VoziloInfo[vehid][cPreso]));
PlayerTextDrawSetString(i, TDSpeedo2[i], str);
}
}
}
}
return 1;
}
Posto koristis ovde funkcije PlayerTextDrawShow i PlayerTextDrawSetString tako da mislim da imas problem do TDSpeedo2. Treba samo da TDSpeedo2 na vrh definises ovako
new PlayerText:TDSpeedo2[MAX_PLAYERS];
Al sad gdje god imam TDSpeedo2 izbacuje mi taj isti warning
Jesi svugde koristio funkcije pocetak PlayerTextDraw ili ipak za varijablu TDSpeedo2 si koristio i neke druge funkcije ? I jel i dalje imas warninge na te 2 linije na koje si imao ?
Na te 2 nemam a izgleda sam naso sta je ovo :D
Pa ocigledno si izmesao funkcije jer one koje imaju pocetak TextDraw... koristis ovo
new Text:Varijabla[MAX_PLAYERS];
A za funkcije koje imaju pocetak PlayerTextDraw... koristis ovo
new PlayerText::Varijabla[MAX_PLAYERS];
Citat: â–... â–† â–ˆ Rudimental â–ˆ â–† â–... poslato Decembar 24, 2014, 03:40:11 PRE PODNE
Pa ocigledno si izmesao funkcije jer one koje imaju pocetak TextDraw... koristis ovo
new Text:Varijabla[MAX_PLAYERS];
A za funkcije koje imaju pocetak PlayerTextDraw... koristis ovo
new PlayerText::Varijabla[MAX_PLAYERS];
Ti sa Text deklaracijom mozes i da zaobiÄ'es MAX_PLAYERS limiter,naravno u zavisnosti od koristenja tog TD-a.