Page 1 of 2

problema vip free

Posted: 04 Mar 2018, 18:03
by N.A.S.A.
salut am niste probleme cu Vip free...

deci vip-ul are flagul "t" cand bag vip free Moderatorul cu acces "abcdefghj" nu primeste vip | doar cei cu flagul "t" si playeri primesc vip ma puteri ajuta sau sa-mi explicati va rog?.

amx_who
| Afiseaza codul
#include <amxmodx>
#include <amxmisc>
#define MAX_GROUPS 13
new g_groupNames[MAX_GROUPS][] = {
"FONDATOR & FTP",
"Detinator",
"Administrator",
"Owner + VIP",
"Owner",
"Co-Owner + VIP
"Co-Owner"
"Super-Moderator + VIP",
"Super-Moderator",
"Moderator + VIP",
"Moderator",
"***VIP***",
"Slot"
}
new g_groupFlags[MAX_GROUPS][] = {
"abcdefghijklmnopqrstuv",
"abcdefghijklmnopqrstu",
"abcdefghijklmnopqrst",
"abcdefghijklmnopqst",
"abcdefghijklmnopqs",
"abcdefghijklmnopt",
"abcdefghijklmnop",
"bcdefghijklmnot",
"bcdefghijklmns",
"bcdefghijklmnt",
"bcdefghijkls",
"t",
"c"
}
new g_groupFlagsValue[MAX_GROUPS];
public plugin_init() {
register_plugin("Lista admini (amx_who)", "1.0", "Krond Solutions SRL")
register_concmd("amx_who", "cmdWho", 0);
register_concmd("admin_who", "cmdWho", 0);
for(new i = 0; i < MAX_GROUPS; i++) {
g_groupFlagsValue = read_flags(g_groupFlags)
}
}
public cmdWho(id) {
// Verificam daca userul este online, daca nu... ne oprim din executie
if(!is_user_connected(id)) { return PLUGIN_HANDLED; }
new players[32], inum, player, name[32], i, a;
get_players(players, inum);
console_print(id, "===========================");
for(i = 0; i < MAX_GROUPS; i++) {
console_print(id, "---------- [%d] %s ----------", i+1, g_groupNames)
for(a = 0; a < inum; ++a) {
player = players[a]
get_user_name(player, name, 31);
if(get_user_flags(player) == g_groupFlagsValue) {
console_print(id, ">>> %s", name);
}
}
}
console_print(id, "===========================")
return PLUGIN_HANDLED
}



Cand vreau sa pornesc VIP FREE Vreau sa le dea VIP si celor care nu detine flagul "t"

Re: problema vip free

Posted: 06 Mar 2018, 16:27
by A k c 3 n 7
pune pe flag z

Re: problema vip free

Posted: 06 Mar 2018, 16:30
by Doctor whO? <3
Incearca acest plugin de free vip -> amxmodx/plugin-event-vip-free-t292522.html?hilit=free

Re: problema vip free [ REZOLVAT ]

Posted: 06 Mar 2018, 16:46
by N.A.S.A.
Sorinel daca pun defuze_acces pe "t" primeste vip playeri si cei care au flagul "t"

Moderator-ul; nu primeste.

alte solutii?.

Re: problema vip free

Posted: 06 Mar 2018, 16:49
by A k c 3 n 7
ti-am spus sa pui pe "z" si vezi ce se intampla

Re: problema vip free

Posted: 06 Mar 2018, 16:55
by N.A.S.A.
am pus man cum ai zis tu da Moderator nu primeste vip.

Re: problema vip free

Posted: 06 Mar 2018, 17:55
by A k c 3 n 7
include si flagul t la moderatori

Re: problema vip free

Posted: 06 Mar 2018, 18:03
by N.A.S.A.
deja dau vip si la Helper...

cum frate nu exista un plugin de vip free care sa le dea si la admini.

wfaa pe alte servere le merge si la admini vip...

platesc pentru pluginul acela daca este nevoie.

Re: problema vip free

Posted: 06 Mar 2018, 18:12
by A k c 3 n 7
pune pluginul de vip aici

Re: problema vip free

Posted: 06 Mar 2018, 18:32
by N.A.S.A.
vip
| Afiseaza codul
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <hamsandwich>
#include <engine>
#include <fakemeta>
#include <colorchat>

#define VIP_LEVEL_ACCES ADMIN_LEVEL_H

#define SCOREATTRIB_NONE    0
#define SCOREATTRIB_DEAD    ( 1 << 0 )
#define SCOREATTRIB_BOMB    ( 1 << 1 )
#define SCOREATTRIB_VIP     ( 1 << 2 )

#define REMOVE_FLAGS "t"

new const RMaps [ ] [ ] =
{
   "34234342342"
};

new const g_szBeginning[ ] = "ViP ONLiNE IS:"

const WEAPON_BITSUM = (1<<CSW_SCOUT)|(1<<CSW_XM1014)|(1<<CSW_MAC10)|(1<<CSW_AUG)|(1<<CSW_UMP45)|(1<<CSW_SG550)|(1<<CSW_GALIL)|(1<<CSW_FAMAS)|(1<<CSW_AWP)|(1<<CSW_MP5NAVY)|(1<<CSW_M249)|(1<<CSW_M3)|(1<<CSW_M4A1)|(1<<CSW_TMP)|(1<<CSW_G3SG1)|(1<<CSW_SG552)|(1<<CSW_AK47)|(1<<CSW_P90)|(1<<CSW_P228) |(1<<CSW_ELITE)|(1<<CSW_FIVESEVEN)|(1<<CSW_USP)|(1<<CSW_GLOCK18)|(1<<CSW_DEAGLE);

new g_szMessage[256];
new round[33] = 0;
new cvar_vip_maxap, cvar_vip_maxhp, cvar_vip_showC, cvar_vip_showH, cvar_vip_in_out, cvar_tag, cvar_start_hp, cvar_start_ap, cvar_start_money, cvar_vip_jump, cvar_hp_kill, cvar_ap_kill, jumpnum[33], bool: dojump[33], SyncHudMessage;

