#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <sqlx>
new const PR2[] = "[Lekvart Teszt szervere]";
new const SQL_INFO[][] = {
"127.0.0.1", // HOST
"", // USERNAME
"", // PASSWORD
"" // DATABASE
}
new Handle:g_SqlTuple;
//Játékos FegyverÖlés lekérés
new
M4A1Oles[33],
AK47Oles[33],
AWPOles[33],
FAMASOles[33],
MP5NAVYOles[33],
M3SHOTGUNOles[33],
SCOUTOles[33],
DEAGLEOles[33],
USPOles[33],
GlockOles[33],
KESOles[33];
new name[33][32]
public plugin_init() {
register_plugin("","","")
register_clcmd("say /oles", "FegyverKills");
register_event("DeathMsg", "FegyverOlesek", "a");
}
public FegyverKills(id)
{
new String[512];
formatex(String, charsmax(String), "\r%s \y» \wFegyveroles", PR2);
new menu = menu_create(String, "Fegyver_hh");
menu_additem(menu, "\dAK47 Ölések:\r %d",M4A1Oles[id]);
menu_additem(menu, "\dM4A1 Ölések:\r %d",AK47Oles[id]);
menu_additem(menu, "\dAWP Ölések:\r %d",AWPOles[id]);
menu_additem(menu, "\dFAMAS Ölések:\r %d",FAMASOles[id]);
menu_additem(menu, "\dMP5 Ölések:\r %d",MP5NAVYOles[id]);
menu_additem(menu, "\dSHOTGUN Ölések:\r %d",M3SHOTGUNOles[id]);
menu_additem(menu, "\dSCOUT Ölések:\r %d",SCOUTOles[id]);
menu_additem(menu, "\dDEAGLE Ölések:\r %d",DEAGLEOles[id]);
menu_additem(menu, "\dUSP Ölések:\r %d",USPOles[id]);
menu_additem(menu, "\dGLOCK Ölések:\r %d",GlockOles[id]);
menu_additem(menu, "\dKés Ölések:\r %d",KESOles[id]);
menu_setprop(menu, MPROP_NEXTNAME, "Tovább");
menu_setprop(menu, MPROP_BACKNAME, "Vissza");
menu_setprop(menu, MPROP_EXITNAME, "Kilépés");
menu_display(id, menu, 0);
}
public Fegyver_hh(id, menu, item)
{
menu_destroy(menu);
return;
}
public FegyverOlesek() {
new Gyilkos = read_data(1)
new Aldozat = read_data(2)
new Jatekos[32]
get_user_name(Gyilkos, Jatekos, 31)
if(Gyilkos == Aldozat || Gyilkos == 0) {
return PLUGIN_HANDLED
}
switch(get_user_weapon(Gyilkos)) {
case CSW_M4A1: M4A1Oles[Gyilkos]++;
case CSW_AK47: AK47Oles[Gyilkos]++;
case CSW_AWP: AWPOles[Gyilkos]++;
case CSW_FAMAS: FAMASOles[Gyilkos]++;
case CSW_MP5NAVY: MP5NAVYOles[Gyilkos]++;
case CSW_M3: M3SHOTGUNOles[Gyilkos]++;
case CSW_SCOUT: SCOUTOles[Gyilkos]++;
case CSW_DEAGLE: DEAGLEOles[Gyilkos]++;
case CSW_USP: USPOles[Gyilkos]++;
case CSW_KNIFE: KESOles[Gyilkos]++;
}
return PLUGIN_CONTINUE
}
public client_disconnect(id) {
if(!is_user_bot(id)) {
Update(id)
}
M4A1Oles[id] = 0
AK47Oles[id] = 0
AWPOles[id] = 0
FAMASOles[id] = 0
MP5NAVYOles[id] = 0
M3SHOTGUNOles[id] = 0
SCOUTOles[id] = 0
DEAGLEOles[id] = 0
USPOles[id] = 0
GlockOles[id] = 0
KESOles[id] = 0
copy(name[id], charsmax(name[]), "")
}
public plugin_cfg()
{
g_SqlTuple = SQL_MakeDbTuple(SQL_INFO[0],SQL_INFO[1],SQL_INFO[2],SQL_INFO[3])
static Query[10048];
new Len;
Len += formatex(Query[Len], charsmax(Query), "CREATE TABLE IF NOT EXISTS `Fegyver_Olesek`");
Len += formatex(Query[Len], charsmax(Query)-Len, "(`Nev` varchar(32) NOT NULL, ");
Len += formatex(Query[Len], charsmax(Query)-Len, "`M4_O` int(11) NOT NULL,");
Len += formatex(Query[Len], charsmax(Query)-Len, "`AK_O` int(11) NOT NULL,");
Len += formatex(Query[Len], charsmax(Query)-Len, "`WP_O` int(11) NOT NULL,");
Len += formatex(Query[Len], charsmax(Query)-Len, "`FA_O` int(11) NOT NULL,");
Len += formatex(Query[Len], charsmax(Query)-Len, "`MP5_O` int(11) NOT NULL,");
Len += formatex(Query[Len], charsmax(Query)-Len, "`M3_O` int(11) NOT NULL,");
Len += formatex(Query[Len], charsmax(Query)-Len, "`SC_O` int(11) NOT NULL,");
Len += formatex(Query[Len], charsmax(Query)-Len, "`DEA_O` int(11) NOT NULL,");
Len += formatex(Query[Len], charsmax(Query)-Len, "`USP_O` int(11) NOT NULL,");
Len += formatex(Query[Len], charsmax(Query)-Len, "`GLOCK_O` int(11) NOT NULL,");
Len += formatex(Query[Len], charsmax(Query)-Len, "`KES_O` int(11) NOT NULL, `id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY)");
SQL_ThreadQuery(g_SqlTuple, "createTableThread", Query);
}
public Load(id) {
static Query[10048];
new Data[1];
Data[0] = id;
formatex(Query, charsmax(Query), "SELECT * FROM `Fegyver_Olesek` WHERE Nev = ^"%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) {
M4A1Oles[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "M4_O"));
AK47Oles[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "AK_O"));
AWPOles[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "WP_O"));
FAMASOles[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "FA_O"));
MP5NAVYOles[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "MP5_O"));
M3SHOTGUNOles[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "M3_O"));
SCOUTOles[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "SC_O"));
DEAGLEOles[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "DEA_O"));
USPOles[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "USP_O"));
GlockOles[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "GLOCK_O"));
KESOles[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "KES_O"));
}
else
{
Save(id);
}
}
}
public Save(id)
{
static Query[256];
formatex(Query, charsmax(Query), "INSERT INTO `Fegyver_Olesek` (`Nev`) VALUES (^"%s^");", name[id]);
SQL_ThreadQuery(g_SqlTuple, "QuerySetData", Query);
}
public Update(id)
{
static Query[10048];
new Len;
Len += formatex(Query[Len], charsmax(Query), "UPDATE `Fegyver_Olesek` SET M4_O = ^"%i^", ",M4A1Oles[id]);
Len += formatex(Query[Len], charsmax(Query)-Len, "AK_O = ^"%i^", ", AK47Oles[id]);
Len += formatex(Query[Len], charsmax(Query)-Len, "WP_O = ^"%i^", ", AWPOles[id]);
Len += formatex(Query[Len], charsmax(Query)-Len, "FA_O = ^"%i^", ", FAMASOles[id]);
Len += formatex(Query[Len], charsmax(Query)-Len, "MP5_O = ^"%i^", ", MP5NAVYOles[id]);
Len += formatex(Query[Len], charsmax(Query)-Len, "M3_O = ^"%i^", ", M3SHOTGUNOles[id]);
Len += formatex(Query[Len], charsmax(Query)-Len, "SC_O = ^"%i^", ", SCOUTOles[id]);
Len += formatex(Query[Len], charsmax(Query)-Len, "DEA_O = ^"%s^", ", DEAGLEOles[id]);
Len += formatex(Query[Len], charsmax(Query)-Len, "USP_O = ^"%i^", ", USPOles[id]);
Len += formatex(Query[Len], charsmax(Query)-Len, "GLOCK_O = ^"%i^", ", GlockOles[id]);
Len += formatex(Query[Len], charsmax(Query)-Len, "KES_O = ^"%i^" WHERE Nev = ^"%s^";", KESOles[id], name[id]);
SQL_ThreadQuery(g_SqlTuple, "QuerySetData", Query);
}
public createTableThread(FailState, Handle:Query, Error[], Errcode, Data[], DataSize, Float:Queuetime) {
if(FailState == TQUERY_CONNECT_FAILED)
set_fail_state("[HIBA*] NEM TUDTAM CSATLAKOZNI AZ ADATBAZISHOZ!");
else if(FailState == TQUERY_QUERY_FAILED)
set_fail_state("Query Error");
if(Errcode)
log_amx("[HIBA*] HIBAT DOBTAM: %s",Error);
}
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 plugin_end() {
SQL_FreeHandle(g_SqlTuple)
}