save health/armor SQL Lite - Printable Version
+- SA-MP Forums Archive (
https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (
https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (
https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: save health/armor SQL Lite (
/showthread.php?tid=412139)
save health/armor SQL Lite -
Maraudeur - 31.01.2013
I get tag mismatch no matter what i try, any help?
pawn Код:
public OnPlayerDisconnect(playerid, reason)
{
new
Query[ 200 ],
name[ MAX_PLAYER_NAME ],
float:health,
float:armour
;
GetPlayerName(playerid, name, sizeof(name));
if(Bit1_Get(g_PlayerLogged, playerid) == 1)
{
format(Query,sizeof(Query),"UPDATE `USERS` SET SCORE = '%d', CASH = '%d', HEALTH = '%f', ARMOUR = '%f', ADMINLEVEL = '%d' WHERE `NAME` = '%s'",
GetPlayerScore(playerid),
GetPlayerMoney(playerid),
GetPlayerHealth(playerid, health),
GetPlayerArmour(playerid, armour),
Bit16_Get(g_AdminLevel, playerid),
DB_Escape(name));
db_query(Database, Query);
Bit1_Set(g_PlayerLogged, playerid, false);
}
return 1;
}
Respuesta: save health/armor SQL Lite -
OPremium - 01.02.2013
PAWN is case-sensitive,
Float: and
float: are 2 different tags, that's why the compiler is giving you a warning. Also, you are using GetPlayerHealth and GetPlayerArmour in a wrong way, those natives don't return anything, the amount is saved in the variable that you use as second parameter instead
pawn Код:
public OnPlayerDisconnect(playerid, reason)
{
new
Query[ 200 ],
name[ MAX_PLAYER_NAME ],
Float:health, // !
Float:armour // !
;
GetPlayerName(playerid, name, sizeof(name));
GetPlayerHealth(playerid, health); // !
GetPlayerArmour(playerid, armour); // !
if(Bit1_Get(g_PlayerLogged, playerid) == 1)
{
format(Query,sizeof(Query),"UPDATE `USERS` SET SCORE = '%d', CASH = '%d', HEALTH = '%f', ARMOUR = '%f', ADMINLEVEL = '%d' WHERE `NAME` = '%s'",
GetPlayerScore(playerid),
GetPlayerMoney(playerid),
health, // !
armour, // !
Bit16_Get(g_AdminLevel, playerid),
DB_Escape(name));
db_query(Database, Query);
Bit1_Set(g_PlayerLogged, playerid, false);
}
return 1;
}