UWAGA
W związku z upgrade'em Forum Wiaderko do vB 4.x ewentualne błędy i nieprawidłowości proszę zgłaszać w tym temacie
Serwery Counter Strike 1.6 wiaderko.com

HashJama [TP] 193.33.176.148:27015 status serwera HashJama [TP] połącz

HashJama [FFA] 193.33.176.188:27015status serwera HashJama [FFA] połącz

HashJama [DM] 193.33.176.53:27015status serwera HashJama [DM] połącz

HashJama [Aim Hs] 193.33.176.15:27015status serwera HashJama [Aim Hs] połącz

HashJama [Flags] 193.33.176.111:27015status serwera HashJama  [Flags] połącz

HashJama [AWP/HG DM] 193.33.176.50:27015status serwera HashJama [AWP/HG DM] 193.33.176.50:27015 połącz

HashJama [TP #2] 193.33.176.54:27015status serwera HashJama [TP #2] 193.33.176.54:27015 połącz

wiaderko.com [Ventrilo] v1.svoice.pl:6416status serwera wiaderko.com [Ventrilo]

SPONSOR:
pukawka.pl

Wątek: Usunięcie Fake Bota

Pokaż wyniki od 1 do 4 z 4
  1. #1 Usunięcie Fake Bota 
    Tata Neo i Taza Awatar bluSkay.aka
    Dołączył
    Apr 2008
    Posty
    4,348
    Kod:
    /***
     * Link to the plugin
     *
     *	http://forums.alliedmods.net/showthread.php?t=78197
     */
    
    #include < amxmodx >
    #include < engine >
    #include < cstrike >
    #include < fun >
    #include < fakemeta >
    #include < hamsandwich >
    
    #pragma semicolon 1
    
    // Comment this line if you do not want to have fake player !
    #define FAKE_PLAYER
    
    // Bot name
    #if defined FAKE_PLAYER
    	new const g_szBotName[ ] = "DRM Fake Player";
    #endif
    
    // Messages prefix
    new const g_szPrefix[ ] = "[ Deathrun ]";
    
    // Global Variables
    new bool:g_bHauntedHouse, bool:g_bGamerFun, bool:g_bRandromized, bool:g_bStarting, bool:g_bFirstRound;
    new bool:g_bEnabled, bool:g_bRestart, bool:g_bConnected[ 33 ];
    
    new g_pRemoveBuyZone, g_pHideHuds, g_pBlockMoney, g_pLifeSystem, g_pSvRestart, g_pAutoBalance, g_pLimitTeams;
    new g_pNoFallDmg, g_pGameName, g_pToggle, g_pBlockSpray, g_pBlockRadio, g_pSemiclip, g_pGiveUsp, g_pBlockKill;
    
    new g_iMsgHideWeapon, g_iMsgCrosshair, g_iMsgMoney, g_iMsgTeamInfo, g_iMsgSayText;
    new g_iMaxplayers, g_iHudSync, g_iHudSync2, g_iLastTerr, g_iThinker;
    new g_iSemiClip[ 33 ], g_Lifes[ 33 ];
    
    #if defined FAKE_PLAYER
    	new g_iFakeplayer;
    #endif
    
    // Macros
    #if cellbits == 32
    	#define OFFSET_BZ 235
    #else
    	#define OFFSET_BZ 268
    #endif
    
    // Colorchat
    enum Color {
    	NORMAL = 1,
    	GREEN,
    	RED,
    	BLUE
    };
    
    new TeamName[ ][ ] = {
    	"",
    	"TERRORIST",
    	"CT",
    	"SPECTATOR"
    };
    
    // =======================================================================================
    
    public plugin_init( ) {
    	register_plugin( "Deathrun Manager", "3.0.2", "xPaw" );
    	
    	g_pToggle        = register_cvar( "deathrun_toggle",     "1" );
    	g_pBlockSpray    = register_cvar( "deathrun_spray",      "1" );
    	g_pBlockRadio    = register_cvar( "deathrun_radio",      "1" );
    	g_pBlockKill     = register_cvar( "deathrun_blockkill",  "1" );
    	g_pBlockMoney    = register_cvar( "deathrun_blockmoney", "1" );
    	g_pSemiclip      = register_cvar( "deathrun_semiclip",   "1" );
    	g_pGiveUsp       = register_cvar( "deathrun_giveusp",    "1" );
    	g_pHideHuds      = register_cvar( "deathrun_hidehud",    "1" );
    	g_pLifeSystem    = register_cvar( "deathrun_lifesystem", "1" );
    	g_pGameName      = register_cvar( "deathrun_gamename",   "1" );
    	g_pNoFallDmg     = register_cvar( "deathrun_terrnfd",    "1" );
    	g_pRemoveBuyZone = register_cvar( "deathrun_removebz",   "1" );
    	
    	// Lets get map name...
    	new szMapName[ 64 ];
    	get_mapname( szMapName, 63 );
    	
    	if( contain( szMapName, "deathrun_" ) != -1 ) {
    		set_pcvar_num( g_pToggle, 1 );
    		
    		if( contain( szMapName, "hauntedhouse" ) != -1 )
    			g_bHauntedHouse = true;
    		else {
    			g_bHauntedHouse = false;
    			
    			if( equal( szMapName, "deathrun_gamerfun" ) )
    				g_bGamerFun = true;
    			else
    				g_bGamerFun = false;
    		}
    	} else
    		set_pcvar_num( g_pToggle, 0 );
    	
    	g_pSvRestart   = get_cvar_pointer( "sv_restart" );
    	g_pAutoBalance = get_cvar_pointer( "mp_autoteambalance" );
    	g_pLimitTeams  = get_cvar_pointer( "mp_limitteams" );
    	
    	register_cvar( "deathrun_version", "3.0.2", FCVAR_SERVER | FCVAR_SPONLY );
    	set_cvar_string( "deathrun_version", "3.0.2" );
    	
    	// Registering Language file
    	register_dictionary( "deathrun.txt" );
    	
    	// Logging Events
    	register_logevent( "EventRoundStart", 2, "1=Round_Start" );
    	register_logevent( "EventRandromize", 2, "1=Round_End" );
    	register_event( "SendAudio", "EventTerrsWin",   "a", "2&%!MRAD_terwin" );
    	register_event( "TextMsg",	 "EventRandromize", "a", "2&#Game_w" );
    	register_event( "DeathMsg",	 "EventDeath",      "a");
    	register_event( "Money",	 "EventMoney",      "b" );
    	register_event( "ResetHUD",	 "EventResetHud",   "be" );
    	
    	g_bFirstRound    = true;
    	g_iMaxplayers    = get_maxplayers( );
    	g_iMsgHideWeapon = get_user_msgid( "HideWeapon" );
    	g_iMsgCrosshair  = get_user_msgid( "Crosshair" );
    	g_iMsgMoney      = get_user_msgid( "Money" );
    	g_iMsgSayText    = get_user_msgid( "SayText" );
    	g_iMsgTeamInfo   = get_user_msgid( "TeamInfo" );
    	
    	g_iHudSync       = CreateHudSyncObj( );
    	g_iHudSync2      = CreateHudSyncObj( );
    	
    	if( get_pcvar_num( g_pToggle ) ) {
    		RegisterHam( Ham_TakeDamage, "player", "FwdHamPlayerDamage" );
    		RegisterHam( Ham_Spawn,      "player", "FwdHamPlayerSpawn", 1 );
    		register_forward( FM_ClientKill,       "FwdClientKill" );
    		register_impulse( 201, "FwdImpulse_201" );
    		
    		if( get_pcvar_num( g_pGameName ) )
    			register_forward( FM_GetGameDescription, "FwdGameDesc" );
    		
    		register_clcmd( "say /lifes", "CmdShowlifes" );
    		register_clcmd( "say /lives", "CmdShowlifes" );
    		
    		register_clcmd( "radio1", "CmdRadio" );
    		register_clcmd( "radio2", "CmdRadio" );
    		register_clcmd( "radio3", "CmdRadio" );
    		
    		// Terrorist Check
    		g_iThinker= create_entity( "info_target" );
    		
    		if( is_valid_ent( g_iThinker ) ) {
    			entity_set_string( g_iThinker, EV_SZ_classname, "DeathrunThinker" );
    			entity_set_float( g_iThinker, EV_FL_nextthink, get_gametime( ) + 20.0 );
    			
    			g_bRestart = true;
    			
    			// First think will happen in 20.0, Restart will be done there.
    			
    			register_think( "DeathrunThinker", "FwdThinker" );
    		} else {
    			set_task( 15.0, "CheckTerrorists", _, _, _, "b" );
    			
    			// Lets make restart after 20 seconds from map start.
    			set_task( 20.0, "RestartRound" );
    		}
    		
    		if( get_pcvar_num( g_pRemoveBuyZone ) ) {
    			register_message( get_user_msgid( "StatusIcon" ), "MsgStatusIcon" ); // BuyZone Icon
    			
    			// Remove buyzone on map
    			remove_entity_name( "info_map_parameters" );
    			remove_entity_name( "func_buyzone" );
    			
    			// Create own entity to block buying
    			new iEntity = create_entity( "info_map_parameters" );
    			
    			DispatchKeyValue( iEntity, "buying", "3" );
    			DispatchSpawn( iEntity );
    		}
    		
    		if( get_pcvar_num( g_pSemiclip ) ) {
    			register_forward( FM_StartFrame,	"FwdStartFrame", 0 );
    			register_forward( FM_AddToFullPack,	"FwdFullPack",   1 );
    		}
    		
    		g_bEnabled = true;
    		
    	#if defined FAKE_PLAYER
    		new iEntity, iCount;
    		
    		while( ( iEntity = find_ent_by_class( iEntity, "info_player_deathmatch" ) ) > 0 )
    			if( iCount++ > 1 )
    				break;
    		
    		if( iCount <= 1 )
    			g_iFakeplayer = -1;
    		
    		set_task( 5.0, "UpdateBot" );
    		
    		register_message( get_user_msgid( "DeathMsg" ), "MsgDeathMsg" );
    	#endif
    	} else
    		g_bEnabled = false;
    }
    
    // FAKEPLAYER
    ///////////////////////////////////////////
    #if defined FAKE_PLAYER
    	public UpdateBot( ) {
    		if( g_iFakeplayer == -1 )
    			return;
    		
    		new id = find_player( "i" );
    		
    		if( !id ) {
    			id = engfunc( EngFunc_CreateFakeClient, g_szBotName );
    			if( pev_valid( id ) ) {
    				engfunc( EngFunc_FreeEntPrivateData, id );
    				dllfunc( MetaFunc_CallGameEntity, "player", id );
    				set_user_info( id, "rate", "3500" );
    				set_user_info( id, "cl_updaterate", "25" );
    				set_user_info( id, "cl_lw", "1" );
    				set_user_info( id, "cl_lc", "1" );
    				set_user_info( id, "cl_dlmax", "128" );
    				set_user_info( id, "cl_righthand", "1" );
    				set_user_info( id, "_vgui_menus", "0" );
    				set_user_info( id, "_ah", "0" );
    				set_user_info( id, "dm", "0" );
    				set_user_info( id, "tracker", "0" );
    				set_user_info( id, "friends", "0" );
    				set_user_info( id, "*bot", "1" );
    				set_pev( id, pev_flags, pev( id, pev_flags ) | FL_FAKECLIENT );
    				set_pev( id, pev_colormap, id );
    				
    				new szMsg[ 128 ];
    				dllfunc( DLLFunc_ClientConnect, id, g_szBotName, "127.0.0.1", szMsg );
    				dllfunc( DLLFunc_ClientPutInServer, id );
    				
    				cs_set_user_team( id, CS_TEAM_T );
    				ExecuteHamB( Ham_CS_RoundRespawn, id );
    				
    				set_pev( id, pev_effects, pev( id, pev_effects ) | EF_NODRAW );
    				set_pev( id, pev_solid, SOLID_NOT );
    				dllfunc( DLLFunc_Think, id );
    				
    				g_iFakeplayer = id;
    			}
    		}
    	}
    	
    	public MsgDeathMsg( const iMsgId, const iMsgDest, const id ) {
    		if( get_msg_arg_int( 2 ) == g_iFakeplayer )
    			return PLUGIN_HANDLED;
    		
    		return PLUGIN_CONTINUE;
    	}
    #endif
    
    // NEW TERRORIST
    ///////////////////////////////////////////
    public EventRandromize( ) {
    	if( !g_bEnabled || g_bFirstRound || g_bRandromized )
    		return PLUGIN_CONTINUE;
    	
    	g_bRandromized = true;
    	
    	new i, iPlayers[ 32 ], iNum, iPlayer;
    	get_players( iPlayers, iNum, "c" );
    	
    	if( iNum <= 1 )
    		return PLUGIN_CONTINUE;
    	
    	for( i = 0; i < iNum; i++ ) {
    		iPlayer = iPlayers[ i ];
    		
    		if( cs_get_user_team( iPlayer ) == CS_TEAM_T )
    			cs_set_user_team( iPlayer, CS_TEAM_CT );
    	}
    	
    	new iRandomPlayer, CsTeams:iTeam;
    	
    	while( ( iRandomPlayer = iPlayers[ random_num( 0, iNum - 1 ) ] ) == g_iLastTerr ) { }
    	
    	g_iLastTerr = iRandomPlayer;
    	
    	iTeam = cs_get_user_team( iRandomPlayer );
    	
    	if( iTeam == CS_TEAM_T || iTeam == CS_TEAM_CT ) {
    		cs_set_user_team(iRandomPlayer, CS_TEAM_T);
    		
    		new szName[ 32 ];
    		get_user_name( iRandomPlayer, szName, 31 );
    		
    		for( i = 0; i < iNum; i++ )
    			ColorChat(iPlayers[ i ], RED, "%s^4 %L", g_szPrefix, iPlayers[ i ], "DR_NOW_TERR", szName);
    		
    		if( !g_bRestart && is_valid_ent( g_iThinker ) )
    			entity_set_float( g_iThinker, EV_FL_nextthink, get_gametime( ) + 15.0 );
    	} else {
    		g_bRandromized = false;
    		EventRandromize( );
    	}
    	
    	return PLUGIN_CONTINUE;
    }
    
    // NEW ROUND
    ///////////////////////////////////////////
    public EventRoundStart( ) {
    	if( !g_bEnabled )
    		return PLUGIN_CONTINUE;
    	
    	g_bRandromized	= false;
    	g_bStarting	= false;
    	
    	new i, iPlayers[ 32 ], iNum, iRealPlayers, CsTeams:iTeam;
    	get_players( iPlayers, iNum, "c" );
    	
    	if( iNum <= 1 )
    		return PLUGIN_CONTINUE;
    	
    	for( i = 0; i < iNum; i++ ) {
    		iTeam = cs_get_user_team( iPlayers[ i ] );
    		
    		if( iTeam == CS_TEAM_T || iTeam == CS_TEAM_CT )
    			iRealPlayers++;
    	}
    	
    	if( iRealPlayers <= 1 ) {
    		set_hudmessage( 0, 128, 0, -1.0, 0.1, 0, 4.0, 4.0, 0.5, 0.5, 4 );
    		
    		for( i = 0; i < iNum; i++ )
    			ShowSyncHudMsg( iPlayers[ i ], g_iHudSync, "%L", iPlayers[ i ], "DR_NOT_ENOUGH" );
    		
    		return PLUGIN_CONTINUE;
    	}
    	
    	set_pcvar_num( g_pAutoBalance, 0 );
    	set_pcvar_num( g_pLimitTeams, 0 );
    	
    	if( g_bFirstRound ) {
    		set_hudmessage( 0, 128, 0, -1.0, 0.1, 0, 4.0, 4.0, 0.5, 0.5, 4 );
    		
    		for( i = 0; i < iNum; i++ ) {
    			ShowSyncHudMsg( iPlayers[ i ], g_iHudSync, "%L", iPlayers[ i ], "DR_STARTING" );
    			
    			ColorChat( iPlayers[ i ], RED, "%s^1 %L", g_szPrefix, iPlayers[ i ], "DR_STARTING_CC" );
    		}
    		
    		if( is_valid_ent( g_iThinker ) ) {
    			g_bRestart = true;
    			
    			entity_set_float( g_iThinker, EV_FL_nextthink, get_gametime( ) + 9.0 );
    		} else
    			set_task( 9.0, "RestartRound" );
    		
    		g_bStarting = true;
    		g_bFirstRound = false;
    	}
    	
    	return PLUGIN_CONTINUE;
    }
    
    // CHECK TERRORIST
    ///////////////////////////////////////////
    public FwdThinker( iEntity ) {
    	if( g_bRestart ) {
    		g_bRestart = false;
    		
    		RestartRound( );
    	} else
    		CheckTerrorists( );
    	
    	entity_set_float( iEntity, EV_FL_nextthink, get_gametime( ) + 15.0 );
    }
    
    public CheckTerrorists( ) {
    	if( !g_bEnabled || g_bFirstRound || g_bStarting )
    		return PLUGIN_CONTINUE;
    	
    	new i, iPlayers[ 32 ], iTerrors, iNum, iRealPlayers, CsTeams:iTeam;
    	get_players( iPlayers, iNum, "c" );
    	
    	if( iNum <= 1 )
    		return PLUGIN_CONTINUE;
    	
    	for( i = 0; i < iNum; i++ ) {
    		iTeam = cs_get_user_team( iPlayers[ i ] );
    		
    		if( iTeam == CS_TEAM_T )
    			iTerrors++;
    		
    		if( iTeam == CS_TEAM_T || iTeam == CS_TEAM_CT )
    			iRealPlayers++;
    	}
    	
    	if( iRealPlayers <= 1 ) {
    		set_hudmessage( 0, 128, 0, -1.0, 0.1, 0, 4.0, 4.0, 0.5, 0.5, 4 );
    		
    		for( i = 0; i < iNum; i++ )
    			ShowSyncHudMsg( iPlayers[ i ], g_iHudSync, "%L", iPlayers[ i ], "DR_NOT_ENOUGH" );
    		
    		return PLUGIN_CONTINUE;
    	}
    	
    	if( iTerrors == 0 ) {
    		for( i = 0; i < iNum; i++ ) {
    			ColorChat(iPlayers[ i ], RED, "%s^1 %L", g_szPrefix, iPlayers[ i ], "DR_NO_DETECT");
    			
    			if( is_user_alive( iPlayers[ i ] ) && cs_get_user_team( iPlayers[ i ] ) == CS_TEAM_CT )
    				user_silentkill( iPlayers[ i ] );
    		}
    		
    		set_task( 0.5, "EventRandromize" );
    	}
    	
    	return PLUGIN_CONTINUE;
    }
    
    // LIFE SYSTEM
    ///////////////////////////////////////////
    public EventTerrsWin( ) {
    	if( !g_bEnabled || g_bFirstRound )
    		return PLUGIN_CONTINUE;
    	
    	new iPlayers[ 32 ], iNum, iPlayer;
    	get_players( iPlayers, iNum, "c" );
    	
    	if( iNum <= 1 )
    		return PLUGIN_CONTINUE;
    	
    	new iLifeCvar = get_pcvar_num( g_pLifeSystem );
    	
    	for( new i = 0; i < iNum; i++ ) {
    		iPlayer = iPlayers[ i ];
    		
    		if( cs_get_user_team( iPlayer ) == CS_TEAM_T ) {
    			set_user_frags( iPlayer, get_user_frags( iPlayer ) + 3 );
    			
    			if( iLifeCvar == 2 )
    				g_Lifes[ iPlayer ]++;
    		}
    	}
    	
    	return PLUGIN_CONTINUE;
    }
    
    public EventDeath( ) {
    #if defined FAKE_PLAYER
    	if( !g_bEnabled )
    		return PLUGIN_CONTINUE;
    	
    	new iVictim = read_data( 2 );
    	new iTeam = get_user_team( iVictim );
    	
    	if( iTeam == 1 && is_user_alive( g_iFakeplayer ) )
    		fakedamage( g_iFakeplayer, "worldspawn", 100.0, DMG_GENERIC );
    	
    	if( !get_pcvar_num( g_pLifeSystem ) )
    		return PLUGIN_CONTINUE;
    #else
    	if( !g_bEnabled || get_pcvar_num( g_pLifeSystem ) )
    		return PLUGIN_CONTINUE;
    	
    	new iVictim = read_data( 2 );
    	new iTeam = get_user_team( iVictim );
    #endif
    	
    	new iKiller = read_data( 1 );
    	
    	if( iKiller != iVictim && get_user_team(iKiller) != iTeam )
    		g_Lifes[iKiller]++;
    	
    	if( cs_get_user_team( iVictim ) == CS_TEAM_CT && g_Lifes[ iVictim ] > 0 ) {
    		new iCTcount;
    		for( new i = 1; i <= g_iMaxplayers; i++ ) {
    			if( is_user_alive( i ) && cs_get_user_team( i ) == CS_TEAM_CT )
    				iCTcount++;
    		}
    		
    		if( iCTcount > 1 ) {
    			set_task(3.2, "fnRevivePlayer", iVictim);
    			
    			ColorChat( iVictim, RED, "%s^1 %L", g_szPrefix, iVictim, "DR_LIFE_RESPAWN" );
    		}
    		/*else
    			ColorChat( iVictim, RED, "%s^1 %L", g_szPrefix, iVictim, "DR_LIFE_CANT" );*/
    	}
    	
    	return PLUGIN_CONTINUE;
    }
    
    public fnRevivePlayer( id ) {
    	if( g_bConnected[ id ] ) {
    		if( cs_get_user_team( id ) == CS_TEAM_CT ) {
    			new iCTcount;
    			for( new i = 1; i <= g_iMaxplayers; i++ )
    				if( is_user_alive( i ) && cs_get_user_team( i ) == CS_TEAM_CT )
    					iCTcount++;
    			
    			if( iCTcount > 1 ) {
    				ExecuteHamB( Ham_CS_RoundRespawn, id );
    				
    				g_Lifes[ id ]--;
    			}
    		}
    	}
    }
    
    public CmdShowlifes( id ) {
    	if( get_pcvar_num( g_pLifeSystem ) == 0 ) {
    		ColorChat( id, RED, "%s^1 %L", g_szPrefix, id, "DR_LIFE_DISABLE" );
    		return PLUGIN_HANDLED;
    	}
    	
    	if( g_Lifes[ id ] > 0 )
    		ColorChat( id, RED, "%s^1 %L", g_szPrefix, id, "DR_LIFE_CC_COUNT", g_Lifes[ id ] );
    	else
    		ColorChat( id, RED, "%s^1 %L", g_szPrefix, id, "DR_LIFE_CC_NO" );
    	
    	return PLUGIN_HANDLED;
    }
    
    public Showlifes( id ) {
    	set_hudmessage( 0, 128, 0, 0.04, 0.71, 0, 2.5, 2.5, 0.5, 0.5, 3 );
    	
    	if( g_Lifes[ id ] > 0 )
    		ShowSyncHudMsg( id, g_iHudSync2, "%L", id, "DR_LIFE_COUNT", g_Lifes[ id ] );
    	else
    		ShowSyncHudMsg( id, g_iHudSync2, "%L", id, "DR_LIFE_NO" );
    }
    
    // EVENTS
    ///////////////////////////////////////////
    public EventResetHud( id ) {
    	if( g_bEnabled && get_pcvar_num( g_pHideHuds ) && !is_user_bot( id ) ) {
    		message_begin( MSG_ONE_UNRELIABLE, g_iMsgHideWeapon, _, id );
    		write_byte( ( 1<<4 | 1<<5 ) );
    		message_end( );
    		
    		message_begin( MSG_ONE_UNRELIABLE, g_iMsgCrosshair, _, id );
    		write_byte( 0 );
    		message_end( );
    	}
    }
    
    public EventMoney( id ) {
    	if( g_bEnabled && get_pcvar_num( g_pBlockMoney ) ) {
    		set_pdata_int( id, 115, 0 );
    		
    		message_begin( MSG_ONE_UNRELIABLE, g_iMsgMoney, _, id );
    		write_long ( 0 );
    		write_byte ( 1 );
    		message_end( );
    	}
    }
    
    public client_putinserver( id )
    	g_bConnected[ id ] = true;
    
    public client_disconnect( id ) {
    	g_bConnected[ id ] = false;
    	CheckTerrorists( );
    	
    	if( !g_bRestart && is_valid_ent( g_iThinker ) )
    		entity_set_float( g_iThinker, EV_FL_nextthink, get_gametime( ) + 15.0 );
    	
    #if defined FAKE_PLAYER
    	if( g_iFakeplayer == id ) {
    		set_task( 1.5, "UpdateBot" );
    		
    		g_iFakeplayer = 0;
    	}
    #endif
    }
    
    // SEMICLIP
    ///////////////////////////////////////////
    public FwdFullPack( es, e, ent, host, flags, player, pSet ) {
    	if( !g_bEnabled )
    		return FMRES_IGNORED;
    	
    	if( player && g_iSemiClip[ ent ] && g_iSemiClip[ host ] ) {
    		set_es( es, ES_Solid, SOLID_NOT );
    		set_es( es, ES_RenderMode, kRenderTransAlpha );
    		set_es( es, ES_RenderAmt, 85 );
    	}
    	
    	return FMRES_IGNORED;
    }
    
    public FwdStartFrame( ) {
    	if( !g_bEnabled )
    		return FMRES_IGNORED;
    	
    	static iPlayers[ 32 ], iNum, iPlayer, iPlayer2, i, j;
    	get_players( iPlayers, iNum, "ache", "CT" );
    	
    	arrayset( g_iSemiClip, 0, 32 );
    	
    	if( iNum <= 1 )
    		return FMRES_IGNORED;
    	
    	for( i = 0; i < iNum; i++ ) {
    		iPlayer = iPlayers[ i ];
    		
    	//	if( g_iSemiClip[ iPlayer ] )
    	//		continue;
    		
    		for( j = 0; j < iNum; j++ ) {
    			iPlayer2 = iPlayers[ j ];
    			
    			if( iPlayer == iPlayer2 )
    				continue;
    			
    		//	if( g_iSemiClip[ iPlayer2 ] )
    		//		continue;
    			
    			if( entity_range( iPlayer, iPlayer2 ) < 128 ) {
    				g_iSemiClip[ iPlayer ]	= true;
    				g_iSemiClip[ iPlayer2 ]	= true;
    			}
    		}
    	}
    	
    	for( i = 0; i < iNum; i++ ) {
    		iPlayer = iPlayers[ i ];
    		
    		set_pev( iPlayer, pev_solid, g_iSemiClip[ iPlayer ] ? SOLID_NOT : SOLID_SLIDEBOX );
    	}
    	
    	return FMRES_IGNORED;
    }
    
    // FORWARDS
    ///////////////////////////////////////////
    public FwdHamPlayerSpawn( id ) {
    	if( !g_bEnabled || !is_user_alive( id ) )
    		return HAM_IGNORED;
    	
    	if( get_pcvar_num( g_pBlockRadio ) ) // thanks to ConnorMcLeod for this good way :)
    		set_pdata_int( id, 192, 0 );
    	
    #if defined FAKE_PLAYER
    	if( g_iFakeplayer == id ) {
    		set_pev( id, pev_frags, -1000.0 );
    		cs_set_user_deaths( id, -1000 );
    		
    		set_pev( id, pev_effects, pev( id, pev_effects ) | EF_NODRAW );
    		set_pev( id, pev_solid, SOLID_NOT );
    		entity_set_origin( id, Float:{ 999999.0, 999999.0, 999999.0 } );
    		dllfunc( DLLFunc_Think, id );
    	} else {
    #endif
    		new CsTeams:iTeam = cs_get_user_team( id );
    		
    		// An small delay for message
    		if( get_pcvar_num( g_pLifeSystem ) != 0 && iTeam == CS_TEAM_CT )
    			set_task( 0.8, "Showlifes", id );
    		
    		strip_user_weapons( id );
    		give_item( id, "weapon_knife" );
    		
    		set_pdata_int( id, 116, 0 ); // Pickup fix by ConnorMcLeod
    		
    		if( g_bGamerFun && iTeam == CS_TEAM_CT )
    			give_item( id, "weapon_smokegrenade" );
    		
    		if( get_pcvar_num( g_pGiveUsp ) && iTeam == CS_TEAM_CT && !g_bHauntedHouse )
    			set_task( 1.0, "GiveUsp", id );
    
    #if defined FAKE_PLAYER
    	}
    #endif
    	
    	return HAM_IGNORED;
    }
    
    public GiveUsp( const id ) {
    	if( is_user_alive( id ) ) {
    		give_item( id, "weapon_usp" );
    		cs_set_user_bpammo( id, CSW_USP, 100 );
    	}
    }
    
    public FwdGameDesc( ) {
    	static const GameName[ ] = "Deathrun v3.0";
    	
    	forward_return( FMV_STRING, GameName );
    	
    	return FMRES_SUPERCEDE;
    }
    
    public FwdClientKill( const id ) {
    	if( !g_bEnabled || !is_user_alive(id) )
    		return FMRES_IGNORED;
    	
    	if( get_pcvar_num( g_pBlockKill ) || cs_get_user_team( id ) == CS_TEAM_T ) {
    		client_print( id, print_center, "%L", id, "DR_BLOCK_KILL" );
    		client_print( id, print_console, "%L", id, "DR_BLOCK_KILL" );
    		
    		return FMRES_SUPERCEDE;
    	}
    	
    	return FMRES_IGNORED;
    }
    
    public FwdImpulse_201( const id ) {
    	if( g_bEnabled && get_pcvar_num( g_pBlockSpray ) ) {
    		if( is_user_alive( id ) )
    			client_print( id, print_center, "%L", id, "DR_BLOCK_SPRAY" );
    		
    		return PLUGIN_HANDLED_MAIN;
    	}
    	
    	return PLUGIN_CONTINUE;
    }
    
    public FwdHamPlayerDamage( id, idInflictor, idAttacker, Float:flDamage, iDamageBits ) {
    	if( get_pcvar_num( g_pNoFallDmg ) )
    		if( iDamageBits & DMG_FALL )
    			if( get_user_team( id ) == 1 )
    				return HAM_SUPERCEDE;
    	
    	return HAM_IGNORED;
    }
    
    public MsgStatusIcon( msg_id, msg_dest, id ) {
    	new szIcon[ 8 ];
    	get_msg_arg_string( 2, szIcon, 7 );
    	
    	static const BuyZone[ ] = "buyzone";
    	
    	if( equal( szIcon, BuyZone ) ) {
    		set_pdata_int( id, OFFSET_BZ, get_pdata_int( id, OFFSET_BZ, 5 ) & ~( 1 << 0 ), 5 );
    		
    		return PLUGIN_HANDLED;
    	}
    	
    	return PLUGIN_CONTINUE;
    }
    
    public CmdRadio( id ) {
    	if( get_pcvar_num( g_pBlockRadio ) )
    		return PLUGIN_HANDLED_MAIN;
    	
    	return PLUGIN_CONTINUE;
    }
    
    public RestartRound( )
    	set_pcvar_num( g_pSvRestart, 1 );
    
    // COLORCHAT
    /////////////////////////////////////////////
    ColorChat( id, Color:type, const szMessage[], {Float,Sql,Result,_}:... ) {
    	if( !get_playersnum( ) ) return;
    	
    	new message[ 256 ];
    	
    	switch( type ) {
    		case NORMAL: message[0] = 0x01;
    		case GREEN: message[0] = 0x04;
    		default: message[0] = 0x03;
    	}
    	
    	vformat( message[ 1 ], 251, szMessage, 4 );
    	
    	message[ 192 ] = '^0';
    	
    	replace_all( message, 191, "\YEL", "^1" );
    	replace_all( message, 191, "\GRN", "^4" );
    	replace_all( message, 191, "\TEM", "^3" );
    	
    	new iTeam, ColorChange, index, MSG_Type;
    	
    	if( id ) {
    		MSG_Type = MSG_ONE_UNRELIABLE;
    		index = id;
    	} else {
    		index = CC_FindPlayer();
    		MSG_Type = MSG_BROADCAST;
    	}
    	
    	iTeam = get_user_team( index );
    	ColorChange = CC_ColorSelection(index, MSG_Type, type);
    
    	CC_ShowColorMessage(index, MSG_Type, message);
    	
    	if( ColorChange )
    		CC_Team_Info(index, MSG_Type, TeamName[iTeam]);
    }
    
    CC_ShowColorMessage( id, type, message[] ) {
    	message_begin( type, g_iMsgSayText, _, id );
    	write_byte( id );	
    	write_string( message );
    	message_end( );	
    }
    
    CC_Team_Info( id, type, team[] ) {
    	message_begin( type, g_iMsgTeamInfo, _, id );
    	write_byte( id );
    	write_string( team );
    	message_end( );
    	
    	return 1;
    }
    
    CC_ColorSelection( index, type, Color:Type ) {
    	switch( Type ) {
    		case RED: return CC_Team_Info( index, type, TeamName[ 1 ] );
    		case BLUE: return CC_Team_Info( index, type, TeamName[ 2 ] );
    	}
    	
    	return 0;
    }
    
    CC_FindPlayer( ) {
    	for( new i = 1; i <= g_iMaxplayers; i++ )
    		if( g_bConnected[ i ] )
    			return i;
    	
    	return -1;
    }
    W 17 linijce postawiłem // na różne sposoby, ale występuje błąd podczas kompilacji,
    error 026: no matching "#if . . . "
    A chce tego bota usunąc xd
     

  2. #2 Odp: Usunięcie Fake Bota 
    Adminus pospolitus
    Dołączył
    Jan 2008
    Wiek
    20
    Posty
    9,226
    zamiast
    #define FAKE_PLAYER
    daj
    //#define FAKE_PLAYER
    Najlepszy hosting www tutaj
    Konfiguracja amxx, instalacja pluginów, pisanie pluginów AMXX. Więcej info na www.naven.com.pl
    Jebać steama.
     

  3. #3 Odp: Usunięcie Fake Bota 
    Tata Neo i Taza Awatar bluSkay.aka
    Dołączył
    Apr 2008
    Posty
    4,348
    Dawałem i błąd przy kompilacji :x
     

  4. #4 Odp: Usunięcie Fake Bota 
    Adminus pospolitus
    Dołączył
    Jan 2008
    Wiek
    20
    Posty
    9,226
    Hmm...
    Kod php:
    /***
     * Link to the plugin
     *
     *    http://forums.alliedmods.net/showthread.php?t=78197
     */

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

    #pragma semicolon 1

    // Comment this line if you do not want to have fake player !
    //#define FAKE_PLAYER

    // Bot name
    #if defined FAKE_PLAYER
        
    new const g_szBotName[ ] = "DRM Fake Player";
    #endif

    // Messages prefix
    new const g_szPrefix[ ] = "[ Deathrun ]";

    // Global Variables
    new bool:g_bHauntedHousebool:g_bGamerFunbool:g_bRandromizedbool:g_bStartingbool:g_bFirstRound;
    new 
    bool:g_bEnabledbool:g_bRestartbool:g_bConnected33 ];

    new 
    g_pRemoveBuyZoneg_pHideHudsg_pBlockMoneyg_pLifeSystemg_pSvRestartg_pAutoBalanceg_pLimitTeams;
    new 
    g_pNoFallDmgg_pGameNameg_pToggleg_pBlockSprayg_pBlockRadiog_pSemiclipg_pGiveUspg_pBlockKill;

    new 
    g_iMsgHideWeapong_iMsgCrosshairg_iMsgMoneyg_iMsgTeamInfog_iMsgSayText;
    new 
    g_iMaxplayersg_iHudSyncg_iHudSync2g_iLastTerrg_iThinker;
    new 
    g_iSemiClip33 ], g_Lifes33 ];

    #if defined FAKE_PLAYER
        
    new g_iFakeplayer;
    #endif

    // Macros
    #if cellbits == 32
        #define OFFSET_BZ 235
    #else
        #define OFFSET_BZ 268
    #endif

    // Colorchat
    enum Color {
        
    NORMAL 1,
        
    GREEN,
        
    RED,
        
    BLUE
    };

    new 
    TeamName[ ][ ] = {
        
    "",
        
    "TERRORIST",
        
    "CT",
        
    "SPECTATOR"
    };

    // =======================================================================================

    public plugin_init( ) {
        
    register_plugin"Deathrun Manager""3.0.2""xPaw" );
        
        
    g_pToggle        register_cvar"deathrun_toggle",     "1" );
        
    g_pBlockSpray    register_cvar"deathrun_spray",      "1" );
        
    g_pBlockRadio    register_cvar"deathrun_radio",      "1" );
        
    g_pBlockKill     register_cvar"deathrun_blockkill",  "1" );
        
    g_pBlockMoney    register_cvar"deathrun_blockmoney""1" );
        
    g_pSemiclip      register_cvar"deathrun_semiclip",   "1" );
        
    g_pGiveUsp       register_cvar"deathrun_giveusp",    "1" );
        
    g_pHideHuds      register_cvar"deathrun_hidehud",    "1" );
        
    g_pLifeSystem    register_cvar"deathrun_lifesystem""1" );
        
    g_pGameName      register_cvar"deathrun_gamename",   "1" );
        
    g_pNoFallDmg     register_cvar"deathrun_terrnfd",    "1" );
        
    g_pRemoveBuyZone register_cvar"deathrun_removebz",   "1" );
        
        
    // Lets get map name...
        
    new szMapName64 ];
        
    get_mapnameszMapName63 );
        
        if( 
    containszMapName"deathrun_" ) != -) {
            
    set_pcvar_numg_pToggle);
            
            if( 
    containszMapName"hauntedhouse" ) != -)
                
    g_bHauntedHouse true;
            else {
                
    g_bHauntedHouse false;
                
                if( 
    equalszMapName"deathrun_gamerfun" ) )
                    
    g_bGamerFun true;
                else
                    
    g_bGamerFun false;
            }
        } else
            
    set_pcvar_numg_pToggle);
        
        
    g_pSvRestart   get_cvar_pointer"sv_restart" );
        
    g_pAutoBalance get_cvar_pointer"mp_autoteambalance" );
        
    g_pLimitTeams  get_cvar_pointer"mp_limitteams" );
        
        
    register_cvar"deathrun_version""3.0.2"FCVAR_SERVER FCVAR_SPONLY );
        
    set_cvar_string"deathrun_version""3.0.2" );
        
        
    // Registering Language file
        
    register_dictionary"deathrun.txt" );
        
        
    // Logging Events
        
    register_logevent"EventRoundStart"2"1=Round_Start" );
        
    register_logevent"EventRandromize"2"1=Round_End" );
        
    register_event"SendAudio""EventTerrsWin",   "a""2&%!MRAD_terwin" );
        
    register_event"TextMsg",     "EventRandromize""a""2&#Game_w" );
        
    register_event"DeathMsg",     "EventDeath",      "a");
        
    register_event"Money",     "EventMoney",      "b" );
        
    register_event"ResetHUD",     "EventResetHud",   "be" );
        
        
    g_bFirstRound    true;
        
    g_iMaxplayers    get_maxplayers( );
        
    g_iMsgHideWeapon get_user_msgid"HideWeapon" );
        
    g_iMsgCrosshair  get_user_msgid"Crosshair" );
        
    g_iMsgMoney      get_user_msgid"Money" );
        
    g_iMsgSayText    get_user_msgid"SayText" );
        
    g_iMsgTeamInfo   get_user_msgid"TeamInfo" );
        
        
    g_iHudSync       CreateHudSyncObj( );
        
    g_iHudSync2      CreateHudSyncObj( );
        
        if( 
    get_pcvar_numg_pToggle ) ) {
            
    RegisterHamHam_TakeDamage"player""FwdHamPlayerDamage" );
            
    RegisterHamHam_Spawn,      "player""FwdHamPlayerSpawn");
            
    register_forwardFM_ClientKill,       "FwdClientKill" );
            
    register_impulse201"FwdImpulse_201" );
            
            if( 
    get_pcvar_numg_pGameName ) )
                
    register_forwardFM_GetGameDescription"FwdGameDesc" );
            
            
    register_clcmd"say /lifes""CmdShowlifes" );
            
    register_clcmd"say /lives""CmdShowlifes" );
            
            
    register_clcmd"radio1""CmdRadio" );
            
    register_clcmd"radio2""CmdRadio" );
            
    register_clcmd"radio3""CmdRadio" );
            
            
    // Terrorist Check
            
    g_iThinkercreate_entity"info_target" );
            
            if( 
    is_valid_entg_iThinker ) ) {
                
    entity_set_stringg_iThinkerEV_SZ_classname"DeathrunThinker" );
                
    entity_set_floatg_iThinkerEV_FL_nextthinkget_gametime( ) + 20.0 );
                
                
    g_bRestart true;
                
                
    // First think will happen in 20.0, Restart will be done there.
                
                
    register_think"DeathrunThinker""FwdThinker" );
            } else {
                
    set_task15.0"CheckTerrorists"___"b" );
                
                
    // Lets make restart after 20 seconds from map start.
                
    set_task20.0"RestartRound" );
            }
            
            if( 
    get_pcvar_numg_pRemoveBuyZone ) ) {
                
    register_messageget_user_msgid"StatusIcon" ), "MsgStatusIcon" ); // BuyZone Icon
                
                // Remove buyzone on map
                
    remove_entity_name"info_map_parameters" );
                
    remove_entity_name"func_buyzone" );
                
                
    // Create own entity to block buying
                
    new iEntity create_entity"info_map_parameters" );
                
                
    DispatchKeyValueiEntity"buying""3" );
                
    DispatchSpawniEntity );
            }
            
            if( 
    get_pcvar_numg_pSemiclip ) ) {
                
    register_forwardFM_StartFrame,    "FwdStartFrame");
                
    register_forwardFM_AddToFullPack,    "FwdFullPack",   );
            }
            
            
    g_bEnabled true;
            
        
    #if defined FAKE_PLAYER
            
    new iEntityiCount;
            
            while( ( 
    iEntity find_ent_by_classiEntity"info_player_deathmatch" ) ) > )
                if( 
    iCount++ > )
                    break;
            
            if( 
    iCount <= )
                
    g_iFakeplayer = -1;
            
            
    set_task5.0"UpdateBot" );
            
            
    register_messageget_user_msgid"DeathMsg" ), "MsgDeathMsg" );
        
    #endif
        
    } else
            
    g_bEnabled false;
    }

    // FAKEPLAYER
    ///////////////////////////////////////////
    #if defined FAKE_PLAYER
        
    public UpdateBot( ) {
            if( 
    g_iFakeplayer == -)
                return;
            
            new 
    id find_player"i" );
            
            if( !
    id ) {
                
    id engfuncEngFunc_CreateFakeClientg_szBotName );
                if( 
    pev_validid ) ) {
                    
    engfuncEngFunc_FreeEntPrivateDataid );
                    
    dllfuncMetaFunc_CallGameEntity"player"id );
                    
    set_user_infoid"rate""3500" );
                    
    set_user_infoid"cl_updaterate""25" );
                    
    set_user_infoid"cl_lw""1" );
                    
    set_user_infoid"cl_lc""1" );
                    
    set_user_infoid"cl_dlmax""128" );
                    
    set_user_infoid"cl_righthand""1" );
                    
    set_user_infoid"_vgui_menus""0" );
                    
    set_user_infoid"_ah""0" );
                    
    set_user_infoid"dm""0" );
                    
    set_user_infoid"tracker""0" );
                    
    set_user_infoid"friends""0" );
                    
    set_user_infoid"*bot""1" );
                    
    set_pevidpev_flagspevidpev_flags ) | FL_FAKECLIENT );
                    
    set_pevidpev_colormapid );
                    
                    new 
    szMsg128 ];
                    
    dllfuncDLLFunc_ClientConnectidg_szBotName"127.0.0.1"szMsg );
                    
    dllfuncDLLFunc_ClientPutInServerid );
                    
                    
    cs_set_user_teamidCS_TEAM_T );
                    
    ExecuteHamBHam_CS_RoundRespawnid );
                    
                    
    set_pevidpev_effectspevidpev_effects ) | EF_NODRAW );
                    
    set_pevidpev_solidSOLID_NOT );
                    
    dllfuncDLLFunc_Thinkid );
                    
                    
    g_iFakeplayer id;
                }
            }
        }
        
        public 
    MsgDeathMsg( const iMsgId, const iMsgDest, const id ) {
            if( 
    get_msg_arg_int) == g_iFakeplayer )
                return 
    PLUGIN_HANDLED;
            
            return 
    PLUGIN_CONTINUE;
        }
    #endif

    // NEW TERRORIST
    ///////////////////////////////////////////
    public EventRandromize( ) {
        if( !
    g_bEnabled || g_bFirstRound || g_bRandromized )
            return 
    PLUGIN_CONTINUE;
        
        
    g_bRandromized true;
        
        new 
    iiPlayers32 ], iNumiPlayer;
        
    get_playersiPlayersiNum"c" );
        
        if( 
    iNum <= )
            return 
    PLUGIN_CONTINUE;
        
        for( 
    0iNumi++ ) {
            
    iPlayer iPlayers];
            
            if( 
    cs_get_user_teamiPlayer ) == CS_TEAM_T )
                
    cs_set_user_teamiPlayerCS_TEAM_CT );
        }
        
        new 
    iRandomPlayerCsTeams:iTeam;
        
        while( ( 
    iRandomPlayer iPlayersrandom_num0iNum ) ] ) == g_iLastTerr ) { }
        
        
    g_iLastTerr iRandomPlayer;
        
        
    iTeam cs_get_user_teamiRandomPlayer );
        
        if( 
    iTeam == CS_TEAM_T || iTeam == CS_TEAM_CT ) {
            
    cs_set_user_team(iRandomPlayerCS_TEAM_T);
            
            new 
    szName32 ];
            
    get_user_nameiRandomPlayerszName31 );
            
            for( 
    0iNumi++ )
                
    ColorChat(iPlayers], RED"%s^4 %L"g_szPrefixiPlayers], "DR_NOW_TERR"szName);
            
            if( !
    g_bRestart && is_valid_entg_iThinker ) )
                
    entity_set_floatg_iThinkerEV_FL_nextthinkget_gametime( ) + 15.0 );
        } else {
            
    g_bRandromized false;
            
    EventRandromize( );
        }
        
        return 
    PLUGIN_CONTINUE;
    }

    // NEW ROUND
    ///////////////////////////////////////////
    public EventRoundStart( ) {
        if( !
    g_bEnabled )
            return 
    PLUGIN_CONTINUE;
        
        
    g_bRandromized    false;
        
    g_bStarting    false;
        
        new 
    iiPlayers32 ], iNumiRealPlayersCsTeams:iTeam;
        
    get_playersiPlayersiNum"c" );
        
        if( 
    iNum <= )
            return 
    PLUGIN_CONTINUE;
        
        for( 
    0iNumi++ ) {
            
    iTeam cs_get_user_teamiPlayers] );
            
            if( 
    iTeam == CS_TEAM_T || iTeam == CS_TEAM_CT )
                
    iRealPlayers++;
        }
        
        if( 
    iRealPlayers <= ) {
            
    set_hudmessage01280, -1.00.104.04.00.50.5);
            
            for( 
    0iNumi++ )
                
    ShowSyncHudMsgiPlayers], g_iHudSync"%L"iPlayers], "DR_NOT_ENOUGH" );
            
            return 
    PLUGIN_CONTINUE;
        }
        
        
    set_pcvar_numg_pAutoBalance);
        
    set_pcvar_numg_pLimitTeams);
        
        if( 
    g_bFirstRound ) {
            
    set_hudmessage01280, -1.00.104.04.00.50.5);
            
            for( 
    0iNumi++ ) {
                
    ShowSyncHudMsgiPlayers], g_iHudSync"%L"iPlayers], "DR_STARTING" );
                
                
    ColorChatiPlayers], RED"%s^1 %L"g_szPrefixiPlayers], "DR_STARTING_CC" );
            }
            
            if( 
    is_valid_entg_iThinker ) ) {
                
    g_bRestart true;
                
                
    entity_set_floatg_iThinkerEV_FL_nextthinkget_gametime( ) + 9.0 );
            } else
                
    set_task9.0"RestartRound" );
            
            
    g_bStarting true;
            
    g_bFirstRound false;
        }
        
        return 
    PLUGIN_CONTINUE;
    }

    // CHECK TERRORIST
    ///////////////////////////////////////////
    public FwdThinkeriEntity ) {
        if( 
    g_bRestart ) {
            
    g_bRestart false;
            
            
    RestartRound( );
        } else
            
    CheckTerrorists( );
        
        
    entity_set_floatiEntityEV_FL_nextthinkget_gametime( ) + 15.0 );
    }

    public 
    CheckTerrorists( ) {
        if( !
    g_bEnabled || g_bFirstRound || g_bStarting )
            return 
    PLUGIN_CONTINUE;
        
        new 
    iiPlayers32 ], iTerrorsiNumiRealPlayersCsTeams:iTeam;
        
    get_playersiPlayersiNum"c" );
        
        if( 
    iNum <= )
            return 
    PLUGIN_CONTINUE;
        
        for( 
    0iNumi++ ) {
            
    iTeam cs_get_user_teamiPlayers] );
            
            if( 
    iTeam == CS_TEAM_T )
                
    iTerrors++;
            
            if( 
    iTeam == CS_TEAM_T || iTeam == CS_TEAM_CT )
                
    iRealPlayers++;
        }
        
        if( 
    iRealPlayers <= ) {
            
    set_hudmessage01280, -1.00.104.04.00.50.5);
            
            for( 
    0iNumi++ )
                
    ShowSyncHudMsgiPlayers], g_iHudSync"%L"iPlayers], "DR_NOT_ENOUGH" );
            
            return 
    PLUGIN_CONTINUE;
        }
        
        if( 
    iTerrors == ) {
            for( 
    0iNumi++ ) {
                
    ColorChat(iPlayers], RED"%s^1 %L"g_szPrefixiPlayers], "DR_NO_DETECT");
                
                if( 
    is_user_aliveiPlayers] ) && cs_get_user_teamiPlayers] ) == CS_TEAM_CT )
                    
    user_silentkilliPlayers] );
            }
            
            
    set_task0.5"EventRandromize" );
        }
        
        return 
    PLUGIN_CONTINUE;
    }

    // LIFE SYSTEM
    ///////////////////////////////////////////
    public EventTerrsWin( ) {
        if( !
    g_bEnabled || g_bFirstRound )
            return 
    PLUGIN_CONTINUE;
        
        new 
    iPlayers32 ], iNumiPlayer;
        
    get_playersiPlayersiNum"c" );
        
        if( 
    iNum <= )
            return 
    PLUGIN_CONTINUE;
        
        new 
    iLifeCvar get_pcvar_numg_pLifeSystem );
        
        for( new 
    0iNumi++ ) {
            
    iPlayer iPlayers];
            
            if( 
    cs_get_user_teamiPlayer ) == CS_TEAM_T ) {
                
    set_user_fragsiPlayerget_user_fragsiPlayer ) + );
                
                if( 
    iLifeCvar == )
                    
    g_LifesiPlayer ]++;
            }
        }
        
        return 
    PLUGIN_CONTINUE;
    }

    public 
    EventDeath( ) {
    #if defined FAKE_PLAYER
        
    if( !g_bEnabled )
            return 
    PLUGIN_CONTINUE;
        
        new 
    iVictim read_data);
        new 
    iTeam get_user_teamiVictim );
        
        if( 
    iTeam == && is_user_aliveg_iFakeplayer ) )
            
    fakedamageg_iFakeplayer"worldspawn"100.0DMG_GENERIC );
        
        if( !
    get_pcvar_numg_pLifeSystem ) )
            return 
    PLUGIN_CONTINUE;
    #else
        
    if( !g_bEnabled || get_pcvar_numg_pLifeSystem ) )
            return 
    PLUGIN_CONTINUE;
        
        new 
    iVictim read_data);
        new 
    iTeam get_user_teamiVictim );
    #endif
        
        
    new iKiller read_data);
        
        if( 
    iKiller != iVictim && get_user_team(iKiller) != iTeam )
            
    g_Lifes[iKiller]++;
        
        if( 
    cs_get_user_teamiVictim ) == CS_TEAM_CT && g_LifesiVictim ] > ) {
            new 
    iCTcount;
            for( new 
    1<= g_iMaxplayersi++ ) {
                if( 
    is_user_alive) && cs_get_user_team) == CS_TEAM_CT )
                    
    iCTcount++;
            }
            
            if( 
    iCTcount ) {
                
    set_task(3.2"fnRevivePlayer"iVictim);
                
                
    ColorChatiVictimRED"%s^1 %L"g_szPrefixiVictim"DR_LIFE_RESPAWN" );
            }
            
    /*else
                ColorChat( iVictim, RED, "%s^1 %L", g_szPrefix, iVictim, "DR_LIFE_CANT" );*/
        
    }
        
        return 
    PLUGIN_CONTINUE;
    }

    public 
    fnRevivePlayerid ) {
        if( 
    g_bConnectedid ] ) {
            if( 
    cs_get_user_teamid ) == CS_TEAM_CT ) {
                new 
    iCTcount;
                for( new 
    1<= g_iMaxplayersi++ )
                    if( 
    is_user_alive) && cs_get_user_team) == CS_TEAM_CT )
                        
    iCTcount++;
                
                if( 
    iCTcount ) {
                    
    ExecuteHamBHam_CS_RoundRespawnid );
                    
                    
    g_Lifesid ]--;
                }
            }
        }
    }

    public 
    CmdShowlifesid ) {
        if( 
    get_pcvar_numg_pLifeSystem ) == ) {
            
    ColorChatidRED"%s^1 %L"g_szPrefixid"DR_LIFE_DISABLE" );
            return 
    PLUGIN_HANDLED;
        }
        
        if( 
    g_Lifesid ] > )
            
    ColorChatidRED"%s^1 %L"g_szPrefixid"DR_LIFE_CC_COUNT"g_Lifesid ] );
        else
            
    ColorChatidRED"%s^1 %L"g_szPrefixid"DR_LIFE_CC_NO" );
        
        return 
    PLUGIN_HANDLED;
    }

    public 
    Showlifesid ) {
        
    set_hudmessage012800.040.7102.52.50.50.5);
        
        if( 
    g_Lifesid ] > )
            
    ShowSyncHudMsgidg_iHudSync2"%L"id"DR_LIFE_COUNT"g_Lifesid ] );
        else
            
    ShowSyncHudMsgidg_iHudSync2"%L"id"DR_LIFE_NO" );
    }

    // EVENTS
    ///////////////////////////////////////////
    public EventResetHudid ) {
        if( 
    g_bEnabled && get_pcvar_numg_pHideHuds ) && !is_user_botid ) ) {
            
    message_beginMSG_ONE_UNRELIABLEg_iMsgHideWeapon_id );
            
    write_byte( ( 1<<1<<) );
            
    message_end( );
            
            
    message_beginMSG_ONE_UNRELIABLEg_iMsgCrosshair_id );
            
    write_byte);
            
    message_end( );
        }
    }

    public 
    EventMoneyid ) {
        if( 
    g_bEnabled && get_pcvar_numg_pBlockMoney ) ) {
            
    set_pdata_intid115);
            
            
    message_beginMSG_ONE_UNRELIABLEg_iMsgMoney_id );
            
    write_long );
            
    write_byte );
            
    message_end( );
        }
    }

    public 
    client_putinserverid )
        
    g_bConnectedid ] = true;

    public 
    client_disconnectid ) {
        
    g_bConnectedid ] = false;
        
    CheckTerrorists( );
        
        if( !
    g_bRestart && is_valid_entg_iThinker ) )
            
    entity_set_floatg_iThinkerEV_FL_nextthinkget_gametime( ) + 15.0 );
        
    #if defined FAKE_PLAYER
        
    if( g_iFakeplayer == id ) {
            
    set_task1.5"UpdateBot" );
            
            
    g_iFakeplayer 0;
        }
    #endif
    }

    // SEMICLIP
    ///////////////////////////////////////////
    public FwdFullPackeseenthostflagsplayerpSet ) {
        if( !
    g_bEnabled )
            return 
    FMRES_IGNORED;
        
        if( 
    player && g_iSemiClipent ] && g_iSemiCliphost ] ) {
            
    set_esesES_SolidSOLID_NOT );
            
    set_esesES_RenderModekRenderTransAlpha );
            
    set_esesES_RenderAmt85 );
        }
        
        return 
    FMRES_IGNORED;
    }

    public 
    FwdStartFrame( ) {
        if( !
    g_bEnabled )
            return 
    FMRES_IGNORED;
        
        static 
    iPlayers32 ], iNumiPlayeriPlayer2ij;
        
    get_playersiPlayersiNum"ache""CT" );
        
        
    arraysetg_iSemiClip032 );
        
        if( 
    iNum <= )
            return 
    FMRES_IGNORED;
        
        for( 
    0iNumi++ ) {
            
    iPlayer iPlayers];
            
        
    //    if( g_iSemiClip[ iPlayer ] )
        //        continue;
            
            
    for( 0iNumj++ ) {
                
    iPlayer2 iPlayers];
                
                if( 
    iPlayer == iPlayer2 )
                    continue;
                
            
    //    if( g_iSemiClip[ iPlayer2 ] )
            //        continue;
                
                
    if( entity_rangeiPlayeriPlayer2 ) < 128 ) {
                    
    g_iSemiClipiPlayer ]    = true;
                    
    g_iSemiClipiPlayer2 ]    = true;
                }
            }
        }
        
        for( 
    0iNumi++ ) {
            
    iPlayer iPlayers];
            
            
    set_peviPlayerpev_solidg_iSemiClipiPlayer ] ? SOLID_NOT SOLID_SLIDEBOX );
        }
        
        return 
    FMRES_IGNORED;
    }

    // FORWARDS
    ///////////////////////////////////////////
    public FwdHamPlayerSpawnid ) {
        if( !
    g_bEnabled || !is_user_aliveid ) )
            return 
    HAM_IGNORED;
        
        if( 
    get_pcvar_numg_pBlockRadio ) ) // thanks to ConnorMcLeod for this good way :)
            
    set_pdata_intid192);
        
    #if defined FAKE_PLAYER
        
    if( g_iFakeplayer == id ) {
            
    set_pevidpev_frags, -1000.0 );
            
    cs_set_user_deathsid, -1000 );
            
            
    set_pevidpev_effectspevidpev_effects ) | EF_NODRAW );
            
    set_pevidpev_solidSOLID_NOT );
            
    entity_set_originidFloat:{ 999999.0999999.0999999.0 } );
            
    dllfuncDLLFunc_Thinkid );
        } else {
    #endif
            
    new CsTeams:iTeam cs_get_user_teamid );
            
            
    // An small delay for message
            
    if( get_pcvar_numg_pLifeSystem ) != && iTeam == CS_TEAM_CT )
                
    set_task0.8"Showlifes"id );
            
            
    strip_user_weaponsid );
            
    give_itemid"weapon_knife" );
            
            
    set_pdata_intid116); // Pickup fix by ConnorMcLeod
            
            
    if( g_bGamerFun && iTeam == CS_TEAM_CT )
                
    give_itemid"weapon_smokegrenade" );
            
            if( 
    get_pcvar_numg_pGiveUsp ) && iTeam == CS_TEAM_CT && !g_bHauntedHouse )
                
    set_task1.0"GiveUsp"id );

    #if defined FAKE_PLAYER
        
    }
    #endif
        
        
    return HAM_IGNORED;
    }

    public 
    GiveUsp( const id ) {
        if( 
    is_user_aliveid ) ) {
            
    give_itemid"weapon_usp" );
            
    cs_set_user_bpammoidCSW_USP100 );
        }
    }

    public 
    FwdGameDesc( ) {
        static const 
    GameName[ ] = "Deathrun v3.0";
        
        
    forward_returnFMV_STRINGGameName );
        
        return 
    FMRES_SUPERCEDE;
    }

    public 
    FwdClientKill( const id ) {
        if( !
    g_bEnabled || !is_user_alive(id) )
            return 
    FMRES_IGNORED;
        
        if( 
    get_pcvar_numg_pBlockKill ) || cs_get_user_teamid ) == CS_TEAM_T ) {
            
    client_printidprint_center"%L"id"DR_BLOCK_KILL" );
            
    client_printidprint_console"%L"id"DR_BLOCK_KILL" );
            
            return 
    FMRES_SUPERCEDE;
        }
        
        return 
    FMRES_IGNORED;
    }

    public 
    FwdImpulse_201( const id ) {
        if( 
    g_bEnabled && get_pcvar_numg_pBlockSpray ) ) {
            if( 
    is_user_aliveid ) )
                
    client_printidprint_center"%L"id"DR_BLOCK_SPRAY" );
            
            return 
    PLUGIN_HANDLED_MAIN;
        }
        
        return 
    PLUGIN_CONTINUE;
    }

    public 
    FwdHamPlayerDamageididInflictoridAttackerFloat:flDamageiDamageBits ) {
        if( 
    get_pcvar_numg_pNoFallDmg ) )
            if( 
    iDamageBits DMG_FALL )
                if( 
    get_user_teamid ) == )
                    return 
    HAM_SUPERCEDE;
        
        return 
    HAM_IGNORED;
    }

    public 
    MsgStatusIconmsg_idmsg_destid ) {
        new 
    szIcon];
        
    get_msg_arg_string2szIcon);
        
        static const 
    BuyZone[ ] = "buyzone";
        
        if( 
    equalszIconBuyZone ) ) {
            
    set_pdata_intidOFFSET_BZget_pdata_intidOFFSET_BZ) & ~( << ), );
            
            return 
    PLUGIN_HANDLED;
        }
        
        return 
    PLUGIN_CONTINUE;
    }

    public 
    CmdRadioid ) {
        if( 
    get_pcvar_numg_pBlockRadio ) )
            return 
    PLUGIN_HANDLED_MAIN;
        
        return 
    PLUGIN_CONTINUE;
    }

    public 
    RestartRound( )
        
    set_pcvar_numg_pSvRestart);

    // COLORCHAT
    /////////////////////////////////////////////
    ColorChatidColor:type, const szMessage[], {Float,Sql,Result,_}:... ) {
        if( !
    get_playersnum( ) ) return;
        
        new 
    message256 ];
        
        switch( 
    type ) {
            case 
    NORMALmessage[0] = 0x01;
            case 
    GREENmessage[0] = 0x04;
            default: 
    message[0] = 0x03;
        }
        
        
    vformatmessage], 251szMessage);
        
        
    message192 ] = '^0';
        
        
    replace_allmessage191"\YEL""^1" );
        
    replace_allmessage191"\GRN""^4" );
        
    replace_allmessage191"\TEM""^3" );
        
        new 
    iTeamColorChangeindexMSG_Type;
        
        if( 
    id ) {
            
    MSG_Type MSG_ONE_UNRELIABLE;
            
    index id;
        } else {
            
    index CC_FindPlayer();
            
    MSG_Type MSG_BROADCAST;
        }
        
        
    iTeam get_user_teamindex );
        
    ColorChange CC_ColorSelection(indexMSG_Typetype);

        
    CC_ShowColorMessage(indexMSG_Typemessage);
        
        if( 
    ColorChange )
            
    CC_Team_Info(indexMSG_TypeTeamName[iTeam]);
    }

    CC_ShowColorMessageidtypemessage[] ) {
        
    message_begintypeg_iMsgSayText_id );
        
    write_byteid );    
        
    write_stringmessage );
        
    message_end( );    
    }

    CC_Team_Infoidtypeteam[] ) {
        
    message_begintypeg_iMsgTeamInfo_id );
        
    write_byteid );
        
    write_stringteam );
        
    message_end( );
        
        return 
    1;
    }

    CC_ColorSelectionindextypeColor:Type ) {
        switch( 
    Type ) {
            case 
    RED: return CC_Team_InfoindextypeTeamName] );
            case 
    BLUE: return CC_Team_InfoindextypeTeamName] );
        }
        
        return 
    0;
    }

    CC_FindPlayer( ) {
        for( new 
    1<= g_iMaxplayersi++ )
            if( 
    g_bConnected] )
                return 
    i;
        
        return -
    1;

    Załączone pliki
    Najlepszy hosting www tutaj
    Konfiguracja amxx, instalacja pluginów, pisanie pluginów AMXX. Więcej info na www.naven.com.pl
    Jebać steama.
     

