Sziasztok. A következõ a probléma : Ha a második parancsot /* */ közé teszem mûködik a dolog, de amint kiveszem tele rakja error-ral. Ha a második parancs egy teljesen egyszerû pl teleport parancs, ami 100%, hogy hibátlan akkor is kiírja az errorokat.
Kód:
new Float:RandomCP[][3] =
{
{1975.8439,-1306.2654,20.8422}, // Smoke_Leadó 1
{1087.4849,-1226.8771,15.8203}, // Smoke_Leadó 2
{-108.0777,-1573.6024,2.6172} // Smoke_Leadó 3
};
//----------------------------------------------------------
public OnPlayerCommandText(playerid, cmdtext[])
{
new cmd[256+1];
new idx;
cmd = strtok(cmdtext, idx);
if(strcmp(\"/buycigar\", cmd, true) == 0)
{
new iSeat = GetPlayerVehicleSeat(playerid);
new rand = random(sizeof(RandomCP));
if (IsPlayerInRangeOfPoint(playerid, 10, 2792.9084,-2356.3008,13.6328))
if (IsPlayerInVehicle(playerid, smokev))
if (iSeat == 0)
(117) if(gTeam[playerid] == TEAM_SMUGOFF)
SetPlayerCheckpoint(playerid, RandomCP[rand][0], RandomCP[rand][1],RandomCP[rand][2], 3);
gTeam[playerid] == TEAM_SMUGON;
}
else
{
SendClientMessage(playerid, COLOR_WHITE, \" Rossz helyen, vagy rossz autóban próbálkozol!\");
}
return 1;
}
(131) if(strcmp(\"/sellcigar\", cmds, true) == 0)
{
(133) if (IsPlayerInRangeOfPoint(playerid, 10, 1975.8439, -1306.2654, 20.8422);
(134) if(gTeam[playerid] == TEAM_SMUGON)
(135) if (IsPlayerInVehicle(playerid, smokev))
(136) if (iSeat == 0)
{
DisablePlayerCheckpoint(playerid);
gTeam[playerid] == TEAM_SMUGOFF;
}
(142) return 1;
}
//----------------------------------------------------------
public OnPlayerSpawn(playerid)
{
if(IsPlayerNPC(playerid)) return 1;
[/quote]
És itt vannak a hibakódok :
[mod]Hm..[/mod]
grandlarc.pwn(117) : warning 215: expression has no effect
grandlarc.pwn(131) : error 010: invalid function or declaration
grandlarc.pwn(133) : error 010: invalid function or declaration
grandlarc.pwn(134) : error 010: invalid function or declaration
grandlarc.pwn(135) : error 010: invalid function or declaration
grandlarc.pwn(136) : error 010: invalid function or declaration
grandlarc.pwn(142) : error 010: invalid function or declaration
grandlarc.pwn(184) : warning 215: expression has no effect //lényegtelen
grandlarc.pwn(591) : warning 203: symbol is never used: \"gArmySpawns\" //ez is
grandlarc.pwn(591) : warning 203: symbol is never used: \"gMedicalSpawns\" // szint. úgy
grandlarc.pwn(591) : warning 203: symbol is never used: \"gPoliceSpawns\" // ez is
Elõre is köszönöm a válaszokat.
if(strcmp(\"/sellcigar\", cmd, true) == 0)
{
if (IsPlayerInRangeOfPoint(playerid, 10, 1975.8439, -1306.2654, 20.8422) && gTeam[playerid] == TEAM_SMUGON && IsPlayerInVehicle(playerid, smokev) && iSeat == 0)
{
DisablePlayerCheckpoint(playerid);
gTeam[playerid] == TEAM_SMUGOFF;
}
return 1;
}
A fenti kód alkalmazásával 3-ra csökkent a hibák száma.
C:\\Users\\Notya\\Desktop\\samp03z_svr_R1_win32\\gamemodes\\grandlarc.pwn(130) : error 010: invalid function or declaration
C:\\Users\\Notya\\Desktop\\samp03z_svr_R1_win32\\gamemodes\\grandlarc.pwn(132) : error 010: invalid function or declaration
C:\\Users\\Notya\\Desktop\\samp03z_svr_R1_win32\\gamemodes\\grandlarc.pwn(137) : error 010: invalid function or declaration
if(strcmp(\"/sellcigar\", cmd, true) == 0) // ez a 130-as sor
if (IsPlayerInRangeOfPoint(playerid, 10, 1975.8439, -1306.2654, 20.8422 && gTeam[playerid] == TEAM_SMUGON && IsPlayerInVehicle(playerid, smokev) && iSeat == 0) // ez a 132-es
return 1; // ez a 137-es sor.
if(strcmp(\"/sellcigar\", cmd, true) == 0) // ez a 130-as sor
if (IsPlayerInRangeOfPoint(playerid, 10, 1975.8439, -1306.2654, 20.8422 && gTeam[playerid] == TEAM_SMUGON && IsPlayerInVehicle(playerid, smokev) && iSeat == 0) // ez a 132-es
return 1; // ez a 137-es sor. // ScreaM: Ez teljesen jó...
Az elsõben semmi probléma nincsen, lehet, hogy az elõtte álló sorban van a hiba.
A második probléma kijavítása a következõ:
if(IsPlayerInRangeOfPoint(playerid, 10, 1975.8439, -1306.2654, 20.8422) && gTeam[playerid] == TEAM_SMUGON && IsPlayerInVehicle(playerid, smokev) && iSeat == 0)
A harmadik probléma Gun22 hozzászólásában van, íme:
gTeam[playerid] == TEAM_SMUGOFF;
Ez rossz, mert értékadásnál mindig csak egy egyenlõségjelet alkalmazunk, ha értéket szeretnénk változtatni, akkor van szükség kettõ egyenlõségjelre, tehát a javítása:
gTeam[playerid] = TEAM_SMUGOFF;
;)