PHP- Kodu:
#include < amxmodx >
#include < amxmisc >
#include < cstrike >
#include < hamsandwich >
#include <fun>
#include <engine>

#define PLUGIN "Knife Round"
#define VERSION "2.0"
#define AUTHOR "shake"


new bool:g_bKnifeRound;
new 
bool:g_bVotingProcess;
new 
g_iMaxPlayers;
new 
g_Votes];
new 
g_pSwapVote;
new 
g_pNoslash;
new 
iMaxPlayers;

public 
plugin_init() {
    
register_pluginPLUGINVERSIONAUTHOR );
    
g_pSwapVote register_cvar"kr_swapvote""1" );   
    
g_pNoslash register_cvar"kr_noslash""1" );
    
    
register_clcmd"say /kf""CmdKnifeRound"ADMIN_BAN"Start Knife Round" );
    
register_clcmd"say_team /kf""CmdKnifeRound"ADMIN_BAN"Start Knife Round" );
    
register_clcmd"say /kr""CmdKnifeRound"ADMIN_BAN"Start Knife Round" );
    
register_clcmd"say /kniferound""CmdKnifeRound"ADMIN_BAN"Start Knife Round" );
    
    
register_clcmd"shield""BlockCmds" );
    
register_clcmd"cl_rebuy""BlockCmds" );
    
    
register_event"CurWeapon""EventCurWeapon""be""2!29" );
    
    
register_logevent"EventRoundEnd"2"0=World triggered""1=Round_Draw""1=Round_End" );
    
    
register_menucmdregister_menuid"\r* \yTakimlar Degistirilsin mi?" ), 1023"MenuCommand" );
    
    
RegisterHamHam_Weapon_PrimaryAttack"weapon_knife""HamKnifePrimAttack" );
    
    
g_iMaxPlayers get_maxplayers( );
    
register_srvcmd("kfteleport","OtoTeleport")
    
iMaxPlayers get_maxplayers();
    
}

public 
EventCurWeaponid ) {
    if( 
g_bKnifeRound engclient_cmdid"weapon_knife" );
    return 
PLUGIN_CONTINUE;
}

public 
CmdRestartRoundidlevelcid ) {
    if ( !
cmd_accessidlevelcid) ) return PLUGIN_HANDLED;
    
    
g_bKnifeRound false;
    
    
set_cvar_string("mp_autokick""0");
    
set_cvar_string("mp_freezetime""5");
    
set_cvar_string("mp_autoteambalance""0");      
    
set_cvar_string("mp_limitteams""0");
    
set_cvar_string("mp_friendlyfire""1");    
    
set_cvar_string("sv_alltalk""0");        
    
set_cvar_string("mp_startmoney""800");
    
set_cvar_string("mp_timelimit""0");       
    
set_cvar_string("mp_forcecamera""2");
    
set_cvar_string("mp_forcechasecam""2");
    
set_cvar_string("mp_flashlight""1");        
    
set_cvar_string("mp_tkpunish""0");    
    
set_cvar_string("mp_c4timer""35");    
    
set_cvar_string("mp_roundtime""1.75");
    
set_cvar_string("mp_footsteps""1");
    
set_cvar_string("mp_buytime""0.25");
    
set_cvar_string("mp_maxrounds""0");
    
set_cvar_string("allow_spectators""1");
    
set_cvar_string("mp_logmessages""1");
    
    
server_cmd"sv_restartround 1" );
    
set_task(1.6,"OtoTeleport");
    return 
PLUGIN_CONTINUE;
}

public 
CmdKnifeRoundidlevelcid ) {    
    if( !
cmd_accessidlevelcid) ) return PLUGIN_HANDLED;
    
    
CmdRestartRoundidlevelcid );  
    
    
set_task3.0"KnifeRoundStart"id );
    
    
chat_color(0"!g[SG] !yKnife Round Basladi.");
    
    
    
    return 
PLUGIN_CONTINUE;
}

