04.11.2012, 10:49
Код:
new Float:Airports[][3] =
{
{1726.0903,-2415.3723,13.5547},
{-1328.1351,-253.0038,14.1484},
{1571.5367,1537.0599,10.8289},
{-1375.4791,-221.9824,14.1484},
{1574.7767,1494.8152,10.8289},
{1645.0848,-2417.2478,13.5547},
{1571.5367,1537.0599,10.8289}
};
Float:GetDisFromPlayerToPoint(playerid,Float:x,Float:y,Float:z)
{
new Float:xp,Float:yp,Float:zp;
GetPlayerPos(playerid,xp,yp,zp);
return floatsqroot(floatpower(floatabs(floatsub(x,xp)),2)+floatpower(floatabs(floatsub(y,yp)),2)+floatpower(floatabs(floatsub(z,zp)),2));
}
GetClosestAirport(playerid)
{
new Airport = -1;
new Float:dis = 999999.0;
for(new x = 0 ; x < sizeof(Airports); x++)
{
if(GetDisFromPlayerToPoint(playerid,Airports[x][0],Airports[x][1],Airports[x][2]) < dis)
{
dis = GetDisFromPlayerToPoint(playerid,Airports[x][0],Airports[x][1],Airports[x][2]);
Airport = x;
}
}
return Airport;
}
Код:
if(strcmp(cmdtext, "/work", true) == 0 || strcmp(cmdtext, "/w", true) == 0)
{
if (GetPVarInt(playerid, "Flight") == 1)
{
return SendClientMessage(playerid, COLOR_RED, "You are already in a flight!");
}
if (GetPVarInt(playerid, "Work") > 0)
{
return SendClientMessage(playerid, COLOR_RED, "You are already in a work!");
}
new vehicleid = GetPlayerVehicleID(playerid);
if(GetVehicleModel(vehicleid) == 519)
{
new IslandName[48], szString[128];
SetPVarInt(playerid, "Work", 1);
MissionVehicle[playerid] = GetPlayerVehicleID(playerid);
switch(GetClosestAirport(0))
{
case 0: {
Island[Las_Venturas][playerid]=SetPlayerFlightCheckpoint(playerid,1571.5367,1537.0599,10.8289, 10.0);
IslandName="Las Venturas Gate C"; }
case 1: {
Island[San_Fierro][playerid] = SetPlayerFlightCheckpoint(playerid, -1328.1351,-253.0038,14.1484, 10.0);
IslandName="San Fierro Gate D"; }
case 2: {
Island[Los_Santos][playerid] = SetPlayerFlightCheckpoint(playerid, 1726.0903,-2415.3723,13.5547, 10.0);
IslandName="Los Santos Gate D"; }
case 3: {
Island[San_Fierro][playerid] = SetPlayerFlightCheckpoint(playerid, -1375.4791,-221.9824,14.1484, 10.0);
IslandName="San Fierro Gate E"; }
case 4: {
Island[Las_Venturas][playerid] = SetPlayerFlightCheckpoint(playerid, 1574.7767,1494.8152,10.8289, 10.0);
IslandName="Las Venturas Gate E"; }
case 5: {
Island[Los_Santos][playerid] = SetPlayerFlightCheckpoint(playerid, 1645.0848,-2417.2478,13.5547, 10.0);
IslandName="Los Santos Gate E"; }
}
FirstAPName[playerid] = IslandName;
format(szString, 128, "Go to %s to pick up the passengers!", IslandName);
WorkTimer[playerid] = SetTimerEx("WorkingMinutes", 60000, true, "i", playerid);
SendClientMessage(playerid, COLOR_LIGHTGREEN, szString);
Quote:
|
Get closest airport doesn't work tell me what is the problem please!! |

