[Soporte] No se guardan las casas. -
Komputilo - 25.12.2010
Resulta que tengo un GM que funciona mediante MySQL. Para aсadir una casa uso /crearcasa y luego /editcasa, funcionan perfectamente, pero se pierden al reiniciar el servidor. Al igual que los negocios. No solo desaparece el pickup, tambiйn la existencia de la casa en sн, pese a que no haya pickup he probado de poner /info (cuando hay una casa sн funciona) y no sale nada.
ЎAyuda!
Es SavePropety para las casas:
Код:
SaveProperty(idx)
{
new sql[1024];
format(sql, 1024, "UPDATE casas SET EX=%f,EY=%f,EZ=%f,SX=%f,SY=%f,SZ=%f,Interior=%d,Owned=%d,Owner='%s',Nivel= %d,Costo=%d,Locked=%d WHERE id=%d",
HouseInfo[idx][hEx],
HouseInfo[idx][hEy],
HouseInfo[idx][hEz],
HouseInfo[idx][hSx],
HouseInfo[idx][hSy],
HouseInfo[idx][hSz],
HouseInfo[idx][hInterior],
HouseInfo[idx][hOwned],
HouseInfo[idx][hOwner],
HouseInfo[idx][hLevel],
HouseInfo[idx][hValue],
HouseInfo[idx][hLock],
HouseInfo[idx][hId]);
samp_mysql_query(sql);
return 1;
}
El LoadPropety:
Код:
LoadProperty()
{
samp_mysql_connect(MYSQL_HOST,MYSQL_USER,MYSQL_PASS);
samp_mysql_select_db(MYSQL_DB);
new sql[80], row[512];
format(sql, sizeof(sql), "SELECT COUNT(*) FROM casas");
samp_mysql_query(sql);
samp_mysql_store_result();
samp_mysql_fetch_row(row);
hcount = strval(row);
for (new idx=1; idx<=hcount; idx++)
{
format(sql, sizeof(sql), "SELECT * FROM casas WHERE id=%d LIMIT 1", idx);
samp_mysql_query(sql);
samp_mysql_store_result();
samp_mysql_fetch_row(row);
split(row, arrCoords, '|');
HouseInfo[idx][hId] = strval(arrCoords[0]);
HouseInfo[idx][hEx] = floatstr(arrCoords[1]);
HouseInfo[idx][hEy] = floatstr(arrCoords[2]);
HouseInfo[idx][hEz] = floatstr(arrCoords[3]);
HouseInfo[idx][hSx] = floatstr(arrCoords[4]);
HouseInfo[idx][hSy] = floatstr(arrCoords[5]);
HouseInfo[idx][hSz] = floatstr(arrCoords[6]);
HouseInfo[idx][hInterior] = strval(arrCoords[7]);
HouseInfo[idx][hOwned] = strval(arrCoords[8]);
format(HouseInfo[idx][hOwner],24,"%s", arrCoords[9]);
HouseInfo[idx][hLevel] = strval(arrCoords[10]);
HouseInfo[idx][hValue] = strval(arrCoords[11]);
HouseInfo[idx][hLock] = strval(arrCoords[12]);
HouseInfo[idx][hGun][0] = strval(arrCoords[13]);
HouseInfo[idx][hAmmo][0] = strval(arrCoords[14]);
HouseInfo[idx][hGun][1] = strval(arrCoords[15]);
HouseInfo[idx][hAmmo][1] = strval(arrCoords[16]);
HouseInfo[idx][hGun][2] = strval(arrCoords[17]);
HouseInfo[idx][hAmmo][2] = strval(arrCoords[18]);
HouseInfo[idx][hDroga] = strval(arrCoords[19]);
HouseInfo[idx][hDroga2] = strval(arrCoords[20]);
HouseInfo[idx][hDinero] = strval(arrCoords[21]);
}
return 1;
}
Y aquн el LoadHeadQuarter y el SaveHeadQuarter, que sн que se guardan al reiniciar:
Код:
LoadHeadQuarter()
{
samp_mysql_connect(MYSQL_HOST,MYSQL_USER,MYSQL_PASS);
samp_mysql_select_db(MYSQL_DB);
new sql[80], row[512];
format(sql, sizeof(sql), "SELECT COUNT(*) FROM headquarters");
samp_mysql_query(sql);
samp_mysql_store_result();
samp_mysql_fetch_row(row);
hqcount = strval(row);
for (new idx=0; idx<hqcount; idx++)
{
format(sql, sizeof(sql), "SELECT * FROM headquarters WHERE id=%d LIMIT 1", idx+1);
samp_mysql_query(sql);
samp_mysql_store_result();
samp_mysql_fetch_row(row);
split(row, arrCoords, '|');
format(HeadQuarterInfo[idx][hqName], 128, "%s", arrCoords[1]);
HeadQuarterInfo[idx][hqFaccion] = strval(arrCoords[2]);
HeadQuarterInfo[idx][hqEPos_x] = floatstr(arrCoords[3]);
HeadQuarterInfo[idx][hqEPos_y] = floatstr(arrCoords[4]);
HeadQuarterInfo[idx][hqEPos_z] = floatstr(arrCoords[5]);
HeadQuarterInfo[idx][hqSPos_x] = floatstr(arrCoords[6]);
HeadQuarterInfo[idx][hqSPos_y] = floatstr(arrCoords[7]);
HeadQuarterInfo[idx][hqSPos_z] = floatstr(arrCoords[8]);
HeadQuarterInfo[idx][hqInterior] = strval(arrCoords[9]);
HeadQuarterInfo[idx][hqLocked] = strval(arrCoords[10]);
HeadQuarterInfo[idx][hqCajaFuerte] = strval(arrCoords[11]);
printf("HQ de la Facciуn: %d | X: %f Y:%f Z:%f | Interior: %d | Cerradura: %d | CF: $%d",
HeadQuarterInfo[idx][hqFaccion],
HeadQuarterInfo[idx][hqEPos_x],
HeadQuarterInfo[idx][hqEPos_y],
HeadQuarterInfo[idx][hqEPos_z],
HeadQuarterInfo[idx][hqInterior],
HeadQuarterInfo[idx][hqLocked],
HeadQuarterInfo[idx][hqCajaFuerte]);
}
printf("HQs Totales: %d",hqcount);
return 1;
}
SaveHeadQuarter(i)
{
new sql[1024];
format(sql, sizeof(sql), "UPDATE headquarters SET Nombre='%s',Faccion=%d,EPos_X=%f,EPos_Y=%f,EPos_Z=%f,SPos_X=%f,SPos_Y=%f,SPos_Z=%f,Interior=%d,Locked=%d,CajaFuerte=%d WHERE id=%d LIMIT 1",
HeadQuarterInfo[i][hqName],
HeadQuarterInfo[i][hqFaccion],
HeadQuarterInfo[i][hqEPos_x],
HeadQuarterInfo[i][hqEPos_y],
HeadQuarterInfo[i][hqEPos_z],
HeadQuarterInfo[i][hqSPos_x],
HeadQuarterInfo[i][hqSPos_y],
HeadQuarterInfo[i][hqSPos_z],
HeadQuarterInfo[i][hqInterior],
HeadQuarterInfo[i][hqLocked],
HeadQuarterInfo[i][hqCajaFuerte],
i);
samp_mysql_query(sql);
return 1;
}
Re: [Soporte] No se guardan las casas. -
TiNcH010 - 26.12.2010
Fijate al desconectarse el jugador
Respuesta: [Soporte] No se guardan las casas. -
Komputilo - 26.12.2010
Las casas funcionan perfectamente hasta que reinicio el servidor.