/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <sqlx>
#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "CheQ"
new Handle:g_SqlTuple
new g_sqlTable[64] = "tables"
new g_boolsqlOK=0
new sqlstart = 30 // Tyle prob jest na mape na poprawne polaczenie - bo cos sie zapetla gdy wylancza sie serwer (zmiena mapy?)
new asked_sql[33]
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_cvar("sql_host","127.0.0.1",FCVAR_PROTECTED)
register_cvar("sql_user","root",FCVAR_PROTECTED)
register_cvar("sql_pass","",FCVAR_PROTECTED)
register_cvar("sql_database","achivments",FCVAR_PROTECTED)
register_cvar("sql_table","testow_baza",FCVAR_PROTECTED)
register_clcmd("say /zapisz","ZapiszDane")
}
public sql_start()
{
if(sqlstart<0) return
if(g_boolsqlOK) return
new host[128]
new user[64]
new pass[64]
new database[64]
get_cvar_string("sql_database",database,63)
get_cvar_string("sql_host",host,127)
get_cvar_string("sql_user",user,63)
get_cvar_string("sql_pass",pass,63)
g_SqlTuple = SQL_MakeDbTuple(host,user,pass,database)
get_cvar_string("sql_table",g_sqlTable,63)
new q_command[512]
format(q_command,511,"CREATE TABLE IF NOT EXISTS `%s` ( `nick` VARCHAR( 64 ),`ip` VARCHAR( 64 )",g_sqlTable)
SQL_ThreadQuery(g_SqlTuple,"TableHandle",q_command)
}
public TableHandle(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
{
// lots of error checking
g_boolsqlOK=1
if(Errcode)
{
g_boolsqlOK=0;
console_print(0,"Nie polaczono!");
}
if(FailState == TQUERY_CONNECT_FAILED)
{
g_boolsqlOK=0;
console_print(0,"Nie polaczono!");
return PLUGIN_CONTINUE
}
else if(FailState == TQUERY_QUERY_FAILED)
{
g_boolsqlOK=0;
console_print(0,"Nie polaczono!");
return PLUGIN_CONTINUE
}
return PLUGIN_CONTINUE
}
public ZapiszDane(id)
{
new name[64];
new ip[64];
get_user_name(id,name,63);
get_user_ip(id, ip ,63,1)
if(g_boolsqlOK)
{
new q_command[512];
format(q_command,511,"UPDATE `%s` SET `ip`='%s' WHERE `nick`='%s'",g_sqlTable,ip,name)
SQL_ThreadQuery(g_SqlTuple,"Save_xp_handle",q_command)
}
else
sql_start()
}
public Save_xp_handle(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
{
if(Errcode)
{
log_to_file("addons/amxmodx/logs/diablo.log","Error on Save_xp query: %s",Error)
}
if(FailState == TQUERY_CONNECT_FAILED)
{
log_to_file("addons/amxmodx/logs/diablo.log","Could not connect to SQL database.")
return PLUGIN_CONTINUE
}
else if(FailState == TQUERY_QUERY_FAILED)
{
log_to_file("addons/amxmodx/logs/diablo.log","Save_xp Query failed.")
return PLUGIN_CONTINUE
}
return PLUGIN_CONTINUE
}
co jest źle, gdzie błąd i pomoc bym prosił.


Dodatki SourceMod