Podobne wątki

  1. Elf Bota NG pod 8.55 na miesiąc
    By djvilo in forum Archiwum forum
    Odpowiedzi: 0
    Ostatni post / autor: 25-04-2010, 09:59
  2. jak dodać bota na serwer cs
    By DL93 in forum Instalacja serwera HLDS Counter Strike 1.6
    Odpowiedzi: 2
    Ostatni post / autor: 15-04-2010, 19:04
  3. Poprosze Instalke Do Bota Ng 8.42 i 8.5
    By B0MBEL in forum Dyskusje, problemy, pomoc odnośnie gier
    Odpowiedzi: 1
    Ostatni post / autor: 05-03-2010, 20:45
  4. Jak wyrzucić bota?
    By Matevos in forum Problemy z HLDS
    Odpowiedzi: 2
    Ostatni post / autor: 28-03-2009, 15:51
  5. Piekarnia u Bota [TP , FFA, 4FUN]
    By jankes1993 in forum Archiwum serwerów Counter Strike 1.6 Steam i Non Steam
    Odpowiedzi: 0
    Ostatni post / autor: 15-03-2009, 20:16
  6. Piekarnia U Bota [FFA]
    By .hzL! in forum Archiwum serwerów Counter Strike 1.6 Steam i Non Steam
    Odpowiedzi: 1
    Ostatni post / autor: 14-03-2009, 19:57
  7. Zapraszam na serwer Piekarnia u Bota
    By Szopa19999 in forum Archiwum serwerów Counter Strike 1.6 Steam i Non Steam
    Odpowiedzi: 0
    Ostatni post / autor: 13-03-2009, 20:59
  8. Jak ustawić poziom bota na stałę??
    By kantosz99 in forum Problemy z CS 1.6
    Odpowiedzi: 1
    Ostatni post / autor: 16-08-2008, 22:51
  9. Szukam 1 pro bota
    By ogor1111 in forum Archwium #Klan CS 1.6 szuka graczy
    Odpowiedzi: 3
    Ostatni post / autor: 11-08-2007, 21:41

Odwiedzający znaleźli tę stronę szukając:

public fnRevivePlayer( id ) {

Uprawnienia umieszczania postów
  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •