WTFCS Community | Gaming community @ since 2011

Full Version: Comanda /closestcar
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Autor: FloriNNN

Avem nevoie de stock care este mai jos si de zCMD.



Code:
astea le puneti la inceputul GM-ului daca nu o aveti.
#include <zcmd>
#define COLOR_LIGHTRED   0xFF6347AA// este rosu deschis
#define COLOR_GREEN          0x0ea142FF// este verde inchis
 
Stock-ul il puneti unde vreti si vreau sa spun ca acesta este luat din GM-ul BigZone
stock GetClosestVehicle2(playerid, Float:dis)
{
    new Float:X,
        Float:Y,
        Float:Z;
    if(GetPlayerPos(playerid, X, Y, Z))
    {
        new vehicleid = INVALID_VEHICLE_ID;
        for(new v, Float:temp, Float:VX, Float:VY, Float:VZ; v != MAX_VEHICLES; v++)
        {
            if(GetVehiclePos(v, VX, VY, VZ))
            {
                VX -= X, VY -= Y, VZ -= Z;
                temp = VX * VX + VY * VY + VZ * VZ;
                if(temp < dis) dis = temp, vehicleid = v;
            }
        }
        dis = floatpower(dis, 0.5);
        return vehicleid;
    }
    return INVALID_VEHICLE_ID;
}

Acum o sa facem comanda:



Code:
CMD:closestcar(playerid, params[])
{ // aici deschidem comanda
    if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, COLOR_GREEN, "Nu poti folosi comanda pentru ca nu esti admin!"); // aici verificam daca este admin, daca aveti un GM de pe net o sa aveti if(PlayerInfo[playerid][pAdmin]>1)
       if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, COLOR_LIGHTRED, "Esti deja intr-o masina!"); // aici verificam daca se afla intr-o masina
       if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT){
    new cCar = GetClosestVehicle2(playerid, 50); // GetClosestVehicle2 este stock-ul si 50 reprezinta distanta de la care poate fi pus in masina, daca vreti sa modificatati distanta trebuie sa puneti de ex: vreau sa fie maxim 2 metri asa ca trebuie sa punem 20.
       PutPlayerInVehicle(playerid, cCar, 0); // aici il punem in masina pe cel care a folosit comanda, 0 este locul soferului
       }
       else SendClientMessage(playerid, COLOR_LIGHTRED, "Nu esti in jurul unei masini!"); // aici ii dam un mesaj ca nu se afla in jurul unei masini.
    return 1;
}//