1. sayfa (Toplam 1 sayfa)

Bicak Menu

Gönderilme zamanı: Pzt Ara 31, 2018 11:47 pm
gönderen İmam-POWER
Ek'te verdiğim sma da Her Round Bir Bicak olayı var. Bunu Ölüp Doğmaya ayar mısınız ? ayrıca bicaklar tek atıyor onada bakarsanız sevınırım.

@ShooTeR

Bicak Menu

Gönderilme zamanı: Sal Oca 01, 2019 12:01 am
gönderen By.King ►EmrullaH◄

Kod: Tümünü seç

public DamageKnife ( Victim, Inflictor, Attacker, Float:fDamage )  {
	if(is_user_connected(Attacker) && Attacker != Victim) {
                if(get_user_weapon(Attacker) == CSW_KNIFE) {

		if(Knife1[Attacker])
		SetHamParamFloat(4, fDamage * 2.0);
		
		if(Knife2[Attacker])
		SetHamParamFloat(4, fDamage * 2.0);
		
		if(Knife3[Attacker])
		SetHamParamFloat(4, fDamage * 2.0);

		if(Knife4[Attacker])
		SetHamParamFloat(4, fDamage * 2.0);
		
		if(Knife5[Attacker]) 
		SetHamParamFloat(4, fDamage * 2.0);
		
		if(KnifeGold1[Attacker]) 
		SetHamParamFloat(4, fDamage * 4.0);
		
		if(KnifeGold2[Attacker]) 
		SetHamParamFloat(4, fDamage * 4.0);
		
		if(KnifeGold3[Attacker]) 
		SetHamParamFloat(4, fDamage * 4.0);
		
		if(KnifeGold4[Attacker]) 
		SetHamParamFloat(4, fDamage * 4.0);

		if(KnifeGold5[Attacker]) 
		SetHamParamFloat(4, fDamage * 4.0);


		}
	}
}
Şu kısmı örnek alarak anlatıyım

Kod: Tümünü seç

if(Knife1[Attacker])
		SetHamParamFloat(4, fDamage * 2.0);
Burada Knife1 olarak atadığı değişkenin hasarını 2.0 katına çıkarıyor
Eğer sen burayı komple silersen bu ayarlar silineciğinden tek atmazlar

Bicak Menu

Gönderilme zamanı: Sal Oca 01, 2019 12:03 am
gönderen İmam-POWER
Hmm teşekkür ederim. İlk sorun hala devam ediyor

Bicak Menu

Gönderilme zamanı: Sal Oca 01, 2019 12:05 am
gönderen By.King ►EmrullaH◄
Ayrıca iki tane aynı satır var

Kod: Tümünü seç

new const KnifeGold1Model[66] = "models/v_knife.mdl";
new const KnifeGold1Model[66] = "models/v_knife.mdl";

Bicak Menu

Gönderilme zamanı: Sal Oca 01, 2019 12:12 am
gönderen ulyoS

Kod: Tümünü seç

#include <amxmodx>
#include <cstrike>
#include <fakemeta>
#include <hamsandwich>
#include <fun>
#include <nvault>

new const PLUGIN[] = "Bicak Menu";
new const VERSION[] = "1.0";
new const AUTHOR[] = "SePuLTuRa";

#pragma semicolon 1

#define VIP_FLAG ADMIN_LEVEL_H

new const Knife1Model[66] = "models/TR/bayonet_tr.mdl";
new const Knife2Model[66] = "models/TR/gutt_tr.mdl";
new const Knife3Model[66] = "models/TR/karambit_tr.mdl";
new const Knife4Model[66] = "models/TR/kelebek_tr.mdl";
new const Knife5Model[66] = "models/v_knife.mdl";

new const KnifeGold1Model[66] = "models/v_knife.mdl";
new const KnifeGold2Model[66] = "models/v_knife.mdl";
new const KnifeGold3Model[66] = "models/v_knife.mdl";
new const KnifeGold4Model[66] = "models/v_knife.mdl";
new const KnifeGold5Model[66] = "models/v_knife.mdl";

new bool: Knife1[33];
new bool: Knife2[33];
new bool: Knife3[33];
new bool: Knife4[33];
new bool: Knife5[33];

new bool: KnifeGold1[33];
new bool: KnifeGold2[33];
new bool: KnifeGold3[33];
new bool: KnifeGold4[33];
new bool: KnifeGold5[33];

