←  Problemy z pluginami

AMXX.pl: Support AMX Mod X i SourceMod

»

problem z pluginem blockweapons (blokada b...

  • +
  • -
ToTylkoKasia - zdjęcie ToTylkoKasia 11.10.2015

Mam problem z tym pluginem. Plugin normalnie działa ładnie blokuje bronie dla tt, tylko przez to są crashe serwera.

to z logów:

 

L 09/10/2015 - 22:55:12: [AMXX] Plugin file open error (plugin "block_weapons.amxx")
L 09/10/2015 - 22:55:12: Function "sayhandle" was not found

 

sma.gif  block_weapons.sma
amxx.gif  block_weapons.amxx

 

 

Odpowiedz

  • +
  • -
Misiaczek ;c - zdjęcie Misiaczek ;c 12.10.2015

może tak ? ;>

#include <amxmodx>
#include <cstrike>
#include <hamsandwich>

#define IsNoPlayer(%1) ( is_user_hltv( %1 ) || is_user_bot( %1 ) )

new bool:block[ 33 ];

stock const gszWeaponsNames[ ][ ] = {
	"weapon_scout", "weapon_mac10", "weapon_aug", "weapon_ump45", 
	"weapon_sg550", "weapon_galil", "weapon_famas", "weapon_awp", 
	"weapon_mp5navy", "weapon_m249", "weapon_m4a1", "weapon_tmp", 
	"weapon_g3sg1", "weapon_sg552", "weapon_ak47", "weapon_p90",
	"weapon_p228", "weapon_shield", "weapon_hegrenade", "weapon_xm1014",
	"weapon_smokegrenade", "weapon_elite", "weapon_fiveseven", "weapon_usp",
	"weapon_glock18", "weapon_flashbang", "weapon_deagle"
}

stock const gszBlockNames[ ][ ] = {
	"armoury_entity", "weapon_shield", "weaponbox"
}

public plugin_init() {
	
	register_plugin( "Block Weapons", "1.0.0", "Misiaczek ;c" );
	
	RegisterHam( Ham_Spawn, "player", "hamSpawn", 1 );
	
	for ( new i = 1; i < sizeof gszWeaponsNames; i++ ) {
		if ( gszWeaponsNames[ i ][ 0 ] ) {
			RegisterHam( Ham_Item_Deploy, gszWeaponsNames[ i ], "hamDeploy", 1 );
		}		
	}
	
	for ( new i = 1; i < sizeof gszBlockNames; i++ ) {
		if ( gszBlockNames[ i ][ 0 ] ) {
			RegisterHam( Ham_Touch, gszBlockNames[ i ], "hamTouch" );
		}
	}
}

public client_disconnect( id ) block[ id ] = false;

public hamSpawn( id ) {
	
	if( !is_user_alive( id ) || IsNoPlayer( id ))
		return HAM_IGNORED;
	
	if( cs_get_user_team( id ) == CS_TEAM_SPECTATOR  || cs_get_user_team( id ) == CS_TEAM_UNASSIGNED || cs_get_user_team( id ) ==  CS_TEAM_CT )
		return HAM_IGNORED;
		
	block[ id ] = true;
	
	return HAM_IGNORED;
}
		

public hamTouch( iEntity, id ) {
	
	if( block[ id ] )
		return HAM_SUPERCEDE;
	else
		return HAM_IGNORED;
		
	return HAM_IGNORED;
}

public hamDeploy( iEntity ) {
	
	new id = get_pdata_cbase( iEntity, 41, 4 );

	if( block[ id ] )
		engclient_cmd( id, "weapon_knife" );
	else
		return HAM_IGNORED;	
		
	return HAM_IGNORED;
}
Odpowiedz