public plugin_init() 
{
	register_plugin("Classic VIP-FIROGINAL.RO", "5.1.3", "Devil aKa. StefaN@CSX");
	
	RegisterHam(Ham_Spawn, "player", "Spawn", 1);
	
	register_clcmd("say", "handle_say");
	register_clcmd("say_team", "handle_say");
	
	register_event("DeathMsg", "eDeathMsg", "a");
	register_message(get_user_msgid( "ScoreAttrib" ), "MessageScoreAttrib");
	RegisterHam(Ham_Spawn, "player", "HAM_Spawn_Post", 1);	

	cvar_tag = register_cvar("amx_vip_tag", "[*PGL*]");

	cvar_start_hp = register_cvar("amx_start_hp", "120");
	cvar_start_ap = register_cvar("amx_start_ap", "120");
	cvar_start_money = register_cvar("amx_start_money", "4000");
	cvar_vip_jump = register_cvar("amx_vip_jump", "1" );
	cvar_hp_kill = register_cvar("amx_vip_addhp", "10");	
	cvar_ap_kill = register_cvar("amx_vip_addap", "10");
	cvar_vip_in_out = register_cvar("amx_vip_in_out", "1");
	cvar_vip_showC = register_cvar("amx_vip_show_chat", "1");
	cvar_vip_showH = register_cvar("amx_vip_show_hud", "1");
	cvar_vip_maxhp = register_cvar("amx_vip_maxhp", "200");
	cvar_vip_maxap = register_cvar("amx_vip_maxap", "200");	

	set_task(120.0, "mesaj_info", _, _, _, "b");
	set_task( 1.0, "TaskDisplayVips", _, _, _, "b", 0 );
	SyncHudMessage = CreateHudSyncObj( );		
}

public HAM_Spawn_Post(id)
{
	if(is_user_alive(id) && get_user_flags(id) & VIP_LEVEL_ACCES)
	{
		round[id]++
		
		if(round[id]>=1)
			vip_menu(id)
	}
}

public vip_menu(id) 
{
	if(!is_user_alive(id))
		return;	
	
	if(!(get_user_flags(id) & VIP_LEVEL_ACCES))
		return;
	
	new menu
	switch(cs_get_user_team(id))
	{
		case CS_TEAM_CT:
		{
			menu = menu_create("\y[\rVIP Classic\y] \wMeniu \yVIP", "menu_ammunition");
			menu_additem(menu, "M4A1+DEAGLE+SET GRENAZI", "1");
			menu_additem(menu, "AK47+DEAGLE+SET GRENAZI", "2");
			menu_additem(menu, "AWP+DEAGLE+SET GRENAZI", "3");
		}
	
		case CS_TEAM_T:
		{
			menu = menu_create("\y[\rVIP Classic\y] \wMeniu \yVIP", "menu_ammunition");
			menu_additem(menu, "AK47+DEAGLE+SET GRENAZI", "1");
			menu_additem(menu, "M4A1+DEAGLE+SET GRENAZI", "2");
			menu_additem(menu, "AWP+DEAGLE+SET GRENAZI", "3");
		}
	}
	menu_display(id, menu, 0)
}

public menu_ammunition ( id, menu, item ) 
{
	new tag[32];
	get_pcvar_string(cvar_tag, tag, charsmax(tag));

        new szWeapons[32], iNum, i;
	get_user_weapons(id, szWeapons, iNum);
	
	if(item == MENU_EXIT)
	{
		return PLUGIN_HANDLED;
	}

	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);

	if(cs_get_user_team(id) == CS_TEAM_CT)
		switch(key)
	{
		case 1:
	{
			
                        for(i = 0; i < iNum; i++)
			{
				if(WEAPON_BITSUM & (1<<szWeapons))
				{
					new weaponname[32];
					get_weaponname(szWeapons, weaponname, charsmax(weaponname));
					bacon_strip_weapon(id, weaponname);
				}
			}
                          
			give_item(id, "weapon_knife");	
			give_item(id, "weapon_m4a1");
			give_item(id, "weapon_deagle");
			give_item(id, "weapon_hegrenade");
			give_item(id, "weapon_flashbang");
			cs_set_user_bpammo(id, CSW_HEGRENADE, 1);
			cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
			cs_set_user_bpammo(id, CSW_M4A1, 90);
			cs_set_user_bpammo(id, CSW_DEAGLE, 35);
			ColorChat(id,GREEN,"^4%s ^1AI ALES ^4M4A1^1+^4DEAGLE^1+^4SET GRENAZI^1.",tag);
	}
		case 2:
	{

			for(i = 0; i < iNum; i++)
			{
				if(WEAPON_BITSUM & (1<<szWeapons))
				{
					new weaponname[32];
					get_weaponname(szWeapons, weaponname, charsmax(weaponname));
					bacon_strip_weapon(id, weaponname);
				}
			}
                          
			give_item(id, "weapon_knife");
			give_item(id, "weapon_ak47");
			give_item(id, "weapon_deagle");
			give_item(id, "weapon_hegrenade");
			give_item(id, "weapon_flashbang");
			cs_set_user_bpammo(id, CSW_HEGRENADE, 1);
			cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
			cs_set_user_bpammo(id, CSW_AK47, 90);
			cs_set_user_bpammo(id, CSW_DEAGLE, 35);
			ColorChat(id,GREEN,"^4%s ^1AI ALES ^4AK47^1+^4DEAGLE^1+^4SET GRENAZI^1.",tag);
	}
		case 3:
	{
			
                        for(i = 0; i < iNum; i++)
			{
				if(WEAPON_BITSUM & (1<<szWeapons))
				{
					new weaponname[32];
					get_weaponname(szWeapons, weaponname, charsmax(weaponname));
					bacon_strip_weapon(id, weaponname);
				}
			}
                          
			give_item(id, "weapon_knife");
			give_item(id, "weapon_awp");
			give_item(id, "weapon_deagle");
			give_item(id, "weapon_hegrenade");
			give_item(id, "weapon_flashbang");
			cs_set_user_bpammo(id, CSW_HEGRENADE, 1);
			cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
			cs_set_user_bpammo(id, CSW_AWP, 30);
			cs_set_user_bpammo(id, CSW_DEAGLE, 35);
			ColorChat(id,GREEN,"^4%s ^1AI ALES ^4AWP^1+^4DEAGLE^1+^4SET GRENAZI^1.",tag);
	}      
}
	if(cs_get_user_team(id) == CS_TEAM_T)
		switch(key)
	{
		case 1:
	{

                        for(i = 0; i < iNum; i++)
			{
				if(WEAPON_BITSUM & (1<<szWeapons))
				{
					new weaponname[32];
					get_weaponname(szWeapons, weaponname, charsmax(weaponname));
					bacon_strip_weapon(id, weaponname);
				}
			}
                          
			
			give_item(id, "weapon_knife");
			give_item(id, "weapon_ak47");
			give_item(id, "weapon_deagle");
			give_item(id, "weapon_hegrenade");
			give_item(id, "weapon_flashbang");
			cs_set_user_bpammo(id, CSW_HEGRENADE, 1);
			cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
			cs_set_user_bpammo(id, CSW_AK47, 90);
			cs_set_user_bpammo(id, CSW_DEAGLE, 35);
			ColorChat(id,GREEN,"^4%s ^1AI ALES ^4AK47^1+^4DEAGLE^1+^4SET GRENAZI^1.",tag);
	}      
		case 2:
	{
			

                        for(i = 0; i < iNum; i++)
			{
				if(WEAPON_BITSUM & (1<<szWeapons))
				{
					new weaponname[32];
					get_weaponname(szWeapons, weaponname, charsmax(weaponname));
					bacon_strip_weapon(id, weaponname);
				}
			}
                          
			give_item(id, "weapon_knife");
			give_item(id, "weapon_m4a1");
			give_item(id, "weapon_deagle");
			give_item(id, "weapon_hegrenade");
			give_item(id, "weapon_flashbang");
			cs_set_user_bpammo(id, CSW_HEGRENADE, 1);
			cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
			cs_set_user_bpammo(id, CSW_M4A1, 90);
			cs_set_user_bpammo(id, CSW_DEAGLE, 35);
			ColorChat(id,GREEN,"^4%s ^1AI ALES ^4M4A1^1+^4DEAGLE^1+^4SET GRENAZI^1.",tag);
	}
		case 3:
	{


		        for(i = 0; i < iNum; i++)
			{
				if(WEAPON_BITSUM & (1<<szWeapons[i]))
				{
					new weaponname[32];
					get_weaponname(szWeapons[i], weaponname, charsmax(weaponname));
					bacon_strip_weapon(id, weaponname);
				}
			}
                          
			give_item(id, "weapon_knife");
			give_item(id, "weapon_awp");
			give_item(id, "weapon_deagle");
			give_item(id, "weapon_hegrenade");
			give_item(id, "weapon_flashbang");
			cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
			cs_set_user_bpammo(id, CSW_AWP, 30);
			cs_set_user_bpammo(id, CSW_DEAGLE, 35);
			ColorChat(id,GREEN,"^4%s ^1AI ALES ^4AWP^1+^4DEAGLE^1+^4SET GRENAZI^1.",tag);
	}      
	}
	menu_destroy(menu);
	return PLUGIN_HANDLED;  
}