new bool: KnifeChoosen[33];



public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR);
	
	
	register_clcmd("say /knife","SayKnife");
	
	register_event("CurWeapon", "CurentWeapon", "be", "1=1");
	RegisterHam(Ham_Spawn, "player", "Spawn", 1);
	RegisterHam(Ham_TakeDamage, "player", "DamageKnife");	

}

public Spawn(id) {
	if(is_user_alive(id))
		{
		KnifeChoosen[id] = false;
		
		Knife1[id] = false;
		Knife2[id] = false;
		Knife3[id] = false;
		Knife4[id] = false;
		Knife5[id] = false;
		
		KnifeGold1[id] = false;
		KnifeGold2[id] = false;
		KnifeGold3[id] = false;
		KnifeGold4[id] = false;
		KnifeGold5[id] = false;
		
		if(cs_get_user_team(id) == CS_TEAM_T,CS_TEAM_CT) {
			MenuKnife(id);
		}
	}
}

public plugin_precache() {
	precache_model(Knife1Model);
	precache_model(Knife2Model);
	precache_model(Knife3Model);
	precache_model(Knife4Model);
	precache_model(Knife5Model);
	
	precache_model(KnifeGold1Model);	
	precache_model(KnifeGold2Model);
	precache_model(KnifeGold3Model);
	precache_model(KnifeGold4Model);
	precache_model(KnifeGold5Model);
}

public client_putinserver(id) {
	Knife1[id] = false;
	Knife2[id] = false;
	Knife3[id] = false;
	Knife4[id] = false;
	Knife5[id] = false;
	
	KnifeGold1[id] = false;
	KnifeGold2[id] = false;
	KnifeGold3[id] = false;
	KnifeGold4[id] = false;
	KnifeGold5[id] = false;

}

public MenuKnife(id)
	{
	new menu = menu_create ("\r[BozkurTR GAMING] \wBicak Menusu", "CaseMenu");
	
	menu_additem(menu, "\yOyuncu \rBicaklari", "1");
	menu_additem(menu, "\yADMIN  \rBicaklari", "2");
	
	menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
	menu_display(id, menu, 0 );
	
	return 1; 
}

public CaseMenu(id, menu, item) {
	if(item == MENU_EXIT) {
		return 1;
	}
	
	new data [6], 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:
		{
			MenuPlayeri(id);
		}
		
		case 2:
		{
			if( get_user_flags( id ) & VIP_FLAG ) {
				MenuVIP(id);
			}
			else
			{
				ChatColor(id, "!g[BozkurTR GAMING]!nBu Menuye Sadece VIP Uyeler Tarafindan Erişilebilir !g[VIP]");
				MenuKnife(id);
			}
		}
	}
	
	menu_destroy (menu);
	return 1;
}
public MenuPlayeri(id) {
	new menu = menu_create ("\y[BozkurTR GAMING] \wBicak Menu", "CaseKnifePlayeri");
	menu_additem(menu, "\yBayonet    Bicak", "1");
	menu_additem(menu, "\yGut Bicak", "2");
	menu_additem(menu, "\yKarambit      Bicak", "3");
	menu_additem(menu, "\yKelebek        Bicak", "4");
	menu_additem(menu, "\yDefault   Bicak", "5");
	
	menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
	menu_display(id, menu, 0 );
	
	return 1; 
}

public CaseKnifePlayeri(id, menu, item) {
	if(item == MENU_EXIT) {
		return 1;
	}
	if(!(is_user_alive(id))) {
		ChatColor(id, "!g[BozkurTR GAMING] !nOluyken Bicak Secemezsin");
		return 1;
	}
	
	new data [6], 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:
		{
			KnifeChoosen[id] = true;
			Knife1[id] = true;
			CurentWeapon(id);
			ChatColor(id, "!g[BozkurTR GAMING] !nBayonet Bicak!gAlindi.");
			
			
		}
		
		case 2:
		{
			KnifeChoosen[id] = true;
			Knife2[id] = true;
			CurentWeapon(id);
			ChatColor(id, "!g[BozkurTR GAMING] !nM9 Bayonet Bicak!gAlindi.");
		}
		
		case 3:
		{
			KnifeChoosen[id] = true;
			Knife3[id] = true;
			CurentWeapon(id);
			ChatColor(id, "!g[BozkurTR GAMING] !nFlip Bicak!gAlindi.");
		}
		case 4:
		{
			KnifeChoosen[id] = true;
			Knife4[id] = true;
			CurentWeapon(id);
			ChatColor(id, "!g[BozkurTR GAMING] !nGut Bicak!gAlindi.");
		}
		case 5:
		{
			KnifeChoosen[id] = true;
			Knife5[id] = true;
			CurentWeapon(id);
			ChatColor(id, "!g[BozkurTR GAMING] !nKarambit Bicak!gAlindi.");
		}
	}
	
	menu_destroy (menu);
	return 1;
}


