#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>
#include <cstrike>
#include <engine>
#include <fun>
#include <fakemeta>
#include <sqlx>
#define PLUGIN "New Plugin"
#define AUTHOR "Unknown"
#define VERSION "1.0"
#define TULAJ ADMIN_IMMUNITY
#define ADMIN ADMIN_BAN
#define VIP ADMIN_LEVEL_H
new const gMenuPrefix[] = "\d[.:Amitakarsz:.] \yFun";
new const gChatPrefix[] = "[Amitakarsz]";
new const SQL_INFO[][] = {
"", //Kiszolgáló
"", //Felhasználónév
"", //Jelszó
"" //Adatbázis neve
}
new gWeaponKills[13][33], gKills[33], gActiveSkin[13][33], gSteamID[128], gValami[33];
new iMenuPIndex, iChoosedMode, iMenuWeapons;
enum _:eData {
gWeaponName[64],
gWeaponFile[64],
gWeaponKill[64]
}
new Handle:SqlTuple;
new const gWeaponList[][eData] = {
{"M4a1 | Default", "models/v_m4a1.mdl", 0},
//IDE M4 jon
{"Ak47 | Default", "models/v_ak47.mdl", 0},
//IDE AK jon
{"Awp | Default", "models/v_awp.mdl", 0},
//IDE AWP jon
{"Scout | Default", "models/v_scout.mdl", 0},
//IDE SCOUT jon
{"Famas | Default", "models/v_famas.mdl", 0},
//IDE FAMAS jon
{"Galil | Default", "models/v_galil.mdl", 0},
//IDE GALIL jon
{"Aug | Default", "models/v_aug.mdl", 0},
//IDE AUG jon
{"M3 | Default", "models/v_m3.mdl", 0},
//IDE M3 jon
{"XM1014 | Default", "models/v_xm1014.mdl", 0},
//IDE XM1014 jon
{"Knife | Default", "models/v_knife.mdl", 0},
//IDE Knife jon
{"Deagle | Default", "models/v_deagle.mdl", 0},
//IDE Deagle jon
{"Usp | Default", "models/v_usp.mdl", 0},
//IDE USP jon
{"Glock18 | Default", "models/v_glock18.mdl", 0}//Ha bővited ne felejtsd a vesszőt!
//IDE GLOCK jon
};
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_impulse(201, "main_menu");
register_clcmd("say /menu", "main_menu");
register_clcmd("say /menu", "main_menu");
register_clcmd("say /add", "addolas", TULAJ);
register_clcmd("say", "sayhook");
register_clcmd("say_team", "sayteamhook");
register_clcmd("say", "sayhook");
register_clcmd("say_team", "sayteamhook");
register_clcmd("type_itemremoveoradd", "type_itemammount");
RegisterHam(Ham_Killed, "player", "PlayerKilled_p", 1);
RegisterHam(Ham_Item_Deploy, "weapon_m4a1", "WeaponChange_p", 1);
RegisterHam(Ham_Item_Deploy, "weapon_ak47", "WeaponChange_p", 1);
RegisterHam(Ham_Item_Deploy, "weapon_awp", "WeaponChange_p", 1);
RegisterHam(Ham_Item_Deploy, "weapon_scout", "WeaponChange_p", 1);
RegisterHam(Ham_Item_Deploy, "weapon_famas", "WeaponChange_p", 1);
RegisterHam(Ham_Item_Deploy, "weapon_galil", "WeaponChange_p", 1);
RegisterHam(Ham_Item_Deploy, "weapon_aug", "WeaponChange_p", 1);
RegisterHam(Ham_Item_Deploy, "weapon_m3", "WeaponChange_p", 1);
RegisterHam(Ham_Item_Deploy, "weapon_xm1014", "WeaponChange_p", 1);
RegisterHam(Ham_Item_Deploy, "weapon_knife", "WeaponChange_p", 1);
RegisterHam(Ham_Item_Deploy, "weapon_deagle", "WeaponChange_p", 1);
RegisterHam(Ham_Item_Deploy, "weapon_usp", "WeaponChange_p", 1);
RegisterHam(Ham_Item_Deploy, "weapon_glock18", "WeaponChange_p", 1);
}
public plugin_precache()
{
for(new i;i < sizeof(gWeaponList); i++) precache_model(gWeaponList[i][gWeaponFile]);
}
public addolas(id)
{
if(get_user_flags(id) & TULAJ)
{
for(new i = 0; i < 13; i++)
gWeaponKills[i][id] += 50;
gKills[id] += 10;
}
}
public WeaponChange_p(iEnt)
{
new id = get_pdata_cbase(iEnt, 41, 4);
if(!is_user_alive(id) || !is_user_connected(id))
return HAM_IGNORED;
new Weapon = cs_get_weapon_id(iEnt);
switch(Weapon)
{
case CSW_M4A1:
{
if(gActiveSkin[0][id] == -1)
return HAM_IGNORED;
else
entity_set_string(id, EV_SZ_viewmodel, gWeaponList[gActiveSkin[0][id]][gWeaponFile]);
}
case CSW_AK47:
{
if(gActiveSkin[1][id] == -1)
return HAM_IGNORED;
else
entity_set_string(id, EV_SZ_viewmodel, gWeaponList[gActiveSkin[1][id]][gWeaponFile]);
}
case CSW_AWP:
{
if(gActiveSkin[2][id] == -1)
return HAM_IGNORED;
else
entity_set_string(id, EV_SZ_viewmodel, gWeaponList[gActiveSkin[2][id]][gWeaponFile]);
}
case CSW_SCOUT:
{
if(gActiveSkin[3][id] == -1)
return HAM_IGNORED;
else
entity_set_string(id, EV_SZ_viewmodel, gWeaponList[gActiveSkin[3][id]][gWeaponFile]);
}
case CSW_FAMAS:
{
if(gActiveSkin[4][id] == -1)
return HAM_IGNORED;
else
entity_set_string(id, EV_SZ_viewmodel, gWeaponList[gActiveSkin[4][id]][gWeaponFile]);
}
case CSW_GALIL:
{
if(gActiveSkin[5][id] == -1)
return HAM_IGNORED;
else
entity_set_string(id, EV_SZ_viewmodel, gWeaponList[gActiveSkin[5][id]][gWeaponFile]);
}
case CSW_AUG:
{
if(gActiveSkin[6][id] == -1)
return HAM_IGNORED;
else
entity_set_string(id, EV_SZ_viewmodel, gWeaponList[gActiveSkin[6][id]][gWeaponFile]);
}
case CSW_M3:
{
if(gActiveSkin[7][id] == -1)
return HAM_IGNORED;
else
entity_set_string(id, EV_SZ_viewmodel, gWeaponList[gActiveSkin[7][id]][gWeaponFile]);
}
case CSW_XM1014:
{
if(gActiveSkin[8][id] == -1)
return HAM_IGNORED;
else
entity_set_string(id, EV_SZ_viewmodel, gWeaponList[gActiveSkin[8][id]][gWeaponFile]);
}
case CSW_KNIFE:
{
if(gActiveSkin[9][id] == -1)
return HAM_IGNORED;
else
entity_set_string(id, EV_SZ_viewmodel, gWeaponList[gActiveSkin[9][id]][gWeaponFile]);
}
case CSW_DEAGLE:
{
if(gActiveSkin[10][id] == -1)
return HAM_IGNORED;
else
entity_set_string(id, EV_SZ_viewmodel, gWeaponList[gActiveSkin[10][id]][gWeaponFile]);
}
case CSW_USP:
{
if(gActiveSkin[11][id] == -1)
return HAM_IGNORED;
else
entity_set_string(id, EV_SZ_viewmodel, gWeaponList[gActiveSkin[11][id]][gWeaponFile]);
}
case CSW_GLOCK18:
{
if(gActiveSkin[12][id] == -1)
return HAM_IGNORED;
else
entity_set_string(id, EV_SZ_viewmodel, gWeaponList[gActiveSkin[12][id]][gWeaponFile]);
}
}
return HAM_IGNORED;
}
public PlayerKilled_p(iVictim, iKiller)
{
if(iVictim == iKiller || !iKiller || !iVictim)
return PLUGIN_HANDLED;
new sName[MAX_NAME_LENGTH];
get_user_name(iKiller, sName, charsmax(sName));
new iWeapon = get_user_weapon(iKiller);
gKills[iKiller]++;
hp_up(iKiller);
switch(iWeapon)
{
case CSW_M4A1:
{
gWeaponKills[0][iKiller] += 2;
client_print_color(iKiller, print_team_default, "%s ^1%s ^1 Ölésed :^3[ M4a1 fegyver]^1 Jutalom ^3[ +2 M4a1 Pont]", gChatPrefix, sName);
}
case CSW_AK47:
{
gWeaponKills[1][iKiller] += 2;
client_print_color(iKiller, print_team_default, "%s ^1%s ^1 Ölésed :^3[ AK47 fegyver]^1 Jutalom ^3[ +2 AK47 Pont]", gChatPrefix, sName);
}
case CSW_AWP:
{
gWeaponKills[2][iKiller] += 2;
client_print_color(iKiller, print_team_default, "%s ^1%s ^1 Ölésed :^3[ AWP fegyver]^1 Jutalom ^3[ +2 AWP Pont]", gChatPrefix, sName);
}
case CSW_SCOUT:
{
gWeaponKills[3][iKiller] += 2;
client_print_color(iKiller, print_team_default, "%s ^1%s ^1 Ölésed :^3[ SCOUT fegyver]^1 Jutalom ^3[ +2 SCOUT Pont]", gChatPrefix, sName);
}
case CSW_FAMAS:
{
gWeaponKills[4][iKiller] += 2;
client_print_color(iKiller, print_team_default, "%s ^1%s ^1 Ölésed :^3[ FAMAS fegyver]^1 Jutalom ^3[ +2 FAMAS Pont]", gChatPrefix, sName);
}
case CSW_GALIL:
{
gWeaponKills[5][iKiller] += 3;
client_print_color(iKiller, print_team_default, "%s ^1%s ^1 Ölésed :^3[ GALIL fegyver]^1 Jutalom ^3[ +2 GALIL Pont]", gChatPrefix, sName);
}
case CSW_AUG:
{
gWeaponKills[6][iKiller] += 3;
client_print_color(iKiller, print_team_default, "%s ^1%s ^1 Ölésed :^3[ AUG fegyver]^1 Jutalom ^3[ +2 AUG Pont]", gChatPrefix, sName);
}
case CSW_M3:
{
gWeaponKills[7][iKiller] += 3;
client_print_color(iKiller, print_team_default, "%s ^1%s ^1 Ölésed :^3[ M3 fegyver]^1 Jutalom ^3[ +2 M3 Pont]", gChatPrefix, sName);
}
case CSW_XM1014:
{
gWeaponKills[8][iKiller] += 2;
client_print_color(iKiller, print_team_default, "%s ^1%s ^1 Ölésed :^3[ XM1014 fegyver]^1 Jutalom ^3[ +2 XM1014 Pont]", gChatPrefix, sName);
}
case CSW_KNIFE:
{
gWeaponKills[9][iKiller] += 3;
client_print_color(iKiller, print_team_default, "%s ^1%s ^1 Ölésed :^3[ KNIFE fegyver]^1 Jutalom ^3[ +2 KNIFE Pont]", gChatPrefix, sName);
}
case CSW_DEAGLE:
{
gWeaponKills[10][iKiller] += 2;
client_print_color(iKiller, print_team_default, "%s ^1%s ^1 Ölésed :^3[ DEAGLE fegyver]^1 Jutalom ^3[ +2 DEAGLE Pont]", gChatPrefix, sName);
}
case CSW_USP:
{
gWeaponKills[11][iKiller] += 2;
client_print_color(iKiller, print_team_default, "%s ^1%s ^1 Ölésed :^3[ USP fegyver]^1 Jutalom ^3[ +2 USP Pont]", gChatPrefix, sName);
}
case CSW_GLOCK18:
{
gWeaponKills[12][iKiller] += 3;
client_print_color(iKiller, print_team_default, "%s ^1%s ^1 Ölésed :^3[ GLOCK18 fegyver]^1 Jutalom ^3[ +2 GLOCK18 Pont]", gChatPrefix, sName);
}
}
return PLUGIN_HANDLED;
}
public hp_up(id)
{
new iHealth = get_user_health(id);
if(iHealth < 100)
set_user_health(id, iHealth + 5);
if(iHealth > 100)
set_user_health(id, 110);
}
public main_menu(id)
{
new sTitle[128];
format(sTitle, charsmax(sTitle), "[%s] \r- \dFomenu", gMenuPrefix);
new iMenu = menu_create(sTitle, "menu_main_h");
menu_additem(iMenu, "\rRaktar", "1", 0);
menu_additem(iMenu, "\rAdmin menu", "2", 0);
menu_display(id, iMenu, 0);
}
public menu_main_h(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu);
return;
}
new data[9], Name[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), Name,charsmax(Name), callback);
new key = str_to_num(data);
switch(key)
{
case 1: menu_storage(id);
case 2: {
if(get_user_flags(id) & TULAJ) SendItems(id);
else
client_print_color(id, print_team_default, "^3[%s] ^1Ezt a menut csak ^4Tulajdonos ^1hasznalhatja!", gChatPrefix)
}
}
}
public menu_storage(id)
{
new sTitle[128];
format(sTitle, charsmax(sTitle), "[%s] \r- \dRaktár", gMenuPrefix);
new iMenu = menu_create(sTitle, "menu_storage_h");
menu_additem(iMenu, "\rM4A1 \ySkinek", "1", 0);
menu_additem(iMenu, "\rAK47 \ySkinek", "2", 0);
menu_additem(iMenu, "\rAWP \ySkinek", "3", 0);
menu_additem(iMenu, "\rSCOUT \ySkinek", "4", 0);
menu_additem(iMenu, "\rFAMAS \ySkinek", "5", 0);
menu_additem(iMenu, "\rGALIL \ySkinek", "6", 0);
menu_additem(iMenu, "\rAUG \ySkinek", "7", 0);
menu_additem(iMenu, "\rM3 \ySkinek", "8", 0);
menu_additem(iMenu, "\rXM1014 \ySkinek", "9", 0);
menu_additem(iMenu, "\rKNIFE \ySkinek", "10", 0);
menu_additem(iMenu, "\rDEAGLE \ySkinek", "11", 0);
menu_additem(iMenu, "\rUSP \ySkinek", "12", 0);
menu_additem(iMenu, "\rGLOCK18 \ySkinek", "13", 0);
menu_display(id, iMenu, 0);
}
public menu_storage_h(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu);
return;
}
new data[9], Name[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), Name,charsmax(Name), callback);
new key = str_to_num(data);
switch(key)
{
case 1..13:{ menu_weapons(id, key); iMenuWeapons = key;}
}
}
public menu_weapons(id, iNum)
{
new sMenuName[64], iPoint[33];
switch(iNum)
{
case 1:{sMenuName = "M4A1";iPoint[id] = gWeaponKills[0][id];}
case 2:{sMenuName = "AK47";iPoint[id] = gWeaponKills[1][id];}
case 3:{sMenuName = "AWP";iPoint[id] = gWeaponKills[2][id];}
case 4:{sMenuName = "SCOUT";iPoint[id] = gWeaponKills[3][id];}
case 5:{sMenuName = "FAMAS";iPoint[id] = gWeaponKills[4][id];}
case 6:{sMenuName = "GALIL";iPoint[id] = gWeaponKills[5][id];}
case 7:{sMenuName = "AUG";iPoint[id] = gWeaponKills[6][id];}
case 8:{sMenuName = "M3";iPoint[id] = gWeaponKills[7][id];}
case 9:{sMenuName = "XM1014";iPoint[id] = gWeaponKills[8][id];}
case 10:{sMenuName = "KNIFE";iPoint[id] = gWeaponKills[9][id];}
case 11:{sMenuName = "DEAGLE";iPoint[id] = gWeaponKills[10][id];}
case 12:{sMenuName = "USP";iPoint[id] = gWeaponKills[11][id];}
case 13:{sMenuName = "GLOCK18";iPoint[id] = gWeaponKills[12][id];}
}
new sTitle[128];
format(sTitle, charsmax(sTitle), " \w%s %s skin \r[\dPontjaid: %d\y\r]", gMenuPrefix, sMenuName, iPoint[id]);
new iMenu = menu_create(sTitle, "menu_storage_h");
switch(iNum)
{
case 1:
{
for(new i = 0; i < 1; i++)
{
formatex(sTitle, charsmax(sTitle), gWeaponList[i][gWeaponKill] <= gWeaponKills[0][id] ? "\w%s \y[\d%d\w/\r%d\y]":"\w%s \y*Elérhető", gWeaponList[i][gWeaponName], gWeaponKills[0][id], gWeaponList[i][gWeaponKill])
menu_additem(iMenu, sTitle);
}
}
case 2:
{
for(new i = 1; i < 2; i++)
{
formatex(sTitle, charsmax(sTitle), gWeaponList[i][gWeaponKill] <= gWeaponKills[1][id] ? "\w%s \y[\d%d\w/\r%d\y]":"\w%s \y*Elérhető", gWeaponList[i][gWeaponName], gWeaponKills[1][id], gWeaponList[i][gWeaponKill])
menu_additem(iMenu, sTitle);
}
}
case 3:
{
for(new i = 2; i < 3; i++)
{
formatex(sTitle, charsmax(sTitle), gWeaponList[i][gWeaponKill] <= gWeaponKills[2][id] ? "\w%s \y[\d%d\w/\r%d\y]":"\w%s \y*Elérhető", gWeaponList[i][gWeaponName], gWeaponKills[2][id], gWeaponList[i][gWeaponKill])
menu_additem(iMenu, sTitle);
}
}
case 4:
{
for(new i = 3; i < 4; i++)
{
formatex(sTitle, charsmax(sTitle), gWeaponList[i][gWeaponKill] <= gWeaponKills[3][id] ? "\w%s \y[\d%d\w/\r%d\y]":"\w%s \y*Elérhető", gWeaponList[i][gWeaponName], gWeaponKills[3][id], gWeaponList[i][gWeaponKill])
menu_additem(iMenu, sTitle);
}
}
case 5:
{
for(new i = 4; i < 5; i++)
{
formatex(sTitle, charsmax(sTitle), gWeaponList[i][gWeaponKill] <= gWeaponKills[4][id] ? "\w%s \y[\d%d\w/\r%d\y]":"\w%s \y*Elérhető", gWeaponList[i][gWeaponName], gWeaponKills[4][id], gWeaponList[i][gWeaponKill])
menu_additem(iMenu, sTitle);
}
}
case 6:
{
for(new i = 5; i < 6; i++)
{
formatex(sTitle, charsmax(sTitle), gWeaponList[i][gWeaponKill] <= gWeaponKills[5][id] ? "\w%s \y[\d%d\w/\r%d\y]":"\w%s \y*Elérhető", gWeaponList[i][gWeaponName], gWeaponKills[5][id], gWeaponList[i][gWeaponKill])
menu_additem(iMenu, sTitle);
}
}
case 7:
{
for(new i = 6; i < 7; i++)
{
formatex(sTitle, charsmax(sTitle), gWeaponList[i][gWeaponKill] <= gWeaponKills[6][id] ? "\w%s \y[\d%d\w/\r%d\y]":"\w%s \y*Elérhető", gWeaponList[i][gWeaponName], gWeaponKills[6][id], gWeaponList[i][gWeaponKill])
menu_additem(iMenu, sTitle);
}
}
case 8:
{
for(new i = 7; i < 8; i++)
{
formatex(sTitle, charsmax(sTitle), gWeaponList[i][gWeaponKill] <= gWeaponKills[7][id] ? "\w%s \y[\d%d\w/\r%d\y]":"\w%s \y*Elérhető", gWeaponList[i][gWeaponName], gWeaponKills[7][id], gWeaponList[i][gWeaponKill])
menu_additem(iMenu, sTitle);
}
}
case 9:
{
for(new i = 8; i < 9; i++)
{
formatex(sTitle, charsmax(sTitle), gWeaponList[i][gWeaponKill] <= gWeaponKills[8][id] ? "\w%s \y[\d%d\w/\r%d\y]":"\w%s \y*Elérhető", gWeaponList[i][gWeaponName], gWeaponKills[8][id], gWeaponList[i][gWeaponKill])
menu_additem(iMenu, sTitle);
}
}
case 10:
{
for(new i = 9; i < 10; i++)
{
formatex(sTitle, charsmax(sTitle), gWeaponList[i][gWeaponKill] <= gWeaponKills[9][id] ? "\w%s \y[\d%d\w/\r%d\y]":"\w%s \y*Elérhető", gWeaponList[i][gWeaponName], gWeaponKills[9][id], gWeaponList[i][gWeaponKill])
menu_additem(iMenu, sTitle);
}
}
case 11:
{
for(new i = 10; i < 11; i++)
{
formatex(sTitle, charsmax(sTitle), gWeaponList[i][gWeaponKill] <= gWeaponKills[10][id] ? "\w%s \y[\d%d\w/\r%d\y]":"\w%s \y*Elérhető", gWeaponList[i][gWeaponName], gWeaponKills[10][id], gWeaponList[i][gWeaponKill])
menu_additem(iMenu, sTitle);
}
}
case 12:
{
for(new i = 11; i < 12; i++)
{
formatex(sTitle, charsmax(sTitle), gWeaponList[i][gWeaponKill] <= gWeaponKills[11][id] ? "\w%s \y[\d%d\w/\r%d\y]":"\w%s \y*Elérhető", gWeaponList[i][gWeaponName], gWeaponKills[11][id], gWeaponList[i][gWeaponKill])
menu_additem(iMenu, sTitle);
}
}
case 13:
{
for(new i = 12; i < 13; i++)
{
formatex(sTitle, charsmax(sTitle), gWeaponList[i][gWeaponKill] <= gWeaponKills[12][id] ? "\w%s \y[\d%d\w/\r%d\y]":"\w%s \y*Elérhető", gWeaponList[i][gWeaponName], gWeaponKills[12][id], gWeaponList[i][gWeaponKill])
menu_additem(iMenu, sTitle);
}
}
}
menu_setprop(iMenu, MPROP_BACKNAME, "Vissza");
menu_setprop(iMenu, MPROP_NEXTNAME, "Tovább");
menu_setprop(iMenu, MPROP_EXITNAME, "Kilépés");
menu_display(id, iMenu, 0);
}
public usp_handler(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu);
return;
}
new data[9], Name[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), Name,charsmax(Name), callback);
new key = str_to_num(data);
switch(iMenuWeapons)
{
case 1:
{
if(gWeaponList[key][gWeaponKill] <= gWeaponKills[0][id])
gActiveSkin[0][id] = key;
else
client_print_color(id, print_team_blue, "^3[%s]^4 ^1Sajnálom, nincs elegendő ^3Pontod^3!", gChatPrefix);
}
case 2:
{
if(gWeaponList[key][gWeaponKill] <= gWeaponKills[1][id])
gActiveSkin[1][id] = key;
else
client_print_color(id, print_team_blue, "^3[%s]^4 ^1Sajnálom, nincs elegendő ^3Pontod^3!", gChatPrefix);
}
case 3:
{
if(gWeaponList[key][gWeaponKill] <= gWeaponKills[2][id])
gActiveSkin[2][id] = key;
else
client_print_color(id, print_team_blue, "^3[%s]^4 ^1Sajnálom, nincs elegendő ^3Pontod^3!", gChatPrefix);
}
case 4:
{
if(gWeaponList[key][gWeaponKill] <= gWeaponKills[3][id])
gActiveSkin[3][id] = key;
else
client_print_color(id, print_team_blue, "^3[%s]^4 ^1Sajnálom, nincs elegendő ^3Pontod^3!", gChatPrefix);
}
case 5:
{
if(gWeaponList[key][gWeaponKill] <= gWeaponKills[4][id])
gActiveSkin[4][id] = key;
else
client_print_color(id, print_team_blue, "^3[%s]^4 ^1Sajnálom, nincs elegendő ^3Pontod^3!", gChatPrefix);
}
case 6:
{
if(gWeaponList[key][gWeaponKill] <= gWeaponKills[5][id])
gActiveSkin[5][id] = key;
else
client_print_color(id, print_team_blue, "^3[%s]^4 ^1Sajnálom, nincs elegendő ^3Pontod^3!", gChatPrefix);
}
case 7:
{
if(gWeaponList[key][gWeaponKill] <= gWeaponKills[6][id])
gActiveSkin[6][id] = key;
else
client_print_color(id, print_team_blue, "^3[%s]^4 ^1Sajnálom, nincs elegendő ^3Pontod^3!", gChatPrefix);
}
case 8:
{
if(gWeaponList[key][gWeaponKill] <= gWeaponKills[7][id])
gActiveSkin[7][id] = key;
else
client_print_color(id, print_team_blue, "^3[%s]^4 ^1Sajnálom, nincs elegendő ^3Pontod^3!", gChatPrefix);
}
case 9:
{
if(gWeaponList[key][gWeaponKill] <= gWeaponKills[8][id])
gActiveSkin[8][id] = key;
else
client_print_color(id, print_team_blue, "^3[%s]^4 ^1Sajnálom, nincs elegendő ^3Pontod^3!", gChatPrefix);
}
case 10:
{
if(gWeaponList[key][gWeaponKill] <= gWeaponKills[9][id])
gActiveSkin[9][id] = key;
else
client_print_color(id, print_team_blue, "^3[%s]^4 ^1Sajnálom, nincs elegendő ^3Pontod^3!", gChatPrefix);
}
case 11:
{
if(gWeaponList[key][gWeaponKill] <= gWeaponKills[10][id])
gActiveSkin[10][id] = key;
else
client_print_color(id, print_team_blue, "^3[%s]^4 ^1Sajnálom, nincs elegendő ^3Pontod^3!", gChatPrefix);
}
case 12:
{
if(gWeaponList[key][gWeaponKill] <= gWeaponKills[11][id])
gActiveSkin[11][id] = key;
else
client_print_color(id, print_team_blue, "^3[%s]^4 ^1Sajnálom, nincs elegendő ^3Pontod^3!", gChatPrefix);
}
case 13:
{
if(gWeaponList[key][gWeaponKill] <= gWeaponKills[12][id])
gActiveSkin[12][id] = key;
else
client_print_color(id, print_team_blue, "^3[%s]^4 ^1Sajnálom, nincs elegendő ^3Pontod^3!", gChatPrefix);
}
}
menu_destroy(menu);
}
public SendItems(id)
{
new menu = menu_create(".:ghfgh:. \rAdatkezelo menu", "SendItems_handler" );
menu_additem(menu, "\y»\w Pontok Adasa", "1", 0);
menu_additem(menu, "\y»\w Pontok Elvevese", "2", 0);
menu_setprop(menu, MPROP_EXITNAME, "Kilepes");
menu_display(id, menu, 0);
}
public SendItems_handler(id, menu, item){
if(item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new data[9], szName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
new key = str_to_num(data);
switch(key)
{
case 1:{ChoosePlayer(id); iChoosedMode = 1;}
case 2:{ChoosePlayer(id); iChoosedMode = 2;}
}
return PLUGIN_HANDLED;
}
public ChoosePlayer(id)
{
new iPlayers[32], iPnum, iTempID;
new sName[MAX_NAME_LENGTH], sTempID[10];
get_players(iPlayers, iPnum);
new menu = menu_create("\rValaszd ki a jatekost:", "ChoosePlayer_handler");
for(new i; i < iPnum; i++)
{
iTempID = iPlayers[i];
get_user_name(iTempID, sName, charsmax(sName));
num_to_str(iTempID, sTempID, charsmax(sTempID));
menu_additem(menu, sName, sTempID, 0);
}
menu_display(id, menu, 0);
}
public ChoosePlayer_handler(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new data[6], szName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
iMenuPIndex = str_to_num(data);
console_print(id, "%d", iChoosedMode)
client_cmd(id, "messagemode type_itemremoveoradd");
menu_destroy(menu);
return PLUGIN_HANDLED;
}
public type_itemammount(id)
{
new sItem[128], iItemAmmount, sSenderName[MAX_NAME_LENGTH], sTargetName[MAX_NAME_LENGTH];
read_args(sItem, charsmax(sItem));
remove_quotes(sItem);
get_user_name(id, sSenderName, charsmax(sSenderName));
get_user_name(iMenuPIndex, sTargetName, charsmax(sTargetName));
iItemAmmount = str_to_num(sItem);
if(iItemAmmount < 0)
{
client_print_color(id, print_team_blue, "^3[.:hkh:.] ^1Az osszeg nem lehet kisebb, mint 0!");
return PLUGIN_HANDLED;
}
switch(iChoosedMode)
{
case 1:
{
for(new i = 0; i < 13; i++)
gWeaponKills[i][iMenuPIndex] += iItemAmmount;
client_print_color(id, print_team_blue, "^3[.:hkh:.] ^1Sikeresen jovairtal:^4 %d ^1Pontot, neki:^4 %s", iItemAmmount, sTargetName);
client_print_color(iMenuPIndex, print_team_blue, "^3[.:hjkhj:.] ^1Jovairtak neked^4 %d ^1Pontot! BY:^4 %s", iItemAmmount, sTargetName);
client_print_color(id, print_team_blue, "^3»Admin: %s | Jatekos: %s | Osszeg: %d | Topus: Pont Jovairas", sSenderName, sTargetName, iItemAmmount);
return PLUGIN_HANDLED;
}
case 2:
{
for(new i = 0; i < 13; i++)
gWeaponKills[i][iMenuPIndex] -= iItemAmmount;
client_print_color(id, print_team_blue, "^3[.::.] ^1 ^1Sikeresen elvettel:^4 %d ^1Pontokat, tole:^4 %s", iItemAmmount, sTargetName);
client_print_color(iMenuPIndex, print_team_blue, "^3[.::.] ^1 ^1Ellett veve^4 %d ^1Pontok! BY:^4 %s", iItemAmmount, sTargetName);
client_print_color(id, print_team_blue, "^3[.::.] ^1Admin: %s | Jatekos: %s | Osszeg: %d | Tipus: Pont Elvetel", sSenderName, sTargetName, iItemAmmount);
return PLUGIN_HANDLED;
}
}
return PLUGIN_HANDLED;
}
public client_disconnected(id)
{
if(is_user_bot(id))
return;
Update(id);
gKills[id] = 0;
gValami[id] = 0;
for(new i = 0; i < 13; i++)
gActiveSkin[i][id] = -1;
for(new i = 0; i < 13; i++)
gWeaponKills[i][id] = 0;
}
public client_putinserver(id)
{
if(is_user_bot(id))
return;
SQL_load(id);
//szerverbelepes(id); <-- ez idk mi de itt hagyom.
gKills[id] = 0;
gValami[id] = 0;
for(new i = 0; i < 13; i++)
gActiveSkin[i][id] = -1;
for(new i = 0; i < 13; i++)
gWeaponKills[i][id] = 0;
}
public plugin_cfg()
{
new iLen, sQuery[512];
SqlTuple = SQL_MakeDbTuple(SQL_INFO[0], SQL_INFO[1], SQL_INFO[2], SQL_INFO[3])
iLen += formatex(sQuery[iLen], charsmax(sQuery), "CREATE TABLE IF NOT EXISTS `SkinMenu`")
iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "(`Steamid` varchar(128) NOT NULL, ")
iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "`Valami` int(11) NOT NULL,");
for(new i; i < 13; i++)
iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "`WK%d` int(11) NOT NULL,", i);
iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "`Olesek` int(11) NOT NULL, `id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY)");
SQL_ThreadQuery(SqlTuple, "createTableThread", sQuery);
}
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 SQL_load(id)
{
new Data[1], sQuery[512];
Data[0] = id;
get_user_authid(id, gSteamID, charsmax(gSteamID))
formatex(sQuery, charsmax(sQuery), "SELECT * FROM `SkinMenu` WHERE Steamid = ^"%s^";", gSteamID);
SQL_ThreadQuery(SqlTuple, "SQL_load_thr", sQuery, Data, 1)
}
public SQL_load_thr(FailState, Handle:Query, Error[], Errcode, Data[], DataSize, Float:Queuetime)
{
if(FailState == TQUERY_CONNECT_FAILED)
set_fail_state("[*HIBA*] NEM LEHET KAPCSOLODNI AZ ADATBAZISHOZ!");
else if(FailState == TQUERY_QUERY_FAILED)
set_fail_state("[*HIBA*] A LEKERDEZES MEGSZAKADT!");
if(Errcode)
log_amx("[*HIBA*] PROBLEMA A LEKERDEZESNEL! ( %s )",Error);
new id = Data[0];
if(SQL_NumRows(Query) > 0)
{
gValami[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "Valami"));
for(new i; i < 13; i++)
{
new sString[64];
formatex(sString, charsmax(sString), "WK%d", i);
gWeaponKills[i][id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, sString));
}
gKills[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "Olesek"));
}
else
SQL_Save(id);
}
public Update(id)
{
new iLen, sQuery[512];
get_user_authid(id, gSteamID, charsmax(gSteamID))
iLen += formatex(sQuery[iLen], charsmax(sQuery), "UPDATE `SkinMenu` SET Valami = ^"%i^", ", gValami[id]);
for(new i; i < 13; i++)
iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "WK%d = ^"%i^", ", i, gWeaponKills[i][id]);
iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "Olesek = ^"%i^" WHERE Steamid = ^"%s^";", gKills[id], gSteamID);
SQL_ThreadQuery(SqlTuple, "QuerySetData", sQuery)
}
public SQL_Save(id)
{
new sQuery[512]
get_user_authid(id, gSteamID, charsmax(gSteamID))
formatex(sQuery, charsmax(sQuery), "INSERT INTO `SkinMenu` (`Steamid`) VALUES (^"%s^");", gSteamID);
SQL_ThreadQuery(SqlTuple, "QuerySetData", sQuery);
}
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(SqlTuple);
}
public sayhook(id)
{
new Message[192];
read_args(Message, charsmax(Message))
remove_quotes(Message)
if(strlen(Message) == 0 || Message[0] == '/')
return PLUGIN_HANDLED;
new Death[16], sName[MAX_NAME_LENGTH];
get_user_name(id, sName, charsmax(sName));
new sRank[64], sColor[16];
switch(get_user_flags(id))
{
case TULAJ:{ sRank = "^4[^3Tulajdonos^4]"; sColor = "^4";}
case ADMIN:{ sRank = "^4[^3Admin^4]"; sColor = "^4";}
case VIP:{ sRank = "^4[^3VIP^4]"; sColor = "^3";}
default:{ sRank = "^4[^3Jatekos^4]"; sColor = "^1";}
}
for(new i = 1; i <= get_maxplayers(); i++)
{
if(is_user_connected(i) && !is_user_bot(i))
{
formatex(Death, charsmax(Death), is_user_alive(id) ? "":"*Halott*");
client_print_color(i, print_team_default, "%s%s^3%s: %s%s", Death, sRank, sName, sColor, Message);
}
}
return PLUGIN_HANDLED;
}
public sayteamhook(id)
{
new Message[192];
read_args(Message, charsmax(Message))
remove_quotes(Message)
if(strlen(Message) == 0 || Message[0] == '/')
return PLUGIN_HANDLED;
new Death[16], sName[MAX_NAME_LENGTH];
get_user_name(id, sName, charsmax(sName));
new iTeam, sTeam[32];
iTeam = get_user_team(id, sTeam, charsmax(sTeam));
switch(iTeam)
{
case CS_TEAM_CT: sTeam = "CT";
case CS_TEAM_T: sTeam = "T";
case CS_TEAM_SPECTATOR: sTeam = "SPEC";
}
for(new i = 1; i <= get_maxplayers(); i++)
{
if(is_user_connected(i) && !is_user_bot(i) || get_user_flags(id) & ADMIN_BAN)
{
formatex(Death, charsmax(Death), is_user_alive(id) ? "":"*Halott*");
client_print_color(i, print_team_default, "%s^3(%s)^1%s: ^3%s", Death, sTeam, sName, Message);
}
}
return PLUGIN_HANDLED;
}
public sayhook(id)
{
new Message[192];
read_args(Message, charsmax(Message))
remove_quotes(Message)
if(strlen(Message) == 0 || Message[0] == '/')
return PLUGIN_HANDLED;
new Death[16], sName[MAX_NAME_LENGTH];
get_user_name(id, sName, charsmax(sName));
new sRank[64], sColor[16];
switch(get_user_flags(id))
{
case TULAJ:{ sRank = "^4[^3Tulajdonos^4]"; sColor = "^4";}
case ADMIN:{ sRank = "^4[^3Admin^4]"; sColor = "^4";}
case VIP:{ sRank = "^4[^3VIP^4]"; sColor = "^3";}
default:{ sRank = "^4[^3Jatekos^4]"; sColor = "^1";}
}
for(new i = 1; i <= get_maxplayers(); i++)
{
if(is_user_connected(i) && !is_user_bot(i))
{
formatex(Death, charsmax(Death), is_user_alive(id) ? "":"*Halott*");
client_print_color(i, print_team_default, "%s%s^3%s: %s%s", Death, sRank, sName, sColor, Message);
}
}
return PLUGIN_HANDLED;
}
public sayteamhook(id)
{
new Message[192];
read_args(Message, charsmax(Message))
remove_quotes(Message)
if(strlen(Message) == 0 || Message[0] == '/')
return PLUGIN_HANDLED;
new Death[16], sName[MAX_NAME_LENGTH];
get_user_name(id, sName, charsmax(sName));
new iTeam, sTeam[32];
iTeam = get_user_team(id, sTeam, charsmax(sTeam));
switch(iTeam)
{
case CS_TEAM_CT: sTeam = "CT";
case CS_TEAM_T: sTeam = "T";
case CS_TEAM_SPECTATOR: sTeam = "SPEC";
}
for(new i = 1; i <= get_maxplayers(); i++)
{
if(is_user_connected(i) && !is_user_bot(i) || get_user_flags(id) & ADMIN_BAN))
{
formatex(Death, charsmax(Death), is_user_alive(id) ? "":"*Halott*");
client_print_color(i, print_team_default, "%s^3(%s)^1%s: ^3%s", Death, sTeam, sName, Message);
}
}
return PLUGIN_HANDLED;
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1038\\ f0\\ fs18 \n\\ par }
*/