from fixround
Код за потвърждение: Избери целия код
new cname[33][32]
public plugin_natives() register_native("get_nt", "native_get_nt",0)
public native_get_nt(iPlugin, iParams)
{
//return cname[get_param( 1 )];
set_string(2, cname[get_param(1)], get_param(3))
}
//================================================================================
//[Set new Ts]
//=================================================================================
public check_round( leaving_player )
{
static iPlayersnum, id,iTnum
iPlayersnum = fnGetPlaying( )
if( iPlayersnum < 2||!dr_started() ) return;
iTnum = fnGetTeamCount( CS_TEAM_T )
if( !iTnum )
{
static iCTnum
iCTnum = fnGetTeamCount( CS_TEAM_CT )
if( iCTnum <= 1 ) return;
id = fnGetRandomPlayer()
while( ( id == leaving_player ) ) { }
set_terrorist_team( id )
if( !is_user_alive( id ) ) ExecuteHamB( Ham_CS_RoundRespawn, id )
new name_leav[ 32 ],name[ 32 ]
get_user_name( leaving_player, name_leav, charsmax(name_leav) )
get_user_name( id, name, charsmax(name) )
#if defined BONUS_NO_FIRST_FALLDMG
g_iIsNewTs[ id ] = true
#endif
DispatchSpawn( id )//....
//g_iOrigin[ leaving_player ][ 2 ] += 20 on??
set_pev( id, pev_origin, g_iOrigin[ leaving_player ] )
//entity_set_vector( id, EV_VEC_velocity, Float:{ 0.0, 0.0, 0.0 } )
//pev( id, pev_origin, g_iOrigin[ id ] )
if( IsUserStuck( id, g_iOrigin[ id ], pev( id, pev_flags ) ) ) UTIL_UnstickPlayer( id, START_DISTANCE, MAX_ATTEMPTS )
set_task( 4.3, "check_user_stuck", id )
client_print_color(0,print_team_red, "^x04[DR]^x03 %s^x01 este noul terorist, deoarece fostul terorist^x03 %s^x01 s-a deconectat.", name, name_leav )
copy(cname[id],charsmax(cname[]),name)
#if defined BONUS_FRAGS
set_user_frags( id, get_user_frags( id ) + FRAGS_NUM )
set_user_frags_update( id )
#endif
#if defined LOGS
static buffer[ 150 ]
formatex( buffer, charsmax( buffer ), "[DR] %s a fost mutat la TS, deoarece %s s-a deconectat!", name, name_leav )
log_to_file( "dr_last_t_disc.txt", buffer )
#endif
}
}
in DRM
Код за потвърждение: Избери целия код
native get_nt(id,name[],len)
// NEW TERRORIST
///////////////////////////////////////////
public EventRandromize( )
{
if( !g_bEnabled || g_bFirstRound || g_bRandromized ) return PLUGIN_CONTINUE;
g_bRandromized = true
new i, iPlayers[ 32 ], iNum, iPlayer,iRandomPlayer, CsTeams:iTeam;
get_players( iPlayers, iNum, "ch" );
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 );
}
//iRandomPlayer=fnGetRandomPlayer()
while( ( iRandomPlayer = iPlayers[ random_num( 0, iNum - 1 ) ] )==g_iLastTerr) { }
// random(iNum)
//if(!is_user_connected(iRnadomPlayer)) EventRandromize( ) + return PLUGIN_CONTINUE
new szName[ 32 ];
get_user_name( iRandomPlayer, szName, charsmax(szName) );
new szRankName[32]
get_nt(g_iLastTerr, szRankName, charsmax(szRankName))
if(!equal(szName,szRankName)&&g_iLastTerr!=iRandomPlayer) 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 );
for( i = 0; i < iNum; i++ ) client_print_color(iPlayers[ i ],print_team_red, "%s^3 %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 ); //ON-DEF
if(no_detect)
{
//ExecuteHam(Ham_Spawn, iRandomPlayer)
ExecuteHam(Ham_CS_RoundRespawn, iRandomPlayer)
//DispatchSpawn( iRandomPlayer )
no_detect=false
}
if(is_user_alive(iRandomPlayer))
{
//user_silentkill(iRandomPlayer)
set_user_godmode(iRandomPlayer,1)
}
}
else {
g_bRandromized = false
EventRandromize( );
}
return PLUGIN_CONTINUE;
}