public MenuVIP(id) {
	new menu = menu_create ("\y[BozkurTR GAMING]\rVIP \wKnife Menu", "CaseKnifeVIP");
	menu_additem(menu, "\yBowie    Bicak", "1");
	menu_additem(menu, "\yKelebek  Bicak ", "2");
	menu_additem(menu, "\yHuntsman Bicak", "3");
	menu_additem(menu, "\yFlip Bicak ", "4");
	menu_additem(menu, "\yBayonet Bicak", "5");
	
	menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
	menu_display(id, menu, 0 );
	
	return 1; 
}

public CaseKnifeVIP(id, menu, item) {
	if(item == MENU_EXIT) {
		return 1;
	}
	
	if(!(is_user_alive(id))) {
		ChatColor(id, "!g[BozkurTR GAMING] !nOluyken Bicak Secemezsin.");
		return 1;
	}
	
	new data [6], 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:
		{
			KnifeChoosen[id] = true;
			KnifeGold1[id] = true;
			CurentWeapon(id);
			ChatColor(id, "!g[BozkurTR GAMING] !nBowie Bicak !gAlindi.");
		       
		}
		
		case 2:
		{
			KnifeChoosen[id] = true;
			KnifeGold2[id] = true;
			CurentWeapon(id);
			ChatColor(id, "!g[BozkurTR GAMING] !nKelebek Bicak !gAlindi.");
		}
		
		case 3:
		{
			KnifeChoosen[id] = true;
			KnifeGold3[id] = true;
			CurentWeapon(id);
			ChatColor(id, "!g[BozkurTR GAMING] !nHuntsman Bicak !gAlindi.");
		}
		case 4:
		{
			KnifeChoosen[id] = true;
			KnifeGold4[id] = true;
			CurentWeapon(id);
			ChatColor(id, "!g[BozkurTR GAMING] !nFlip Bicak !gAlindi.");
		}
		case 5:
		{
			KnifeChoosen[id] = true;
			KnifeGold5[id] = true;
			CurentWeapon(id);
			ChatColor(id, "!g[BozkurTR GAMING] !nKarambit Bicak !gAlindi.");
		}
		
	}
	
	menu_destroy (menu);
	return 1;
}

public CurentWeapon(id) {
        if(get_user_weapon(id) == CSW_KNIFE) {

	if(Knife1[id])
	set_pev(id, pev_viewmodel2, Knife1Model);
	
	if(Knife2[id])
	set_pev(id, pev_viewmodel2, Knife2Model);
	
	if(Knife3[id])
	set_pev(id, pev_viewmodel2, Knife3Model);
	
	if(Knife4[id])
	set_pev(id, pev_viewmodel2, Knife4Model);
	
	if(Knife5[id])
	set_pev(id, pev_viewmodel2, Knife5Model);
	
	if(KnifeGold1[id])
	set_pev(id, pev_viewmodel2, KnifeGold1Model);
	
	if(KnifeGold2[id])
	set_pev(id, pev_viewmodel2, KnifeGold2Model);
	
	if(KnifeGold3[id])
	set_pev(id, pev_viewmodel2, KnifeGold3Model);
	
	if(KnifeGold4[id])
	set_pev(id, pev_viewmodel2, KnifeGold4Model);
	
	if(KnifeGold5[id])
	set_pev(id, pev_viewmodel2, KnifeGold5Model);
     }
}


public SayKnife(id) {
	if(KnifeChoosen[id])  {
		MenuKnife(id);
	}
	
	if(cs_get_user_team(id) == CS_TEAM_T,CS_TEAM_CT)  {
		MenuKnife(id);
	}
}