public Spawn(id) 
{ 
	if(!is_user_alive(id))
		return;
    
	new CsTeams:team = cs_get_user_team(id) 
	if(get_user_flags(id) & VIP_LEVEL_ACCES) 
	{
		switch(team) 
	    {
		case CS_TEAM_T: 
		{
			set_user_health(id, get_pcvar_num(cvar_start_hp));
			set_user_armor(id, get_pcvar_num(cvar_start_ap));
			cs_set_user_money(id, cs_get_user_money(id) + get_pcvar_num(cvar_start_money));
		}
		case CS_TEAM_CT: 
		{
			set_user_health(id, get_pcvar_num( cvar_start_hp ));
			set_user_armor(id, get_pcvar_num( cvar_start_ap ));
			cs_set_user_money(id, cs_get_user_money(id) + get_pcvar_num(cvar_start_money));
		}
	    }
	}
	
	new MapName[32]; get_mapname(MapName, sizeof(MapName));
	for (new i = 0; i < sizeof (RMaps); i ++)
	{
		if(equali (MapName, RMaps[i])) 
		{
			remove_user_flags (id, read_flags(REMOVE_FLAGS));
		}
	}
}

public client_putinserver(id) 
{	
	set_task(2.0, "in", id);
	if(get_user_flags(id) & VIP_LEVEL_ACCES)
	{
		jumpnum[id] = 0;
		dojump[id] = false;
		round[id] = 0;
	}	
}

public client_disconnect(id)
{
	set_task(2.0, "out", id);

	if(get_user_flags(id) & VIP_LEVEL_ACCES)
	{
		jumpnum[id] = 0;
		dojump[id] = false;
		round[id] = 0;
	}
}

public client_PreThink( id )
{
	if(!is_user_alive(id)) 
		return PLUGIN_CONTINUE;

	new BUTON = get_user_button(id)
	new OLDBUTON = get_user_oldbutton(id)
	new JUMP_VIP = get_pcvar_num(cvar_vip_jump) 

	if((BUTON & IN_JUMP) && !(get_entity_flags(id) & FL_ONGROUND) && !(OLDBUTON & IN_JUMP))
	{
		if(((get_user_flags(id) & VIP_LEVEL_ACCES) && (jumpnum[id] < JUMP_VIP)))
		{
			dojump[id] = true
			jumpnum[id]++
		}
	}

	if((BUTON & IN_JUMP) && (get_entity_flags(id) & FL_ONGROUND))
	{
		jumpnum[id] = 0
	}

	return PLUGIN_CONTINUE;
}

public client_PostThink(id) 
{
	if(!is_user_alive(id)) 
		return PLUGIN_CONTINUE;

	if(dojump[id] == true)
	{
		new Float: velocity[3]	
		entity_get_vector(id, EV_VEC_velocity, velocity)
		velocity[2] = random_float(265.0, 285.0)
		entity_set_vector(id, EV_VEC_velocity, velocity)
		dojump[id] = false
	}
	return PLUGIN_CONTINUE;
}

public eDeathMsg()
{
	new id_Killer = read_data(1);
	new VIP_MAXHP = get_pcvar_num(cvar_vip_maxhp);
	new VIP_MAX_HP = get_user_health(id_Killer);
	new VIP_MAXAP = get_pcvar_num(cvar_vip_maxap);
	new VIP_MAX_AP = get_user_armor(id_Killer);

	if(is_user_alive(id_Killer))
	{
		if(get_user_flags(id_Killer) & VIP_LEVEL_ACCES )
			{
				set_user_health(id_Killer, get_user_health(id_Killer) + get_pcvar_num(cvar_hp_kill));
				set_user_armor(id_Killer, get_user_armor(id_Killer) + get_pcvar_num(cvar_ap_kill));
			}
	}

	if(VIP_MAX_HP >= VIP_MAXHP)
	{
               	set_user_health(id_Killer, get_pcvar_num(cvar_vip_maxhp));
		return PLUGIN_HANDLED;
	}
	
	if(VIP_MAX_AP >= VIP_MAXAP)
	{
               	set_user_armor(id_Killer, get_pcvar_num(cvar_vip_maxap));
		return PLUGIN_HANDLED;
	}

	return PLUGIN_HANDLED;
}

