How do I add these two scripted jobs into one filterscript?
#1

Hello, I'm trying to add these two jobs together instead of having one filterscript for every job. here is my current code.
(The first job works fine, but the second job doesn't) Also, when i compile it I get 7 warnings. Heres the current script

Quote:

#include <a_samp>

#define COLOR_DARKGOLD 0x808000AA
#define COLOR_RED 0xFF0000AA
#define COLOR_YELLOW 0xFFFF00AA
#define Checkpoint1 -256.0010,-1542.3809,3.9930
#define Checkpoint2 -231.8289,-1467.9810,4.9421
#define Checkpoint3 -193.9747,-1375.2502,4.7856
#define Checkpoint4 -246.0348,-1326.1063,8.9300
#define Checkpoint5 -407.1459,-1371.5518,23.6588
#define Checkpoint6 -564.7697,-1302.4977,22.5511
#define Checkpoint7 -569.0633,-1508.3352,9.1518
#define COLOR_RED 0xFF0000AA
#define COLOR_YELLOW 0xFFFF00AA



new combinejobrunning = 0;
new info;

forward GivePlayerOneExp(playerid);

public OnFilterScriptInit()
{
AddStaticVehicleEx(532,-370.1018,-1463.1403,26.6953,287.0754,0,0,10); // combine 1
AddStaticVehicleEx(532,-364.2571,-1479.7140,26.7041,285.6486,0,0,10); // combine 2
AddStaticVehicleEx(532,-361.6030,-1501.2618,24.8698,285.8201,0,0,10); // combine 3

info = CreatePickup(1239,1,-366.1941,-1440.3253,25.7266,-1);
}

public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/combine", cmdtext, true, 10) == 0)
{
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 532)
{
SetPlayerCheckpoint(playerid, Checkpoint1, 3.0);
CreateObject(823,-256.0010,-1542.3809,3.9930,0,0,0);
combinejobrunning = 1;
GameTextForPlayer(playerid, "~g~You started the job, good luck!", 3000, 3);
new name[MAX_PLAYER_NAME], string[48];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof(string), "%s is now doing the Combine job.", name );
SendClientMessageToAll(COLOR_RED, string);
return 1;
}
SendClientMessage(playerid, COLOR_RED,"You have to be in a truck to start the job");
}

if (strcmp("/combineinfo", cmdtext, true, 10) == 0)
{
SendClientMessage(playerid, COLOR_YELLOW, "You need to harvest the weed.");
SendClientMessage(playerid, COLOR_YELLOW, "If you enter the combine, type /combine and a red marker will appear.");
SendClientMessage(playerid, COLOR_YELLOW, "Just drive to the markers and you're done.");
return 1;
}
return 0;
}
public OnPlayerEnterCheckpoint(playerid)
{
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 532)
{
if (IsPlayerInRangeOfPoint(playerid, 7.0,Checkpoint1))
{
SetPlayerCheckpoint(playerid, Checkpoint2, 7.0);
CreateObject(823,-231.8289,-1467.9810,4.9421,0,0,0);
}
if (IsPlayerInRangeOfPoint(playerid, 7.0,Checkpoint2))
{
SetPlayerCheckpoint(playerid, Checkpoint3, 7.0);
CreateObject(823,-193.9747,-1375.2502,4.7856,0,0,0);
}
if (IsPlayerInRangeOfPoint(playerid, 7.0,Checkpoint3))
{
SetPlayerCheckpoint(playerid, Checkpoint4, 7.0);
CreateObject(823,-246.0348,-1326.1063,8.9300,0,0,0);
}
if (IsPlayerInRangeOfPoint(playerid, 7.0,Checkpoint4))
{
SetPlayerCheckpoint(playerid, Checkpoint5, 7.0);
CreateObject(823,-407.1459,-1371.5518,23.6588,0,0,0);
}
if (IsPlayerInRangeOfPoint(playerid, 7.0,Checkpoint5))
{
SetPlayerCheckpoint(playerid, Checkpoint6, 7.0);
CreateObject(823,-564.7697,-1302.4977,22.5511,0,0,0);
}
if (IsPlayerInRangeOfPoint(playerid, 7.0,Checkpoint6))
{
SetPlayerCheckpoint(playerid, Checkpoint7, 7.0);
}
if (IsPlayerInRangeOfPoint(playerid, 7.0,Checkpoint7))
{
GivePlayerMoney(playerid, 4000);
GameTextForPlayer(playerid, "~g~You Completed the job, well done!", 3000, 3);
SetVehicleToRespawn(2);
combinejobrunning = 0;
DisablePlayerCheckpoint(playerid);
}
}
}

