how to make /park
#1

how to make /parkcar for below script i dont know how to make them park in a save file.
and i also want to save the tuning of cars in a file like /savetune it save our current tunning in a file.
pawn Code:
#define FILTERSCRIPT
#define COLOR_RED 0xAA3333AA

#include <a_samp>

new Summair;
new Summair1;

public OnFilterScriptInit()
{
    Summair = AddStaticVehicle(562,-1959.1219,288.1400,35.1337,89.6646,145,145);
    Summair1 = AddStaticVehicle(411,-1986.5643, 248.8863, 34.9182, 0, 0, 0);
    AddVehicleComponent(Summair, 1036);
    AddVehicleComponent(Summair, 1040);
    AddVehicleComponent(Summair, 1034);
    AddVehicleComponent(Summair, 1172);
    AddVehicleComponent(Summair, 1149);
    AddVehicleComponent(Summair, 1035);
    AddVehicleComponent(Summair, 1002);
    AddVehicleComponent(Summair, 1079);
    return 1;
}


public OnPlayerStateChange(playerid, newstate, oldstate)
{
    new PlayerName[24];
    GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

    if(newstate == PLAYER_STATE_DRIVER) {
        new Vehicle = GetPlayerVehicleID(playerid);
        if(Vehicle == Summair) {
            if(strcmp(PlayerName,"Summair",true)) {
                RemovePlayerFromVehicle(playerid);
                SendClientMessage(playerid, 0xAA3333AA, "This car is reserved for: Summair");

            }
        }
        if(Vehicle == Summair1) {
            if(strcmp(PlayerName,"Summair",true)) {
                RemovePlayerFromVehicle(playerid);
                SendClientMessage(playerid, 0xAA3333AA, "This car is reserved for: Summair");
            }
        }
       
    }
    return 1;
}


public OnVehicleSpawn(vehicleid)
{
    AddVehicleComponent(Summair, 1036);
    AddVehicleComponent(Summair, 1040);
    AddVehicleComponent(Summair, 1034);
    AddVehicleComponent(Summair, 1172);
    AddVehicleComponent(Summair, 1149);
    AddVehicleComponent(Summair, 1035);
    AddVehicleComponent(Summair, 1002);
    AddVehicleComponent(Summair, 1079);
}
Reply
#2

Sir you want the code which save your own cars?
Reply
#3

Strcmp :

pawn Code:
enum pInfo
{
pCarkey,
pCarkey2,
pCarkey3,
};

new CarInfo[SCRIPT_OWNCARS][cInfo];

enum carInfo
{
    Float:CarSpawnX,
    Float:CarSpawnY,
    Float:CarSpawnZ,
};
pawn Code:
if(strcmp(cmd,"/park",true) == 0)
    {
 if (!IsPlayerInAnyVehicle(playerid))
                {
                    SendClientMessage(playerid,COLOR_GREY," You must be inside your vehicle !");
                    return 1;
                }
                new key;
                if(PlayerInfo[playerid][pCarkey] == VehicleOwned[idcar]) { key = PlayerInfo[playerid][pCarkey]; }
                else if(PlayerInfo[playerid][pCarkey2] == VehicleOwned[idcar]) { key = PlayerInfo[playerid][pCarkey2]; }
                else if(PlayerInfo[playerid][pCarkey3] == VehicleOwned[idcar]) { key = PlayerInfo[playerid][pCarkey3]; }
                else { return 1; }
                new Float:x, Float:y, Float:z, Float:angle;
                GetVehiclePos(idcar, x, y, z);
                GetVehicleZAngle(idcar, angle);
                CarInfo[key][cLocationx] = x;
                CarInfo[key][cLocationy] = y;
                CarInfo[key][cLocationz] = z;
                CarInfo[key][cAngle] = angle;
                SendClientMessage(playerid,COLOR_WHITE,"[INFO]: You have parked your vehicle, It respawn here anytime now.");
                SaveCars();
            }
Zcmd:

