Bicak Menu
Gönderilme zamanı: Pzt Ara 31, 2018 11:47 pm
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
@ShooTeR
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);
}
}
}Kod: Tümünü seç
if(Knife1[Attacker])
SetHamParamFloat(4, fDamage * 2.0);Kod: Tümünü seç
new const KnifeGold1Model[66] = "models/v_knife.mdl";
new const KnifeGold1Model[66] = "models/v_knife.mdl";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();
}
}
}
}
menu açılıyor fakat 2. menüyü açtığımda bicak seçtiğim taktirde yeni bicak ekrana gelmiyrulyoS yazdı: Sal Oca 01, 2019 12:12 amÇ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.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(); } } } }
NOT: Hızlıca yaptım tam oldu mu görmedim denemedim olmazsa söyle bakarım.
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)
}