Peršokti į turinį
  • ŽAIDIMAI
  • , ŽAIDIMAI
  • ŽAIDIMAI

SAMP Mysql neišsaugo mašinos spalvos


Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 2936 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Recommended Posts

Sveiki, kodėl man neišsaugo mašinos spalvos. nes kaip prisijungiu spalva pasidaro į juoda.

MYSQL išsaugojimas:

stock SavePlayerVehicle(playerid, bool:atsijungia)
{
	if(zInfo[playerid][zaidzia] == 3)
	{
		if(zInfo[playerid][Transportas1] !=-1)
		{
			new GTCount = GetTickCount();
		    new query[500],Float:vPos[4],vehicleid = zInfo[playerid][Transportas1],vModel;
			GetVehiclePos(vehicleid, vPos[0], vPos[1], vPos[2]);
			GetVehicleZAngle(vehicleid, vPos[3]);
			vModel = GetVehicleModel(vehicleid);
			format(query, sizeof(query), "UPDATE `vehicle` SET `Modelis`='%i', `xPos`='%f', `yPos`='%f', `zPos`='%f', `cPos`='%f'  WHERE ( `Savininkas` = '%s' )", vModel, vPos[0], vPos[1], vPos[2], vPos[3], GetPlayerNameEx(playerid));
			mysql_query(query);
			format(query, sizeof(query), "UPDATE `vehicle` SET `Savininkas`='%s', `DegaluTipas`='%i', `Degalai`='%i', `Spalva1`='%i', `Spalva2`='%i'  WHERE ( `Savininkas` = '%s' )", tInfo[vehicleid][Savininkas], tInfo[vehicleid][DegaluTipas], tInfo[vehicleid][Degalai], tInfo[vehicleid][Spalva1], tInfo[vehicleid][Spalva2], GetPlayerNameEx(playerid));
			mysql_query(query);
			format(query, sizeof(query), "UPDATE `vehicle` SET PaintJob = '%d', `Rida`='%f', `Gyvybes`='%f'  WHERE ( `Savininkas` = '%s' )",tInfo[vehicleid][Paintjob],tInfo[vehicleid][Rida], tInfo[vehicleid][vHeal], GetPlayerNameEx(playerid));
			mysql_query(query);
			format(query, sizeof(query), "UPDATE `vehicle` SET MasinaParduodama = '%d', mParduodamaKaina = '%d' WHERE Savininkas = '%s'",tInfo[vehicleid][MasinaParduodama],tInfo[vehicleid][mParduodamaKaina],GetPlayerNameEx(playerid));
			mysql_query(query);
			format(query, sizeof(query), "UPDATE `vehicle` SET `Radijas`='%i', `Registruota`='%i', `Tranzitiniai`='%s', `Raides`='%s', `Skaiciai`='%s'  WHERE ( `Savininkas` = '%s' )", tInfo[vehicleid][Radijas], tInfo[vehicleid][Registruota], tInfo[vehicleid][Tranzitiniai], tInfo[vehicleid][Raides], tInfo[vehicleid][Skaiciai], GetPlayerNameEx(playerid));
			mysql_query(query);
			format(query, sizeof(query), "UPDATE `vehicle` SET `Technikine`='%i'  WHERE ( `Savininkas` = '%s' )", tInfo[vehicleid][Technikine], GetPlayerNameEx(playerid));
			mysql_query(query);
	        format(query, sizeof(query), "UPDATE `vehicle` SET `Tuningas0`='%i', `Tuningas1`='%i', `Tuningas2`='%i', `Tuningas3`='%i', `Tuningas4`='%i'  WHERE ( `Savininkas` = '%s' )", GetVehicleComponentInSlot(vehicleid, 0), GetVehicleComponentInSlot(vehicleid, 1), GetVehicleComponentInSlot(vehicleid, 2), GetVehicleComponentInSlot(vehicleid, 3), GetVehicleComponentInSlot(vehicleid, 4), GetPlayerNameEx(playerid));
			mysql_query(query);
			format(query, sizeof(query), "UPDATE `vehicle` SET `Tuningas5`='%i', `Tuningas6`='%i', `Tuningas7`='%i', `Tuningas8`='%i', `Tuningas9`='%i'  WHERE ( `Savininkas` = '%s' )", GetVehicleComponentInSlot(vehicleid, 5), GetVehicleComponentInSlot(vehicleid, 6), GetVehicleComponentInSlot(vehicleid, 7), GetVehicleComponentInSlot(vehicleid, 8), GetVehicleComponentInSlot(vehicleid, 9), GetPlayerNameEx(playerid));
			mysql_query(query);
			format(query, sizeof(query), "UPDATE `vehicle` SET `Tuningas10`='%i', `Tuningas11`='%i', `Tuningas12`='%i', `Tuningas13`='%i'  WHERE ( `Savininkas` = '%s' )", GetVehicleComponentInSlot(vehicleid, 10), GetVehicleComponentInSlot(vehicleid, 11), GetVehicleComponentInSlot(vehicleid, 12), GetVehicleComponentInSlot(vehicleid, 13), GetPlayerNameEx(playerid));
			mysql_query(query);
			
      		if(atsijungia == true)
	        {
	        	DestroyVehicle(vehicleid);
			}
			printf("Žaidėjo transporto saugojimas užtruko %d ms", GetTickCount() - GTCount);
		}
	}
} 

