Ok vou desenhar para ver se vocк entendeu,rs.
pawn Код:
// Final GM//
stock CreatePlayerMission(playerid, bool:TrailerCheck, MissionPay, Float:Startx, Float:Starty, Float:Startz, Float:Endx, Float:Endy, Float:Endz)
{
if (TrailerCheck == true)
{
new pvehiclemodel = GetVehicleModel(GetPlayerVehicleID(playerid));
if (pvehiclemodel == 403 || pvehiclemodel == 514 || pvehiclemodel == 515)
{
minfo[playerid][AllowTrailerCheck] = true;
}
else return 1;
}
minfo[playerid][Pay] = MissionPay;
minfo[playerid][Lastx] = Endx;
minfo[playerid][Lasty] = Endy;
minfo[playerid][Lastz] = Endz;
minfo[playerid][CheckpointID] = 1;
// minfo[playerid][MissionText] = Mission;
#if defined USE_RACE_CHECKPOINT
minfo[playerid][Checkpoint] = CreateDynamicRaceCP(RACE_CHECKPOINT_TYPE, Startx, Starty, Startz, Endx, Endy, Endz, CHECKPOINT_SIZE, -1, -1, -1, 100);
#else
minfo[playerid][Checkpoint] = CreateDynamicCP(playerid, Startx, Starty, Startz, CHECKPOINT_SIZE, -1, -1, -1, 100);
#endif
return 1;
}
stock CancelPlayersCurrentMission(playerid)
{
if (minfo[playerid][AllowTrailerCheck] == true)
{
KillTimer(TrailerCheckTimer[playerid]);
minfo[playerid][TrailerCheckCount] = 0;
minfo[playerid][AllowTrailerCheck] = false;
}
format(strn, sizeof(strn), "Jūs praradote $%d dėl krovinio praradimo.", COST_OF_LOST_GOODS);
SendClientMessage(playerid, RAUDONA, strn);
GivePlayerMoney(playerid, -COST_OF_LOST_GOODS);
#if defined USE_RACE_CHECKPOINT
DestroyDynamicRaceCP(playerid);
#else
DestroyDynamicCP(playerid);
#endif
return 1;
}
forward M_OnPlayerConnect(playerid);
public M_OnPlayerConnect(playerid)
{
minfo[playerid][Pay] = 0;
minfo[playerid][Lastx] = 0;
minfo[playerid][Lasty] = 0;
minfo[playerid][Lastz] = 0;
minfo[playerid][Checkpoint] = 0;
minfo[playerid][CheckpointID] = 0;
minfo[playerid][AllowTrailerCheck] = false;
minfo[playerid][TrailerCheckCount] = 0;
// minfo[playerid][MissionText] = "";
}
forward M_OnPlayerDisconnect(playerid);
public M_OnPlayerDisconnect(playerid)
{
if (minfo[playerid][CheckpointID] == 1)
{
KillTimer(LTimer[playerid]);
}
if (minfo[playerid][CheckpointID] == 2)
{
KillTimer(ULTimer[playerid]);
if (minfo[playerid][AllowTrailerCheck] == true)
{
KillTimer(TrailerCheckTimer[playerid]);
}
}
return 1;
}
forward M_OnPlayerEnterCheckpoint(playerid);
public M_OnPlayerEnterCheckpoint(playerid)
{
if (minfo[playerid][CheckpointID] == 1)
{
if (minfo[playerid][AllowTrailerCheck] == true)
{
if (IsTrailerAttachedToVehicle(GetPlayerVehicleID(playerid)))
{
minfo[playerid][TrailerID] = GetVehicleTrailer(GetPlayerVehicleID(playerid));
TrailerCheckTimer[playerid] = SetTimerEx("TrailerCheck", 1000, true, "d" , playerid);
}
else return SendClientMessage(playerid, MELYNA, "Jūs neesate prisikabinę priekabos!");
}
SendClientMessage(playerid, MELYNA, "Kraunama, praљome palaukti.");
NustatytiBusena(playerid, 0);
SetPVarInt(playerid,"Iskrauna", 1);
LTimer[playerid] = SetTimerEx("Loading", 15000, false, "d" , playerid);
}
else if (minfo[playerid][CheckpointID] == 2)
{
if (minfo[playerid][AllowTrailerCheck] == true)
{
if (IsTrailerAttachedToVehicle(GetPlayerVehicleID(playerid)))
{
if (minfo[playerid][TrailerID] == GetVehicleTrailer(GetPlayerVehicleID(playerid)))
{
KillTimer(TrailerCheckTimer[playerid]);
minfo[playerid][AllowTrailerCheck] = false;
}
else
{
SendClientMessage(playerid, MELYNA, "Jūs neesate prisikabinę priekabos, su kuria pradėjote veћti krovinį.");
}
}
else return SendClientMessage(playerid, MELYNA, "Jūs neesate prisikabinę priekabos.");
}
SendClientMessage(playerid,MELYNA, "Iљkraunama, praљome palaukti.");
NustatytiBusena(playerid, 0);
SetPVarInt(playerid,"Iskrauna", 1);
ULTimer[playerid] = SetTimerEx("UnLoading", 30000, false, "d" , playerid);
}
return 1;
}
forward M_OnPlayerEnterRaceCheckpoint(playerid);
public M_OnPlayerEnterRaceCheckpoint(playerid)
{
if (minfo[playerid][CheckpointID] == 1)
{
if (minfo[playerid][AllowTrailerCheck] == true)
{
if (IsTrailerAttachedToVehicle(GetPlayerVehicleID(playerid)))
{
minfo[playerid][TrailerID] = GetVehicleTrailer(GetPlayerVehicleID(playerid));
TrailerCheckTimer[playerid] = SetTimerEx("TrailerCheck", 1000, true, "d" , playerid);
}
else return SendClientMessage(playerid, MELYNA, "Jūs neesate prisikabinę priekabos.");
}
SendClientMessage(playerid, MELYNA, "Kraunama, praљome palaukti.");
NustatytiBusena(playerid, 0);
SetPVarInt(playerid,"Iskrauna", 1);
LTimer[playerid] = SetTimerEx("Loading", 15000, false, "d" , playerid);
}
else if (minfo[playerid][CheckpointID] == 2)
{
if (minfo[playerid][AllowTrailerCheck] == true)
{
if (IsTrailerAttachedToVehicle(GetPlayerVehicleID(playerid)))
{
if (minfo[playerid][TrailerID] == GetVehicleTrailer(GetPlayerVehicleID(playerid)))
{
KillTimer(TrailerCheckTimer[playerid]);
minfo[playerid][AllowTrailerCheck] = false;
}
else
{
SendClientMessage(playerid, MELYNA, "Jūs neesate prisikabinę priekabos, su kuria pradėjote veћti krovinį.!");
}
}
else return SendClientMessage(playerid, MELYNA, "Jūs neesate prisikabinę priekabos.");
}
SendClientMessage(playerid, MELYNA, "Iљkraunama, praљome palaukti.");
NustatytiBusena(playerid, 0);
SetPVarInt(playerid,"Iskrauna", 1);
ULTimer[playerid] = SetTimerEx("UnLoading", 30000,false, "d" , playerid);
}
return 1;
}
forward Loading(playerid);
public Loading(playerid)
{
minfo[playerid][CheckpointID] = 2;
NustatytiBusena(playerid, 1);
SetPVarInt(playerid,"Iskrauna", 0);
#if defined USE_RACE_CHECKPOINT
DestroyDynamicRaceCP(playerid);
minfo[playerid][Checkpoint] = CreateDynamicRaceCP(RACE_CHECKPOINT_TYPE, minfo[playerid][Lastx], minfo[playerid][Lasty], minfo[playerid][Lastz], minfo[playerid][Lastx], minfo[playerid][Lasty], minfo[playerid][Lastz], CHECKPOINT_SIZE, -1, -1, -1, 100);
#else
DestroyDynamicCP(playerid);
minfo[playerid][Checkpoint] = CreateDynamicCP(playerid, minfo[playerid][Lastx], minfo[playerid][Lasty], minfo[playerid][Lastz], CHECKPOINT_SIZE, -1, -1, -1, 100);
#endif
return 1;
}
forward UnLoading(playerid);
public UnLoading(playerid)
{
minfo[playerid][CheckpointID] = 0;
NustatytiBusena(playerid, 1);
SetPVarInt(playerid,"Iskrauna", 0);
format(strn, sizeof(strn), "Sveikiname. Sėkmingai pristatėte krovinį, uћtai gavote $%d", minfo[playerid][Pay]);
SendClientMessage(playerid, MELYNA, strn);
GivePlayerMoney(playerid, minfo[playerid][Pay]);
OnPlayerFinishMission(playerid);
#if defined USE_RACE_CHECKPOINT
DestroyDynamicRaceCP(playerid);
#else
DestroyDynamicCP(playerid);
#endif
return 1;
}
forward TrailerCheck(playerid);
public TrailerCheck(playerid)
{
if (minfo[playerid][TrailerID] == GetVehicleTrailer(GetPlayerVehicleID(playerid)))
{
if (minfo[playerid][TrailerCheckCount] >= 1)
{
new TimeRemaining;
TimeRemaining = 30 - minfo[playerid][TrailerCheckCount];
SendClientMessage(playerid, MELYNA, strn);
format(strn, sizeof(strn), "Jūs sėkmingai prisikabinote priekabą (%d sekundę(-es)", TimeRemaining);
}
minfo[playerid][TrailerCheckCount] = 0;
return 1;
}
if (minfo[playerid][TrailerCheckCount] == 0)
{
SendClientMessage(playerid, MELYNA, "Jūs turite 30sekundћių prisikabinti savo priekabą.");
minfo[playerid][TrailerCheckCount]++;
}
minfo[playerid][TrailerCheckCount]++;
if (minfo[playerid][TrailerCheckCount] >= 30)
{
format(strn, sizeof(strn), "Jūs praradote $%d uћ prarastą priekabą.", COST_OF_LOST_GOODS);
SendClientMessage(playerid,RAUDONA, strn);
GivePlayerMoney(playerid, -COST_OF_LOST_GOODS);
KillTimer(TrailerCheckTimer[playerid]);
minfo[playerid][TrailerCheckCount] = 0;
minfo[playerid][AllowTrailerCheck] = false;
#if defined USE_RACE_CHECKPOINT
DestroyDynamicRaceCP(playerid);
#else
DestroyDynamicCP(playerid);
#endif
}
return 1;
}
forward OnPlayerFinishMission(playerid);
Se nгo entender,se mata.. rs
Nгo vi seu ultimo post..
Mas baixar streamer e coloque na pasta do Pawno,ou aplicativo que usa para editar pawn..