public in(id) 	
{
	if(get_pcvar_num(cvar_vip_in_out))
	{
		new tag[32], name[32];

		get_pcvar_string(cvar_tag, tag, charsmax(tag)); 
		get_user_name(id, name, charsmax(name)); 

		if(get_user_flags(id) & VIP_LEVEL_ACCES)   
		{ 
			ColorChat(0, GREEN, "^4%s ^1[VIP]: ^4%s ^1s-a conectat.", tag, name); 
		}
		return PLUGIN_HANDLED;
	}
	return PLUGIN_CONTINUE;
}

public out(id) 	
{	
	if(get_pcvar_num(cvar_vip_in_out))
	{
		new tag[32], name[32];

		get_pcvar_string(cvar_tag, tag, charsmax(tag)); 
		get_user_name(id, name, charsmax(name)); 

		if(get_user_flags(id) & VIP_LEVEL_ACCES)   
		{ 
			ColorChat(0, GREEN, "^4%s ^1[VIP]: ^4%s ^1s-a deconectat.", tag, name); 
		}
		return PLUGIN_HANDLED;
	}
	return PLUGIN_CONTINUE;
}

public vip_info(id)
{
	show_motd(id, "/addons/amxmodx/configs/vip_info.html");
}

public mesaj_info()	
{
	new tag[32];
	get_pcvar_string(cvar_tag, tag, charsmax(tag));
	
	ColorChat(0, GREEN, "^4%s ^1Tastati in chat ^4/vip ^1pentru a vedea beneficiile si pretul vip-ului.", tag);
}

public TaskDisplayVips( )
{
	if(get_pcvar_num(cvar_vip_showH))
	{
		static iPlayers[ 32 ];
		static iPlayersNum;
	
		get_players( iPlayers, iPlayersNum, "ch" );
		if( !iPlayersNum )
			return 1;
	
		static iVipsConnected, szVipsNames[ 128 ], szName[ 32 ];
		formatex( szVipsNames, sizeof ( szVipsNames ) -1, "" ); // Is this needed ?
		iVipsConnected = 0;
	
		static id, i;
		for( i = 0; i < iPlayersNum; i++ )
		{
			id = iPlayers[ i ];
			if( get_user_flags( id ) & VIP_LEVEL_ACCES )
			{
				get_user_name( id, szName, sizeof ( szName ) -1 );
			
				add( szVipsNames, sizeof ( szVipsNames ) -1, szName );
				add( szVipsNames, sizeof ( szVipsNames ) -1, "^n" );
			
				iVipsConnected++;
			}
		}
	
		formatex( g_szMessage, sizeof ( g_szMessage ) -1, "%s ( %i )^n%s",
			g_szBeginning, iVipsConnected, szVipsNames );
		
		set_hudmessage( 25, 255, 25, 0.01, 0.25, 0, 0.0, 1.0, 0.1, 0.1, -1 );
		ShowSyncHudMsg( 0, SyncHudMessage, g_szMessage );
	}
	return PLUGIN_CONTINUE;
		
}

public handle_say(id) 
{
	new said[192];
	read_args(said,192);
	if(contain(said, "/vips") != -1)
	set_task(0.1,"print_adminlist",id);
	return PLUGIN_CONTINUE;
}

public print_adminlist(user) 
{
	if(get_pcvar_num(cvar_vip_showC))
	{
		new tag[32];
		get_pcvar_string(cvar_tag, tag, charsmax(tag));
	
		new adminnames[33][32];
		new message[256];
		new id, count, x, len;

		for(id = 1 ; id <= get_maxplayers() ; id++)
			if(is_user_connected(id))
				if(get_user_flags(id) & VIP_LEVEL_ACCES)
					get_user_name(id, adminnames[count++], charsmax(adminnames[ ]));
    
		len = format(message, 255, "^4%s ^1VIP-ii online sunt:^4 " ,tag);
		if(count > 0) 
			{
			for(x = 0 ; x < count ; x++) 
				{
				len += format(message[len], 255-len, "%s%s ", adminnames[x], x < (count-1) ? ", ":"");
				if(len > 96) 
				{
					print_message(user, message);
					len = format(message, 255, " ");
				}
				}
			print_message(user, message);
			}
		else 
		{
			ColorChat(0, GREEN, "^4%s ^1Nu sunt ^4VIP^1-i online.", tag);
		} 
	}
	return PLUGIN_CONTINUE;  
}

print_message(id, msg[]) 
{
	message_begin(MSG_ONE, get_user_msgid("SayText"), {0,0,0}, id);
	write_byte(id);
	write_string(msg);
	message_end();
}

public MessageScoreAttrib(iMsgID, iDest, iReceiver) 
{
    	new iPlayer = get_msg_arg_int(1);
    	if(is_user_connected( iPlayer )
    	&& (get_user_flags( iPlayer ) & VIP_LEVEL_ACCES)) 
		{
        		set_msg_arg_int(2, ARG_BYTE, is_user_alive(iPlayer) ? SCOREATTRIB_VIP : SCOREATTRIB_DEAD);
    		}
}

stock fm_find_ent_by_owner ( entity, const classname[], owner )
{
	while((entity = engfunc(EngFunc_FindEntityByString, entity, "classname", classname)) && pev(entity, pev_owner) != owner) {  }
	return entity;
}

stock bacon_strip_weapon(index, weapon[])
{
	if(!equal(weapon, "weapon_", 7)) 
		return PLUGIN_CONTINUE;

	static weaponid;
	weaponid = get_weaponid(weapon)
	
	if(!weaponid) 
		return PLUGIN_CONTINUE;

	static weaponent;
	weaponent = fm_find_ent_by_owner(-1, weapon, index);
	
	if(!weaponent)
		return PLUGIN_CONTINUE;

	if(get_user_weapon(index) == weaponid) 
		ExecuteHamB(Ham_Weapon_RetireWeapon, weaponent);

	if(!ExecuteHamB(Ham_RemovePlayerItem, index, weaponent)) 
		return PLUGIN_CONTINUE;
	
	ExecuteHamB(Ham_Item_Kill, weaponent);
	set_pev(index, pev_weapons, pev(index, pev_weapons) & ~(1<<weaponid));

	return PLUGIN_HANDLED;
}

