Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
KF round plugin ışınlanma sorunu
#13
Sorununu çözdüm kfbitir deyince normal olarak rr atıp normal oyun devam ediyor

Code:
#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[ 2 ];
new g_pSwapVote;
new g_pNoslash;
new iMaxPlayers;

public plugin_init() {
    register_plugin( PLUGIN, VERSION, AUTHOR );
    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 /kfbitir", "CmdKnifeRoundEnd", ADMIN_BAN, "Stop Knife Round" );
    register_clcmd( "say_team /kfbitir", "CmdKnifeRoundEnd", ADMIN_BAN, "Stop 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("Event_CTWin", 6, "3=CTs_Win", "3=All_Hostages_Rescued")
    register_logevent("Event_TWin" , 6, "3=Terrorists_Win", "3=Target_Bombed")
    register_logevent("Event_Draw" , 4, "1=Round_Draw")
    
    register_menucmd( register_menuid( "\rTakimlar Degistirilsin mi?" ), 1023, "MenuCommand" );
    
    RegisterHam( Ham_Weapon_PrimaryAttack, "weapon_knife", "HamKnifePrimAttack" );
    
    g_iMaxPlayers = get_maxplayers( );
    register_srvcmd("kfteleport","OtoTeleport")
    iMaxPlayers = get_maxplayers();
    
}

public EventCurWeapon( id ) {
    if( g_bKnifeRound ) engclient_cmd( id, "weapon_knife" );
    return PLUGIN_CONTINUE;
}

public KnifeRoundStart( ) {
    g_bKnifeRound = true;
    g_bVotingProcess = false;
    
    new players[ 32 ], num;
    get_players( players, num );
    
    for( new i = 0; i < num ; i++ )
    {
        new item = players[ i ];
        EventCurWeapon( item );
    }
    
    return PLUGIN_CONTINUE;
}

public CmdRestartRound( id, level, cid ) {
    if ( !cmd_access( id, level, cid, 1 ) ) return PLUGIN_HANDLED;
    
    g_bKnifeRound = false;
    server_cmd( "sv_restartround 1" );
    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");
    
  
    set_task(1.6,"OtoTeleport");
    return PLUGIN_CONTINUE;
}

public CmdKnifeRound( id, level, cid ) {    
    if( !cmd_access( id, level, cid, 1 ) ) return PLUGIN_HANDLED;
    
    CmdRestartRound( id, level, cid );  
    
    set_task( 3.0, "KnifeRoundStart", id );
    
    chat_color(0, "!g !yKnife Round Basladi.");
    
    
    
    return PLUGIN_CONTINUE;
}

public CmdKnifeRoundEnd( id, level, cid ) {    
    if( !cmd_access( id, level, cid, 1 ) ) return PLUGIN_HANDLED;
    
    g_bKnifeRound = false;
    
    
    server_cmd( "sv_restartround 1" );
    chat_color(0, "!g !yKnife Round Durduruldu !");
    
    
    return PLUGIN_CONTINUE;
}

public CmdSwapTeams( id,level,cid ) {
    if( !cmd_access( id, level, cid, 1 ) ) return PLUGIN_HANDLED;
    
    SwapTeams( );
    CmdRestartRound( id, level, cid );
    
    return PLUGIN_CONTINUE;
}


public SwapTeams( ) {
    for( new i = 1; i <= g_iMaxPlayers; i++ ) {
        if( is_user_connected( i ) )
        {
            switch( cs_get_user_team( i ) )
            {
                case CS_TEAM_T: cs_set_user_team( i, CS_TEAM_CT );            
                    case CS_TEAM_CT: cs_set_user_team( i, CS_TEAM_T );
                }
        }
    }
}

public Event_CTWin( ) {
    if( g_bKnifeRound && get_pcvar_num( g_pSwapVote ) ) {
        
        chat_color(0, "!g !yKnife Roundu Counter-Teroristler Kazandi.");
        set_task( 6.0, "vote_ct" );
        
    }
    g_bKnifeRound = false;
    
    return PLUGIN_CONTINUE;
}

public Event_TWin( ) {
    if( g_bKnifeRound && get_pcvar_num( g_pSwapVote ) ) {
        
        chat_color(0, "!g !yKnife Roundu Teroristler Kazandi.");
        set_task( 6.0, "vote_t" );
        
    }
    g_bKnifeRound = false;
    
    return PLUGIN_CONTINUE;
}

public Event_Draw( ) {
    if( g_bKnifeRound && get_pcvar_num( g_pSwapVote ) ) {
        
        chat_color(0, "!g !yKnife Round Berabere Bitti !");
        
    }
    g_bKnifeRound = false;
    
    return PLUGIN_CONTINUE;
}

public vote_t( ) {
    for( new i = 1; i <= g_iMaxPlayers; i++ ) {
        if( is_user_alive( i ) && cs_get_user_team( i ) == CS_TEAM_T )
        {
            ShowMenu( i );
        }
    }
    set_task( 8.0, "finishvote" );
}

public vote_ct( ) {
    for( new i = 1; i <= g_iMaxPlayers; i++ ) {
        if( is_user_alive( i ) && cs_get_user_team( i ) == CS_TEAM_CT )
        {
            ShowMenu( i );
        }
    }
    set_task( 8.0, "finishvote" );
}

public ShowMenu( id ) {
    g_bVotingProcess = true;
    
    if( g_bVotingProcess ) {
        new szMenuBody[ 256 ], keys;
        
        new nLen = format( szMenuBody, 255, "\rTakimlar Degistirilsin mi?^n" );
        nLen += format( szMenuBody, 255-nLen, "^n\r1. \wEvet" );
        nLen += format( szMenuBody, 255-nLen, "^n\r2. \wHayir" );
        nLen += format( szMenuBody, 255-nLen, "^n^n\r0. \wCikis" );
        
        keys = ( 1<<0 | 1<<1 | 1<<9 );
        
        show_menu( id, keys, szMenuBody, -1 );
    }
    
    return PLUGIN_CONTINUE;
}

public MenuCommand( id, key ) {
    if( !g_bVotingProcess ) return PLUGIN_HANDLED;
    
    new szName[ 32 ];
    get_user_name( id, szName, charsmax( szName ) );
    
    switch( key )
    {
        case 0:
        {
            g_Votes[ 0 ]++;
            
        }
        case 1:
        {
            g_Votes[ 1 ]++;
            
        }  
        case 9: show_menu( id, 0, "" );
        }
    
    return PLUGIN_HANDLED;
}

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

public HamKnifePrimAttack( iEnt ) {
    if( g_bKnifeRound && get_pcvar_num( g_pNoslash ) )
    {
        ExecuteHamB( Ham_Weapon_SecondaryAttack, iEnt );          
        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 i = 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 i = 0;i<iMaxPlayers;i++) {
        check_user_angles(i)
    }
    
    return PLUGIN_HANDLED
}  
/*------------------------YAZI RENKLENDİRME------------------------------*/
stock chat_color(const id, const input[], any:...) {
    new count = 1, players[32]
    static msg[191]
    vformat(msg, 190, input, 3)
    
    replace_all(msg, 190, "!g", "^4")
    replace_all(msg, 190, "!y", "^1")
    replace_all(msg, 190, "!t", "^3")
    replace_all(msg, 190, "!team2", "^0")
    
    if (id) players[0] = id; else get_players(players, count, "ch")
    {
        for (new i = 0; i < count; i++)
        {
            if (is_user_connected(players))
            {
                message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players)
                write_byte(players);
                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)
}


ama ışınlanma sorununu çözemedim sorun şurda kf round başlarken rr atılıyor oyuncular teleport edildikten sonra rr atıldığı için oyuncular normal yerlerinde doğuyor bunun çözümü içinde rr komutundan sonra belli bir süre bekleyip ondan sonra teleport komutlarını çalıştırması lazım benim bununla ilgili hiçbir bilgim yok yukardaki sorunuda mantık kurarak çözdüm anlattığım şekilde yapabilecek bir arkadaş çıkarsa sorunun çözülmüş olur Smile
Reply


Messages In This Thread
Cevap: KF round plugin ışınlanma sorunu - by bomba34 - 20-01-13, 23:42

Possibly Related Threads…
Thread Author Replies Views Last Post
  Oyunyonetıcısı plugın kursatyzc 9 11,469 03-09-17, 18:05
Last Post: tahayasin
  [İSTEK] CT MAVi - T Kırmızı ışık yanan Plugin + Video Çektim ademcan36 9 10,467 26-04-17, 16:15
Last Post: h4m4s
  Parlak pelerin plugin lazım artiz42 8 4,696 03-08-16, 20:45
Last Post: murat1366
  Plugin İstek CFG Tarzı erenstrkl 6 3,778 03-08-16, 20:31
Last Post: murat1366
  Plugin Ufak Ayarlar Config Setting 7 3,493 03-08-16, 20:28
Last Post: murat1366
  Nicke özel plugin bykeremm 12 6,222 03-08-16, 20:18
Last Post: murat1366
  Jailbreak Bahis Plugin hasan06500 49 13,176 03-08-16, 20:18
Last Post: murat1366
  Reklamcılara karsi Acil İstek[Plugin] hasan0650 22 5,581 17-07-16, 18:03
Last Post: BYHAZARD7
  Hoş Geldin Mesajı (Değişik Bir Plugin + Resim Koydum + AMXX Ve SMA) Nobb 13 9,038 18-04-16, 02:59
Last Post: Uzman34666
  Takım ve meslek plugin berkanmtn 9 5,381 09-06-15, 10:10
Last Post: sertanAbi123

Foruma Atla:


Users browsing this thread: 1 Guest(s)