stock ChatColor(const id, const input[], any:...) {
	new count = 1, players[32];
	static msg[191];
	vformat(msg, 190, input, 3);
	
	replace_all(msg, 190, "!g", "^4"); // yeşil
	replace_all(msg, 190, "!n", "^1"); // sarı
	replace_all(msg, 190, "!t", "^3"); // kırmızı
	replace_all(msg, 190, "!t2", "^0"); //kırmızı2
	
	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();
			}
		}
	}
}
Çok kısa bir şey yaptım, fazla vuruşları da kaldırdım. Her ölüp doğduğunda /knife yazarak açabilir. Menü de geliyor olması lazım. Neyse bak bakalım mutlu yıllar.

NOT: Hızlıca yaptım tam oldu mu görmedim denemedim olmazsa söyle bakarım.

Bicak Menu

Gönderilme zamanı: Sal Oca 01, 2019 12:00 pm
gönderen İmam-POWER
ulyoS yazdı: Sal Oca 01, 2019 12:12 am

Kod: Tümünü seç

#include <amxmodx>
#include <cstrike>
#include <fakemeta>
#include <hamsandwich>
#include <fun>
#include <nvault>

new const PLUGIN[] = "Bicak Menu";
new const VERSION[] = "1.0";
new const AUTHOR[] = "SePuLTuRa";

#pragma semicolon 1

#define VIP_FLAG ADMIN_LEVEL_H

new const Knife1Model[66] = "models/TR/bayonet_tr.mdl";
new const Knife2Model[66] = "models/TR/gutt_tr.mdl";
new const Knife3Model[66] = "models/TR/karambit_tr.mdl";
new const Knife4Model[66] = "models/TR/kelebek_tr.mdl";
new const Knife5Model[66] = "models/v_knife.mdl";

new const KnifeGold1Model[66] = "models/v_knife.mdl";
new const KnifeGold2Model[66] = "models/v_knife.mdl";
new const KnifeGold3Model[66] = "models/v_knife.mdl";
new const KnifeGold4Model[66] = "models/v_knife.mdl";
new const KnifeGold5Model[66] = "models/v_knife.mdl";

new bool: Knife1[33];
new bool: Knife2[33];
new bool: Knife3[33];
new bool: Knife4[33];
new bool: Knife5[33];

new bool: KnifeGold1[33];
new bool: KnifeGold2[33];
new bool: KnifeGold3[33];
new bool: KnifeGold4[33];
new bool: KnifeGold5[33];

new bool: KnifeChoosen[33];



public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR);
	
	
	register_clcmd("say /knife","SayKnife");
	
	register_event("CurWeapon", "CurentWeapon", "be", "1=1");
	RegisterHam(Ham_Spawn, "player", "Spawn", 1);
	RegisterHam(Ham_TakeDamage, "player", "DamageKnife");	

}

public Spawn(id) {
	if(is_user_alive(id))
		{
		KnifeChoosen[id] = false;
		
		Knife1[id] = false;
		Knife2[id] = false;
		Knife3[id] = false;
		Knife4[id] = false;
		Knife5[id] = false;
		
		KnifeGold1[id] = false;
		KnifeGold2[id] = false;
		KnifeGold3[id] = false;
		KnifeGold4[id] = false;
		KnifeGold5[id] = false;
		
		if(cs_get_user_team(id) == CS_TEAM_T,CS_TEAM_CT) {
			MenuKnife(id);
		}
	}
}

public plugin_precache() {
	precache_model(Knife1Model);
	precache_model(Knife2Model);
	precache_model(Knife3Model);
	precache_model(Knife4Model);
	precache_model(Knife5Model);
	
	precache_model(KnifeGold1Model);	
	precache_model(KnifeGold2Model);
	precache_model(KnifeGold3Model);
	precache_model(KnifeGold4Model);
	precache_model(KnifeGold5Model);
}

public client_putinserver(id) {
	Knife1[id] = false;
	Knife2[id] = false;
	Knife3[id] = false;
	Knife4[id] = false;
	Knife5[id] = false;
	
	KnifeGold1[id] = false;
	KnifeGold2[id] = false;
	KnifeGold3[id] = false;
	KnifeGold4[id] = false;
	KnifeGold5[id] = false;

}

