CMD:crearveh(playerid, params[]) { new aNombre[24]; GetPlayerName(playerid,aNombre,24); if(!strcmp(aNombre, "Christian_Cano", true) || !strcmp(aNombre, "Christian_Cano", true) || !strcmp(aNombre, "Christian_Cano", true)) { if(JugadorInfo[playerid][jAdmin] < 4) return SendClientMessage(playerid, ROJO_OSCURO, SIN_PERMISOS); new modelo = 3000, color1 = 3000, color2 = 3000; if(sscanf(params, "iii", modelo, color1, color2)) { SendClientMessage(playerid, GRIS, "Uso: /crearveh [ID] [Color1] [Color2]"); return 1; } if(modelo < 400 || modelo > 611) return SendClientMessage(playerid, ROJO_OSCURO, "* Debes introducir un modelo entre 400 y 600."); if(color1 < 0 || color1 > 256) return SendClientMessage(playerid, ROJO_OSCURO, "* El color debe estar entre 0 y 256."); if(color2 < 0 || color2 > 256) return SendClientMessage(playerid, ROJO_OSCURO, "* El color debe estar entre 0 y 256."); new Float:pos[3]; GetPlayerPos(playerid, pos[0], pos[1], pos[2]); AgregarVehiculo(playerid, modelo, pos[0], pos[1], pos[2], 0, 0, color1, color2, 998, 100, 0); return 1; } else { SendClientMessage(playerid, ROJO_OSCURO, "* Comando deshabilitado temporalmente, uso restringido a Christian Cano unicamente."); } return 1; }
stock AgregarVehiculo(playerid, modelo, Float:coord_x, Float:coord_y, Float:coord_z, Float:angulo, inter, color_1, color_2, fac_id, gas, job, owner[]="Admin") { if(fac_id == 8888) { if(JugadorInfo[playerid][jCoches][0] != NOEXISTE && JugadorInfo[playerid][jCoches][1] != NOEXISTE && JugadorInfo[playerid][jCoches][2] != NOEXISTE) { SendClientMessage(playerid, ROJO_OSCURO, "* No te quedan slots de coches disponibles."); return 1; } } new ret = CreateVehicle(modelo, coord_x, coord_y, coord_z, angulo, color_1, color_2, 3000000); LinkVehicleToInterior(ret, inter); new panels,doors,lights,tires; GetVehicleDamageStatus(ret,panels,doors,lights,tires); //printf("Panels: %d | Doors: %d | Lights: %d | Tires: %d", panels, doors, lights, tires); new query[512]; format(query, 512, "INSERT INTO vehiculos (Modelo, X, Y, Z, Angle, Color1, Color2, FaccionID, Interior, Vida, panels, doors, lights, tires, Gasolina, Job, Paintjob, Componentes, Dueno, Roto) VALUES (%d, %f, %f, %f, %f, %d, %d, %d, %d, %f, %d, %d, %d, %d, %d, %d, -1, '', '%s', 0)", modelo, coord_x, coord_y, coord_z, angulo, color_1, color_2, fac_id, inter, 1000.0, panels, doors, lights, tires, gas, job, owner); mysql_query(database, query, true); AutoInfo[ret][aID] = cache_insert_id(); // Aquн es donde le asigna la ID segun el gm, que se usara en /propiedades o todos los demas comandos AutoInfo[ret][aModelo] = modelo; AutoInfo[ret][ax] = coord_x; AutoInfo[ret][ay] = coord_y; AutoInfo[ret][az] = coord_z; AutoInfo[ret][aa] = angulo; AutoInfo[ret][aColor1] = color_1; AutoInfo[ret][aColor2] = color_2; AutoInfo[ret][aFaccionID] = fac_id; // No Pongo mas datos de esto porque lo importante creo que es lo que indiquй
public OnVehicleSpawn(vehicleid) { if(GetVehicleModel(vehicleid) == 528) //FBI TRUCK UNOE { SetVehicleHealthEx(vehicleid, 2000); } CargaDelCamion[vehicleid] = 0; luzlanewestado[vehicleid] = 0; luzlanews1[vehicleid] = 0; luzlanews2[vehicleid] = 0; luzlanews3[vehicleid] = 0; luzlanews4[vehicleid] = 0; DestroyObject(luzlanews1[vehicleid]); DestroyObject(luzlanews2[vehicleid]); DestroyObject(luzlanews3[vehicleid]); DestroyObject(luzlanews4[vehicleid]); DestroyDynamicObject(LuzSS[0][vehicleid]); DestroyDynamicObject(LuzSS[1][vehicleid]); DestroyDynamicObject(LuzSS[2][vehicleid]); DestroyDynamicObject(LuzSS[3][vehicleid]); SinSonido[vehicleid] = 0; VehAlquilado[vehicleid] = 0; AutoInfo[vehicleid][aMotor] = 0; if(VehExploto[vehicleid] == 1) { SetVehicleHealthEx(vehicleid, 350.0); AutoInfo[vehicleid][aRoto] = 1; UpdateVehicleDamageStatus(vehicleid, 3565161, 33554946, 4, 0); } SetVehiclePos(vehicleid, AutoInfo[vehicleid][ax], AutoInfo[vehicleid][ay], AutoInfo[vehicleid][az]); SetVehicleZAngle(vehicleid, AutoInfo[vehicleid][aa]); LinkVehicleToInterior(vehicleid, AutoInfo[vehicleid][aInteriorID]); new matricula[40]; format(matricula, sizeof(matricula), "LS-%d", AutoInfo[vehicleid][aID]); SetVehicleNumberPlate(vehicleid, matricula); return 1; }
else if(strcmp(opcion, "eliminar", true) == 0) { DestroyVehicle(vehicleid); EliminarVehiculo(vehicleid); format(string, sizeof(string), "Administraciуn: %s eliminу el vehнculo %d.", NombreJugador(playerid), AutoInfo[vehicleid][aID]); ABroadCast(ROJO, string, 1); return 1; }
stock EliminarVehiculo(vehicleid) { new query[128]; format(query, 128, "DELETE FROM vehiculos WHERE ID = %d", AutoInfo[vehicleid][aID]); mysql_query(database, query, false); }
https://sampwiki.blast.hk/wiki/MySQL/R33#cache_insert_id
En cortas palabras esta mal usado, por eso no da la ID bien. |