Offline |
|
Csatlakozott: 2014.01.04. 18:31 Hozzászólások: 326
Megköszönt másnak: 79 alkalommal Megköszönték neki: 7 alkalommal
|
Valaki segítene ,hogyan tudom megcsinálni ,hogy több skint mentsek? Néztem mforce tutoriálját ,de nem igazán értem,hogy mit hogy Kód: /* Plugin generated by AMXX-Studio */ #include <amxmodx> #include <sqlx> new ak47skin[4][33] new const SQL_INFO[][] = { "127.0.0.1", // HOST "nev", // USERNAME "jelszo", // PASSWORD "database" // DATABASE } new Handle:g_SqlTuple; // tároljuk valamibe a nevet is, mert nem akarom, mindig lekérni. new name[33][32] public plugin_init() { } public plugin_cfg() { new Query[512]; g_SqlTuple = SQL_MakeDbTuple(SQL_INFO[0],SQL_INFO[1],SQL_INFO[2],SQL_INFO[3]) formatex(Query, charsmax(Query), "CREATE TABLE IF NOT EXISTS `tabla_neve` (`username` varchar(32) NOT NULL,`valami_ertek` int(11) NOT NULL,`id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY)") SQL_ThreadQuery(g_SqlTuple,"createTableThread", Query) } public createTableThread(FailState, Handle:Query, Error[], Errcode, Data[], DataSize, Float:Queuetime) { if(FailState == TQUERY_CONNECT_FAILED) set_fail_state("Nem tudtam csatlakozni az adatbazishoz."); else if(FailState == TQUERY_QUERY_FAILED) set_fail_state("Query Error"); if(Errcode) log_amx("Hibat dobtam: %s",Error); } public client_putinserver(id) { if(!is_user_bot(id)) { get_user_name(id, name[id], charsmax(name)) load(id) } } public load(id) { new Query[512], Data[1] Data[0] = id formatex(Query, charsmax(Query), "SELECT * FROM `tabla_neve` WHERE username = ^"%s^";", name[id]) SQL_ThreadQuery(g_SqlTuple, "QuerySelectData", Query, Data, 1) } public QuerySelectData(FailState, Handle:Query, Error[], Errcode, Data[], DataSize, Float:Queuetime) { if(FailState == TQUERY_CONNECT_FAILED || FailState == TQUERY_QUERY_FAILED) { log_amx("%s", Error) return } else { new id = Data[0]; if(SQL_NumRows(Query) > 0) { // Ha talált legalább 1 sort, akkor ezek történnek. ak47skin[1][id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "ak47_1")) ak47skin[2][id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "ak47_2")) ak47skin[3][id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "ak47_3")) // Ez a parancs szöveg, szám és float esetében is másképp van, ehhez infó lentebb. } else { // Ha nem talált sort, mert még nem volt a szerveren, akkor készítünk neki egyet. save(id) // Ehhez infó a Játékos sorainak létrehozásánál. } } } public save(id) { new text[512]; formatex(text, charsmax(text), "INSERT INTO `tabla_neve` (`username`, `valami_ertek`) VALUES (^"%s^", ^"0^");", name[id]) SQL_ThreadQuery(g_SqlTuple, "QuerySetData", text) } public QuerySetData(FailState, Handle:Query, Error[], Errcode, Data[], DataSize, Float:Queuetime) { if(FailState == TQUERY_CONNECT_FAILED || FailState == TQUERY_QUERY_FAILED) { log_amx("%s", Error) return } } public update(id) { new text[512]; formatex(text, charsmax(text), "UPDATE `tabla_neve` SET ak47_1 = ^"%i^" WHERE username = ^"%s^";", ak47skin[1][id], name[id]) SQL_ThreadQuery(g_SqlTuple, "QuerySetData", text) } public client_disconnect(id) { if(!is_user_bot(id)) { update(id) } ak47skin[1][id] = 0 ak47skin[2][id] = 0 ak47skin[3][id] = 0 copy(name[id], charsmax(name[]), "") } public plugin_end() { SQL_FreeHandle(g_SqlTuple) }
Ide mit kell írni? "database" // DATABASE Valaki aki ért az sql-hez segítene?akár itt akár privibe
|
|