Vehicle Spawn
#1

pawn Код:
CMD:dcar(playerid,params[]) {
 if(PlayerInfo[playerid][LoggedIn] == 1) {
        if(PlayerInfo[playerid][dRank] >= 1) {
        new Float: CarToX, Float: CarToY, Float: CarToZ;
        GetPlayerPos(playerid, CarToX, CarToY, CarToZ);
        PlayerInfo2[playerid][dcar] = 1;
        Car[playerid] = CreateVehicle(411, CarToX, CarToY, CarToZ, 90, 0, 0, -1);
        PutPlayerInVehicle(playerid, Car[playerid], 0);
        AddVehicleComponent(Car[playerid], 1010); // Nitro
        SendClientMessage(playerid, 0xFFFFFFAA, "Infernus Spawned");
        new string [128];
        new pName1[MAX_PLAYER_NAME];
        GetPlayerName(playerid, pName1, sizeof(pName1));
        format(string, sizeof(string), "{FFFF8F}[VIP]: {00D0FF}%s {FFFFFF}has used {00D0FF}/dcar", pName1);
        SendClientMessageToAll(0xFF0000FF, string);
        } else return SendClientMessage(playerid,red,"ERROR: You Need Atleast Donor Rank 1 To Use This Command");
 } else return SendClientMessage(playerid,red,"ERROR: You must be logged in to use this commands");
return 1;
}
How to make if they use this command again old car need to destroy and spawn new again ?

and destroy vehicle when player disconnect ?
Reply
#2

pawn Код:
CMD:dcar(playerid,params[])
{
    if(PlayerInfo[playerid][LoggedIn] == 1)
    {
        if(PlayerInfo[playerid][dRank] >= 1)
        {
            new Float: CarToX, Float: CarToY, Float: CarToZ, count;
            if(count == 1)
            {
                DestroyVehicle(Car[playerid]);
                    count = 0;
            }
            GetPlayerPos(playerid, CarToX, CarToY, CarToZ);
            PlayerInfo2[playerid][dcar] = 1;
            Car[playerid] = CreateVehicle(411, CarToX, CarToY, CarToZ, 90, 0, 0, -1);
            PutPlayerInVehicle(playerid, Car[playerid], 0);
            AddVehicleComponent(Car[playerid], 1010); // Nitro
            SendClientMessage(playerid, 0xFFFFFFAA, "Infernus Spawned");
            new string [128];
            new pName1[MAX_PLAYER_NAME];
            GetPlayerName(playerid, pName1, sizeof(pName1));
            format(string, sizeof(string), "{FFFF8F}[VIP]: {00D0FF}%s {FFFFFF}has used {00D0FF}/dcar", pName1);
            SendClientMessageToAll(0xFF0000FF, string);
            count++;
        }
        else return SendClientMessage(playerid,red,"ERROR: You Need Atleast Donor Rank 1 To Use This Command");
    }
    else return SendClientMessage(playerid,red,"ERROR: You must be logged in to use this commands");
    return 1;
}

public OnPlayerDisconnect(playerid)
{
    DestroyVehicle(Car[playerid]);
    return 1;
}
Try
Reply
#3

But you aren't resetting count... DestroyVehicle(Car[playerid]); is enough
//well you are creating new, but still it isnt needed
//so count cant be 1 if you are creating a new one again and again
Reply
#4

Quote:
Originally Posted by Matess
Посмотреть сообщение
But you aren't resetting count... DestroyVehicle(Car[playerid]); is enough
//well you are creating new, but still it isnt needed
That way works too.
Reply
#5

you are creating new count on top so there is no chance on count = 1 and it should be player variable and not global, but as i said it's pointless here
Reply
#6

@affan its not working its spawn vehicle again again
Reply
#7

Add DestroyVehicle before CreateVehicle simply
Reply
#8

Quote:
Originally Posted by Matess
Посмотреть сообщение
Add DestroyVehicle before CreateVehicle simply
Yeah use this way

pawn Код:
CMD:dcar(playerid,params[])
{
    if(PlayerInfo[playerid][LoggedIn] == 1)
    {
        if(PlayerInfo[playerid][dRank] >= 1)
        {
            new Float: CarToX, Float: CarToY, Float: CarToZ;
         DestroyVehicle(Car[playerid]);
            GetPlayerPos(playerid, CarToX, CarToY, CarToZ);
            PlayerInfo2[playerid][dcar] = 1;
            Car[playerid] = CreateVehicle(411, CarToX, CarToY, CarToZ, 90, 0, 0, -1);
            PutPlayerInVehicle(playerid, Car[playerid], 0);
            AddVehicleComponent(Car[playerid], 1010); // Nitro
            SendClientMessage(playerid, 0xFFFFFFAA, "Infernus Spawned");
            new string [128];
            new pName1[MAX_PLAYER_NAME];
            GetPlayerName(playerid, pName1, sizeof(pName1));
            format(string, sizeof(string), "{FFFF8F}[VIP]: {00D0FF}%s {FFFFFF}has used {00D0FF}/dcar", pName1);
            SendClientMessageToAll(0xFF0000FF, string);
        }
        else return SendClientMessage(playerid,red,"ERROR: You Need Atleast Donor Rank 1 To Use This Command");
    }
    else return SendClientMessage(playerid,red,"ERROR: You must be logged in to use this commands");
    return 1;
}
Reply
#9

Quote:
Originally Posted by Matess
Посмотреть сообщение
Add DestroyVehicle before CreateVehicle simply
oh ye thanks

DestroyVehicle(Car[playerid]);
Reply
#10

Add to player's variabe, let's say it's pInfo
pawn Код:
enum DATA
{
     Veh // add it
}
OnPlayerEnterVehicle:
pawn Код:
new veho = GetPlayerVehicleID(playerid);
pInfo[playerid][Veh] = veho;
return 1;
OnPlayerExitVehicle:
pawn Код:
pInfo[playerid][Veh] = -1;
return 1;
Inside the command:
pawn Код:
if(pInfo[playerid][Veh] != -1) DestroyVehicle(pInfo[playerid][Veh]);
Edit: damn i'm too late >.>
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)