Skripta koju koristim: Moja
Detaljan opis problema: Imam erore a imam definiran foeach itd
Dio skripte:
[pawn]public MainTimer()
{
new string[128];
new Float:x, Float:y, Float:z;
foreach (new i : Player)
{
if(IsPlayerConnected(i))
{
if(GetPlayerState(i) == PLAYER_STATE_DRIVER)
{
new vehicleid = GetPlayerVehicleID(i);
if(!IsBicycle(vehicleid) && !IsBus(vehicleid) && Fuel[vehicleid] > 0)
{
Fuel[vehicleid] -= GetPlayerSpeed(i)/1000.0;
if(Fuel[vehicleid] <= 0)
{
ToggleEngine(vehicleid, VEHICLE_PARAMS_OFF);
GameTextForPlayer(i, "~r~out of fuel", 3000, 3);
SendClientMessage(i, COLOR_LIGHTRED, "This vehicle is out of fuel!");
}
}
}
if(RefuelTime > 0 && GetPVarInt(i, "FuelStation"))
{
new vehicleid = GetPlayerVehicleID(i);
Fuel[vehicleid] += 2.0;
RefuelTime--;
if(RefuelTime == 0)
{
if(Fuel[vehicleid] >= 100.0) Fuel[vehicleid] = 100.0;
new stationid = GetPVarInt(i, "FuelStation");
new cost = floatround(Fuel[vehicleid]-GetPVarFloat(i, "Fuel"))*FUEL_PRICE;
if(GetPlayerState(i) != PLAYER_STATE_DRIVER || Fuel[vehicleid] >= 100.0 || GetPlayerMoney(i) < cost
|| !IsPlayerInRangeOfPoint(i, 10.0, FuelStationPos[stationid][0], FuelStationPos[stationid][1], FuelStationPos[stationid][2]))
{
if(GetPlayerMoney(i) < cost) cost = GetPlayerMoney(i);
GivePlayerMoney(i, -cost);
format(string, sizeof(string), "~r~-$%d", cost);
GameTextForPlayer(i, string, 2000, 3);
format(string, sizeof(string), "You have paid $%d for the fuel.", cost);
SendClientMessage(i, COLOR_WHITE, string);
SetPVarInt(i, "FuelStation", 0);
SetPVarFloat(i, "Fuel", 0.0);
}
else
{
RefuelTime = 5;
format(string, sizeof(string), "~w~refueling...~n~~r~-$%d", cost);
GameTextForPlayer(i, string, 2000, 3);
}
}
}
if(TrackCar)
{
GetVehiclePos(TrackCar, x, y, z);
SetPlayerCheckpoint(i, x, y, z, 3);
}
}
}
} [/pawn]
[pawn](23533) : error 017: undefined symbol "foreach"
(23533) : error 029: invalid expression, assumed zero
(23533) : error 017: undefined symbol "i"
(23533) : fatal error 107: too many error messages on one line [/pawn]
[pawn]new vehicleid = GetPlayerVehicleID(i); [/pawn]
Neke slike/video za lakse dobivanje pomoci(neobavezno):
[pawn]#include <foreach>[/pawn] jesil definisao?
Da najnoviji sam update!
Umesto [pawn]foreach(new i : Player)[/pawn]
stavi:
[pawn]for(new i = 0; i < MAX_PLAYERS; i++)[/pawn]
Da li imas #include <foreach> na vrhu skripte?
Pokusao sam tako isti problem!
Pa imam forach na vrhu vec sam napomenuo :D Citajte! :D
Imao sam isti problem,nemoj koristiti svoj pawno,vec onaj koji je u modu,posto se includovi razlikuju!!!
To je citav problem... Samo uzmi originalan pawno koji je dosao uz taj mod!!!
Ne mozes odvajati zagradu to jest (new i : Player) od foreach-a.
[pawn]foreach(new i : Player)[/pawn]
Ako hoces da imas fleksibilnost odvajanja npr foreach (new i: Player ) koristi y_iterate, al zauzima vise memorije a u sustini je isto :D