/*
stock drop_weapons(id, dropwhat)
{
	static Weapons[32], Num, i, WeaponID;
	Num = 0;
	get_user_weapons(id, Weapons, Num);
	for(i = 0; i < Num; i ++)
	{
		WeaponID = Weapons[i];
		if((dropwhat == 1 && ((1 << WeaponID) & PRIMARY_WEAPONS_BIT_SUM)) || (dropwhat == 2 && ((1 << WeaponID) & SECONDARY_WEAPONS_BIT_SUM )))
		{
			static DropName[32], WeaponEntity;
			get_weaponname(WeaponID, DropName, charsmax(DropName));
			WeaponEntity = fm_find_ent_by_owner(-1, DropName, id);
			set_pev(WeaponEntity, pev_iuser1, cs_get_user_bpammo (id, WeaponID));
			engclient_cmd(id, "drop", DropName);
			cs_set_user_bpammo(id, WeaponID, 0);
		}
	}
}*/


amx_who

| Afiseaza codul
-----------------------------------------------------------------------------
"FONDATOR & FTP",
-----------------------------------------------------------------------------
"Detinator",
-----------------------------------------------------------------------------
"Administrator",
-----------------------------------------------------------------------------
"Owner + VIP",
-----------------------------------------------------------------------------
"Owner",
-----------------------------------------------------------------------------
"Co-Owner + VIP
-----------------------------------------------------------------------------
"Co-Owner"
-----------------------------------------------------------------------------
"Super-Moderator + VIP",
-----------------------------------------------------------------------------
"Super-Moderator",
-----------------------------------------------------------------------------
"Moderator + VIP",
-----------------------------------------------------------------------------
"Moderator",
-----------------------------------------------------------------------------
"***VIP***",
-----------------------------------------------------------------------------
"Slot"
-----------------------------------------------------------------------------


-----------------------------------------------------------------------------
"abcdefghijklmnopqrstuv",
"abcdefghijklmnopqrstu",
"abcdefghijklmnopqrst",
"abcdefghijklmnopqst",
"abcdefghijklmnopqs",
"abcdefghijklmnopt",
"abcdefghijklmnop",
"bcdefghijklmnot",
"bcdefghijklmns",
"bcdefghijklmnt",
"bcdefghijkls",
"t",
"c"

Re: problema vip free

Posted: 06 Mar 2018, 19:02
by A k c 3 n 7
ia vezi daca functioneaza
| Afiseaza codul
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <hamsandwich>
#include <engine>
#include <fakemeta>
#include <colorchat>

//#define VIP_LEVEL_ACCES ADMIN_LEVEL_H

#define SCOREATTRIB_NONE    0
#define SCOREATTRIB_DEAD    ( 1 << 0 )
#define SCOREATTRIB_BOMB    ( 1 << 1 )
#define SCOREATTRIB_VIP     ( 1 << 2 )

#define REMOVE_FLAGS "t"

new const RMaps [ ] [ ] =
{
   "34234342342"
};

new const g_szBeginning[ ] = "ViP ONLiNE IS:"

const WEAPON_BITSUM = (1<<CSW_SCOUT)|(1<<CSW_XM1014)|(1<<CSW_MAC10)|(1<<CSW_AUG)|(1<<CSW_UMP45)|(1<<CSW_SG550)|(1<<CSW_GALIL)|(1<<CSW_FAMAS)|(1<<CSW_AWP)|(1<<CSW_MP5NAVY)|(1<<CSW_M249)|(1<<CSW_M3)|(1<<CSW_M4A1)|(1<<CSW_TMP)|(1<<CSW_G3SG1)|(1<<CSW_SG552)|(1<<CSW_AK47)|(1<<CSW_P90)|(1<<CSW_P228) |(1<<CSW_ELITE)|(1<<CSW_FIVESEVEN)|(1<<CSW_USP)|(1<<CSW_GLOCK18)|(1<<CSW_DEAGLE);

new g_szMessage[256];
new round[33] = 0;
new cvar_vip_maxap, cvar_vip_maxhp, cvar_vip_showC, cvar_vip_showH, cvar_vip_in_out, cvar_tag, cvar_start_hp, cvar_start_ap, cvar_start_money, cvar_vip_jump, cvar_hp_kill, cvar_ap_kill, jumpnum[33], bool: dojump[33], SyncHudMessage;

public plugin_init() 
{
	register_plugin("Classic VIP-FIROGINAL.RO", "5.1.3", "Devil aKa. StefaN@CSX");
	
	RegisterHam(Ham_Spawn, "player", "Spawn", 1);
	
	register_clcmd("say", "handle_say");
	register_clcmd("say_team", "handle_say");
	
	register_event("DeathMsg", "eDeathMsg", "a");
	register_message(get_user_msgid( "ScoreAttrib" ), "MessageScoreAttrib");
	RegisterHam(Ham_Spawn, "player", "HAM_Spawn_Post", 1);	

	cvar_tag = register_cvar("amx_vip_tag", "[*PGL*]");

	cvar_start_hp = register_cvar("amx_start_hp", "120");
	cvar_start_ap = register_cvar("amx_start_ap", "120");
	cvar_start_money = register_cvar("amx_start_money", "4000");
	cvar_vip_jump = register_cvar("amx_vip_jump", "1" );
	cvar_hp_kill = register_cvar("amx_vip_addhp", "10");	
	cvar_ap_kill = register_cvar("amx_vip_addap", "10");
	cvar_vip_in_out = register_cvar("amx_vip_in_out", "1");
	cvar_vip_showC = register_cvar("amx_vip_show_chat", "1");
	cvar_vip_showH = register_cvar("amx_vip_show_hud", "1");
	cvar_vip_maxhp = register_cvar("amx_vip_maxhp", "200");
	cvar_vip_maxap = register_cvar("amx_vip_maxap", "200");	

	set_task(120.0, "mesaj_info", _, _, _, "b");
	set_task( 1.0, "TaskDisplayVips", _, _, _, "b", 0 );
	SyncHudMessage = CreateHudSyncObj( );		
}

public HAM_Spawn_Post(id)
{
	if(is_user_alive(id) && get_user_flags(id) == read_flags( "t" ) && get_user_flags(id) == read_flags( "bcdefghijklmnt" ) ) 
	{
		round[id]++
		
		if(round[id]>=1)
			vip_menu(id)
	}
}