public 
CmdSwapTeamsid,level,cid ) {
    if( !
cmd_accessidlevelcid) ) return PLUGIN_HANDLED;
    
    
SwapTeams( );
    
CmdRestartRoundidlevelcid );
    
    return 
PLUGIN_CONTINUE;
}

public 
KnifeRoundStart( ) {
    
g_bKnifeRound true;
    
g_bVotingProcess false;
    
    new 
players32 ], num;
    
get_playersplayersnum );
    
    for( new 
0num i++ )
    {
        new 
item players];
        
EventCurWeaponitem );
    }
    
    return 
PLUGIN_CONTINUE;
}

public 
SwapTeams( ) {
    for( new 
1<= g_iMaxPlayersi++ ) {
        if( 
is_user_connected) )
        {
            switch( 
cs_get_user_team) )
            {
                case 
CS_TEAM_Tcs_set_user_teamiCS_TEAM_CT );            
                    case 
CS_TEAM_CTcs_set_user_teamiCS_TEAM_T );
                }
        }
    }
}

public 
EventRoundEnd( ) {
    if( 
g_bKnifeRound && get_pcvar_numg_pSwapVote ) ) {
        
        new 
players[32],inum;
        
get_players(players,inum,"ae","CT")
        
        if(
inum
        {
            
chat_color(0"!g[SG] !yKnife Roundu Counter-Teroristler Kazandi."); 
            
set_task6.0"vote_ct" );
        }
        else
        {            
            
chat_color(0"!g[SG] !yKnife Roundu Teroristler Kazandi.");
            
set_task6.0"vote_t" );  
        }    
    }
    
g_bKnifeRound false;
    
    return 
PLUGIN_CONTINUE;
}

public 
vote_t( ) {
    for( new 
1<= g_iMaxPlayersi++ ) {
        if( 
is_user_alive) && cs_get_user_team) == CS_TEAM_T )
        {
            
ShowMenu);
        }
    }
    
set_task8.0"finishvote" );
}

public 
vote_ct( ) {
    for( new 
1<= g_iMaxPlayersi++ ) {
        if( 
is_user_alive) && cs_get_user_team) == CS_TEAM_CT )
        {
            
ShowMenu);
        }
    }
    
set_task8.0"finishvote" );
}

public 
ShowMenuid ) {
    
g_bVotingProcess true;
    
    if( 
g_bVotingProcess ) {
        new 
szMenuBody256 ], keys;
        
        new 
nLen formatszMenuBody255"\r* \yTakimlar Degistirilsin mi?^n" );
        
nLen += formatszMenuBody[nLen], 255-nLen"^n\r1. \wEvet" );
        
nLen += formatszMenuBody[nLen], 255-nLen"^n\r2. \wHayir" );
        
nLen += formatszMenuBody[nLen], 255-nLen"^n^n\r0. \wCikis" );
        
        
keys = ( 1<<1<<1<<);
        
        
show_menuidkeysszMenuBody, -);
    }
    
    return 
PLUGIN_CONTINUE;
}

public 
MenuCommandidkey ) {
    if( !
g_bVotingProcess ) return PLUGIN_HANDLED;
    
    new 
szName32 ];
    
get_user_nameidszNamecharsmaxszName ) );
    
    switch( 
key )
    {
        case 
0
        {
            
g_Votes]++;
            
        }
        case 
1
        {
            
g_Votes]++;
            
        }  
        case 
9show_menuid0"" );
        } 
    
    return 
PLUGIN_HANDLED;
}

public 
finishvote( ) {
    if( !
g_bVotingProcess ) return PLUGIN_HANDLED;
    
    
server_cmd"sv_restartround 1" );
    
    if ( 
g_Votes] > g_Votes] ) 
    {
        
chat_color(0"!g[SG] !yTakimlar Degistiriliyor ve Mac Basliyor.");
        
SwapTeams( );
    }
    else
    {
        
chat_color(0"!g[SG] !yTakimlar Ayni Kaliyor ve Mac Basliyor.");
    }
    
    
g_Votes] = 0;
    
g_Votes] = 0;
    
