/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <nvault>
#include <fakemeta>
#include <cstrike>
#include <Colorchat>
#define PLUGIN "11.9"
#define VERSION "11.5"
#define AUTHOR "111.2"
new oles[33], awp[33], vault
new RosszKarakterek, RosszKarakterek2
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /bolt", "awpmenu")
register_clcmd("say /awp", "awpmenu")
register_clcmd("say /menu", "awpmenu")
register_clcmd("say","handlesay")
register_clcmd("say_team","handlesay")
vault = nvault_open("awp_mentes")
register_event("CurWeapon", "Event_Change_Weapon", "be", "1=1")
register_event("DeathMsg","death","a")
}
public plugin_precache() {
precache_model("models/endlessawp/awp0.mdl")
precache_model("models/endlessawp/awp1.mdl")
precache_model("models/endlessawp/awp2.mdl")
precache_model("models/endlessawp/awp3.mdl")
precache_model("models/endlessawp/awp4.mdl")
precache_model("models/endlessawp/awp5.mdl")
precache_model("models/endlessawp/awp6.mdl")
precache_model("models/endlessawp/awp7.mdl")
precache_model("models/endlessawp/awp8.mdl")
}
public death(){
new killer = read_data(1)
new victim = read_data(2)
if(killer == victim)
{
return PLUGIN_HANDLED
}
oles[killer]++
mentes(killer)
return PLUGIN_HANDLED
}
public awpmenu(id) {
new menu = menu_create("\r[~|\yEndLeSS\r|~] \d- \wAWP Menü", "awpmenu_hl")
menu_additem(menu,"\rAWP \ySkinek","1",0)
menu_additem(menu,"\yRangok","2",0)
menu_display(id,menu,0)
}
public awpmenu_hl(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: awpvalaszt(id)
case 2: rangok(id)
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
public awpvalaszt(id){
new cim[121], ks1[121],ks2[121],ks3[121],ks4[121],ks5[121],ks6[121],ks7[121],ks8[121],ks9[121],ks10[121]
format(cim, charsmax(cim),"\r[~|\yEndLeSS\r|~] \y| AWP \r|^n\yÖléseid : \r%d",oles[id])
format(ks1, charsmax(ks1),"\rAlap \wAWP \y[Megszerezve]")
if(oles[id] < 75)
format(ks2, charsmax(ks2),"\rArany \wAWP \r[\w%d\y/\w75 ölés\r]",oles[id])
else
format(ks2, charsmax(ks2),"\rArany \wAWP \y[\wMegszerezve\y]")
if(oles[id] < 185)
format(ks3, charsmax(ks3),"\rPulzus \wAWP \r[\w%d\y/\w185 ölés\r]",oles[id])
else
format(ks3, charsmax(ks3),"\rPulzus \wAWP \y[\wMegszerezve\y]")
if(oles[id] < 295)
format(ks4, charsmax(ks4),"\rTerep \wAWP \r[\w%d\y/\w295 ölés\r]",oles[id])
else
format(ks4, charsmax(ks4),"\rTerep \wAWP \y[\wMegszerezve\y]")
if(oles[id] < 470)
format(ks5, charsmax(ks5),"\rTigris \wAWP \r[\w%d\y/\w470 ölés\r]",oles[id])
else
format(ks5, charsmax(ks5),"\rTigris \wAWP \y[\wMegszerezve\y]")
if(oles[id] < 600)
format(ks6, charsmax(ks6),"\rAsiimov \wAWP \r[\w%d\y/\w600 ölés\r]",oles[id])
else
format(ks6, charsmax(ks6),"\rAsiimov \wAWP \y[\wMegszerezve\y]")
if(oles[id] < 780)
format(ks7, charsmax(ks7),"\rTűz \wAWP \r[\w%d\y/\w780 ölés\r]",oles[id])
else
format(ks7, charsmax(ks7),"\rTűz \wAWP \y[\wMegszerezve\y]")
if(oles[id] < 900)
format(ks8, charsmax(ks8),"\rMetal \wAWP \r[\w%d\y/\w900 ölés\r]",oles[id])
else
format(ks8, charsmax(ks8),"\rMetal \wAWP \y[\wMegszerezve\y]")
if(oles[id] < 1150)
format(ks9, charsmax(ks9),"\rMagma \wAWP \r[\w%d\y/\w1150 ölés\r]",oles[id])
else
format(ks9, charsmax(ks9),"\rMagma \wAWP \y[\wMegszerezve\y]")
if(oles[id] < 2000)
format(ks10, charsmax(ks10),"\rStar \wAWP \r[\w%d\y/\w2000 ölés\r]",oles[id])
else
format(ks10, charsmax(ks10),"\rStar \wAWP \y[\wMegszerezve\y]")
new menu = menu_create(cim, "awpvalaszt_hl")
menu_additem(menu,ks1,"1",0)
menu_additem(menu,ks2,"2",0)
menu_additem(menu,ks3,"3",0)
menu_additem(menu,ks4,"4",0)
menu_additem(menu,ks5,"5",0)
menu_additem(menu,ks6,"6",0)
menu_additem(menu,ks7,"7",0)
menu_additem(menu,ks8,"8",0)
menu_additem(menu,ks9,"9",0)
menu_additem(menu,ks10,"10",0)
menu_additem(menu,"\rFacebook csoportunk: \wfacebook.com/groups/szerverek2","1",0)
menu_setprop(menu, MPROP_NEXTNAME, "Tovább")
menu_setprop(menu, MPROP_EXITNAME, "Bezárás")
menu_setprop(menu, MPROP_BACKNAME, "Előző")
menu_setprop(menu, MPROP_PERPAGE, 6);
menu_display(id,menu,0)
}
public awpvalaszt_hl(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:{
if(oles[id] >= 0){
awp[id] = 0
engclient_cmd(id,"weapon_awp")
ColorChat(id, GREEN, "[Információ]^x01 Sikeres választás!")
}
else
{
ColorChat(id, GREEN, "[Információ]^x01 Hiányzik még %d ölés!",0-oles[id])
}
}
case 2:{
if(oles[id] >= 75){
awp[id] = 1
engclient_cmd(id,"weapon_awp")
ColorChat(id, GREEN, "[Információ]^x01 Sikeres választás!")
}
else
{
ColorChat(id, GREEN, "[Információ]^x01 Hiányzik még %d ölés!",75-oles[id])
}
}
case 3:{
if(oles[id] >= 185){
awp[id] = 2
engclient_cmd(id,"weapon_awp")
ColorChat(id, GREEN, "[Információ]^x01 Sikeres választás!")
}
else
{
ColorChat(id, GREEN, "[Információ]^x01 Hiányzik még %d ölés!",185-oles[id])
}
}
case 4:{
if(oles[id] >= 295){
awp[id] = 3
engclient_cmd(id,"weapon_awp")
ColorChat(id, GREEN, "[Információ]^x01 Sikeres választás!")
}
else
{
ColorChat(id, GREEN, "[Információ]^x01 Hiányzik még %d ölés!",295-oles[id])
}
}
case 5:{
if(oles[id] >= 470){
awp[id] = 4
engclient_cmd(id,"weapon_awp")
ColorChat(id, GREEN, "[Információ]^x01 Sikeres választás!")
}
else
{
ColorChat(id, GREEN, "[Információ]^x01 Hiányzik még %d ölés!",470-oles[id])
}
}
case 6:{
if(oles[id] >= 600){
awp[id] = 5
engclient_cmd(id,"weapon_awp")
ColorChat(id, GREEN, "[Információ]^x01 Sikeres választás!")
}
else
{
ColorChat(id, GREEN, "[Információ]^x01 Hiányzik még %d ölés!",600-oles[id])
}
}
case 7:{
if(oles[id] >= 780){
awp[id] = 6
engclient_cmd(id,"weapon_awp")
ColorChat(id, GREEN, "[Információ]^x01 Sikeres választás!")
}
else
{
ColorChat(id, GREEN, "[Információ]^x01 Hiányzik még %d ölés!",780-oles[id])
}
}
case 8:{
if(oles[id] >= 900){
awp[id] = 7
engclient_cmd(id,"weapon_awp")
ColorChat(id, GREEN, "[Információ]^x01 Sikeres választás!")
}
else
{
ColorChat(id, GREEN, "[Információ]^x01 Hiányzik még %d ölés!",900-oles[id])
}
}
case 9:{
if(oles[id] >= 1150){
awp[id] = 8
engclient_cmd(id,"weapon_awp")
ColorChat(id, GREEN, "[Információ]^x01 Sikeres választás!")
}
else
{
ColorChat(id, GREEN, "[Információ]^x01 Hiányzik még %d ölés!",1150-oles[id])
}
}
case 10:{
if(oles[id] >= 2000){
awp[id] = 9
engclient_cmd(id,"weapon_awp")
ColorChat(id, GREEN, "[Információ]^x01 Sikeres választás!")
}
else
{
ColorChat(id, GREEN, "[Információ]^x01 Hiányzik még %d ölés!",2000-oles[id])
}
}
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
public rangok(id){
new cim[121], ks1[121],ks2[121],ks3[121],ks4[121],ks5[121],ks6[121],ks7[121],ks8[121],ks9[121],ks10[121]
format(cim, charsmax(cim),"\r[~|\yEndLeSS\r|~] \y| Rangok \r|^n\yÖléseid : \r%d",oles[id])
format(ks1, charsmax(ks1),"\wKezdő Alaprang \y[\wMegszerezve\y]")
if(oles[id] < 50)
format(ks2, charsmax(ks2),"\wHaladó Rang \r[%d/50 ölés]",oles[id])
else
format(ks2, charsmax(ks2),"\wHaladó Rang \y[\wMegszerezve\y]")
if(oles[id] < 100)
format(ks3, charsmax(ks2),"\wProfi Rang \r[%d/100 ölés]",oles[id])
else
format(ks3, charsmax(ks2),"\wProfi Rang \y[\wMegszerezve\y]")
if(oles[id] < 200)
format(ks4, charsmax(ks2),"\wHarcos Rang \r[%d/200 ölés]",oles[id])
else
format(ks4, charsmax(ks2),"\wHarcos Rang \y[\wMegszerezve\y]")
if(oles[id] < 400)
format(ks5, charsmax(ks2),"\wElit Rang \r[%d/400 ölés]",oles[id])
else
format(ks5, charsmax(ks2),"\wElit Rang \y[\wMegszerezve\y]")
if(oles[id] < 800)
format(ks6, charsmax(ks2),"\wTitán Rang \r[%d/800 ölés]",oles[id])
else
format(ks6, charsmax(ks2),"\wTitán Rang \y[\wMegszerezve\y]")
if(oles[id] < 1600)
format(ks7, charsmax(ks2),"\wHerceg Rang \r[%d/1600 ölés]",oles[id])
else
format(ks7, charsmax(ks2),"\wHerceg Rang \y[\wMegszerezve\y]")
if(oles[id] < 3200)
format(ks8, charsmax(ks2),"\wKirály Rang \r[%d/3200 ölés]",oles[id])
else
format(ks8, charsmax(ks2),"\wKirály Rang \y[\wMegszerezve\y]")
if(oles[id] < 3500)
format(ks9, charsmax(ks2),"\wIsten Rang \r[%d/3500 ölés]",oles[id])
else
format(ks9, charsmax(ks2),"\wIsten Rang \y[\wMegszerezve\y]")
if(oles[id] < 4000)
format(ks10, charsmax(ks2),"\wLegenda Rang \r[%d/4000 ölés]^n",oles[id])
else
format(ks10, charsmax(ks2),"\wLegenda Rang \y[\wMegszerezve\y]^n")
new menu = menu_create(cim, "rangok_h")
menu_additem(menu,ks1,"1",0)
menu_additem(menu,ks2,"1",0)
menu_additem(menu,ks3,"1",0)
menu_additem(menu,ks4,"1",0)
menu_additem(menu,ks5,"1",0)
menu_additem(menu,ks6,"1",0)
menu_additem(menu,ks7,"1",0)
menu_additem(menu,ks8,"1",0)
menu_additem(menu,ks9,"1",0)
menu_additem(menu,ks10,"1",0)
menu_additem(menu,"\rFacebook csoportunk: \wfb.com/groups/szerverek2","1",0)
menu_setprop(menu, MPROP_NEXTNAME, "Tovább")
menu_setprop(menu, MPROP_EXITNAME, "Bezárás")
menu_setprop(menu, MPROP_BACKNAME, "Előző")
menu_display(id,menu,0)
}
public rangok_h(id, menu, item)
{
if( item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new data[9], szName[64], name[32]
get_user_name(id, name, charsmax(name))
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: rangok(id)
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
public handlesay(id)
{
new message[192], Name[32], none[2][32], chat[192], rang[32]
read_args(message, 191)
remove_quotes(message)
new hossz = strlen(message)
new i = 0
RosszKarakterek = 0
while(i < hossz) {
if(message[i] == '#')
RosszKarakterek++
++i
}
if(RosszKarakterek != 0)
{
new JatekosNeve[32]
get_user_name(id, JatekosNeve, charsmax(JatekosNeve))
new JatekosIP[32]
get_user_ip(id, JatekosIP, charsmax(JatekosIP))
server_cmd("kick #%d Tiltott karakter-t irtal chatbe! ^"#^"", get_user_userid(id))
log_amx("%s | %s rossz karaktert irtbe chatbe : %s", JatekosNeve, JatekosIP, message)
return PLUGIN_HANDLED
}
formatex(none[0], 31, ""), formatex(none[1], 31, " ")
if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
return PLUGIN_HANDLED;
if(!equali(message, none[0]) && !equali(message, none[1]))
{
get_user_name(id, Name, 31);
if(oles[id] < 25)
rang = "Kezdő"
else if(oles[id] < 50)
rang = "Haladó"
else if(oles[id] < 100)
rang = "Profi"
else if(oles[id] < 200)
rang = "Harcos"
else if(oles[id] < 400)
rang = "Elit"
else if(oles[id] < 800)
rang = "Titán"
else if(oles[id] < 1600)
rang = "Herceg"
else if(oles[id] < 3200)
rang = "Király"
else if(oles[id] < 3500)
rang = "Isten"
else
rang = "Legenda"
if(equal("",Name))
formatex(chat, 191, "^4[TULAJDONOS][%s]^3%s^1 :^4 %s",rang, Name, message)
else if(equal("",Name))
formatex(chat, 191, "^4[SCRIPTER][%s]^3%s^1 :^4 %s",rang, Name, message)
else if(equal("",Name))
formatex(chat, 191, "^4[DESIGNER][%s]^3%s^1 :^4 %s",rang, Name, message)
else if(equal("",Name))
formatex(chat, 191, "^4[KONFIGOS][%s]^3%s^1 :^4 %s",rang, Name, message)
else if(equal("",Name))
formatex(chat, 191, "^4[FŐADMIN][%s]^3%s^1 :^4 %s",rang, Name, message)
else if(equal("",Name))
formatex(chat, 191, "^4[ADMIN][%s]^3%s^1 :^4 %s",rang, Name, message)
else if(get_user_flags(id) & ADMIN_KICK)
formatex(chat, 191, "^4[ADMIN][%s]^3%s^1 :^4 %s",rang, Name, message)
else
formatex(chat, 191, "^4[%s]^3%s^1 :^1 %s",rang, Name, message)
switch(cs_get_user_team(id))
{
case 1: ColorChat(0, RED, chat)
case 2: ColorChat(0, BLUE, chat)
}
if(cs_get_user_team(id) == CS_TEAM_SPECTATOR)
ColorChat(0, GREY, chat)
return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
}
public mentes(id)
{
new vaultkey[64],vaultdata[256], name[33]
get_user_name(id, name, 32)
format(vaultkey,63,"%s-awp", name)
format(vaultdata,255,"%d", oles[id])
nvault_set(vault,vaultkey,vaultdata)
return PLUGIN_CONTINUE
}
public betoltes(id)
{
new vaultkey[64],vaultdata[256], name[33]
get_user_name(id, name, 32)
format(vaultkey,63,"%s-awp", name)
nvault_get(vault,vaultkey,vaultdata,255)
oles[id] = str_to_num(vaultdata)
return PLUGIN_CONTINUE;
}
public plugin_end()
{
nvault_close(vault)
}
public Event_Change_Weapon(id)
{
new fgy = get_user_weapon(id)
if(awp[id] == -1 && fgy == CSW_AWP)
{
set_pev(id, pev_viewmodel2, "models/endlessawp/awp0.mdl")
}
if(awp[id] == 1 && fgy == CSW_AWP)
{
set_pev(id, pev_viewmodel2, "models/endlessawp/awp1.mdl")
}
if(awp[id] == 2 && fgy == CSW_AWP)
{
set_pev(id, pev_viewmodel2, "models/endlessawp/awp2.mdl")
}
if(awp[id] == 3 && fgy == CSW_AWP)
{
set_pev(id, pev_viewmodel2, "models/endlessawp/awp3.mdl")
}
if(awp[id] == 4 && fgy == CSW_AWP)
{
set_pev(id, pev_viewmodel2, "models/endlessawp/awp4.mdl")
}
if(awp[id] == 5 && fgy == CSW_AWP)
{
set_pev(id, pev_viewmodel2, "models/endlessawp/awp5.mdl")
}
if(awp[id] == 6 && fgy == CSW_AWP)
{
set_pev(id, pev_viewmodel2, "models/endlessawp/awp6.mdl")
}
if(awp[id] == 7 && fgy == CSW_AWP)
{
set_pev(id, pev_viewmodel2, "models/endlessawp/awp7.mdl")
}
if(awp[id] == 8 && fgy == CSW_AWP)
{
set_pev(id, pev_viewmodel2, "models/endlessawp/awp8.mdl")
}
}
public client_connect(id)
{
betoltes(id)
new JatekosNeve[32]
get_user_name(id, JatekosNeve, charsmax(JatekosNeve))
new JatekosIP[32]
get_user_ip(id, JatekosIP, charsmax(JatekosIP))
new hossz = strlen(JatekosNeve)
new i = 0
RosszKarakterek = 0
RosszKarakterek2 = 0
while(i < hossz)
{
if(JatekosNeve[i] == '#')
RosszKarakterek++
if(JatekosNeve[i] == '_')
RosszKarakterek2++
++i
}
if(RosszKarakterek != 0 && RosszKarakterek2 != 0)
{
server_cmd("kick #%d Tiltott karakter van a nevedben. ^"# & _^"", get_user_userid(id))
log_amx("Egy jatekos tiltott karakteres nevvel jott fel : %s | %s", JatekosNeve, JatekosIP)
}
return PLUGIN_CONTINUE
}
public client_disconnect(id)
{
mentes(id)
}
stock print_color(const id, const input[], any:...)
{
new count = 1, players[32]
static msg[191]
vformat(msg, 190, input, 3)
replace_all(msg, 190, "!g", "^4")
replace_all(msg, 190, "!y", "^1")
replace_all(msg, 190, "!t", "^3")
replace_all(msg, 190, "á", "á")
replace_all(msg, 190, "é", "é")
replace_all(msg, 190, "í", "í")
replace_all(msg, 190, "ó", "ó")
replace_all(msg, 190, "ö", "ö")
replace_all(msg, 190, "ő", "ő")
replace_all(msg, 190, "ú", "ú")
replace_all(msg, 190, "ü", "ü")
replace_all(msg, 190, "ű", "ű")
replace_all(msg, 190, "Á", "Á")
replace_all(msg, 190, "É", "É")
replace_all(msg, 190, "Í", "Í")
replace_all(msg, 190, "Ó", "Ó")
replace_all(msg, 190, "Ö", "Ö")
replace_all(msg, 190, "Ő", "Ő")
replace_all(msg, 190, "Ú", "Ú")
replace_all(msg, 190, "Ü", "Ü")
replace_all(msg, 190, "Ű", "Ű")
if (id) players[0] = id; else get_players(players, count, "ch")
{
for (new i = 0; i < count; i++)
{
if (is_user_connected(players[i]))
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
write_byte(players[i])
write_string(msg)
message_end()
}
}
}
return PLUGIN_HANDLED
}