public vip_menu(id) 
{
	if(!is_user_alive(id))
		return;	
	
	if(!(get_user_flags(id) == read_flags( "t" ) && get_user_flags(id) == read_flags( "bcdefghijklmnt" ) ) )
		return;
	
	new menu
	switch(cs_get_user_team(id))
	{
		case CS_TEAM_CT:
		{
			menu = menu_create("\y[\rVIP Classic\y] \wMeniu \yVIP", "menu_ammunition");
			menu_additem(menu, "M4A1+DEAGLE+SET GRENAZI", "1");
			menu_additem(menu, "AK47+DEAGLE+SET GRENAZI", "2");
			menu_additem(menu, "AWP+DEAGLE+SET GRENAZI", "3");
		}
	
		case CS_TEAM_T:
		{
			menu = menu_create("\y[\rVIP Classic\y] \wMeniu \yVIP", "menu_ammunition");
			menu_additem(menu, "AK47+DEAGLE+SET GRENAZI", "1");
			menu_additem(menu, "M4A1+DEAGLE+SET GRENAZI", "2");
			menu_additem(menu, "AWP+DEAGLE+SET GRENAZI", "3");
		}
	}
	menu_display(id, menu, 0)
}

public menu_ammunition ( id, menu, item ) 
{
	new tag[32];
	get_pcvar_string(cvar_tag, tag, charsmax(tag));

        new szWeapons[32], iNum, i;
	get_user_weapons(id, szWeapons, iNum);
	
	if(item == MENU_EXIT)
	{
		return PLUGIN_HANDLED;
	}

	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);

	if(cs_get_user_team(id) == CS_TEAM_CT)
		switch(key)
	{
		case 1:
	{
			
                        for(i = 0; i < iNum; i++)
			{
				if(WEAPON_BITSUM & (1<<szWeapons))
				{
					new weaponname[32];
					get_weaponname(szWeapons, weaponname, charsmax(weaponname));
					bacon_strip_weapon(id, weaponname);
				}
			}
                          
			give_item(id, "weapon_knife");	
			give_item(id, "weapon_m4a1");
			give_item(id, "weapon_deagle");
			give_item(id, "weapon_hegrenade");
			give_item(id, "weapon_flashbang");
			cs_set_user_bpammo(id, CSW_HEGRENADE, 1);
			cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
			cs_set_user_bpammo(id, CSW_M4A1, 90);
			cs_set_user_bpammo(id, CSW_DEAGLE, 35);
			ColorChat(id,GREEN,"^4%s ^1AI ALES ^4M4A1^1+^4DEAGLE^1+^4SET GRENAZI^1.",tag);
	}
		case 2:
	{

			for(i = 0; i < iNum; i++)
			{
				if(WEAPON_BITSUM & (1<<szWeapons))
				{
					new weaponname[32];
					get_weaponname(szWeapons, weaponname, charsmax(weaponname));
					bacon_strip_weapon(id, weaponname);
				}
			}
                          
			give_item(id, "weapon_knife");
			give_item(id, "weapon_ak47");
			give_item(id, "weapon_deagle");
			give_item(id, "weapon_hegrenade");
			give_item(id, "weapon_flashbang");
			cs_set_user_bpammo(id, CSW_HEGRENADE, 1);
			cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
			cs_set_user_bpammo(id, CSW_AK47, 90);
			cs_set_user_bpammo(id, CSW_DEAGLE, 35);
			ColorChat(id,GREEN,"^4%s ^1AI ALES ^4AK47^1+^4DEAGLE^1+^4SET GRENAZI^1.",tag);
	}
		case 3:
	{
			
                        for(i = 0; i < iNum; i++)
			{
				if(WEAPON_BITSUM & (1<<szWeapons))
				{
					new weaponname[32];
					get_weaponname(szWeapons, weaponname, charsmax(weaponname));
					bacon_strip_weapon(id, weaponname);
				}
			}
                          
			give_item(id, "weapon_knife");
			give_item(id, "weapon_awp");
			give_item(id, "weapon_deagle");
			give_item(id, "weapon_hegrenade");
			give_item(id, "weapon_flashbang");
			cs_set_user_bpammo(id, CSW_HEGRENADE, 1);
			cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
			cs_set_user_bpammo(id, CSW_AWP, 30);
			cs_set_user_bpammo(id, CSW_DEAGLE, 35);
			ColorChat(id,GREEN,"^4%s ^1AI ALES ^4AWP^1+^4DEAGLE^1+^4SET GRENAZI^1.",tag);
	}      
}
	if(cs_get_user_team(id) == CS_TEAM_T)
		switch(key)
	{
		case 1:
	{

                        for(i = 0; i < iNum; i++)
			{
				if(WEAPON_BITSUM & (1<<szWeapons))
				{
					new weaponname[32];
					get_weaponname(szWeapons, weaponname, charsmax(weaponname));
					bacon_strip_weapon(id, weaponname);
				}
			}
                          
			
			give_item(id, "weapon_knife");
			give_item(id, "weapon_ak47");
			give_item(id, "weapon_deagle");
			give_item(id, "weapon_hegrenade");
			give_item(id, "weapon_flashbang");
			cs_set_user_bpammo(id, CSW_HEGRENADE, 1);
			cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
			cs_set_user_bpammo(id, CSW_AK47, 90);
			cs_set_user_bpammo(id, CSW_DEAGLE, 35);
			ColorChat(id,GREEN,"^4%s ^1AI ALES ^4AK47^1+^4DEAGLE^1+^4SET GRENAZI^1.",tag);
	}      
		case 2:
	{
			

                        for(i = 0; i < iNum; i++)
			{
				if(WEAPON_BITSUM & (1<<szWeapons))
				{
					new weaponname[32];
					get_weaponname(szWeapons, weaponname, charsmax(weaponname));
					bacon_strip_weapon(id, weaponname);
				}
			}
                          
			give_item(id, "weapon_knife");
			give_item(id, "weapon_m4a1");
			give_item(id, "weapon_deagle");
			give_item(id, "weapon_hegrenade");
			give_item(id, "weapon_flashbang");
			cs_set_user_bpammo(id, CSW_HEGRENADE, 1);
			cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
			cs_set_user_bpammo(id, CSW_M4A1, 90);
			cs_set_user_bpammo(id, CSW_DEAGLE, 35);
			ColorChat(id,GREEN,"^4%s ^1AI ALES ^4M4A1^1+^4DEAGLE^1+^4SET GRENAZI^1.",tag);
	}
		case 3:
	{


		        for(i = 0; i < iNum; i++)
			{
				if(WEAPON_BITSUM & (1<<szWeapons[i]))
				{
					new weaponname[32];
					get_weaponname(szWeapons[i], weaponname, charsmax(weaponname));
					bacon_strip_weapon(id, weaponname);
				}
			}
                          
			give_item(id, "weapon_knife");
			give_item(id, "weapon_awp");
			give_item(id, "weapon_deagle");
			give_item(id, "weapon_hegrenade");
			give_item(id, "weapon_flashbang");
			cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
			cs_set_user_bpammo(id, CSW_AWP, 30);
			cs_set_user_bpammo(id, CSW_DEAGLE, 35);
			ColorChat(id,GREEN,"^4%s ^1AI ALES ^4AWP^1+^4DEAGLE^1+^4SET GRENAZI^1.",tag);
	}      
	}
	menu_destroy(menu);
	return PLUGIN_HANDLED;  
}

