25.12.2010, 15:11
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:
El LoadPropety:
Y aquн el LoadHeadQuarter y el SaveHeadQuarter, que sн que se guardan al reiniciar:
Ў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; }
Код:
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; }
Код:
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; }