/**/
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#include <fakemeta>
#include <hamsandwich>
#include <colorchat>
new const PLUGIN[] = "Kesrendszer"
new const VERSION[] = "1.0"
new const AUTHOR[] = "Supra"
#define TULAJ ADMIN_IMMUNITY
#define ADMIN ADMIN_BAN
#define VIP ADMIN_LEVEL_C
#define Szazalek %
new s_kes[33], p_kes[33], o_kes[33], alapkes[33]//, talalkes[33]
new tapasztalat[33], szint[33], pont[33], oles[33]
//vip
new simavip[33], simaviphasznal[33], simavipmp[33], simavipperc[33]
new premiumvip[33], premiumviphasznal[33], premiumvipmp[33], premiumvipperc[33]
new const PREVIX[] = "[BadboYs Only Knife]"
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /menu", "fomenu")
register_clcmd("drop","fomenu")
register_clcmd("say /add", "addolas",ADMIN_IMMUNITY)
set_task(60.0, "idoellenorzes",_,_,_,"b")
register_event("DeathMsg", "halal", "a")
register_clcmd("say", "handlesay")
register_clcmd("say_team", "handlesay")
register_event("CurWeapon", "fegyvervaltas", "be", "1=1")
}
public plugin_precache() {
precache_model("models/v_knife.mdl")
precache_model("models/teszt/szint/kes1.mdl")
//pont
precache_model("models/teszt/pont/kes1.mdl")
}
public fegyvervaltas(id)
{
new fgy = get_user_weapon(id)
if(alapkes[id] == 0 && fgy == CSW_KNIFE)
{
set_pev(id, pev_viewmodel2, "models/v_knife.mdl")
}
if(s_kes[id] == 1 && fgy == CSW_KNIFE)
{
set_pev(id, pev_viewmodel2, "models/teszt/szint/kes1.mdl")
}
//pont
if(p_kes[id] == 1 && fgy == CSW_KNIFE)
{
set_pev(id, pev_viewmodel2, "models/teszt/pont/kes1.mdl")
}
}
public idoellenorzes()
{
new players[32], num, id
get_players(players, num)
for(new i;i<num; i++)
{
id = players[i]
if(simaviphasznal[id] == 1)
{
simavipmp[id]++
}
if(simavipmp[id] >= 60)
{
simavipperc[id]--
simavipmp[id] = 0
}
if(simavipperc[id] == 0 && simaviphasznal[id] == 1)
{
simavip[id] = 0
simaviphasznal[id] = 0
simavipmp[id] = 0
simavipperc[id] = 0
ColorChat(id, GREEN, "%s Sajnálom, le járt a VIP Tagságod!",PREVIX)
viprendszer(id)
}
if(premiumviphasznal[id] == 1)
{
premiumvipmp[id]++
}
if(premiumvipmp[id] >= 60)
{
premiumvipperc[id]--
premiumvipmp[id] = 0
}
if(premiumvipperc[id] == 0 && premiumviphasznal[id] == 1)
{
premiumvip[id] = 0
premiumviphasznal[id] = 0
premiumvipmp[id] = 0
premiumvipperc[id] = 0
ColorChat(id, GREEN, "%s Sajnálom, le járt a VIP Tagságod!",PREVIX)
viprendszer(id)
}
}
}
public addolas(id)
{
szint[id] = 3
pont[id] = 500
}
public fomenu(id) {
new focim[121]
formatex(focim, charsmax(focim), "\r[BadboYs*]\w Only Knife\w^n\wSzint: %d | Tapasztalat: %d%% | Pont: %d", szint[id], tapasztalat[id], pont[id])
new menu = menu_create(focim, "fomenu_h")
menu_additem(menu, "Szint Kések","1",0)
menu_additem(menu, "Limitált Kések","2",0)
menu_additem(menu, "Ölésért Kések","3",0)
menu_additem(menu, "Ingyen Kések","4",0)
menu_additem(menu, "[V.I.P]","5",0)
menu_additem(menu, "Szabaly/Info", "6",0)
//menu_additem(menu, "Raktár","7",0)
//menu_additem(menu, "Láda Nyitás","8",0)
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
menu_setprop(menu, MPROP_EXITNAME, "Kilépés")
menu_display(id, menu, 0)
}
public fomenu_h(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu)
}
new data[9], szName[64], 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:
{
kesek(id)
}
case 2:
{
pontkesek(id)
}
case 5:
{
viprendszer(id)
}
case 6:
{
show_motd(id, "addons/amxmodx/configs/info/szabaly.txt")
}
}
return PLUGIN_HANDLED;
}
public kesek(id)
{
new cim[121]
format(cim, charsmax(cim), "\rBadboYs*\w Only Knife Rendszer\d Kések\w^n\wSzint: %d | Tapasztalat: %d%% | Pont: %d", szint[id], tapasztalat[id], pont[id])
new menu = menu_create(cim, "kesek_h")
if(szint[id]>= 3)
menu_additem(menu, "\wKatana-Fade Kés \r[megszerezve]", "1", 0)
else
menu_additem(menu, "\dKatana-Fade Kés [3 Szint]", "1", 0)
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
menu_setprop(menu, MPROP_EXITNAME, "Kilépés")
menu_display(id, menu, 0)
}
public kesek_h(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu)
}
new data[9], szName[64], 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(szint[id]>= 3)
{
strip_user_weapons(id)
give_item(id, "weapon_knife")
s_kes[id] = 1
pontkesek(id)
ColorChat(id, GREEN, "%s ^3Sikeresen Kiválasztodtad a ^1Katana-Fade ^3kést",PREVIX)
}
else
{
ColorChat(id, GREEN, "%s ^3Nincs elég Szinted",PREVIX)
}
}
}
}
public pontkesek(id)
{
new cim[121]
format(cim, charsmax(cim), "\rBadboYs*\w Only Knife Rendszer\d Kések\w^n\wSzint: %d | Tapasztalat: %d%% | Pont: %d", szint[id], tapasztalat[id], pont[id])
new menu = menu_create(cim, "kesekpont_h")
if(pont[id]>= 500)
menu_additem(menu, "\wTransparent\r[megszerezve]", "1", 0)
else
menu_additem(menu, "\dTransparent Kés [500 Pont]", "1", 0)
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
menu_setprop(menu, MPROP_EXITNAME, "Kilépés")
menu_display(id, menu, 0)
}
public kesekpont_h(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu)
}
new data[9], szName[64], 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(pont[id]>= 500)
{
strip_user_weapons(id)
give_item(id, "weapon_knife")
p_kes[id] = 1
pontkesek(id)
ColorChat(id, GREEN, "%s ^3Sikeresen Kiválasztodtad a ^1Transparent ^3kést",PREVIX)
}
else
{
ColorChat(id, GREEN, "%s ^3Nincs elég Pontod",PREVIX)
}
}
}
}
public viprendszer(id)
{
new cim[121], cim2[121], cim3[121]
format(cim, charsmax(cim), "\r[BadboYs*]\w Only Knife \dV.I.P\w^n\wSzint: %d | Tapasztalat: %d%% | Pont: %d", szint[id], tapasztalat[id], pont[id])
new menu = menu_create(cim, "viprendszer_h")
if(simaviphasznal[id] == 1)
{
format(cim2, charsmax(cim2), "\w2 Hét Sima VIP^n\r*\d Ára. 25.000 Pont\y Te már meg vetted!^n\wSima VIP:\d Lejár:\r %d\w Perc múlva^n", simavipperc[id])
menu_additem(menu, cim2, "0", 0)
}
else
{
menu_additem(menu, "\w2 Hét Sima VIP^n\r*\d Ára. 15.000 Pont^n", "1", 0)
}
if(premiumviphasznal[id] == 1)
{
format(cim3, charsmax(cim3), "\w1 HO Premium VIP^n\r*\d Ára. 75.000 Pont\y Te már meg vetted!^n\wPremium VIP:\d Lejár:\r %d\w Perc múlva^n", premiumvipperc[id])
menu_additem(menu, cim3, "0", 0)
}
else
{
menu_additem(menu, "\w1 HO Premium VIP^n\r*\d Ára. 75.000 Pont^n", "2", 0)
}
menu_additem(menu, "\wV.I.P\y Elonyök^n", "3", 0)
menu_additem(menu, "\rV.I.P Menü", "4", 0)
menu_setprop(menu, MPROP_EXITNAME, "Kilépés")
menu_display(id, menu, 0)
}
public viprendszer_h(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu)
}
new data[9], szName[64], access, callback
menu_item_getinfo(menu, item, access, data, charsmax(data), szName, charsmax(szName), callback)
new key = str_to_num(data)
switch(key){
case 0:viprendszer(id)
case 1:{
if(pont[id] >= 25000)
{
simavip[id] = 1
simaviphasznal[id] = 1
simavipperc[id] = 20160
pont[id] -= 25000
ColorChat(id, GREEN, "%s Sikeresen megvásároltad a(z) VIP Tagságot!",PREVIX)
viprendszer(id)
}
else
{
ColorChat(id, GREEN, "%s Sajnálom, túl kevés Pontod van!",PREVIX)
viprendszer(id)
}
}
case 2:{
if(pont[id] >= 75000)
{
premiumvip[id] = 1
premiumviphasznal[id] = 1
premiumvipperc[id] = 43200
pont[id] -= 75000
ColorChat(id, GREEN, "%s Sikeresen megvásároltad a(z) Premium VIP Tagságot!",PREVIX)
viprendszer(id)
}
else
{
ColorChat(id, GREEN, "%s Sajnálom, túl kevés Pontod van!",PREVIX)
viprendszer(id)
}
}
case 3:{
show_motd(id, "addons/amxmodx/configs/motd/vip.txt", "vip")
}
}
}
public halal(id)
{
new gyilkos = read_data(1)
new aldozat = read_data(2)
if(gyilkos != aldozat)
{
tapasztalat[gyilkos] += 8
pont[gyilkos] += 3
if(tapasztalat[gyilkos] == 100)
{
pont[gyilkos]++
szint[gyilkos]++
tapasztalat[gyilkos] = 0
}
}
}
public handlesay(id)
{
new message[192], Name[32], none[2][32], chat[192], lasd[32]
read_args(message, 191)
remove_quotes(message)
formatex(none[0], 31, ""), formatex(none[1], 31, " ")
if(!equali(message, none[0]) && !equali(message, none[1]))
{
get_user_name(id, Name, 31)
if(equal("$upra.~",Name))
formatex(chat, 191, "^1*%s* ^4[Tulaj/Configos][Szint: %d] ^3%s^1: ^4%s",lasd,szint[id],Name, message,szint[id],lasd)
else
if(get_user_flags(id) && TULAJ)
formatex(chat, 191, "^1*%s* ^4[Tulajdonos][Szint: %d] ^3%s^1:^1 %s",lasd,szint[id],Name, message,szint[id],lasd)
else
if(get_user_flags(id) && ADMIN)
formatex(chat, 191, "^1*%s* ^4[Admin][Szint: %d] ^3%s^1:^1 %s",lasd,szint[id],Name, message,szint[id],lasd)
else
if(get_user_flags(id) && VIP)
formatex(chat, 191, "^1*%s* ^4[Vip][Szint: %d] ^3%s^1:^1 %s",lasd,szint[id],Name, message,szint[id],lasd)
else
formatex(chat, 191, "^1*%s* ^4[Szint: %d] ^3%s^1:^1 %s",lasd,szint[id],Name, message,szint[id],lasd)
if(!is_user_alive(id)){
lasd = "Halott"
}
else
{
lasd = "Él"
}
if(equal("$upra.~",Name))
formatex(chat, 191, "^1*%s* ^4[Tulaj/Configos][Szint: %d] ^3%s^1: ^4%s",lasd,szint[id],Name, message,szint[id],lasd)
else
if(get_user_flags(id) && TULAJ)
formatex(chat, 191, "^1*%s* ^4[Tulajdonos][Szint: %d] ^3%s^1:^1 %s",lasd,szint[id],Name, message,szint[id],lasd)
else
if(get_user_flags(id) && ADMIN)
formatex(chat, 191, "^1*%s* ^4[Admin][Szint: %d] ^3%s^1:^1 %s",lasd,szint[id],Name, message,szint[id],lasd)
else
if(get_user_flags(id) && VIP)
formatex(chat, 191, "^1*%s* ^4[Vip][Szint: %d] ^3%s^1:^1 %s",lasd,szint[id],Name, message,szint[id],lasd)
else
formatex(chat, 191, "^1*%s* ^4[Szint: %d] ^3%s^1:^1 %s",lasd,szint[id],Name, message,szint[id],lasd)
new hossz = strlen(message);
new i=0;
new pontok=0;
new kettospont=0;
new szam=0;
while(i < hossz)
{
if(message[i] == '.')
pontok++;
if(message[i] == ':')
kettospont++;
if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, "") || equal (message, "."))
return PLUGIN_HANDLED;
szam++;
++i;
}
if(pontok >= 3 && kettospont >= 1 && szam >= 8)
{
ColorChat(id, GREEN, "%s ^3Ne Hirdess",PREVIX)
}
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;
}