MYSQL užkraunam:

stock LoadPlayerVehicle(playerid){
    new query[74];
format(query, sizeof(query), "SELECT * FROM `vehicle` WHERE `Savininkas` = '%s'", GetPlayerNameEx(playerid));
mysql_query(query);
mysql_store_result();
if(mysql_retrieve_row())
{
new vModel,Float:vPos[4],color[2], result[256];
mysql_fetch_field_row(result, "Modelis"); vModel = strval(result);
mysql_fetch_field_row(result, "xPos"); vPos[0] = floatstr(result);
mysql_fetch_field_row(result, "yPos"); vPos[1] = floatstr(result);
mysql_fetch_field_row(result, "zPos"); vPos[2] = floatstr(result);
mysql_fetch_field_row(result, "cPos"); vPos[3] = floatstr(result);
mysql_fetch_field_row(result, "Spalva1"); color[0] = strval(result);
mysql_fetch_field_row(result, "Spalva2"); color[1] = strval(result);
zInfo[playerid][Transportas1] = _CreateVehicle(vModel, vPos[0], vPos[1], vPos[2]+1, vPos[3], color[0], color[1], -1);
ChangeVehicleColor(zInfo[playerid][Transportas1], color[0], color[1]);
mysql_fetch_field_row(result, "DegaluTipas"); tInfo[zInfo[playerid][Transportas1]][DegaluTipas] = strval(result);
mysql_fetch_field_row(result, "Radijas");
if(strval(result) > 0) tInfo[zInfo[playerid][Transportas1]][Radijas] = true;
else tInfo[zInfo[playerid][Transportas1]][Radijas] = false;
mysql_fetch_field_row(result, "Registruota");
if(strval(result) > 0) tInfo[zInfo[playerid][Transportas1]][Registruota] = true;
else tInfo[zInfo[playerid][Transportas1]][Registruota] = false;
mysql_fetch_field_row(result, "Technikine");
if(strval(result) > 0) tInfo[zInfo[playerid][Transportas1]][Technikine] = true;
else tInfo[zInfo[playerid][Transportas1]][Technikine] = false;
mysql_fetch_field_row(result, "Tranzitiniai");
format(tInfo[zInfo[playerid][Transportas1]][Tranzitiniai], 24, "%s", result);
mysql_fetch_field_row(result, "Raides");
format(tInfo[zInfo[playerid][Transportas1]][Raides], 24, "%s", result);
mysql_fetch_field_row(result, "Skaiciai");
format(tInfo[zInfo[playerid][Transportas1]][Skaiciai], 24, "%s", result);
mysql_fetch_field_row(result, "Degalai");
tInfo[zInfo[playerid][Transportas1]][Degalai] = strval(result);
mysql_fetch_field_row(result, "Rida");
tInfo[zInfo[playerid][Transportas1]][Rida] = floatstr(result);
mysql_fetch_field_row(result, "Gyvybes");
tInfo[zInfo[playerid][Transportas1]][vHeal] = floatstr(result);
mysql_fetch_field_row(result, "Savininkas");
format(tInfo[zInfo[playerid][Transportas1]][Savininkas], 24, "%s", result);


mysql_fetch_field_row(result, "PaintJob"); tInfo[zInfo[playerid][Transportas1]][Paintjob] = strval(result);




mysql_fetch_field_row(result, "mParduodamaKaina"); tInfo[zInfo[playerid][Transportas1]][mParduodamaKaina] = strval(result);
mysql_fetch_field_row(result, "MasinaParduodama"); tInfo[zInfo[playerid][Transportas1]][MasinaParduodama] = !!strval(result);


  for(new t = 0; t < 13; t ++)
{
format(result,sizeof(result),"Tuningas%d",t);
mysql_fetch_field_row(query, result);
tInfo[zInfo[playerid][Transportas1]][vTune][t] = strval(query);
     }
if(tInfo[zInfo[playerid][Transportas1]][Technikine])
{
new numeriz[24];
    format(numeriz, 24, "%s:%s", tInfo[zInfo[playerid][Transportas1]][Raides], tInfo[zInfo[playerid][Transportas1]][Skaiciai]);
SetVehicleNumberPlate(zInfo[playerid][Transportas1], numeriz);
}
else if(!tInfo[zInfo[playerid][Transportas1]][Technikine])
{
new numeriz[24];
format(numeriz, 24, "%s.%s", tInfo[zInfo[playerid][Transportas1]][Raides], tInfo[zInfo[playerid][Transportas1]][Skaiciai]);
SetVehicleNumberPlate(zInfo[playerid][Transportas1], numeriz);
}
if(!tInfo[zInfo[playerid][Transportas1]][Registruota])
{
   new tranzai[24];
   format(tranzai, 24, "%s", tInfo[zInfo[playerid][Transportas1]][Tranzitiniai]);
   SetVehicleNumberPlate(zInfo[playerid][Transportas1], tranzai);
}
tInfo[zInfo[playerid][Transportas1]][Uzraktas] = true;
tInfo[zInfo[playerid][Transportas1]][vOwned] = true;
zInfo[playerid][Transportas1] = zInfo[playerid][Transportas1];
SetVehicleToRespawn(zInfo[playerid][Transportas1]);
}
mysql_free_result();
    printf("%s Transportai užkrauti", GetPlayerNameEx(playerid));
}

