forward GuardarMaletero(playerid, vehicleid, mano); //Guardar un objeto en el maletero de un vehнculo public GuardarMaletero(playerid, vehicleid, mano) { if(VehMaletero[vehicleid] == 0){return 1;} ActualizarManos(playerid); if(mano == 1) { if(PlayerData[playerid][pManoDer] == 0){SendClientMessage(playerid, COLOR_GREY, "No tienes nada en tu mano derecha."); return 1;} new Mano = PlayerData[playerid][pManoDer]; new Cant = PlayerData[playerid][pManoDerCant]; if(ObjetoInfo[Mano][IDArma] > 0) //Guarda un arma { Cant = GetPlayerAmmo(playerid); RemovePlayerWeapon(playerid, ObjetoInfo[Mano][IDArma]); } new string[128]; new BonnetLibre; for(new x = 0; x < 7; x++) //Coloca el objeto en el primer slot libre del maletero { if(CarData[vehicleid][carMaletero][x] == 0) { CarData[vehicleid][carMaletero][x] = Mano; CarData[vehicleid][carMaleteroCant][x] = Cant; RemovePlayerAttachedObject(playerid, 1); PlayerData[playerid][pManoDer] = 0; PlayerData[playerid][pManoDerCant] = 0; format(string, sizeof(string), "* Guardas u%s (%d) en el maletero.", ObjetoInfo[Mano][NombreObjeto], Cant); SendClientMessage(playerid, COLOR_GREEN, string); BonnetLibre = 1; VehMaleteroPlayer[playerid] = 0; Car_Save(vehicleid); return 1; } } if(BonnetLibre == 0){SendClientMessage(playerid, COLOR_GREY, "Todos los huecos del maletero estбn ocupados."); return 1;} } else if(mano == 2) { if(PlayerData[playerid][pManoIzq] == 0){SendClientMessage(playerid, COLOR_GREY, "No tienes nada en tu mano izquierda."); return 1;} new Mano = PlayerData[playerid][pManoIzq]; new Cant = PlayerData[playerid][pManoIzqCant]; new string[128]; new BonnetLibre; for(new x = 0; x < 7; x++) //Coloca el objeto en el primer slot libre que encuentra { if(CarData[vehicleid][carMaletero][x] == 0) { CarData[vehicleid][carMaletero][x] = Mano; CarData[vehicleid][carMaleteroCant][x] = Cant; RemovePlayerAttachedObject(playerid, 2); PlayerData[playerid][pManoIzq] = 0; PlayerData[playerid][pManoIzqCant] = 0; format(string, sizeof(string), "* Guardas u%s (%d) en el maletero.", ObjetoInfo[Mano][NombreObjeto], Cant); SendClientMessage(playerid, COLOR_GREEN, string); BonnetLibre = 1; VehMaleteroPlayer[playerid] = 0; Car_Save(vehicleid); return 1; } } if(BonnetLibre == 0){SendClientMessage(playerid, COLOR_GREY, "Todos los huecos del maletero estбn ocupados."); return 1;} } return 1; } |
for(new x = 0; x < 7; x ++) { format(query, 3000, "UPDATE `cars` SET `carMaletero%d` = '%d', `carMaleteroCant%d` = '%d' WHERE `carID` = '%d'", x+1, CarData[carid][carMaletero][x], x+1, CarData[carid][carMaleteroCant][x], CarData[carid][carID]); mysql_query(1, query); } |
for (new a = 0; a < 7; a ++) { format(maletero, sizeof(maletero), "carMaletero%d", a+1); format(maleterocant, sizeof(maleterocant), "carMaleteroCant%d", a+1); CarData[i][carMaletero][a] = cache_get_field_content_int(0, maletero); CarData[i][carMaleteroCant][a] = cache_get_field_content_int(0, maleterocant); } |
SELECT * FROM `cars` WHERE `carID` = '%d'
mysql_tquery(g_iHandle, "SELECT * FROM `cars`", "Car_Load", "" |
Car_Save(carid) { static query[1024]; format(query, sizeof(query), "UPDATE `cars` SET `carModel` = '%d', `carOwner` = '%d', `carPosX` = '%.4f', `carPosY` = '%.4f', `carPosZ` = '%.4f', `carPosR` = '%.4f', `carColor1` = '%d', `carColor2` = '%d', `carPaintjob` = '%d', `carLocked` = '%d'", CarData[carid][carModel], CarData[carid][carOwner], CarData[carid][carPos][0], CarData[carid][carPos][1], CarData[carid][carPos][2], CarData[carid][carPos][3], CarData[carid][carColor1], CarData[carid][carColor2], CarData[carid][carPaintjob], CarData[carid][carLocked] ); for(new x = 0; x < 7; x ++) { format(query, 1024, "UPDATE `cars` SET `carMaletero%d` = '%d', `carMaleteroCant%d` = '%d' WHERE `carID` = '%d'", x+1, CarData[carid][carMaletero][x], x+1, CarData[carid][carMaleteroCant][x], CarData[carid][carID]); mysql_query(1, query); } format(query, sizeof(query), "%s, `carMod1` = '%d', `carMod2` = '%d', `carMod3` = '%d', `carMod4` = '%d', `carMod5` = '%d', `carMod6` = '%d', `carMod7` = '%d', `carMod8` = '%d'", query, CarData[carid][carMods][0], CarData[carid][carMods][1], CarData[carid][carMods][2], CarData[carid][carMods][3], CarData[carid][carMods][4], CarData[carid][carMods][5], CarData[carid][carMods][6], CarData[carid][carMods][7], CarData[carid][carMods][8] ); return mysql_tquery(g_iHandle, query); } |
Код:
for (new a = 0; a < 7; a ++) { format(maletero, sizeof(maletero), "carMaletero%d", a+1); format(maleterocant, sizeof(maleterocant), "carMaleteroCant%d", a+1); CarData[i][carMaletero][a] = cache_get_field_content_int(0, maletero); CarData[i][carMaleteroCant][a] = cache_get_field_content_int(0, maleterocant); } |
for (new a = 0; a < 7; a ++)
{
format(maletero, sizeof(maletero), "carMaletero%d", a);
format(maleterocant, sizeof(maleterocant), "carMaleteroCant%d", a);
CarData[i][carMaletero][a] = cache_get_field_content_int(0, maletero);
CarData[i][carMaleteroCant][a] = cache_get_field_content_int(0, maleterocant);
}
SELECT * FROM `cars` /* Carga todos los coches. Si tienes 5 coches te devolverб 5 filas con los нndices 0 - 4. */
mysql_pquery(sql_handle, "SELECT * FROM `cars`", "Car_Load");
forward Car_Load();
public Car_Load()
{
new filas = cache_get_row_count();
for(new i = 0; i < filas; i++)
{
for(new a = 0; a < 7; a++)
{
format(maletero, sizeof(maletero), "carMaletero%d", a);
format(maleterocant, sizeof(maleterocant), "carMaleteroCant%d", a);
CarData[i][carMaletero][a] = cache_get_field_content_int(i, maletero);
CarData[i][carMaleteroCant][a] = cache_get_field_content_int(i, maleterocant);
}
}
return 1; /* ЎVaciamos el cache! */
}
por quй es esto? mysql_query(1, query); quй conexiуn estбs usando? imagino que la cero y ahн utilizas el 1 que posiblemente no estб activa.
|
De entrada aquн arriba la estбs liando, el primer carMaletero va a ser carMaletero1 ya que haces a + 1. ЎMAL! En la foto que pasaste el primer carMaletero es carMaletero0, van del 0 al 6. Entonces el bucle deberнa ser algo como:
PHP код:
їSabes quй cosa es el 0 que te puse en negrita? Imagino que no... bueno, pues quieto ahн que te lo digo yo. ЎEs la fila de la que se cogen los datos! їSiempre cargas de la fila 0 o quй pasa? Si sabes lo que hace la siguiente consulta no deberнas cometer fallos de ese tipo: PHP код:
PHP код:
Aparte del bucle de queries que haces a la base de datos, seguramente tendrбs algъn otro fallo en el cуdigo, pero bueno... te respondн mбs o menos a lo que preguntaste. La primera connection handle siempre es 1. |
"warning 219: local variable "i" shadows a variable at a preceding level Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase" |
Hermano vaya manera a responder la tuya. їNo?, si vengo a pedir ayuda acб es por que no entiendo, no es dejar el SQL o el pawn, ademбs al otro usuario que ha comentado que no doy ni las gracias, ni he solucionado el fallo.
|