public MenuKnife(id)
	{
	new menu = menu_create ("\r[BozkurTR GAMING] \wBicak Menusu", "CaseMenu");
	
	menu_additem(menu, "\yOyuncu \rBicaklari", "1");
	menu_additem(menu, "\yADMIN  \rBicaklari", "2");
	
	menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
	menu_display(id, menu, 0 );
	
	return 1; 
}

public CaseMenu(id, menu, item) {
	if(item == MENU_EXIT) {
		return 1;
	}
	
	new data [6], 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:
		{
			MenuPlayeri(id);
		}
		
		case 2:
		{
			if( get_user_flags( id ) & VIP_FLAG ) {
				MenuVIP(id);
			}
			else
			{
				ChatColor(id, "!g[BozkurTR GAMING]!nBu Menuye Sadece VIP Uyeler Tarafindan Erişilebilir !g[VIP]");
				MenuKnife(id);
			}
		}
	}
	
	menu_destroy (menu);
	return 1;
}
public MenuPlayeri(id) {
	new menu = menu_create ("\y[BozkurTR GAMING] \wBicak Menu", "CaseKnifePlayeri");
	menu_additem(menu, "\yBayonet    Bicak", "1");
	menu_additem(menu, "\yGut Bicak", "2");
	menu_additem(menu, "\yKarambit      Bicak", "3");
	menu_additem(menu, "\yKelebek        Bicak", "4");
	menu_additem(menu, "\yDefault   Bicak", "5");
	
	menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
	menu_display(id, menu, 0 );
	
	return 1; 
}

public CaseKnifePlayeri(id, menu, item) {
	if(item == MENU_EXIT) {
		return 1;
	}
	if(!(is_user_alive(id))) {
		ChatColor(id, "!g[BozkurTR GAMING] !nOluyken Bicak Secemezsin");
		return 1;
	}
	
	new data [6], 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:
		{
			KnifeChoosen[id] = true;
			Knife1[id] = true;
			CurentWeapon(id);
			ChatColor(id, "!g[BozkurTR GAMING] !nBayonet Bicak!gAlindi.");
			
			
		}
		
		case 2:
		{
			KnifeChoosen[id] = true;
			Knife2[id] = true;
			CurentWeapon(id);
			ChatColor(id, "!g[BozkurTR GAMING] !nM9 Bayonet Bicak!gAlindi.");
		}
		
		case 3:
		{
			KnifeChoosen[id] = true;
			Knife3[id] = true;
			CurentWeapon(id);
			ChatColor(id, "!g[BozkurTR GAMING] !nFlip Bicak!gAlindi.");
		}
		case 4:
		{
			KnifeChoosen[id] = true;
			Knife4[id] = true;
			CurentWeapon(id);
			ChatColor(id, "!g[BozkurTR GAMING] !nGut Bicak!gAlindi.");
		}
		case 5:
		{
			KnifeChoosen[id] = true;
			Knife5[id] = true;
			CurentWeapon(id);
			ChatColor(id, "!g[BozkurTR GAMING] !nKarambit Bicak!gAlindi.");
		}
	}
	
	menu_destroy (menu);
	return 1;
}


public MenuVIP(id) {
	new menu = menu_create ("\y[BozkurTR GAMING]\rVIP \wKnife Menu", "CaseKnifeVIP");
	menu_additem(menu, "\yBowie    Bicak", "1");
	menu_additem(menu, "\yKelebek  Bicak ", "2");
	menu_additem(menu, "\yHuntsman Bicak", "3");
	menu_additem(menu, "\yFlip Bicak ", "4");
	menu_additem(menu, "\yBayonet Bicak", "5");
	
	menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
	menu_display(id, menu, 0 );
	
	return 1; 
}

