Witam, przejdę od razu do tematu Mam w swoim kodzie dwie zmienne typu float:
new Float:Obrazenia[33]; new Float:PunktyGracza[33];
które przechowuje w bazie danych. Przy rozłączaniu gracza zapisuje się poprawnie, lecz gdy gracz wchodzi nie pobiera tych wartości. Człowiek od początku musi to nabijać, bo ma zero.
Do zmiennej pobieram w ten sposób:
iColPkt = SQL_FieldNameToNum(Query, "pkt") iColDamage = SQL_FieldNameToNum(Query, "damage") PunktyGracza[id] = SQL_ReadResult(Query, iColPkt) Obrazenia[id] = SQL_ReadResult(Query, iColDamage)
Zrobiłem sobie taki mały debug dodając pod spodem:
log_amx("2. POBRANO: Punkty: %.2f | Obrazenia: %.3f", PunktyGracza[id], Obrazenia[id])
I w logach pokazuje wartości odpowiednio 0.00 i 0.000. Co może być nie tak, gdzie szukać problemu?
btw. oczywiście mógłbym to przemnożyć przez 100 i 1000 przed zapisem, a potem przy odczycie podzielić, ale zależy mi aby w bazie danych były zmiennoprzecinkowe wartości.
Pola w bazie danych to varchar o długości 255.