16.07.2011, 09:46
New scipt:
All I need help with now is making it so when he enters the last checkpoint, it sets the work to off, and then gives him 12k and 2 score.
pawn Код:
#include <a_samp>
#include <zcmd>
#define COLOR_WHITE 0xFFFFFFFF
public OnFilterScriptInit()
{
print("\n--------------------------------------");
print("Pilot Job system by TechKid100");
print("--------------------------------------\n");
return 1;
}
enum Work
{
IsWorking,
}
new WorkInfo[MAX_PLAYERS][Work];
public OnPlayerConnect(playerid)
{
WorkInfo[playerid][IsWorking] = 0;
return 1;
}
public OnPlayerDisconnect(playerid)
{
WorkInfo[playerid][IsWorking] = 0;
return 1;
}
COMMAND:work(playerid, params[])
{
if(!IsPlayerInPlane(playerid) && WorkInfo[playerid][IsWorking] == 0)
{
SendClientMessage(playerid, COLOR_WHITE, "{FF0000}Error: {FFFFFF}You need to be in a plane to work!");
return 1;
}
if(WorkInfo[playerid][IsWorking] > 0)
{
SendClientMessage(playerid, COLOR_WHITE, "{FF0000}Error: {FFFFFF}You are allready working!");
}
else if(IsPlayerInRangeOfPoint(playerid, 1000, 1580.8534, 1534.2217, 10.8316))
{
WorkInfo[playerid][IsWorking] = 1;
SendClientMessage(playerid, COLOR_WHITE, "Complete flight from {FFFF00}LVAP {FFFFFF}to {FFFF00}SFAP.");
SetPlayerCheckpoint(playerid, 1580.8534, 1534.2217, 10.8316, 5);
return 1;
}
//Sf to Ls (Flight 2)
else if(IsPlayerInRangeOfPoint(playerid, 1000, -1371.3795,-206.3711,14.1484))
{
WorkInfo[playerid][IsWorking] = 2;
SendClientMessage(playerid, COLOR_WHITE, "Complete flight from {FFFF00}SFAP {FFFFFF}to {FFFF00}LSAP.");
SetPlayerCheckpoint(playerid, -1371.3795,-206.3711,14.1484, 5);
return 1;
}
//Ls to Lv (Flight 3)
else if(IsPlayerInRangeOfPoint(playerid, 1000, 1721.4504,-2415.5193,13.5547))
{
WorkInfo[playerid][IsWorking] = 3;
SendClientMessage(playerid, COLOR_WHITE, "Complete flight from {FFFF00}LSAP {FFFFFF}to {FFFF00}LVAP.");
SetPlayerCheckpoint(playerid, 1721.4504, -2415.5193, 13.5547, 5);
return 1;
}
return 1;
}
COMMAND:stopwork(playerid, params[])
{
if(WorkInfo[playerid][IsWorking] == 0)
{
SendClientMessage(playerid, COLOR_WHITE, "{FF0000}Error: {FFFFFF}You are not working!");
return 1;
}
else if(WorkInfo[playerid][IsWorking] > 0)
{
SendClientMessage(playerid, COLOR_WHITE, "Work has been cancled!");
WorkInfo[playerid][IsWorking] = 0;
return 1;
}
return 1;
}
public OnPlayerEnterCheckpoint(playerid)
{
if(WorkInfo[playerid][IsWorking] == 1)
{
SetPlayerCheckpoint(playerid, -1371.3795,-206.3711,14.1484, 5);//change coordinates to flight one landing
GameTextForPlayer(playerid,"~g~Passegers Boarded!",3000,3);
}
else if(WorkInfo[playerid][IsWorking] == 2)
{
SetPlayerCheckpoint(playerid, 1721.4504,-2415.5193,13.5547, 5);//change to flight 2 landing
GameTextForPlayer(playerid,"~g~Passegers Boarded!",3000,3);
}
else
{
SetPlayerCheckpoint(playerid, 1580.8534,1534.2217,10.8316, 5);//change to flight 3 landing
GameTextForPlayer(playerid,"~g~Passegers Boarded!",3000,3);
}
return 1;
}
public OnPlayerDeath(playerid)
{
WorkInfo[playerid][IsWorking] = 0;
return 1;
}
stock IsPlayerInPlane(playerid)
{
if(IsPlayerInAnyVehicle(playerid))
{
switch(GetVehicleModel(GetPlayerVehicleID(playerid)))
{
case 593,592,577,563,553,548,520,519,513,512,511,
497,488,487,476,469,460,447,425,417,493,484,453: return 1;
default: return 0;
}
}
return 0;
}