public CaseKnifeVIP(id, menu, item) {
	if(item == MENU_EXIT) {
		return 1;
	}
	
	if(!(is_user_alive(id))) {
		ChatColor(id, "!g[BozkurTR GAMING] !nOluyken Bicak Secemezsin.");
		return 1;
	}
	
	new data [6], 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:
		{
			KnifeChoosen[id] = true;
			KnifeGold1[id] = true;
			CurentWeapon(id);
			ChatColor(id, "!g[BozkurTR GAMING] !nBowie Bicak !gAlindi.");
		       
		}
		
		case 2:
		{
			KnifeChoosen[id] = true;
			KnifeGold2[id] = true;
			CurentWeapon(id);
			ChatColor(id, "!g[BozkurTR GAMING] !nKelebek Bicak !gAlindi.");
		}
		
		case 3:
		{
			KnifeChoosen[id] = true;
			KnifeGold3[id] = true;
			CurentWeapon(id);
			ChatColor(id, "!g[BozkurTR GAMING] !nHuntsman Bicak !gAlindi.");
		}
		case 4:
		{
			KnifeChoosen[id] = true;
			KnifeGold4[id] = true;
			CurentWeapon(id);
			ChatColor(id, "!g[BozkurTR GAMING] !nFlip Bicak !gAlindi.");
		}
		case 5:
		{
			KnifeChoosen[id] = true;
			KnifeGold5[id] = true;
			CurentWeapon(id);
			ChatColor(id, "!g[BozkurTR GAMING] !nKarambit Bicak !gAlindi.");
		}
		
	}
	
	menu_destroy (menu);
	return 1;
}

public CurentWeapon(id) {
        if(get_user_weapon(id) == CSW_KNIFE) {

	if(Knife1[id])
	set_pev(id, pev_viewmodel2, Knife1Model);
	
	if(Knife2[id])
	set_pev(id, pev_viewmodel2, Knife2Model);
	
	if(Knife3[id])
	set_pev(id, pev_viewmodel2, Knife3Model);
	
	if(Knife4[id])
	set_pev(id, pev_viewmodel2, Knife4Model);
	
	if(Knife5[id])
	set_pev(id, pev_viewmodel2, Knife5Model);
	
	if(KnifeGold1[id])
	set_pev(id, pev_viewmodel2, KnifeGold1Model);
	
	if(KnifeGold2[id])
	set_pev(id, pev_viewmodel2, KnifeGold2Model);
	
	if(KnifeGold3[id])
	set_pev(id, pev_viewmodel2, KnifeGold3Model);
	
	if(KnifeGold4[id])
	set_pev(id, pev_viewmodel2, KnifeGold4Model);
	
	if(KnifeGold5[id])
	set_pev(id, pev_viewmodel2, KnifeGold5Model);
     }
}


public SayKnife(id) {
	if(KnifeChoosen[id])  {
		MenuKnife(id);
	}
	
	if(cs_get_user_team(id) == CS_TEAM_T,CS_TEAM_CT)  {
		MenuKnife(id);
	}
}

stock ChatColor(const id, const input[], any:...) {
	new count = 1, players[32];
	static msg[191];
	vformat(msg, 190, input, 3);
	
	replace_all(msg, 190, "!g", "^4"); // yeşil
	replace_all(msg, 190, "!n", "^1"); // sarı
	replace_all(msg, 190, "!t", "^3"); // kırmızı
	replace_all(msg, 190, "!t2", "^0"); //kırmızı2
	
	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();
			}
		}
	}
}
Çok kısa bir şey yaptım, fazla vuruşları da kaldırdım. Her ölüp doğduğunda /knife yazarak açabilir. Menü de geliyor olması lazım. Neyse bak bakalım mutlu yıllar.

NOT: Hızlıca yaptım tam oldu mu görmedim denemedim olmazsa söyle bakarım.
menu açılıyor fakat 2. menüyü açtığımda bicak seçtiğim taktirde yeni bicak ekrana gelmiyr

Bicak Menu

Gönderilme zamanı: Sal Oca 01, 2019 12:35 pm
gönderen ulyoS

Kod: Tümünü seç

#include <amxmodx>
#include <amxmisc>
#include <engine> 
#include <vault>
#include <fun>

#define PLUGIN "Knife Mod"
#define VERSION "1.0" 
#define AUTHOR "spunko"

#define TASK_INTERVAL 4.0  
#define MAX_HEALTH 255  

new knife_model[33] 
new g_Menu

new CVAR_HIGHSPEED
new CVAR_LOWSPEED
new CVAR_LOWGRAV
new CVAR_NORMGRAV
new CVAR_HEALTH_ADD
new CVAR_HEALTH_MAX
new CVAR_DAMAGE 

