era el pentru furien !
si vreau sa-l pun la classic , era doar pentru echipa t ! vreau sa-l fac pentru modul clasic / respawn meniul sa se activeze doar atunci cand scrii /vmenu de ex ... si sa fie accesibil pentru ambele echipe !
cine mi-l pote face ca are erori !
Multumesc !
Code: Select all
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <cstrike>
#include <fakemeta>
#include <hamsandwich>
#include <fun>
new const PLUGIN[] = "Knife Menu";
new const VERSION[] = "1.0";
new const AUTHOR[] = "*BoOoM*";
#pragma semicolon 1
#define VIP_FLAG ADMIN_LEVEL_H
new const Knife1Model[66] = "models/knifes/v_knife1.mdl";
new const Knife2Model[66] = "models/knifes/v_knife2.mdl";
new const Knife3Model[66] = "models/knifes/v_knife3.mdl";
new const Knife4Model[66] = "models/knifes/v_knife4.mdl";
new const KnifeGold1Model[66] = "models/vknifes/v_knifevip1.mdl";
new const KnifeGold2Model[66] = "models/vknifes/v_knifevip2.mdl";
new const KnifeGold3Model[66] = "models/vknifes/v_knifevip3.mdl";
new const KnifeGold4Model[66] = "models/vknifes/v_knifevip4.mdl";
new bool: Knife1[33];
new bool: Knife2[33];
new bool: Knife3[33];
new bool: Knife4[33];
new bool: KnifeGold1[33];
new bool: KnifeGold2[33];
new bool: KnifeGold3[33];
new bool: KnifeGold4[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;
KnifeGold1[id] = false;
KnifeGold2[id] = false;
KnifeGold3[id] = false;
KnifeGold4[id] = false;
if(cs_get_user_team(id) == CS_TEAM_UNASSIGNED) {
}
}
}
public plugin_precache() {
precache_model(Knife1Model);
precache_model(Knife2Model);
precache_model(Knife3Model);
precache_model(Knife4Model);
precache_model(KnifeGold1Model);
precache_model(KnifeGold2Model);
precache_model(KnifeGold3Model);
precache_model(KnifeGold4Model);
public client_putinserver(id) {
Knife1[id] = false;
Knife2[id] = false;
Knife3[id] = false;
Knife4[id] = false;
KnifeGold1[id] = false;
KnifeGold2[id] = false;
KnifeGold3[id] = false;
KnifeGold4[id] = false;
}
public MenuKnife(id)
{
new menu = menu_create ("\rPlugin \yConfigurat \rde \yNemeSyS", "CaseMenu");
menu_additem(menu, "\yPlayer \rKnife", "1");
menu_additem(menu, "\yV\w.\yI\w.\yP \rKnife", "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[Knife Menu]!nAcest meniu poate fi accesat doar de membri !gVIP");
MenuKnife(id);
}
}
}
menu_destroy (menu);
return 1;
}
public MenuPlayeri(id) {
new menu = menu_create ("\rPlayer \yKnife \rMenu", "CaseKnifePlayeri");
menu_additem(menu, "\rKnife 1", "1");
menu_additem(menu, "\rKnife 2", "2");
menu_additem(menu, "\rKnife 3", "3");
menu_additem(menu, "\rKnife 4", "4");
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[Knife Menu] !nNu poti alege cutitul atunci când esti mort");
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[Knife Menu] !nAi Ales !gKnife 1");
}
case 2:
{
KnifeChoosen[id] = true;
Knife2[id] = true;
CurentWeapon(id);
ChatColor(id, "!g[Knife Menu] !nAi Ales !gKnife 4");
}
case 3:
{
KnifeChoosen[id] = true;
Knife3[id] = true;
CurentWeapon(id);
ChatColor(id, "!g[Knife Menu] !nAi ales !gKnife 3");
}
case 4:
{
KnifeChoosen[id] = true;
Knife4[id] = true;
CurentWeapon(id);
ChatColor(id, "!g[Knife Menu] !nAi ales !gKnife 4");
}
ChatColor(id, "!g[Knife Menu] !nAi ales !gCelurit Knife");
}
}
menu_destroy (menu);
return 1;
}
public MenuVIP(id) {
new menu = menu_create ("\rVIP \yKnife \rMenu", "CaseKnifeVIP");
menu_additem(menu, "\rKnife 1", "1");
menu_additem(menu, "\rKnife 2", "2");
menu_additem(menu, "\rKnife 3", "3");
menu_additem(menu, "\rKnife 4", "4");
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[Knife Menu] !nNu poti alege cutitul atunci când esti mort");
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[Knife Menu] !nAi ales !gKnife 1");
}
case 2:
{
KnifeChoosen[id] = true;
KnifeGold2[id] = true;
CurentWeapon(id);
ChatColor(id, "!g[Knife Menu] !nAi ales !gKnife 2");
}
case 3:
{
KnifeChoosen[id] = true;
KnifeGold3[id] = true;
CurentWeapon(id);
ChatColor(id, "!g[Knife Menu] !nAi ales !gKnife 3");
}
case 4:
{
KnifeChoosen[id] = true;
KnifeGold4[id] = true;
CurentWeapon(id);
ChatColor(id, "!g[Knife Menu] !nAi ales !gKnife 4");
}
}
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(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);
}
}
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 * 1.0);
if(Knife2[Attacker])
SetHamParamFloat(4, fDamage * 1.0);
if(Knife3[Attacker])
SetHamParamFloat(4, fDamage * 1.0);
if(Knife4[Attacker])
SetHamParamFloat(4, fDamage * 1.0);
if(Knife5[Attacker])
SetHamParamFloat(4, fDamage * 1.0);
if(KnifeGold1[Attacker])
SetHamParamFloat(4, fDamage * 1.0);
if(KnifeGold2[Attacker])
SetHamParamFloat(4, fDamage * 1.0);
if(KnifeGold3[Attacker])
SetHamParamFloat(4, fDamage * 1.0);
}
}
}
public SayKnife(id) {
if(KnifeChoosen[id]) {
ChatColor(id, "!g[Knife Menu] !nAti ales deja un cutit în aceasta runda");
return;
}
if(cs_get_user_team(id) == CS_TEAM_UNASSIGNED) {
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"); // verde
replace_all(msg, 190, "!n", "^1"); // galben/alb/negru
replace_all(msg, 190, "!t", "^3"); // rosu/albastru/gri
replace_all(msg, 190, "!t2", "^0"); // rosu2/albastru2/gri2
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();
}
}
}
}