g_bVotingProcess false;
    
    return 
PLUGIN_HANDLED;
}

public 
HamKnifePrimAttackiEnt ) {
    if( 
g_bKnifeRound && get_pcvar_numg_pNoslash ) ) 
    {
        
ExecuteHamBHam_Weapon_SecondaryAttackiEnt );          
        return 
HAM_SUPERCEDE;
    }
    return 
HAM_IGNORED;
}

public 
BlockCmds( ) {
    if( 
g_bKnifeRound ) {
        return 
PLUGIN_HANDLED_MAIN;
    }
    return 
PLUGIN_CONTINUE;
}
/*------------------------OTOMATİK TELEPORT------------------------------*/
public OtoTeleport() {
    
    new 
map[32];
    
get_mapname(map,31)
    
    new 
originct[3]; 
    new 
origint[3];
    
    if(
equali(map,"de_dust2")) {
        
//Ct Koordinatlari 
        
originct[0] = 1373;    // X
        
originct[1] = 1988;    // Y
        
originct[2] = 45;    // Z
        
        //T Koordinatlari
        
origint[0] = 1550;    // X
        
origint[1] = 1147;    // Y
        
origint[2] = 45;    // Z
    
}
    else if(
equali(map,"de_inferno")) {
        
//Ct Koordinatlari
        
originct[0] = 1366;    // X
        
originct[1] = 955;    // Y
        
originct[2] = 196;    // Z
        
        //T Koordinatlari
        
origint[0] = 1514;    // X
        
origint[1] = 457;    // Y
        
origint[2] = 196;    // Z
    
}
    else if(
equali(map,"de_nuke")) {
        
originct[0] = 1035;    // X
        
originct[1] = -1761;    // Y
        
originct[2] = -379;    // Z
        
        //T Koordinatlari
        
origint[0] = 1179;    // X
        
origint[1] = -2183;    // Y
        
origint[2] = -379;    // Z
    
}
    else if(
equali(map,"de_train")) {
        
        
originct[0] = -768;    // X
        
originct[1] = 1196;    // Y
        
originct[2] = -187;    // Z
        
        //T Koordinatlari
        
origint[0] = -615;    // X
        
origint[1] = 777;    // Y
        
origint[2] = -187;    // Z
    
}
    for(new 
0;i<iMaxPlayers;i++) {
        if(
get_user_team(i) == 1) {
            
set_user_origin(i,origint)
            
origint[0]-= 40;
        }
        else if(
get_user_team(i) == 2) {
            
set_user_origin(i,originct)
            
originct[0]+= 40;
        }
        
    }
    for(new 
0;i<iMaxPlayers;i++) {
        
check_user_angles(i)
    }
    
    return 
PLUGIN_HANDLED
}  
/*------------------------YAZI RENKLENDİRME------------------------------*/
stock chat_color(const id, const input[], any:...) {
    new 
count 1players[32]
    static 
msg[191]
    
vformat(msg190input3)
    
    
replace_all(msg190"!g""^4")
    
replace_all(msg190"!y""^1")
    
replace_all(msg190"!t""^3")
    
replace_all(msg190"!team2""^0")
    
    if (
idplayers[0] = id; else get_players(playerscount"ch")
    {
        for (new 
0counti++)
        {
            if (
is_user_connected(players[i]))
            {
                
message_begin(MSG_ONE_UNRELIABLEget_user_msgid("SayText"), _players[i])
                
write_byte(players[i]);
                
write_string(msg);
                
message_end();
            }
        }
    }
}  

/*--------------------------AÇI DÜZELTİCİ------------------------------*/
stock check_user_angles(id) {
    new 
Float:Angle[3];
    
entity_get_vector(id,EV_VEC_angles,Angle)
    if(
get_user_team(id) == 2) {
        
Angle[1] = 270.0;
    }
    else if(
get_user_team(id) == 1) {
        
Angle[1] = 90.0
    
}
    
entity_set_vector(id,EV_VEC_angles,Angle)
    
entity_set_int(id,EV_INT_fixangle,1)