/Respawn all (Has to destroy certain veh's)
#1

Hello SA-MP Forum.

I have a question some of you might be able to answer.
So here we go!

I downloaded a Filterscript from the SA-MP Forum here.
It's Called ''CarSpawner'' (Forgot who made it, sorry. I will include a link in the Edit.)

I inserted this Filterscript into my gamemode.
My question is, how do i make the cars i spawned with /veh to be destroyed when i do /respawn all

The /veh code:
pawn Код:
CMD:veh(playerid, params[])
{
    if(PlayerInfo[playerid][pAdmin] < 4) return SendClientMessage(playerid, COLOR_GREY, "You are not authorized to use this command.");
    new Vehicle[32], VehicleID, ColorOne, ColorTwo;
    PlayerInfo[playerid][pCanSpawnVehicle] = true;
    if(sscanf(params, "s[32]D(1)D(1)", Vehicle, ColorOne, ColorTwo))
    {
        PlayerInfo[playerid][pCanSpawnVehicle] = true;
        SendClientMessage(playerid, COLOR_GREY, "[USAGE]: /veh[Vehiclename/Vehicleid]");
        SendClientMessage(playerid, COLOR_GREEN, "Colors can be set by using /veh ID Color Color.");
        return 1;
    }

    if(PlayerInfo[playerid][pCanSpawnVehicle])
    {
        VehicleID = GetVehicleModelIDFromName(Vehicle);
        if(VehicleID != 425 && VehicleID != 432 && VehicleID != 447 &&
           VehicleID != 430 && VehicleID != 417 && VehicleID != 435 &&
           VehicleID != 446 && VehicleID != 449 && VehicleID != 450 &&
           VehicleID != 452 && VehicleID != 453 && VehicleID != 454 &&
           VehicleID != 460 && VehicleID != 464 && VehicleID != 465 &&
           VehicleID != 469 && VehicleID != 472 && VehicleID != 473 &&
           VehicleID != 476 && VehicleID != 484 && VehicleID != 487 &&
           VehicleID != 488 && VehicleID != 493 && VehicleID != 497 &&
           VehicleID != 501 && VehicleID != 511 && VehicleID != 512 &&
           VehicleID != 513 && VehicleID != 519 && VehicleID != 520 &&
           VehicleID != 537 && VehicleID != 538 && VehicleID != 548 &&
           VehicleID != 553 && VehicleID != 563 && VehicleID != 564 &&
           VehicleID != 569 && VehicleID != 570 && VehicleID != 577 &&
           VehicleID != 584 && VehicleID != 590 && VehicleID != 591 &&
           VehicleID != 592 && VehicleID != 593 && VehicleID != 594 &&
           VehicleID != 595 && VehicleID != 606 && VehicleID != 607 &&
           VehicleID != 608 && VehicleID != 610 && VehicleID != 611) {
            if(VehicleID == -1 )
            {
                VehicleID = strval(Vehicle);

                if(VehicleID < 400 || VehicleID > 611 )
                {
                    return SendClientMessage(playerid, COLOR_GREY, "You entered an invalid vehiclename!");
                }
            }
            GetPlayerPos(playerid, vehpX, vehpY, vehpZ);
            GetPlayerFacingAngle(playerid, vehpAngle);
            PlayerInfo[playerid][pSpawnVehicle] = CreateVehicle(VehicleID, vehpX, vehpY, vehpZ+2.0, vehpAngle, ColorOne, ColorTwo, -1);
            LinkVehicleToInterior(PlayerInfo[playerid][pSpawnVehicle], GetPlayerInterior(playerid));
            PutPlayerInVehicle(playerid, PlayerInfo[playerid][pSpawnVehicle], 0);
            SendClientMessage(playerid, COLOR_GREY, "You succesfully spawned this vehicle!");
        } else {
            SendClientMessage(playerid, COLOR_GREY, "You are not allowed to spawn this vehicle!!");
        }
    } else {
        SendClientMessage(playerid, COLOR_GREY, "You can not spawn vehicles in this zone!");
}
    return 1;
}

The /respawn code:
pawn Код:
CMD:respawn(playerid, params[])
{
    new string[128], veh;
    if(!IsPlayerLoggedIn(playerid)) return SendClientMessage(playerid, COLOR_GREY, "You need to login first before using any command.");
    if(PlayerInfo[playerid][pAdmin] < 4) return SendClientMessage(playerid, COLOR_GREY, "You are not authorized to use this command.");
    if(!strcmp(params, "all", true))
    {
        for(new i=0; i<MAX_VEHICLES; i++)
        {
            new vehs;
            foreach(Player, x)
            {
                if(GetPlayerVehicleID(x) == i)
                {
                    vehs = 1;
                }
            }
            if(!vehs)
            {
                SetVehicleToRespawn(i);
                DestroyVehicle(PlayerInfo[playerid][pSpawnVehicle]);
            }
            vehs = 0;
        }
        format(string, sizeof(string), "AdmCmd: %s has respawned all unused vehicles.", RPN(playerid));
        SendClientMessageToAll(COLOR_LIGHTRED, string);
        return 1;
    }
    if(sscanf(params, "i", veh)) return SendClientMessage(playerid, COLOR_WHITE, "USAGE: /respawn [vehicleid/all]");
    SetVehicleToRespawn(veh);
    DestroyVehicle(PlayerInfo[playerid][pSpawnVehicle]);
    format(string, sizeof(string), "AdmWarn: %s has respawned vehicle ID %d.", RPN(playerid), veh);
    SendAdminMessage(COLOR_DARKRED, 1, string);
    return 1;
}
As you can see i tried some codes myself already.
But those dont really work well...

Thanks for reading & for helping in advance
Reply
#2

You can do something like:

pawn Код:
foreach(Player, i) {
if(PlayerInfo[playerid][pSpawnVehicle] > 0) {
DestroyVehicle(PlayerInfo[playerid][pSpawnVehicle]);
}
}
Reply
#3

Quote:
Originally Posted by Abagail
Посмотреть сообщение
You can do something like:

pawn Код:
foreach(Player, i) {
if(PlayerInfo[playerid][pSpawnVehicle] > 0) {
DestroyVehicle(PlayerInfo[playerid][pSpawnVehicle]);
}
}
That instead of
Код:
new vehs;
			foreach(Player, x)
			{
??
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)