Eskiden yapmış olduğum Marvel Menümü güncellemek istedim ve bazı özellikler katarak menüyü güncelledim fakat diğer isteklerimi yapamadım.
isteklerim ise mesela örümcek adam oldunuz hook fırlatılmasını istiyorum ? bunu nasıl yapabiliriz.
forumdaki jbmenüden baktım yapabildiğim kadar yaptım acaba doğrumu yanlışmı diye yardımcı olurmusunuz ?
ek olarak birde para birimi ekledim.kahramanları alırken nasıl para birimiyle almam gerek onuda söylermisiniz.
PHP Kod:
#include <amxmodx>
#include <fun>
#include <cstrike>
#include <hamsandwich>
new const PLUGIN[] = "Gelismis Marvel Menu";
new const VERSION[] = "3.0";
new const AUTHOR[] = "Muhammet Bulut";
new const TAG[] = "WebAilesi";
new const KISATAG[] = "WA";
new bool:hook[33]
new hook_to[33][3]
new hook_speed_cvar
new bool:has_hook[33]
new spidermanmk[33]
new Marvel_Parasi[33];
new Killed;
new HeadShot_Killed;
new HudSyncObj;
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR);
RegisterHookChain(RG_CBasePlayer_Killed, "CBasePlayer_Killed", .post = true);
Killed = register_cvar("Killed", "1");
HeadShot_Killed = register_cvar("HeadShot_Killed", "5");
HudSyncObj = CreateHudSyncObj();
register_clcmd("nightvision", "marvel_menu")
RegisterHam(Ham_Spawn, "player", "dogunca", 1);
register_concmd("+spiderman","hook_aktif")
register_concmd("-spiderman","hook_off")
hook_speed_cvar = register_cvar("hook_speed","5")
}
public plugin_precache()
{
precache_model("models/player/volvarine/wolvarine.mdl");
precache_model("models/player/orumcek/orumcekadam.mdl");
precache_model("models/player/ıronman/ironman.mdl");
precache_model("models/player/captan/captanamerica.mdl");
precache_model("models/player/batman/batman.mdl");
precache_model("models/player/deadpool/deadpool.mdl");
precache_model("models/player/flash/flash.mdl");
precache_sound("hook/oly.wav")
}
public client_putinserver(id)
{
set_task(1.0, "HudMessage", id, _, _, "b");
}
public HudMessage(id)
{
set_hudmessage(255, 255, 255, 0.0, 0.30, 1, 1.0, 1.0);
ShowSyncHudMsg(id, HudSyncObj, "[ - Marvel Paran : %d - ]", Marvel_Parasi[id]);
}
public hook_aktif(id,level,cid)
{
if(spidermanmk[id] == 1){
set_user_gravity(id,0.0)
set_task(0.1,"hook_prethink",id+10000,"",0,"b")
hook[id]=true
hook_to[id][0]=999999
hook_prethink(id+10000)
emit_sound(id,CHAN_VOICE,"hook/oly.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
return PLUGIN_CONTINUE
}
return PLUGIN_CONTINUE
}
public hook_off(id)
{
if(is_user_alive(id)) set_user_gravity(id)
hook[id]=false
return PLUGIN_HANDLED
}
public hook_prethink(id)
{
id -= 10000
if(!is_user_alive(id))
{
hook[id]=false
}
if(!hook[id])
{
remove_task(id+10000)
return PLUGIN_HANDLED
}
static origin1[3]
get_user_origin(id,origin1)
if(hook_to[id][0]==999999)
{
static origin2[3]
get_user_origin(id,origin2,3)
hook_to[id][0]=origin2[0]
hook_to[id][1]=origin2[1]
hook_to[id][2]=origin2[2]
}
//ct icin renk olustur
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(1) // baslatalim
write_short(id) // start entity
write_coord(hook_to[id][0])
write_coord(hook_to[id][1])
write_coord(hook_to[id][2])
write_short(beamsprite)
write_byte(1) // framestart
write_byte(1) // framerate
write_byte(2) // life in 0.1's
write_byte(5) // width
write_byte(0) // noise
write_byte(225) // red
write_byte(225) // green
write_byte(225) // blue
write_byte(100) // brightness
write_byte(0) // speed
message_end()
static Float:velocity[3]
velocity[0] = (float(hook_to[id][0]) - float(origin1[0])) * 3.0
velocity[1] = (float(hook_to[id][1]) - float(origin1[1])) * 3.0
velocity[2] = (float(hook_to[id][2]) - float(origin1[2])) * 3.0
static Float:y
y = velocity[0]*velocity[0] + velocity[1]*velocity[1] + velocity[2]*velocity[2]
static Float:x
x = (get_pcvar_float(hook_speed_cvar) * 120.0) / floatsqroot(y)
velocity[0] *= x
velocity[1] *= x
velocity[2] *= x
set_pev(id,pev_velocity,velocity)
return PLUGIN_CONTINUE
}
public CBasePlayer_Killed(Victim, Killer)
{
if(is_user_connected(Victim) && is_user_connected(Killer))
{
if(Victim != Killer)
{
if(get_member(Victim, m_bHeadshotKilled))
{
Marvel_Parasi[Killer] += get_pcvar_num(HeadShot_Killed);
}
else
{
Marvel_Parasi[Killer] += get_pcvar_num(Killed);
}
public dogunca(id){
if(is_user_connected(id) && is_user_alive(id)){
cs_reset_user_model(id);
remove_task(id);
}
}
public marvel_menu(id)
{
static Item[512]
formatex(Item, charsmax(Item), "\d[\r%s\d] \w| \yGelismis Marvel Menu", TAG);
new Menu = menu_create(Item, "marvel_menu_handler");
formatex(Item, charsmax(Item), "\d[\r%s\d] \w~ \yMarvel Menuye Gir", KISATAG), menu_additem(Menu, Item, "1");
}
else
{
formatex(Item, charsmax(Item), "\d[\r%s\d] \w~ \yMarvel Menuye Gir \r[- \dKullandiniz \r-]", KISATAG), menu_additem(Menu, Item, "1");
formatex(Item, charsmax(Item), "\d[\r%s\d] \w~ \yCikis", KISATAG), menu_setprop(Menu, MPROP_EXITNAME, Item);
menu_display(id, Menu, 0);
}
public marvel_menu_handler(id, Menu, Item)
{
if(Item == MENU_EXIT) { menu_destroy(Menu); return PLUGIN_HANDLED; }
new Access, Data[6], Menu_Name[64], Call_Back;
menu_item_getinfo(Menu, Item, Access, Data, 5, Menu_Name, 63, Call_Back);
new key = str_to_num(Data);
switch(key)
{
case 1:
{
Renkli_Yazi(id, "!n[!t%s!n] !g Marvel menuye girildi. ", TAG);
gelismis_marvel_menu(id)
}
}
public gelismis_marvel_menu(id) {
static Item[512]
formatex(Item, charsmax(Item), "\d[\r%s\d] \w~ \yGelismis Marvel Menu", TAG);
new Menu = menu_create(Item, "gelismis_marvel_menu_handler");
formatex(Item, charsmax(Item), "\d[\r%s\d] \w~ \yWolvarine", KISATAG), menu_additem(Menu, Item, "1");
formatex(Item, charsmax(Item), "\d[\r%s\d] \w~ \yOrumcek Adam", KISATAG), menu_additem(Menu, Item, "2");
formatex(Item, charsmax(Item), "\d[\r%s\d] \w~ \yHulk", KISATAG), menu_additem(Menu, Item, "3");
formatex(Item, charsmax(Item), "\d[\r%s\d] \w~ \yCaptanAmerica", KISATAG), menu_additem(Menu, Item, "4");
formatex(Item, charsmax(Item), "\d[\r%s\d] \w~ \yBatman", KISATAG), menu_additem(Menu, Item, "5");
formatex(Item, charsmax(Item), "\d[\r%s\d] \w~ \Deadpool", KISATAG), menu_additem(Menu, Item, "6");
formatex(Item, charsmax(Item), "\d[\r%s\d] \w~ \Flash", KISATAG), menu_additem(Menu, Item, "7");
formatex(Item, charsmax(Item), "\d[\r%s\d] \w~ \yCikis", KISATAG), menu_setprop(Menu, MPROP_EXITNAME, Item);
menu_display(id, Menu, 0);
}
public gelismis_marvel_menu_handler(id, Menu, Item)
{
if(Item == MENU_EXIT) { menu_destroy(Menu); return PLUGIN_HANDLED; }
new Access, Data[6], Menu_Name[64], Call_Back;
menu_item_getinfo(Menu, Item, Access, Data, 5, Menu_Name, 63, Call_Back);
new key = str_to_num(Data);
switch(key)
{
case 1:
{
if(cs_get_user_money(id) >= 0)
{
cs_set_user_money(id, cs_get_user_money(id) - 0)
cs_set_user_model(id, "Wolvarine")
Renkli_Yazi(id, "!n[!t%s!n] !g Wolvarineyi sectiniz.", TAG);
}
return PLUGIN_HANDLED
}
stock Renkli_Yazi(const ID, const Input[], any:...)
{
static Message[191];
vformat(Message, 190, Input, 3);
replace_all(Message, 190, "!n", "^x01");
replace_all(Message, 190, "!g", "^x04");
replace_all(Message, 190, "!t", "^x03");
#if AMXX_VERSION_NUM < 183
new Count = 1, Players[32];
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(Message);
message_end();
}
}
}
#else
client_print_color(ID, ID, Message);
#endif
}
)