logus peržiūrėjau išsaugo spalva juoda... odėl ko taip jeigu jinai buna kits spalvos?

Redaguota , nario Diimka
Nuoroda į komentarą
Dalintis per kitą puslapį

Kokią spalvą mysql'e rodo? Jeigu juodą, t.y. 0, tikrink ar ji išvis nusistato. Naudok tam printf ir patikrink kokią spalvą išgauna. Taip sužinosi kurioje vietoje grybauja sistema.

 

P.S. Gali viską į vieną format sugrūst, nereikės 10 kartų query naudot.

Gali biškį aiškiau paiškinti?

tikrink ar ji išvis nusistato. Naudok tam printf ir patikrink kokią spalvą išgauna

Nuoroda į komentarą
Dalintis per kitą puslapį

Gali biškį aiškiau paiškinti?

tikrink ar ji išvis nusistato. Naudok tam printf ir patikrink kokią spalvą išgauna

 

Prieš įrašydamas į mysql, naudok šitą:

https://wiki.sa-mp.com/wiki/Printf

 

Būtų kažkas panašaus į prinf("%d", tInfo[vehicleid][Spalva1]);

 

Taip sužinosi kokią spalvą išgauna. Consolej matysi atsakymą, jeigu bus 0, ar netokią, kokią nori - ieškok klaidos kitur, pvz. klaida gali būti tada, kai tu pakeiti automobilio spalvą. Nes čia viskas atrodo kaip ir gerai, todėl nemanau, kad būtent čia yra klaida.

Nuoroda į komentarą
Dalintis per kitą puslapį

(redaguota)

Prieš įrašydamas į mysql, naudok šitą:

https://wiki.sa-mp.com/wiki/Printf

 

Būtų kažkas panašaus į prinf("%d", tInfo[vehicleid][Spalva1]);

 