public Spawn(id) 
{ 
	if(!is_user_alive(id))
		return;
    
	new CsTeams:team = cs_get_user_team(id) 
	if(get_user_flags(id) == read_flags( "t" ) && get_user_flags(id) == read_flags( "bcdefghijklmnt" ) )
	{
		switch(team) 
	    {
		case CS_TEAM_T: 
		{
			set_user_health(id, get_pcvar_num(cvar_start_hp));
			set_user_armor(id, get_pcvar_num(cvar_start_ap));
			cs_set_user_money(id, cs_get_user_money(id) + get_pcvar_num(cvar_start_money));
		}
		case CS_TEAM_CT: 
		{
			set_user_health(id, get_pcvar_num( cvar_start_hp ));
			set_user_armor(id, get_pcvar_num( cvar_start_ap ));
			cs_set_user_money(id, cs_get_user_money(id) + get_pcvar_num(cvar_start_money));
		}
	    }
	}
	
	new MapName[32]; get_mapname(MapName, sizeof(MapName));
	for (new i = 0; i < sizeof (RMaps); i ++)
	{
		if(equali (MapName, RMaps[i])) 
		{
			remove_user_flags (id, read_flags(REMOVE_FLAGS));
		}
	}
}

public client_putinserver(id) 
{	
	set_task(2.0, "in", id);
	if(get_user_flags(id) == read_flags( "t" ) && get_user_flags(id) == read_flags( "bcdefghijklmnt" ) )
	{
		jumpnum[id] = 0;
		dojump[id] = false;
		round[id] = 0;
	}	
}

public client_disconnect(id)
{
	set_task(2.0, "out", id);

	if(get_user_flags(id) == read_flags( "t" ) && get_user_flags(id) == read_flags( "bcdefghijklmnt" ) )
	{
		jumpnum[id] = 0;
		dojump[id] = false;
		round[id] = 0;
	}
}

public client_PreThink( id )
{
	if(!is_user_alive(id)) 
		return PLUGIN_CONTINUE;

	new BUTON = get_user_button(id)
	new OLDBUTON = get_user_oldbutton(id)
	new JUMP_VIP = get_pcvar_num(cvar_vip_jump) 

	if((BUTON & IN_JUMP) && !(get_entity_flags(id) & FL_ONGROUND) && !(OLDBUTON & IN_JUMP))
	{
		if(((get_user_flags(id) == read_flags( "t" ) && get_user_flags(id) == read_flags( "bcdefghijklmnt" )  && (jumpnum[id] < JUMP_VIP))))
		{
			dojump[id] = true
			jumpnum[id]++
		}
	}

	if((BUTON & IN_JUMP) && (get_entity_flags(id) & FL_ONGROUND))
	{
		jumpnum[id] = 0
	}

	return PLUGIN_CONTINUE;
}

public client_PostThink(id) 
{
	if(!is_user_alive(id)) 
		return PLUGIN_CONTINUE;

	if(dojump[id] == true)
	{
		new Float: velocity[3]	
		entity_get_vector(id, EV_VEC_velocity, velocity)
		velocity[2] = random_float(265.0, 285.0)
		entity_set_vector(id, EV_VEC_velocity, velocity)
		dojump[id] = false
	}
	return PLUGIN_CONTINUE;
}

public eDeathMsg(id)
{
	new id_Killer = read_data(1);
	new VIP_MAXHP = get_pcvar_num(cvar_vip_maxhp);
	new VIP_MAX_HP = get_user_health(id_Killer);
	new VIP_MAXAP = get_pcvar_num(cvar_vip_maxap);
	new VIP_MAX_AP = get_user_armor(id_Killer);

	if(is_user_alive(id_Killer))
	{
		if(get_user_flags(id_Killer) == read_flags( "t" ) && get_user_flags(id) == read_flags( "bcdefghijklmnt" ) )
			{
				set_user_health(id_Killer, get_user_health(id_Killer) + get_pcvar_num(cvar_hp_kill));
				set_user_armor(id_Killer, get_user_armor(id_Killer) + get_pcvar_num(cvar_ap_kill));
			}
	}

	if(VIP_MAX_HP >= VIP_MAXHP)
	{
               	set_user_health(id_Killer, get_pcvar_num(cvar_vip_maxhp));
		return PLUGIN_HANDLED;
	}
	
	if(VIP_MAX_AP >= VIP_MAXAP)
	{
               	set_user_armor(id_Killer, get_pcvar_num(cvar_vip_maxap));
		return PLUGIN_HANDLED;
	}

	return PLUGIN_HANDLED;
}

public in(id) 	
{
	if(get_pcvar_num(cvar_vip_in_out))
	{
		new tag[32], name[32];

		get_pcvar_string(cvar_tag, tag, charsmax(tag)); 
		get_user_name(id, name, charsmax(name)); 

		if(get_user_flags(id) == read_flags( "t" ) && get_user_flags(id) == read_flags( "bcdefghijklmnt" ) )
		{ 
			ColorChat(0, GREEN, "^4%s ^1[VIP]: ^4%s ^1s-a conectat.", tag, name); 
		}
		return PLUGIN_HANDLED;
	}
	return PLUGIN_CONTINUE;
}

public out(id) 	
{	
	if(get_pcvar_num(cvar_vip_in_out))
	{
		new tag[32], name[32];

		get_pcvar_string(cvar_tag, tag, charsmax(tag)); 
		get_user_name(id, name, charsmax(name)); 

		if(get_user_flags(id) == read_flags( "t" ) && get_user_flags(id) == read_flags( "bcdefghijklmnt" ) ) 
		{ 
			ColorChat(0, GREEN, "^4%s ^1[VIP]: ^4%s ^1s-a deconectat.", tag, name); 
		}
		return PLUGIN_HANDLED;
	}
	return PLUGIN_CONTINUE;
}

