25.09.2014, 15:52
Creo que este te servirб
Код:
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] == 8) 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, "ERROR: No puedes tener mбs coches, usuarios normales sуlo pueden tener 2 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(Info[playerid][pVIP] == 1 && carsamount >= 4) { SendClientMessageEx(playerid, COLOR_GREY, "ERROR: No puedes tener mбs coches, VIP1 Sуlo puede tener 4 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(Info[playerid][pVIP] == 2 && carsamount >= 8) { SendClientMessageEx(playerid, COLOR_GREY, "ERROR: No puedes tener mбs coches, VIP2 Sуlo puede tener 8 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(Info[playerid][pVIP] == 3 && carsamount >= 4) { SendClientMessageEx(playerid, COLOR_GREY, "ERROR: No puedes tener mбs coches, VIP1 Sуlo puede tener 4 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(Info[playerid][pVIP] == 4 && carsamount >= 8) { SendClientMessageEx(playerid, COLOR_GREY, "ERROR: No puedes tener mбs coches, VIP2 Sуlo puede tener 8 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; } }