bunlardan bir tanesi- menüyü açmak için adrenalin seviyesinin yüzde yüz olması lazım bunu kaldırmak istiyorum menü her daim açılabilsin.
ikinci isteğim - menüdeki tüm özellikler 100 adrenalin puanu bunları 50 adrenalin puanı yapmak istiyorum yardımcı olursanız sevinirim.
Kod:
#include <amxmodx>
#include <reapi>
#include <fakemeta>
#include <fun>
#include <simple_ctf>
#define PANEL_YETKI ADMIN_RCON
#define CLAN "CSDURAGI"
#define TAG "^3[^4SCTF^3]"
new cvars[10],isim[64],adrem[33],ampm[33],g_ampisim[33];
new bool:adreliler[33][8];
public plugin_init() {
register_plugin("Adrenaline SCTF", "1.0", "ByBuLuT")
register_clcmd("say /adrenaline","adremenu"),register_clcmd("say_team /adrenaline","adremenu");
register_clcmd("say /adrenalin","adremenu"),register_clcmd("say_team /adrenalin","adremenu");
register_clcmd("say /adre","adremenu"),register_clcmd("say_team /adre","adremenu"),register_clcmd("radio3", "adremenu");
register_clcmd("say /adrepanel","yetkilipanelx"),register_clcmd("say_team /adrepanel","yetkilipanelx");
register_event("CurWeapon", "CurWeapon", "be", "1=1");
register_clcmd("AMP_MIKTARI", "AMP_devam");
register_forward( FM_AddToFullPack, "fwdAddToFullPack_Post", 1 );
RegisterHookChain(RG_CBasePlayer_Spawn, "spawnlandi", 1);
RegisterHookChain(RG_CBasePlayer_TakeDamage, "Hasarayar", 0);
RegisterHookChain(RG_CBasePlayer_TakeDamage, "AntiHasar", 1);
RegisterHookChain(RG_CBasePlayer_Killed, "CBasePlayer_Killed", 1);
cvars[1] = register_cvar("adre_menu","1")
cvars[2] = register_cvar("adre_hizi","580.0")
cvars[3] = register_cvar("adre_hasarver","2.0")
cvars[4] = register_cvar("adre_hasaral","0.5")
cvars[5] = register_cvar("adre_maxcan","180")
cvars[6] = register_cvar("adre_artican","4")
cvars[7] = register_cvar("adre_yetmenu","1")
cvars[8] = register_cvar("adre_bitsure","20.0")
cvars[9] = register_cvar("adre_hudgoster","1")
}
public adremenu(id){
if(!is_user_alive(id)){client_print_color(id,id,"%s^1 Adrenaline Menuye Girebilmek Icin Hayatta Olmalisin.",TAG);return PLUGIN_HANDLED; }
if(get_pcvar_num(cvars[1])!=1){client_print_color(id,id,"%s^1 Adrenalin Menusu Suan Kapali.",TAG);return PLUGIN_HANDLED; }
if(adrem[id]<100){client_print_color(id,id,"%s^1 Adrenalin'in 100'den az oldugu icin kullanamazsin. ^1A.P:^3[%i]",TAG,adrem[id]);return PLUGIN_HANDLED; }
get_user_name(id,isim,charsmax(isim));
new menu, Menuz[512];
formatex(Menuz, charsmax(Menuz), "\w%s \rAdrenaline Menusu: ^n\d%s \ySec Birini\r.!",CLAN,isim),menu = menu_create(Menuz, "MenuHandler_andre");
formatex(Menuz, charsmax(Menuz), "\yHizli Yurume \d(Hizinizi Artirir)"),menu_additem(menu, Menuz, "1", 0);
formatex(Menuz, charsmax(Menuz), "\yCildirma \d(2 Kat Fazla Hasar Ver 1/2 Az Hasar Al)"),menu_additem(menu, Menuz, "2", 0);
formatex(Menuz, charsmax(Menuz), "\yCan ve Zirh Yenileme \d(Can ve Zirhini Yeniler)"),menu_additem(menu, Menuz, "3", 0);
formatex(Menuz, charsmax(Menuz), "\yKismi Gorunmezlik \d(Seffaf Gorunmezlik Kazandirir)"),menu_additem(menu, Menuz, "4", 0);
formatex(Menuz, charsmax(Menuz), "\yAnti-Hasar Etkisi \d(Hasar Alinca Durmazsin)"),menu_additem(menu, Menuz, "5", 0);
formatex(Menuz, charsmax(Menuz), "\yTakim Arkadaslarini Gizle \d(Kendi Takimini Gormezsin)"),menu_additem(menu, Menuz, "6", 0);
formatex(Menuz, charsmax(Menuz), "\r[ \d%s\r ] \yCikis",CLAN);
menu_setprop(menu,MPROP_EXITNAME,Menuz);
menu_setprop(menu,MPROP_EXIT, MEXIT_ALL);
menu_display(id, menu, 0);
return PLUGIN_HANDLED;
}
public MenuHandler_andre(id,menu,item){
if(item == MENU_EXIT) { menu_destroy(menu); return PLUGIN_HANDLED; }
new access,callback,data[6],iname[64];
menu_item_getinfo(menu,item,access,data,charsmax(data),iname,charsmax(iname),callback);
new key=str_to_num(data);
switch(key){
case 1:{
adreliler[id][2]=true,set_entvar(id, var_maxspeed, get_pcvar_float(cvars[2])),set_task(get_pcvar_float(cvars[8]),"hizkapa",id)
adrem[id]=0,client_print_color(id,id,"%s ^1- Hizli yurume %d saniye boyunca etkinlestirilmistir.",TAG,get_pcvar_num(cvars[8]));
}
case 2:{
adreliler[id][3]=true,adreliler[id][1]=true,set_task(get_pcvar_float(cvars[8]),"guckapa",id)
adrem[id]=0,client_print_color(id,id,"%s^1 2 Kat fazla hasar verme ve 1/2 daha az hasar alma %d saniye boyunca etkinlestirilmistir.",TAG,get_pcvar_num(cvars[8]));
}
case 3:{
adreliler[id][4]=true,canyenileme(id),set_task(get_pcvar_float(cvars[8]),"canyenkapa",id)
adrem[id]=0,client_print_color(id,id,"%s^1 Can ve zirh yenilemesi %d saniye boyunca etkinlestirilmistir.",TAG,get_pcvar_num(cvars[8]));
}
case 4:{
adreliler[id][5]=true
adrem[id]=0,set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 20)
client_print_color(id,id,"%s^1 Kismi gorunmezlik %d saniye boyunca etkinlestirilmistir.",TAG,get_pcvar_num(cvars[8])),set_task(get_pcvar_float(cvars[8]),"renderkapa",id);
}
case 5:{
adrem[id]=0,adreliler[id][6]=true,set_task(get_pcvar_float(cvars[8]),"ahkapa",id)
client_print_color(id,id,"%s^1 Anti-Hasar etkisi ile %d saniye boyunca vuruslardan etkilenmeden hareket edebilme etkinlestirilmistir.",TAG,get_pcvar_num(cvars[8]));
}
case 6:{
adrem[id]=0,adreliler[id][7]=true,set_task(get_pcvar_float(cvars[8])+5,"hidekapa",id)
client_print_color(id,id,"%s^1 Takim Arkadaslarini Gizle %d saniye boyunca kendi takimindaki kisileri gormezsin.",TAG,get_pcvar_num(cvars[8])+5);
}
}
return PLUGIN_HANDLED;
}
public client_connect(id) ozkapa(id),adrem[id]=0;
public client_disconnected(id) ozkapa(id),adrem[id]=0;
public ozkapa(id){
set_user_rendering(id, _, 0, 0, 0, _, 0);
adreliler[id][1]=false,adreliler[id][2]=false,adreliler[id][3]=false;
adreliler[id][4]=false,adreliler[id][5]=false,adreliler[id][6]=false,adreliler[id][7]=false;
}
public spawnlandi(id){
if(is_user_connected(id) && is_user_alive(id)){
if(get_pcvar_num(cvars[9])==1) hudgoster(id);
if(adrem[id]>=100) fullendisay(id);
}
}
public CBasePlayer_Killed(olen, saldiran){
if(olen != saldiran){
if(adrem[saldiran] != 100) adrem[saldiran] += 5
if(adrem[olen] > 100) adrem[olen] = 100
if(adrem[saldiran] > 100) adrem[saldiran] = 100
}
ozkapa(olen);
}
public hudgoster(id){
if(is_user_connected(id) && is_user_alive(id)){
get_user_name(id,isim,charsmax(isim));
set_hudmessage(210,105,30,0.58,0.96,0,2.0,2.5,0.5,3.5);
if(adrem[id]<100) show_hudmessage(id, "Adrenaline: [ %i / 100 ]",adrem[id]);
else show_hudmessage(id, " Adrenaline Seviyen Fullendi.!^n/Adrenaline YAZARAK KULLANABILIRSIN.!");
set_task(1.0,"hudgoster",id);
}
}
public sctf_flag_is_takenoff(id, ent){
if(adrem[id]!=100) adrem[id] += 10
else if(adrem[id] >= 90) adrem[id] = 100,fullendisay(id);
}
public sctf_flag_scored(id, ent){
if(adrem[id]!=100) adrem[id] += 15
else if(adrem[id] >= 85) adrem[id] = 100,fullendisay(id);
}
public sctf_flag_backtobase(id, ent){
if(adrem[id]!=100) adrem[id] += 5
else if(adrem[id] >= 95) adrem[id] = 100,fullendisay(id);
}
public canyenileme(id){
if(is_user_connected(id) && is_user_alive(id)){
if(adreliler[id][4]){
if(get_entvar(id, var_health) < get_pcvar_num(cvars[5])) set_entvar(id, var_health, get_entvar(id, var_health) + get_pcvar_num(cvars[6]));
if(get_user_armor(id) < 100) set_user_armor(id, get_user_armor(id) + get_pcvar_num(cvars[6])/2);
set_task(1.0,"canyenileme",id);
}
}
}
public fullendisay(id) client_print_color(id,id,"%s^1 Adrenaline Seviyen ^4Yüzde 100^1'e Ulasti. ^4/Adrenaline ^1Yazarak Kullanabilirsin.!",TAG)
public hidekapa(id) if(is_user_connected(id)&&adreliler[id][7]) adreliler[id][7]=false,client_print_color(id,id,"%s^1 Takim Arkadaslarini Gormeme Suren Doldu.",TAG);
public hizkapa(id) if(is_user_connected(id)&&adreliler[id][2]) adreliler[id][2]=false,client_print_color(id,id,"%s^1 Hizli Yurume Kullanim Suren Doldu.",TAG);
public canyenkapa(id) if(is_user_connected(id)&&adreliler[id][4]) adreliler[id][4]=false,client_print_color(id,id,"%s^1 Can ve Zirh Yenileme Suren Doldu.",TAG);
public guckapa(id) if(is_user_connected(id)&&adreliler[id][3]) adreliler[id][3]=false,adreliler[id][1]=false,client_print_color(id,id,"%s^1 Cildirma Suren Doldu.",TAG);
public renderkapa(id){
if(is_user_connected(id)&&adreliler[id][5]) adreliler[id][5]=false,
client_print_color(id,id,"%s^1 Kismi Gorunmezlik Kullanim Suren Doldu.",TAG),set_user_rendering(id, _, 0, 0, 0, _, 0);
}
public ahkapa(id) if(is_user_connected(id)&&adreliler[id][6]) adreliler[id][6]=false,client_print_color(id,id,"%s^1 Anti-Hasar Etkisi Kullanim Suren Doldu.",TAG);
public AntiHasar(id) if(adreliler[id][6]) set_member(id, m_flVelocityModifier, 1.0);
public CurWeapon(id){
if(is_user_connected(id) && is_user_alive(id)){
if(adreliler[id][2] && get_entvar(id,var_maxspeed)!=get_pcvar_float(cvars[2]))set_entvar(id,var_maxspeed,get_pcvar_float(cvars[2]));
}
return PLUGIN_CONTINUE;
}
public Hasarayar(victim, inflictor, attacker, Float:damage, damage_bits){
if(is_user_connected(attacker) && is_user_connected(victim) && victim != attacker){
if(adreliler[attacker][3]) SetHookChainArg(4, ATYPE_FLOAT, damage*Float:get_pcvar_float(cvars[3]));
if(adreliler[victim][1]) SetHookChainArg(4, ATYPE_FLOAT, damage*Float:get_pcvar_float(cvars[4]));
}
}
public yetkilipanelx(id){
if (!(get_user_flags(id) & PANEL_YETKI)) return PLUGIN_HANDLED;
if ( get_pcvar_num(cvars[7]) == 1 ){
new ndmenu[64];
formatex(ndmenu,charsmax(ndmenu),"\wADRENALIN MENU YETKILI PANEL");
new Menu = menu_create(ndmenu,"ampver2");
formatex(ndmenu,charsmax(ndmenu),"- \yAdre. Puan Ver");
menu_additem(Menu,ndmenu,"1");
formatex(ndmenu,charsmax(ndmenu),"- \yAdre. Puan Al");
menu_additem(Menu,ndmenu,"2");
formatex(ndmenu,charsmax(ndmenu),"- \yToplu Adre. Puan Ver \d(Sadece Yasayanlar)");
menu_additem(Menu,ndmenu,"3");
formatex(ndmenu,charsmax(ndmenu),"- \yToplu Adre. Puan Al \d(Sadece Yasayanlar)");
menu_additem(Menu,ndmenu,"4");
menu_setprop(Menu, MPROP_EXITNAME, "\yCikis");
menu_display(id, Menu, 0);
}
return PLUGIN_HANDLED
}
public ampver2(id,menu,item) {
if(item == MENU_EXIT) { menu_destroy(menu); return PLUGIN_HANDLED; }
new access,callback,data[6],iname[64];
menu_item_getinfo(menu,item,access,data,charsmax(data),iname,charsmax(iname),callback);
new key=str_to_num(data);
switch(key) {
case 1: ampm[id]=1,amp_oyuncu(id);
case 2: ampm[id]=2,amp_oyuncu(id);
case 3: ampm[id]=3,client_cmd(id, "messagemode AMP_MIKTARI");
case 4: ampm[id]=4,client_cmd(id, "messagemode AMP_MIKTARI");
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
public amp_oyuncu(id) {
new ndmenu[64],szName[32], szTempid[10], players[32], inum, ids;
formatex(ndmenu, charsmax(ndmenu),"\yOyuncu Sec.");
new Menu = menu_create(ndmenu, "amp_oyuncu2");
get_players(players,inum,"achi");
for(new i=0; i<inum; i++) {
ids=players[i];
get_user_name(ids, szName, charsmax(szName));
num_to_str(ids, szTempid, charsmax(szTempid));
formatex(ndmenu, charsmax(ndmenu), "\y%s \w- \d[\r%d Puan\d] \d(Canli)",szName,adrem[ids]);
menu_additem(Menu, ndmenu, szTempid);
}
get_players(players,inum,"bchi");
for(new i=0; i<inum; i++) {
ids=players[i];
get_user_name(ids, szName, charsmax(szName));
num_to_str(ids, szTempid, charsmax(szTempid));
formatex(ndmenu, charsmax(ndmenu), "\y%s \w- \d[\r%d Puan\d] \d(Olu)",szName,adrem[ids]);
menu_additem(Menu, ndmenu, szTempid);
}
menu_setprop(Menu, MPROP_EXITNAME, "\yCikis");
menu_display(id, Menu, 0);
}
public amp_oyuncu2(id,menu,item) {
if(item == MENU_EXIT) { menu_destroy(menu); return PLUGIN_HANDLED; }
new access,callback,data[6],iname[64];
menu_item_getinfo(menu,item,access,data,charsmax(data),iname,charsmax(iname),callback);
g_ampisim[id]=str_to_num(data);
client_cmd(id, "messagemode AMP_MIKTARI");
menu_destroy(menu);
return PLUGIN_HANDLED;
}
public AMP_devam(id) {
if(!is_user_alive(id) || ampm[id]==0) return PLUGIN_HANDLED;
get_user_name(id,isim,charsmax(isim));
new say[300]; read_args(say, charsmax(say)); remove_quotes(say);
new miktar=str_to_num(say);
if(!is_str_num(say) || equal(say, "") || miktar<=0) { client_print_color(id,id,"^1[^3%s^1] ^4Gecersiz miktar."); ampm[id]=0; return PLUGIN_HANDLED; }
new name[32],ids=g_ampisim[id]; get_user_name(ids, name, charsmax(name));
if(ampm[id]==1 && ids!=0) {
if(miktar > 100) {
client_cmd(id, "messagemode AMP_MIKTARI");
client_print_color(id, id, "^1[^3 %s ^1] ^4En fazla ^1[^3 100 ^1]^4 Puan verebilirsin.",isim);
} else {
adrem[ids]+=miktar,ampm[id]=0,g_ampisim[id]=0;
client_print_color(0, 0, "^1[^3 %s ^1] ^4adli Yetkili ^1[^3 %s ^1]^4 adli kisiye^1 %d Adrenalin Puani^4 yolladi.",isim,name,miktar);
}
} else if(ampm[id]==2 && ids!=0) {
if(miktar >= adrem[ids]) {
adrem[ids]=0,ampm[id]=0,g_ampisim[id]=0;
client_print_color(0, 0, "^1[^3 %s ^1] ^4adli Yetkili ^1[^3 %s ^1]^4 adli kisiden ^1Adrenalin Puani^4 aldi.",isim,name);
} else {
adrem[ids]-=miktar,ampm[id]=0,g_ampisim[id]=0;
client_print_color(0, 0, "^1[^3 %s ^1] ^4adli Yetkili ^1[^3 %s ^1]^4 adli kisiden^1 %d Adrenalin Puani^4 aldi.",isim,name,miktar);
}
} else if(ampm[id]==3) {
if(miktar > 100) {
client_cmd(id, "messagemode AMP_MIKTARI");
client_print_color(id, id, "^1[^3 %s ^1] ^4En fazla ^1[^3 100 ^1]^4 Adrenalin Puani verebilirsin.",isim);
} else {
ampm[id]=0,g_ampisim[id]=0;
new players[32],inum,uid; get_players(players,inum,"achi");
for(new i=0; i<inum; i++) uid=players[i],adrem[uid]+=miktar;
client_print_color(0, 0, "^1[^3 %s ^1] ^4adli Yetkili tum kisilere^1 %d Puan^4 yolladi.",isim,miktar);
}
} else if(ampm[id]==4) {
new players[32],inum,uid; get_players(players,inum,"achi");
for(new i=0; i<inum; i++) {
uid=players[i];
if(adrem[uid]-miktar <= 0) adrem[uid]=0;
else adrem[uid]-=miktar;
}
ampm[id]=0,g_ampisim[id]=0;
client_print_color(0, 0, "^1[^3 %s ^1] ^4adli Yetkili tum kisilerden^1 %d Puan^4 aldi.",isim,miktar);
}
return PLUGIN_HANDLED;
}
public fwdAddToFullPack_Post( es_handle, e, ent, host, hostflags, player, pset )
{
if(player){
if(is_user_alive(host) && adreliler[host][7] && host != ent && is_user_alive(ent) && get_user_team(host)==get_user_team(ent)){
set_es( es_handle, ES_Origin, { 999999999.0, 999999999.0, 999999999.0 } );
}
}
})

