SA-MP Forums Archive
Comprar autos por monedas - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Español/Spanish (https://sampforum.blast.hk/forumdisplay.php?fid=29)
+---- Thread: Comprar autos por monedas (/showthread.php?tid=539149)



Comprar autos por monedas - Metzone - 26.09.2014

Hola, ya que yo no sй, les dejo un comando aver si me pueden ayudar, bueno, yo quiero hacer que estй comando al comprar, en vez de ser por dinero, sea por pPR, y si no tengo los pPR que pide, no pueda comprarlo.

їAlguien me ayudaria en el comando?

((Yo no supe hacerlo, vi otro comando de comprar casa que si era por PR, pero no puedo hacerlo, me tira errores...nosй.))




pawn Код:
CMD:comprarvehiculo(playerid, params[]){
// Account Eating Bug Fix
        if(!IsPlayerInAnyVehicle(playerid))
        {
            TogglePlayerControllable(playerid, 1);
            SendClientMessageEx(playerid,COLOR_GRAD2,"Necesitas estar en el vehнculo que desea comprar.");
            return 1;
        }

        new vehicleid = GetPlayerVehicleID(playerid);
        new v = GetCarDealershipVehicleId(vehicleid);
        new d = GetCarDealershipId(vehicleid);
        {
            if(carsforplayer[playerid] == 4) return SendClientMessageEx(playerid,COLOR_WHITE,"Sуlo puedes tener 4 vehнculos.");
            if(CDSInfo[d][cdVehicleSpawn][0] == 0.0 && CDSInfo[d][cdVehicleSpawn][1] == 0.0 && CDSInfo[d][cdVehicleSpawn][2] == 0.0)
            {
                SendClientMessageEx(playerid, COLOR_GRAD1, "ERROR: El propietario de este Concesionario no ha configurado completamente los puntos de spawn de coches.");
                RemovePlayerFromVehicle(playerid);
                new Float:slx, Float:sly, Float:slz;
                GetPlayerPos(playerid, slx, sly, slz);
                SetPlayerPos(playerid, slx, sly, slz+1.2);
                TogglePlayerControllable(playerid, 1);
                return 1;
            }
            new playervehicleid = GetPlayerFreeVehicleId(playerid);
            new carsamount = VehicleCount(playerid);
            if((Info[playerid][pVIP] == 0) && carsamount >= 2)
            {
                SendClientMessageEx(playerid, COLOR_GREY, "Ya tienes 2 autos, para tener mбs, debes tener VIP1, o VIP2");
                RemovePlayerFromVehicle(playerid);
                new Float:slx, Float:sly, Float:slz;
                GetPlayerPos(playerid, slx, sly, slz);
                SetPlayerPos(playerid, slx, sly, slz+1.2);
                TogglePlayerControllable(playerid, 1);
                return 1;
            }
            if(Info[playerid][pVIP] == 1 && carsamount >= 3)
            {
                SendClientMessageEx(playerid, COLOR_GREY, "Ya tienes 3 autos, para tener mбs, debes tener VIP2");
                RemovePlayerFromVehicle(playerid);
                new Float:slx, Float:sly, Float:slz;
                GetPlayerPos(playerid, slx, sly, slz);
                SetPlayerPos(playerid, slx, sly, slz+1.2);
                TogglePlayerControllable(playerid, 1);
                return 1;
            }
            if(Info[playerid][pVIP] == 2 && carsamount >= 5)
            {
                SendClientMessageEx(playerid, COLOR_GREY, "ERROR: No puedes tener mбs coches, SVIP Sуlo puede tener 5 coches.");
                RemovePlayerFromVehicle(playerid);
                new Float:slx, Float:sly, Float:slz;
                GetPlayerPos(playerid, slx, sly, slz);
                SetPlayerPos(playerid, slx, sly, slz+1.2);
                TogglePlayerControllable(playerid, 1);
                return 1;
            }
            if(playervehicleid == -1)
            {
                SendClientMessageEx(playerid, COLOR_GREY, "ERROR: Este jugador no puede tener mбs coches.");
                RemovePlayerFromVehicle(playerid);
                new Float:slx, Float:sly, Float:slz;
                GetPlayerPos(playerid, slx, sly, slz);
                SetPlayerPos(playerid, slx, sly, slz+1.2);
                TogglePlayerControllable(playerid, 1);
                return 1;
            }
            new randcolor1 = Random(0, 126);
            new randcolor2 = Random(0, 126);
            TogglePlayerControllable(playerid, 1);
            new cost;
            new string[127];
            if(Info[playerid][pVIP] < 1)
            {
                cost = CDSInfo[d][cdVehicleCost][v];
                if(GetPVarInt(playerid, "Cash") < CDSInfo[d][cdVehicleCost][v])
                {
                    SendClientMessageEx(playerid, COLOR_GRAD1, "ERROR: No tienes dinero suficiente para comprar este coche.");
                    RemovePlayerFromVehicle(playerid);
                    new Float:slx, Float:sly, Float:slz;
                    GetPlayerPos(playerid, slx, sly, slz);
                    SetPlayerPos(playerid, slx, sly, slz+1.2);
                    return 1;
                }
                format(string, sizeof(string), " Gracias por comprar en %s.", CDSInfo[d][cdMessage]);
                SendClientMessageEx(playerid, COLOR_GRAD1, string);
                SetPVarInt(playerid, "Cash", GetPVarInt(playerid, "Cash")-CDSInfo[d][cdVehicleCost][v]);
                CDSInfo[d][cdTill] += ( CDSInfo[d][cdVehicleCost][v] * 40 ) / ( 100 );
            }
            else
            {
                cost = ( CDSInfo[d][cdVehicleCost][v] * 80 ) / ( 100 );
                if(GetPVarInt(playerid, "Cash") < cost)
                {
                    SendClientMessageEx(playerid, COLOR_GRAD1, "ERROR: No tienes dinero suficiente para comprar este coche.");
                    RemovePlayerFromVehicle(playerid);
                    new Float:slx, Float:sly, Float:slz;
                    GetPlayerPos(playerid, slx, sly, slz);
                    SetPlayerPos(playerid, slx, sly, slz+1.2);
                    return 1;
                }

                format(string, sizeof(string), " Gracias por comprar en %s.", CDSInfo[d][cdMessage]);
                SendClientMessageEx(playerid, COLOR_GRAD1, string);
                SetPVarInt(playerid, "Cash", GetPVarInt(playerid, "Cash") - cost );
                CDSInfo[d][cdTill] += cost;
            }
            new car = CreatePlayerVehicle(playerid, playervehicleid, CDSInfo[d][cdVehicleModel][v], CDSInfo[d][cdVehicleSpawn][0], CDSInfo[d][cdVehicleSpawn][1], CDSInfo[d][cdVehicleSpawn][2], CDSInfo[d][cdVehicleSpawn][3], randcolor1, randcolor2, cost);
            SetPlayerPos(playerid, CDSInfo[d][cdVehicleSpawn][0], CDSInfo[d][cdVehicleSpawn][1], CDSInfo[d][cdVehicleSpawn][2]+2);
            SetTimerEx("PutPlayerInVeh", 2000, 0, "dd", playerid, car);
            SavecDealership(d);
            return 1;
        }
        }



Respuesta: Comprar autos por monedas - aoEXE - 26.09.2014

pawn Код:
if(Variable[playerid][pPR] >= 100)
{
    SendClientMessage(playerid,-1,"Compraste un vehнculo por 100 monedas");
    Variable[playerid][pPR]-=100;
}
else
{
    SendClientMessage(playerid,-1,"No tienes suficientes monedas para comprar el vehнculo");
}



Respuesta: Comprar autos por monedas - Stront - 26.09.2014

Sustituye: GetPVarInt(playerid, "Cash")
por pDR


Respuesta: Comprar autos por monedas - Toolkit - 27.09.2014

Ehm.. Te aconsejo primero que nada, que no uses Bases ZC como la que estas utilizando, deja mucho que desear el cуdigo ademбs de que al agregarle o al modificarlo en raнz, te surgirбn algunos bugs.