public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 532)
{
SendClientMessage(playerid, COLOR_RED, "You can start the combine-job with /combine");
}
return 0;
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
if((combinejobrunning) == 1)
{
combinejobrunning = 0;
SendClientMessage(playerid, COLOR_RED, "You left your combine behind, get in again if you want to continue your job.");

}else if((combinejobrunning) == 0){

//Nothing
}
}

public OnPlayerPickUpPickup(playerid, pickupid)
{
if(pickupid == info)
{
GameTextForPlayer(playerid, "~g~Welcome at the Combine job, use /combineinfo to know more", 3000, 3);
}
}




//============================================New Job===========================




new flyjobrunning = 0;
new info1;

public OnFilterScriptInit1()
{
AddStaticVehicle(519,1729.8932,-2415.7798,14.4727,149.2040,1,1); //

info = CreatePickup(1239,1,1748.7014,-2421.0500,13.5547,-1);
}

public OnPlayerCommandText1(playerid, cmdtext[])
{
if (strcmp("/startflight", cmdtext, true, 10) == 0)
{
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 519)
{
flyjobrunning = 1;
SetPlayerCheckpoint(playerid, -1253.9714,238.6661,14.1484, 10);
GameTextForPlayer(playerid, "~g~You started the job, good luck!", 3000, 3);
new name[MAX_PLAYER_NAME], string[48];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof(string), "%s is now delivering goods with a plane.", name );
SendClientMessageToAll(COLOR_RED, string);

return 1;
}
SendClientMessage(playerid, COLOR_RED,"You have to be in the jobplane to start the job");
}
if (strcmp("/flyinfo", cmdtext, true, 10) == 0)
{
SendClientMessage(playerid, COLOR_YELLOW, "You need to bring the planeload to the airport in San Fierro.");
SendClientMessage(playerid, COLOR_YELLOW, "There they will reward you for your help.");
SendClientMessage(playerid, COLOR_YELLOW, "If you enter the truck, type /startflight and a red marker will appear.");
SendClientMessage(playerid, COLOR_YELLOW, "Just fly to the marker and you're done.");
return 1;
}
return 0;
}
public OnPlayerEnterCheckpoint1(playerid)
{
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 519)
{
GivePlayerMoney(playerid, 5000);
GameTextForPlayer(playerid, "~g~You Completed the job, well done!", 3000, 3);
SetVehicleToRespawn(1);
DisablePlayerCheckpoint(playerid);
flyjobrunning = 0;
SetPlayerPos(playerid, 1729.8932,-2415.7798,14.4727);
}
}
public OnPlayerEnterVehicle1(playerid, vehicleid, ispassenger)
{
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 519)
{
SendClientMessage(playerid, COLOR_RED, "You can start the Fly job with /startflight");
}
return 0;
}
public OnPlayerExitVehicle1(playerid, vehicleid)
{
if((flyjobrunning) == 1)
{
flyjobrunning = 0;
SendClientMessage(playerid, COLOR_RED, "You left the plane, you failed the job.");

}else if((flyjobrunning) == 0){

//Nothing
}
}

public OnPlayerPickUpPickup1(playerid, pickupid)
{
if(pickupid == info)
{
GameTextForPlayer(playerid, "~g~Welcome at the Fly job, use /flyinfo to know more", 3000, 3);
}
}


And the warnings.
Quote:

D:\user\Desktop\Raven's Roleplay 0.3c\filterscripts\combinejob.pwn(144) : warning 235: public function lacks forward declaration (symbol "OnFilterScriptInit1")
D:\user\Desktop\Raven's Roleplay 0.3c\filterscripts\combinejob.pwn(151) : warning 235: public function lacks forward declaration (symbol "OnPlayerCommandText1")
D:\user\Desktop\Raven's Roleplay 0.3c\filterscripts\combinejob.pwn(179) : warning 235: public function lacks forward declaration (symbol "OnPlayerEnterCheckpoint1")
D:\user\Desktop\Raven's Roleplay 0.3c\filterscripts\combinejob.pwn(191) : warning 235: public function lacks forward declaration (symbol "OnPlayerEnterVehicle1")
D:\user\Desktop\Raven's Roleplay 0.3c\filterscripts\combinejob.pwn(199) : warning 235: public function lacks forward declaration (symbol "OnPlayerExitVehicle1")
D:\user\Desktop\Raven's Roleplay 0.3c\filterscripts\combinejob.pwn(212) : warning 235: public function lacks forward declaration (symbol "OnPlayerPickUpPickup1")
D:\user\Desktop\Raven's Roleplay 0.3c\filterscripts\combinejob.pwn(219) : warning 203: symbol is never used: "info1"
Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase


7 Warnings.

Reply
#2

Either merge them both into the one callback or do call the callbacks inside the main callback.

pawn Код:
public OnFilterScriptInit()
{
    OnFilterScriptInit1();
    return 1;
}
You also must remember to forward public functions

pawn Код:
forward OnFilterScriptInit1();
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)