Taip sužinosi kokią spalvą išgauna. Consolej matysi atsakymą, jeigu bus 0, ar netokią, kokią nori - ieškok klaidos kitur, pvz. klaida gali būti tada, kai tu pakeiti automobilio spalvą. Nes čia viskas atrodo kaip ir gerai, todėl nemanau, kad būtent čia yra klaida.

[19:15:47] CMySQLHandler::Query(UPDATE `vehicle` SET `Savininkas`='Adminas_Adminas', `DegaluTipas`='0', `Degalai`='1000', `Spalva1`='0', `Spalva2`='0'  WHERE ( `Savininkas` = 'Adminas_Adminas' )) - Successfully executed.


[19:15:47] >> mysql_query( Connection handle: 1 )
Redaguota , nario Diimka
Nuoroda į komentarą
Dalintis per kitą puslapį

 

[19:15:47] CMySQLHandler::Query(UPDATE `vehicle` SET `Savininkas`='Adminas_Adminas', `DegaluTipas`='0', `Degalai`='1000', `Spalva1`='0', `Spalva2`='0'  WHERE ( `Savininkas` = 'Adminas_Adminas' )) - Successfully executed.


[19:15:47] >> mysql_query( Connection handle: 1 )

 

 

 

tInfo[vehicleid][Spalva1], tInfo[vehicleid][Spalva2] šitie neišsisaugo normaliai, kai pakeiti spalvą. Parodyk, kaip tu tą spalvą išsaugai.

Nuoroda į komentarą
Dalintis per kitą puslapį


format(query, sizeof(query), "UPDATE `vehicle` SET `Savininkas`='%s', `DegaluTipas`='%i', `Degalai`='%i', `Spalva1`='%i', `Spalva2`='%i' WHERE ( `Savininkas` = '%s' )", tInfo[vehicleid][Savininkas], tInfo[vehicleid][DegaluTipas], tInfo[vehicleid][Degalai], tInfo[vehicleid][Spalva1], tInfo[vehicleid][Spalva2], GetPlayerNameEx(playerid));

mysql_query(query);

Nuoroda į komentarą
Dalintis per kitą puslapį

	format(query, sizeof(query), "UPDATE `vehicle` SET `Savininkas`='%s', `DegaluTipas`='%i', `Degalai`='%i', `Spalva1`='%i', `Spalva2`='%i'  WHERE ( `Savininkas` = '%s' )", tInfo[vehicleid][Savininkas], tInfo[vehicleid][DegaluTipas], tInfo[vehicleid][Degalai], tInfo[vehicleid][Spalva1], tInfo[vehicleid][Spalva2], GetPlayerNameEx(playerid));
			mysql_query(query);

 

:D Parodyk komandą, kuri pakeičia spalvą. TĄ KOMANDĄ KURIOJE TU PAKEITI ŠITĄ tInfo[vehicleid][Spalva1] ARBA ŠITĄ tInfo[vehicleid][Spalva2]

Nuoroda į komentarą
Dalintis per kitą puslapį

:D Parodyk komandą, kuri pakeičia spalvą. TĄ KOMANDĄ KURIOJE TU PAKEITI ŠITĄ tInfo[vehicleid][Spalva1] ARBA ŠITĄ tInfo[vehicleid][Spalva2]

Mechanikams padaryta jog parašius /darbas mestu gui lentele ir paspaustu spalva ir pasirinktu spalva:

 

        	ChangeVehicleColor(vehid, MechSpalva[playerid][0], MechSpalva[playerid][1]);
        	return CarmodDialog(playerid);
Nuoroda į komentarą
Dalintis per kitą puslapį

 

Mechanikams padaryta jog parašius /darbas mestu gui lentele ir paspaustu spalva ir pasirinktu spalva:

 

        	ChangeVehicleColor(vehid, MechSpalva[playerid][0], MechSpalva[playerid][1]);
        	return CarmodDialog(playerid);

 

    ChangeVehicleColor(vehid, tInfo[vehid][Spalva1tInfo[vehid][Spalva1);

    return CarmodDialog(playerid);

 

Kažkas panašaus.

Nuoroda į komentarą
Dalintis per kitą puslapį

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 2936 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Svečias
Ši tema yra užrakinta.
  • Šiame puslapyje naršo:   0 nariai

    • Nėra registruotų narių peržiūrinčių šį forumą.

Skelbimai


×
×
  • Sukurti naują...