public vip_info(id)
{
	show_motd(id, "/addons/amxmodx/configs/vip_info.html");
}

public mesaj_info()	
{
	new tag[32];
	get_pcvar_string(cvar_tag, tag, charsmax(tag));
	
	ColorChat(0, GREEN, "^4%s ^1Tastati in chat ^4/vip ^1pentru a vedea beneficiile si pretul vip-ului.", tag);
}

public TaskDisplayVips( )
{
	if(get_pcvar_num(cvar_vip_showH))
	{
		static iPlayers[ 32 ];
		static iPlayersNum;
	
		get_players( iPlayers, iPlayersNum, "ch" );
		if( !iPlayersNum )
			return 1;
	
		static iVipsConnected, szVipsNames[ 128 ], szName[ 32 ];
		formatex( szVipsNames, sizeof ( szVipsNames ) -1, "" ); // Is this needed ?
		iVipsConnected = 0;
	
		static id, i;
		for( i = 0; i < iPlayersNum; i++ )
		{
			id = iPlayers[ i ];
			if( get_user_flags( id ) == read_flags( "t" ) && get_user_flags(id) == read_flags( "bcdefghijklmnt" ) )
			{
				get_user_name( id, szName, sizeof ( szName ) -1 );
			
				add( szVipsNames, sizeof ( szVipsNames ) -1, szName );
				add( szVipsNames, sizeof ( szVipsNames ) -1, "^n" );
			
				iVipsConnected++;
			}
		}
	
		formatex( g_szMessage, sizeof ( g_szMessage ) -1, "%s ( %i )^n%s",
			g_szBeginning, iVipsConnected, szVipsNames );
		
		set_hudmessage( 25, 255, 25, 0.01, 0.25, 0, 0.0, 1.0, 0.1, 0.1, -1 );
		ShowSyncHudMsg( 0, SyncHudMessage, g_szMessage );
	}
	return PLUGIN_CONTINUE;
		
}

public handle_say(id) 
{
	new said[192];
	read_args(said,192);
	if(contain(said, "/vips") != -1)
	set_task(0.1,"print_adminlist",id);
	return PLUGIN_CONTINUE;
}

public print_adminlist(user) 
{
	if(get_pcvar_num(cvar_vip_showC))
	{
		new tag[32];
		get_pcvar_string(cvar_tag, tag, charsmax(tag));
	
		new adminnames[33][32];
		new message[256];
		new id, count, x, len;

		for(id = 1 ; id <= get_maxplayers() ; id++)
			if(is_user_connected(id))
				if(get_user_flags(id) == read_flags( "t" ) && get_user_flags(id) == read_flags( "bcdefghijklmnt" ) )
					get_user_name(id, adminnames[count++], charsmax(adminnames[ ]));
    
		len = format(message, 255, "^4%s ^1VIP-ii online sunt:^4 " ,tag);
		if(count > 0) 
			{
			for(x = 0 ; x < count ; x++) 
				{
				len += format(message[len], 255-len, "%s%s ", adminnames[x], x < (count-1) ? ", ":"");
				if(len > 96) 
				{
					print_message(user, message);
					len = format(message, 255, " ");
				}
				}
			print_message(user, message);
			}
		else 
		{
			ColorChat(0, GREEN, "^4%s ^1Nu sunt ^4VIP^1-i online.", tag);
		} 
	}
	return PLUGIN_CONTINUE;  
}

print_message(id, msg[]) 
{
	message_begin(MSG_ONE, get_user_msgid("SayText"), {0,0,0}, id);
	write_byte(id);
	write_string(msg);
	message_end();
}

public MessageScoreAttrib(iMsgID, iDest, iReceiver) 
{
    	new iPlayer = get_msg_arg_int(1);
    	if(is_user_connected( iPlayer )
    	&& (get_user_flags( iPlayer ) == read_flags( "t" ) && get_user_flags(iPlayer) == read_flags( "bcdefghijklmnt" ) ) )
		{
        		set_msg_arg_int(2, ARG_BYTE, is_user_alive(iPlayer) ? SCOREATTRIB_VIP : SCOREATTRIB_DEAD);
    		}
}

stock fm_find_ent_by_owner ( entity, const classname[], owner )
{
	while((entity = engfunc(EngFunc_FindEntityByString, entity, "classname", classname)) && pev(entity, pev_owner) != owner) {  }
	return entity;
}

stock bacon_strip_weapon(index, weapon[])
{
	if(!equal(weapon, "weapon_", 7)) 
		return PLUGIN_CONTINUE;

	static weaponid;
	weaponid = get_weaponid(weapon)
	
	if(!weaponid) 
		return PLUGIN_CONTINUE;

	static weaponent;
	weaponent = fm_find_ent_by_owner(-1, weapon, index);
	
	if(!weaponent)
		return PLUGIN_CONTINUE;

	if(get_user_weapon(index) == weaponid) 
		ExecuteHamB(Ham_Weapon_RetireWeapon, weaponent);

	if(!ExecuteHamB(Ham_RemovePlayerItem, index, weaponent)) 
		return PLUGIN_CONTINUE;
	
	ExecuteHamB(Ham_Item_Kill, weaponent);
	set_pev(index, pev_weapons, pev(index, pev_weapons) & ~(1<<weaponid));

	return PLUGIN_HANDLED;
}

/*
stock drop_weapons(id, dropwhat)
{
	static Weapons[32], Num, i, WeaponID;
	Num = 0;
	get_user_weapons(id, Weapons, Num);
	for(i = 0; i < Num; i ++)
	{
		WeaponID = Weapons[i];
		if((dropwhat == 1 && ((1 << WeaponID) & PRIMARY_WEAPONS_BIT_SUM)) || (dropwhat == 2 && ((1 << WeaponID) & SECONDARY_WEAPONS_BIT_SUM )))
		{
			static DropName[32], WeaponEntity;
			get_weaponname(WeaponID, DropName, charsmax(DropName));
			WeaponEntity = fm_find_ent_by_owner(-1, DropName, id);
			set_pev(WeaponEntity, pev_iuser1, cs_get_user_bpammo (id, WeaponID));
			engclient_cmd(id, "drop", DropName);
			cs_set_user_bpammo(id, WeaponID, 0);
		}
	}
}*/

Re: problema vip free

Posted: 06 Mar 2018, 19:20
by N.A.S.A.
nu functioneaza tot la fel....

nu primeste vip moderator-ul.