public plugin_init() { 
	
	register_plugin(PLUGIN, VERSION, AUTHOR) 
	
	register_event( "Damage", "event_damage", "be" )
	register_event("CurWeapon","CurWeapon","be","1=1") 
	
	g_Menu = register_menuid("Knife Mod")
	register_menucmd(g_Menu, 1023, "knifemenu")
	
	register_clcmd("say /bicak", "display_knife")
	
	CVAR_HIGHSPEED = register_cvar("km_highspeed","340")
	CVAR_LOWSPEED = register_cvar("km_lowspeed","170")
	CVAR_HEALTH_ADD = register_cvar("km_addhealth", "3")
	CVAR_HEALTH_MAX = register_cvar("km_maxhealth", "75")
	CVAR_DAMAGE = register_cvar("km_damage", "2")
	CVAR_LOWGRAV = register_cvar("km_lowgravity" , "400")
	CVAR_NORMGRAV = get_cvar_pointer("sv_gravity")
	
	set_task(480.0, "kmodmsg", 0, _, _, "b")
}

public plugin_precache() { 
	precache_model("models/knife-mod/v_butcher.mdl") 
	precache_model("models/knife-mod/v_machete.mdl")
	precache_model("models/knife-mod/v_bak.mdl")
	precache_model("models/knife-mod/v_pocket.mdl")
	precache_model("models/v_knife.mdl") 
} 

public display_knife(id) {
	new menuBody[512]
	add(menuBody, 511, "\rBicak Menusu\w^n^n")
	add(menuBody, 511, "1. Satir \y(Fazla Hasar/Dusuk hiz)\w^n")
	add(menuBody, 511, "2. Bak Knife \y(Sessiz yuruyus)\w^n")
	add(menuBody, 511, "3. Caki \y(Daha fazla hiz)\w^n")
	add(menuBody, 511, "4. Kasap Bicagi \y(Dusuk Gravity)\w^n")
	add(menuBody, 511, "5. Normal Bicak \y(Health Regeneration)\w^n^n")
	add(menuBody, 511, "0. Cikis^n")
	
	new keys = ( 1<<0 | 1<<1 | 1<<2 | 1<<3 | 1<<4 | 1<<9 )
	show_menu(id, keys, menuBody, -1, "Knife Mod")
}

public knifemenu(id, key) {
	switch(key) 
	{
		case 0: SetKnife(id , 4)
		case 1: SetKnife(id , 2)
		case 2: SetKnife(id , 3)
		case 3: SetKnife(id , 1)
		case 4: SetKnife(id , 0)
		default: return PLUGIN_HANDLED
	}
	SaveData(id)
	return PLUGIN_HANDLED
} 

public SetKnife(id , Knife) {
	knife_model[id] = Knife
	
	new Clip, Ammo, Weapon = get_user_weapon(id, Clip, Ammo) 
	if ( Weapon != CSW_KNIFE )
		return PLUGIN_HANDLED
	
	new vModel[56],pModel[56]
	
	switch(Knife)
	{
		case 0: {
			format(vModel,55,"models/v_knife.mdl")
		}
		case 1: {
			format(vModel,55,"models/knife-mod/v_butcher.mdl")
		}
		case 2: {
			format(vModel,55,"models/knife-mod/v_bak.mdl")
		}
		case 3: {
			format(vModel,55,"models/knife-mod/v_pocket.mdl")
		}
		case 4: {
			format(vModel,55,"models/knife-mod/v_machete.mdl")
		}
	} 
	
	entity_set_string(id, EV_SZ_viewmodel, vModel)
	entity_set_string(id, EV_SZ_weaponmodel, pModel)
	
	return PLUGIN_HANDLED;  
}

public event_damage( id ) {
	
	new victim_id = id;
	if( !is_user_connected( victim_id ) ) return PLUGIN_CONTINUE
	new dmg_take = read_data( 2 );
	new dmgtype = read_data( 3 );
	new Float:multiplier = get_pcvar_float(CVAR_DAMAGE);
	new Float:damage = dmg_take * multiplier;
	new health = get_user_health( victim_id );
	
	new iWeapID, attacker_id = get_user_attacker( victim_id, iWeapID );
	
	if( !is_user_connected( attacker_id ) || !is_user_alive( victim_id ) ) {
		return PLUGIN_HANDLED
	}
	
	if( iWeapID == CSW_KNIFE && knife_model[attacker_id] == 4 ) {
		
		if( floatround(damage) >= health ) {
			if( victim_id == attacker_id ) {
				return PLUGIN_CONTINUE
				}else{
				log_kill( attacker_id, victim_id, "knife", 0 );
			}
			
			return PLUGIN_CONTINUE
			}else {
			if( victim_id == attacker_id ) return PLUGIN_CONTINUE
			
			fakedamage( victim_id, "weapon_knife", damage, dmgtype );
		}
	}
	return PLUGIN_CONTINUE
}