pawn Code:
enum pInfo
{
pKey[129],
pVehicleKeysFrom,
};

pawn Code:
CMD:park(playerid, params[])
{
    if(PlayerInfo[playerid][pVehicleKeysFrom] != INVALID_PLAYER_ID)
    {
        new ownerid = PlayerInfo[playerid][pVehicleKeysFrom];
        if(IsPlayerConnected(ownerid))
        {
            new d = PlayerInfo[playerid][pVehicleKeys];
            if(IsPlayerInVehicle(playerid, PlayerVehicleInfo[ownerid][d][pvId]))
            {
                if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SendClientMessageEx(playerid, COLOR_GREY, "You must be in the driver seat.");
                new Float:x, Float:y, Float:z, Float:angle, Float:health;
                GetVehicleHealth(PlayerVehicleInfo[ownerid][d][pvId], health);
                if(health < 800) return SendClientMessageEx(playerid, COLOR_GREY, " Your vehicle is too damaged to park it.");
                if(PlayerInfo[playerid][pLockCar] == GetPlayerVehicleID(playerid)) PlayerInfo[playerid][pLockCar] = INVALID_VEHICLE_ID;
                if(IsARC(GetPlayerVehicleID(playerid))) // RC Vehicles
                {
                    new Float:vehPos[3];
                    GetVehiclePos(GetPlayerVehicleID(playerid),vehPos[0], vehPos[1], vehPos[2]);
                    SetPlayerPos(playerid,vehPos[0], vehPos[1]+0.5, vehPos[2]+0.5);
                }
                GetVehiclePos(PlayerVehicleInfo[ownerid][d][pvId], x, y, z);
                GetVehicleZAngle(PlayerVehicleInfo[ownerid][d][pvId], angle);
                SurfingCheck(GetPlayerVehicleID(playerid));
                UpdatePlayerVehicleParkPosition(ownerid, d, x, y, z, angle, health);
                PutPlayerInVehicle(playerid, GetPlayerVehicleID(playerid), 0);
                SetPlayerArmedWeapon(playerid, 0);

                new string[29 + (MAX_PLAYER_NAME * 2)];
                format(string, sizeof(string), "* %s has parked %s's vehicle.", GetPlayerNameEx(playerid), GetPlayerNameEx(ownerid));
                ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                return 1;
            }
        }
    }
    for(new d = 0 ; d < MAX_PLAYERVEHICLES; d++)
    {
        if(IsPlayerInVehicle(playerid, PlayerVehicleInfo[playerid][d][pvId]))
        {
            new Float:x, Float:y, Float:z, Float:angle, Float:health;
            GetVehicleHealth(PlayerVehicleInfo[playerid][d][pvId], health);
            if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SendClientMessageEx(playerid, COLOR_GREY, "You must be in the driver seat.");
            if(health < 800) return SendClientMessageEx(playerid, COLOR_GREY, " Your vehicle is too damaged to park it.");
            if(PlayerInfo[playerid][pLockCar] == GetPlayerVehicleID(playerid)) PlayerInfo[playerid][pLockCar] = INVALID_VEHICLE_ID;
            GetVehiclePos(PlayerVehicleInfo[playerid][d][pvId], x, y, z);
            GetVehicleZAngle(PlayerVehicleInfo[playerid][d][pvId], angle);
            SurfingCheck(GetPlayerVehicleID(playerid));
            UpdatePlayerVehicleParkPosition(playerid, d, x, y, z, angle, health);
            PutPlayerInVehicle(playerid, PlayerVehicleInfo[playerid][d][pvId], 0);
            SetPlayerArmedWeapon(playerid, 0);

            new string[30 + (MAX_PLAYER_NAME * 2)];
            format(string, sizeof(string), "* %s has parked their vehicle.", GetPlayerNameEx(playerid));
            ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
            return 1;
        }
    }
    SendClientMessageEx(playerid, COLOR_GREY, "You need to be inside a vehicle that you own.");
    return 1;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)