public CurWeapon(id)
	{
	new Weapon = read_data(2)
	
	// Set Knife Model
	SetKnife(id, knife_model[id])   
	
	// Task Options
	
	if(knife_model[id] == 0 && !task_exists(id) && Weapon == CSW_KNIFE)
		set_task(TASK_INTERVAL , "task_healing",id,_,_,"b")
	else if(task_exists(id))
		remove_task(id)
	
	// Abilities
	set_user_footsteps(id , ( (knife_model[id] == 2 && Weapon == CSW_KNIFE) ? 1 : 0) )
	
	new Float:Gravity = ((knife_model[id] == 1 && Weapon == CSW_KNIFE)? get_pcvar_float(CVAR_LOWGRAV) : get_pcvar_float(CVAR_NORMGRAV)) / 800.0
	set_user_gravity(id , Gravity)
	
	// Speed
	new Float:Speed
	if(Weapon != CSW_KNIFE || knife_model[id] < 3)
		return PLUGIN_CONTINUE
	else if(knife_model[id] == 3)
		Speed = get_pcvar_float(CVAR_HIGHSPEED)
	else if(knife_model[id] == 4)
		Speed = get_pcvar_float(CVAR_LOWSPEED)
	
	set_user_maxspeed(id, Speed)
	
	return PLUGIN_HANDLED   
	
}

stock log_kill(killer, victim, weapon[],headshot) {
	user_silentkill( victim );
	
	message_begin( MSG_ALL, get_user_msgid( "DeathMsg" ), {0,0,0}, 0 );
	write_byte( killer );
	write_byte( victim );
	write_byte( headshot );
	write_string( weapon );
	message_end();
	
	new kfrags = get_user_frags( killer );
	set_user_frags( killer, kfrags++ );
	new vfrags = get_user_frags( victim );
	set_user_frags( victim, vfrags++ );
	
	return  PLUGIN_CONTINUE
} 


public task_healing(id) {  
	new addhealth = get_pcvar_num(CVAR_HEALTH_ADD)  
	if (!addhealth)
		return  
	
	new maxhealth = get_pcvar_num(CVAR_HEALTH_MAX)  
	if (maxhealth > MAX_HEALTH) { 
		set_pcvar_num(CVAR_HEALTH_MAX, MAX_HEALTH)  
		maxhealth = MAX_HEALTH 
	}  
	
	new health = get_user_health(id)   
	
	if (is_user_alive(id) && (health < maxhealth)) { 
		set_user_health(id, health + addhealth)
		set_hudmessage(0, 255, 0, -1.0, 0.25, 0, 1.0, 2.0, 0.1, 0.1, 4)
		show_hudmessage(id,"<< !!CAN DOLDURULUYOR!! >>")
		message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0,0,0}, id)
		write_short(1<<10)
		write_short(1<<10)
		write_short(0x0000)
		write_byte(0)
		write_byte(200)
		write_byte(0)
		write_byte(75)
		message_end()
	}
	
	else {
		if (is_user_alive(id) && (health > maxhealth))
			remove_task(id)
	}
}  

public client_disconnect(id) {  
	if(task_exists(id)) remove_task(id)  
}  


public kmodmsg() { 
	
	client_print(0,print_chat,"[BICAKMENU] /bicak yazarak bicak menuye girebilirsiniz.")
}  

public client_authorized(id)
	{
	LoadData(id)
}

SaveData(id)
{ 
	
	new authid[32]
	get_user_authid(id, authid, 31)
	
	new vaultkey[64]
	new vaultdata[64]
	
	format(vaultkey, 63, "KMOD_%s", authid)
	format(vaultdata, 63, "%d", knife_model[id])
	set_vaultdata(vaultkey, vaultdata)
}

LoadData(id) 
{ 
	new authid[32] 
	get_user_authid(id,authid,31)
	
	new vaultkey[64], vaultdata[64]
	
	format(vaultkey, 63, "KMOD_%s", authid)
	get_vaultdata(vaultkey, vaultdata, 63)
	knife_model[id] = str_to_num(vaultdata)
	
} 
Serverimiz için bu daha iyi olacaktır, üşendim şimdi onu değiştirmeye.