Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Lr pluginde bunny kapama
#1
Arkadaslar benim su lr plugine bunny kapatma atabilirmi

Code:
#include <amxmodx>#include <amxmisc>
#include <cstrike>
#include <fakemeta>
#include <hamsandwich>
#include <fun>
#include <engine>


#define PLUGIN "Jailbreak Last Request"
#define VERSION "1.7"
#define AUTHOR "nefret007"


/*================================================================================
Variables | bools | Cvars        
=================================================================================*/


new g_maxPlayers, g_msgSayText, beacon_sprite


new cvar_granadas_bpammo, cvar_scout_bpammo, cvar_effect


new bool:touch_weapons[33], bool:once[33], bool:player_challenged[33], bool:duel_active,bool:death_effect = false,
bool:knife_duel[33] ,bool:deagle_duel[33], bool:grenade_duel[33], bool:scout_duel[33],bool:m3_duel[33]


new tag[] = ""


/*================================================================================
Init n' precache        
=================================================================================*/


public plugin_precache()
{    
    beacon_sprite = precache_model("sprites/shockwave.spr")
}


public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR)
    
    register_event("HLTV", "event_round_start", "a", "1=0", "2=0")
    
    RegisterHam(Ham_Touch, "weaponbox", "fw_touch_weapon")
    RegisterHam(Ham_Touch, "armoury_entity", "fw_touch_weapon")
    RegisterHam(Ham_Touch, "weapon_shield", "fw_touch_weapon")
    RegisterHam(Ham_Spawn, "player", "fw_player_respawn", 1)
    RegisterHam(Ham_Killed, "player", "fw_player_killed")    
    register_event("CurWeapon",     "Event_Change_Weapon", "be", "1=1");
    
    // Client Commands - Versus
    register_clcmd("say /vs", "duel_menu")
    register_clcmd("say !vs", "duel_menu")
    register_clcmd("say_team /vs", "duel_menu")
    register_clcmd("say_team !vs", "duel_menu")
    
    // Cvars
    cvar_granadas_bpammo = register_cvar("jb_grenade_bpammo","10") // amount bpammo grenade | cantidad de granadas
    cvar_scout_bpammo = register_cvar("jb_scout_bpammo", "10") // amount bpammo scout | cantidad de balas pa' la scout
    cvar_effect = register_cvar("jb_effect", "3") // 0 = glow , 1 = beacon ,2 = death_effect 3 = glow n' beacon 'n death_effect
    
    g_maxPlayers = get_maxplayers()
    
    g_msgSayText = get_user_msgid("SayText")
    
    register_dictionary("jailbreak_last_request.txt")
}


/*================================================================================
Round Start                
=================================================================================*/


public event_round_start()
{
    duel_active = false
}


/*================================================================================
forwards                
=================================================================================*/


public fw_player_respawn(id)
{
    if(!is_user_alive(id) || !cs_get_user_team(id))
        return
    
    set_user_rendering(id)
    remove_task(id)
    touch_weapons = false
    once = false
    knife_duel = false
    deagle_duel = false
    grenade_duel = false
    scout_duel = false    
    m3_duel = false
    player_challenged = false
}


public fw_touch_weapon(weapon, id)
{
    if (!is_user_connected(id))
        return HAM_IGNORED;
    
    new players[32], pnum, tempid;
    get_players(players, pnum, "a");
    for( new i; i<pnum; i++ )
    {        
        tempid = players;
    }
    
    if (touch_weapons || touch_weapons)
        return HAM_SUPERCEDE;
    
    return HAM_IGNORED;
}
public fw_player_killed(victim, attacker, shouldgib)
{
    new name[32]
    get_user_name(attacker, name, 31)
    
    if(duel_active)
    {
        if(death_effect)
        {
            static Float:FOrigin3[3]
            pev(victim, pev_origin, FOrigin3)
            
            engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, FOrigin3, 0)
            write_byte(TE_IMPLOSION)
            engfunc(EngFunc_WriteCoord, FOrigin3[0])
            engfunc(EngFunc_WriteCoord, FOrigin3[1])
            engfunc(EngFunc_WriteCoord, FOrigin3[2])
            write_byte(200)
            write_byte(100)
            write_byte(5)  
            message_end()
            
            engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, FOrigin3, 0)
            write_byte(TE_PARTICLEBURST) // TE id
            engfunc(EngFunc_WriteCoord, FOrigin3[0]) // x
            engfunc(EngFunc_WriteCoord, FOrigin3[1]) // y
            engfunc(EngFunc_WriteCoord, FOrigin3[2]) // z
            write_short(50) // radius
            write_byte(72) // color
            write_byte(6) // duration (will be randomized a bit)
            message_end()
        }
        if(cs_get_user_team(victim) == CS_TEAM_CT && player_challenged)
        {
            knife_duel = false
            deagle_duel = false
            m3_duel = false
            grenade_duel = false
            scout_duel = false
            once = false
            strip_user_weapons(attacker)
            give_item(attacker, "weapon_knife")
            set_user_rendering(attacker)
            duel_menu(attacker)
        }
        else if(cs_get_user_team(victim) == CS_TEAM_CT && !player_challenged)
        {
            set_task(0.4, "kill_player", attacker)
            set_hudmessage( 0, 255, 0, -1.0, 0.40, 2, 5.0, 8.0, 0.0, 0.0, 10)
            show_hudmessage(0, "%L", LANG_PLAYER,"DUEL_DOWN", name)
            
        }
    }
    remove_task(attacker)
    remove_task(victim)
}


public kill_player(id)
{
    user_kill(id)
}


/*================================================================================
Main Menu                
=================================================================================*/


public duel_menu(id)
{    
    if(!is_user_alive(id))
        return PLUGIN_HANDLED
    
    if (!once)
    {
        if(cs_get_user_team(id) == CS_TEAM_T)
        {
            new cts[32], ts[32], ctsnum, tsnum
            
            for (new id=1; id <= g_maxPlayers; id++)
            {
                if (!is_user_connected(id) || !is_user_alive(id))
                {
                    continue
                }
                
                if (cs_get_user_team(id) == CS_TEAM_T)
                {
                    ts[tsnum++] = id
                }
                else if (cs_get_user_team(id) == CS_TEAM_CT)
                {
                    cts[ctsnum++] = id
                }
            }
            if (tsnum == 1 && ctsnum >= 1)
            {  
                
                static opcion[64]
                
                formatex(opcion, charsmax(opcion),"\y%L:", id, "CHOOSE_DUEL")
                new iMenu = menu_create(opcion, "sub_duel_menu")
                
                formatex(opcion, charsmax(opcion),"\w%L", id, "DUEL_1")
                menu_additem(iMenu, opcion, "1")    
                
                formatex(opcion, charsmax(opcion),"\w%L", id, "DUEL_2")
                menu_additem(iMenu, opcion, "2")
                
                formatex(opcion, charsmax(opcion),"\w%L", id, "DUEL_3")
                menu_additem(iMenu, opcion, "3")    
                
                formatex(opcion, charsmax(opcion),"\w%L", id, "DUEL_4")
                menu_additem(iMenu, opcion, "4")
                
                formatex(opcion, charsmax(opcion),"\w%L", id, "DUEL_5")
                menu_additem(iMenu, opcion, "5")
                
                
                menu_setprop(iMenu, MPROP_EXIT, MEXIT_ALL)
                menu_display(id, iMenu, 0)
                
            }
            else if    (tsnum == 1 && ctsnum < 1)
            {
                ChatColor(id, "%L", LANG_PLAYER,"NOT_CTS", tag)
            }
            else if    (tsnum > 1)
            {
                ChatColor(id, "%L", LANG_PLAYER,"ONLY_LAST", tag)
            }
        }
        else
        {
            ChatColor(id, "%L", LANG_PLAYER,"ONLY_TTS", tag)
        }
    }
    else
    {
        ChatColor(id, "%L", LANG_PLAYER,"KILL_CHALLENGED", tag)
    }
    return PLUGIN_HANDLED
}


public sub_duel_menu(id, menu, item)
{
    
    if (item == MENU_EXIT)
    {
        menu_destroy(menu)
        return PLUGIN_HANDLED
    }
    
    new Data[6], Name[64]
    new Access, Callback
    
    menu_item_getinfo(menu, item, Access, Data,5, Name, 63, Callback)
    
    new Key = str_to_num(Data)
    
    switch (Key)
    {
        case 1:
        {    
            knife_duel = true
            choose_enemy(id)
        }
        case 2:
        {
            deagle_duel = true
            choose_enemy(id)
        }
        case 3:
        {
            grenade_duel = true
            choose_enemy(id)
        }
        case 4:
        {
            scout_duel = true
            choose_enemy(id)
        }
        case 5:
        {
            m3_duel = true
            choose_enemy(id)
        }
    }
    
    menu_destroy(menu)    
    return PLUGIN_HANDLED
}


/*================================================================================
Menu of challenges                
=================================================================================*/


public choose_enemy(id)
{
    static opcion[64]
    
    formatex(opcion, charsmax(opcion),"\y%L:", id, "CHOOSE_ENEMY")
    new iMenu = menu_create(opcion, "sub_choose_enemy")
    
    new players[32], pnum, tempid
    new szName[32], szTempid[10]
    
    get_players(players, pnum, "a")
    
    for( new i; i<pnum; i++ )
    {
        tempid = players
        
        if (cs_get_user_team(tempid) != CS_TEAM_CT)
        {
            continue
        }
        
        get_user_name(tempid, szName, 31)
        num_to_str(tempid, szTempid, 9)
        menu_additem(iMenu, szName, szTempid, 0)
    }
    
    menu_display(id, iMenu)
    return PLUGIN_HANDLED
}


public sub_choose_enemy(id, menu, item)
{
    if( item == MENU_EXIT )
    {
        menu_destroy(menu)
        return PLUGIN_HANDLED
    }
    
    new Data[6], Name[64]
    new Access, Callback
    menu_item_getinfo(menu, item, Access, Data,5, Name, 63, Callback)
    
    new tempid = str_to_num(Data)
    
    new mapname[32], challenger[32], challenged[32], ct_origin[3], te_origin[3]
    
    get_mapname(mapname,31)
    get_user_name(id, challenger, 31)
    get_user_name(tempid, challenged, 31)
    
    // strip weapons
    strip_user_weapons(id)
    strip_user_weapons(tempid)
    
    // health
    set_user_health(id, 100)
    set_user_health(tempid, 100)
    
    // effects
    switch (get_pcvar_num(cvar_effect))
    {
        case 0: // glow
        {
            set_user_rendering(id, kRenderFxGlowShell, 250, 0, 0, kRenderNormal, 20)    
            set_user_rendering(tempid, kRenderFxGlowShell, 0, 0, 250, kRenderNormal, 20)
        }
        case 1: // beacon
        {
            set_task(1.0, "beacon", id)
            set_task(1.0, "beacon", tempid)
        }
        case 2: // death_effect
        {
            death_effect = true
        }
        case 3: // glow n' beacon n' death_effect
        {
            set_user_rendering(id, kRenderFxGlowShell, 250, 0, 0, kRenderNormal, 20)    
            set_task(1.0, "beacon", id)
            set_user_rendering(tempid, kRenderFxGlowShell, 0, 0, 250, kRenderNormal, 20)
            set_task(1.0, "beacon", tempid)
            death_effect = true
        }
    }
    
    // player challenged
    player_challenged = true
    
    // lr menu once until he kills the player challenged
    once = true
    
    // unable pick up weapon (only the 2 players on duel)
    touch_weapons = true
    touch_weapons = true
    
    if(knife_duel)
    {
        give_item(id, "weapon_knife")
        give_item(tempid, "weapon_knife")
        
        if(equali(mapname,"some1s_jailbreak"))
        {
            ct_origin[0] = -759, ct_origin[1] = 1047, ct_origin[2] = 100
            te_origin[0] = -585, te_origin[1] = 867, te_origin[2] = 100
            set_user_origin(id,te_origin)
            set_user_origin(tempid,ct_origin)
        }
        
        set_hudmessage( 0, 255, 0, -1.0, 0.40, 2, 5.0, 8.0, 0.0, 0.0, 10)
        show_hudmessage(0, "%L",LANG_PLAYER,"KNIFE_DUEL", challenger, challenged)
        
    }
    else if(deagle_duel)
    {
        deagle_duel = true
        
        cs_set_weapon_ammo(give_item(id, "weapon_deagle"), 1)
        cs_set_weapon_ammo(give_item(tempid, "weapon_deagle"), 1)
        
        if(equali(mapname,"some1s_jailbreak"))
        {
            ct_origin[0] = -1352, ct_origin[1] = 271, ct_origin[2] = 38
            te_origin[0] = -1338, te_origin[1] = -782, te_origin[2] = 38
            set_user_origin(id,te_origin)
            set_user_origin(tempid,ct_origin)
        }
        
        set_hudmessage( 0, 255, 0, -1.0, 0.40, 2, 5.0, 8.0, 0.0, 0.0, 10)
        show_hudmessage(0, "%L", LANG_PLAYER,"DEAGLE_DUEL", challenger, challenged)
    }
    else if(grenade_duel)
    {
        give_item(id, "weapon_hegrenade")
        give_item(tempid, "weapon_hegrenade")
        cs_set_user_bpammo(id, CSW_HEGRENADE,get_pcvar_num(cvar_granadas_bpammo))        
        cs_set_user_bpammo(tempid, CSW_HEGRENADE,get_pcvar_num(cvar_granadas_bpammo))
        
        if(equali(mapname,"some1s_jailbreak"))
        {
            ct_origin[0] = -1756, ct_origin[1] = -2526, ct_origin[2] = 36
            te_origin[0] = -3020, te_origin[1] = -2529, te_origin[2] = 36
            set_user_origin(id,te_origin)
            set_user_origin(tempid,ct_origin)
        }
        
        set_hudmessage( 0, 255, 0, -1.0, 0.40, 2, 5.0, 8.0, 0.0, 0.0, 10)
        show_hudmessage(0, "%L", LANG_PLAYER,"GRENADE_DUEL", challenger, challenged)
    }
    else if (m3_duel)
    {
        m3_duel = true
        
        cs_set_weapon_ammo(give_item(id, "weapon_m3"), 1)
        cs_set_weapon_ammo(give_item(tempid, "weapon_m3"), 1)
        
        if(equali(mapname,"some1s_jailbreak"))
        {
            ct_origin[0] = -1756, ct_origin[1] = -2526, ct_origin[2] = 36
            te_origin[0] = -3020, te_origin[1] = -2529, te_origin[2] = 36
            set_user_origin(id,te_origin)
            set_user_origin(tempid,ct_origin)
        }
        set_hudmessage( 0, 255, 0, -1.0, 0.40, 2, 5.0, 8.0, 0.0, 0.0, 10)
        show_hudmessage(0, "%L", LANG_PLAYER,"M3_DUEL", challenger, challenged)
    }
    else if(scout_duel)
    {
        give_item(id, "weapon_scout")
        give_item(tempid, "weapon_scout")
        cs_set_user_bpammo(id, CSW_SCOUT, get_pcvar_num(cvar_scout_bpammo))
        cs_set_user_bpammo(tempid, CSW_SCOUT, get_pcvar_num(cvar_scout_bpammo))
        
        if(equali(mapname,"some1s_jailbreak"))
        {
            ct_origin[0] = -2898, ct_origin[1] = -2040, ct_origin[2] = 37
            te_origin[0] = -2908, te_origin[1] = 905, te_origin[2] = 37
            set_user_origin(id,te_origin)
            set_user_origin(tempid,ct_origin)
        }
        
        set_hudmessage( 0, 255, 0, -1.0, 0.40, 2, 5.0, 8.0, 0.0, 0.0, 10)
        show_hudmessage(0, "%L", LANG_PLAYER,"SCOUT_DUEL", challenger, challenged)
    }
    
    duel_active = true
    
    menu_destroy(menu)
    return PLUGIN_HANDLED
}


public beacon(id)
{
    if(cs_get_user_team(id) == CS_TEAM_CT)
    {
        static origin[3]
        get_user_origin(id, origin)
        message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
        write_byte(TE_BEAMCYLINDER)    // TE id
        write_coord(origin[0])         // x
        write_coord(origin[1])        // y
        write_coord(origin[2]-20)    // z
        write_coord(origin[0])        // x axis
        write_coord(origin[1])        // y axis
        write_coord(origin[2]+200)    // z axis
        write_short(beacon_sprite)    // sprite
        write_byte(0)            // startframe  
        write_byte(1)            // framerate  
        write_byte(6)            // life
        write_byte(2)              // width
        write_byte(1)               // noise    
        write_byte(0)              // red  
        write_byte(0)               // green
        write_byte(250)         // blue
        write_byte(200)            // brightness
        write_byte(0)            // speed
        message_end()
    }
    else
    {
        static origin[3]
        get_user_origin(id, origin)
        message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
        write_byte(TE_BEAMCYLINDER)    // TE id
        write_coord(origin[0])         // x
        write_coord(origin[1])        // y
        write_coord(origin[2]-20)    // z
        write_coord(origin[0])        // x axis
        write_coord(origin[1])        // y axis
        write_coord(origin[2]+200)    // z axis
        write_short(beacon_sprite)    // sprite
        write_byte(0)            // startframe  
        write_byte(1)            // framerate  
        write_byte(6)            // life
        write_byte(2)              // width
        write_byte(1)               // noise    
        write_byte(250)            // red  
        write_byte(0)               // green
        write_byte(0)             // blue
        write_byte(200)            // brightness
        write_byte(0)            // speed
        message_end()
    }
    set_task(1.0, "beacon", id)
    
}
public Event_Change_Weapon(id)
{
    new iwpn, wclip, wammo
    iwpn = get_user_weapon(id, wclip, wammo)
    get_user_ammo(id, iwpn, wammo, wclip)
    
    if(duel_active)
    {
        if(deagle_duel)
        {
            cs_set_user_bpammo(id, CSW_DEAGLE, 1)
        }
        if(wammo == 0)
        {
            if(m3_duel)
            {
                cs_set_user_bpammo(id,CSW_M3,1)
            }
            
        }
    }
}
/*================================================================================
Stocks                    
=================================================================================*/


stock ChatColor(const id, const input[], any:...)
{
    new count = 1, players[32]
    static msg[191]
    vformat(msg, 190, input, 3)
    
    replace_all(msg, 190, "!g", "^4") // Green Color
    replace_all(msg, 190, "!y", "^1") // Default Color
    replace_all(msg, 190, "!team", "^3") // Team Color
    
    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, g_msgSayText, _, players)
            write_byte(players)
            write_string(msg)
            message_end()
        }
    }
}
Reply
#2
PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fakemeta>
#include <hamsandwich>
#include <fun>
#include <engine> 


#define PLUGIN "Jailbreak Last Request"
#define VERSION "1.7"
#define AUTHOR "nefret007"


/*================================================================================
Variables | bools | Cvars        
=================================================================================*/


new g_maxPlayersg_msgSayTextbeacon_sprite


new cvar_granadas_bpammocvar_scout_bpammocvar_effect


new bool:touch_weapons[33], bool:once[33], bool:player_challenged[33], bool:duel_active,bool:death_effect false,
bool:knife_duel[33] ,bool:deagle_duel[33], bool:grenade_duel[33], bool:scout_duel[33],bool:m3_duel[33]


new 
tag[] = "[JailBreak]"


/*================================================================================
Init n' precache        
=================================================================================*/


public plugin_precache() 
{    
    
beacon_sprite precache_model("sprites/shockwave.spr")
}


public 
plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR)
    
    
register_event("HLTV""event_round_start""a""1=0""2=0")
    
    
RegisterHam(Ham_Touch"weaponbox""fw_touch_weapon")
    
RegisterHam(Ham_Touch"armoury_entity""fw_touch_weapon")
    
RegisterHam(Ham_Touch"weapon_shield""fw_touch_weapon")
    
RegisterHam(Ham_Spawn"player""fw_player_respawn"1)
    
RegisterHam(Ham_Killed"player""fw_player_killed")    
    
register_event("CurWeapon",     "Event_Change_Weapon""be""1=1");
    
    
// Client Commands - Versus
    
register_clcmd("say /vs""duel_menu")
    
register_clcmd("say !vs""duel_menu")
    
register_clcmd("say_team /vs""duel_menu")
    
register_clcmd("say_team !vs""duel_menu")
    
    
// Cvars
    
cvar_granadas_bpammo register_cvar("jb_grenade_bpammo","10"// amount bpammo grenade | cantidad de granadas
    
cvar_scout_bpammo register_cvar("jb_scout_bpammo""10"// amount bpammo scout | cantidad de balas pa' la scout
    
cvar_effect register_cvar("jb_effect""3"// 0 = glow , 1 = beacon ,2 = death_effect 3 = glow n' beacon 'n death_effect
    
    
g_maxPlayers get_maxplayers()
    
    
g_msgSayText get_user_msgid("SayText")
    
    
register_dictionary("jailbreak_last_request.txt")
}


/*================================================================================
Round Start                
=================================================================================*/


public event_round_start()
{
    
duel_active false
    server_cmd
"amx_cvar bh_enabled 1" );
}


/*================================================================================
forwards                
=================================================================================*/


public fw_player_respawn(id)
{
    if(!
is_user_alive(id) || !cs_get_user_team(id))
        return
    
    
set_user_rendering(id)
    
remove_task(id)
    
touch_weapons[id] = false 
    once
[id] = false 
    knife_duel
[id] = false
    deagle_duel
[id] = false
    grenade_duel
[id] = false
    scout_duel
[id] = false    
    m3_duel
[id] = false
    player_challenged
[id] = false
}


public 
fw_touch_weapon(weaponid)
{
    if (!
is_user_connected(id))
        return 
HAM_IGNORED;
    
    new 
players[32], pnumtempid;
    
get_players(playerspnum"a");
    for( new 
ii<pnumi++ )
    {        
        
tempid players[i];
    }
    
    if (
touch_weapons[id] || touch_weapons[tempid])
        return 
HAM_SUPERCEDE;
    
    return 
HAM_IGNORED;
}
public 
fw_player_killed(victimattackershouldgib)
{
    new 
name[32]
    
get_user_name(attackername31)
    
    if(
duel_active)
    {
        if(
death_effect)
        {
            static 
Float:FOrigin3[3
            
pev(victimpev_originFOrigin3)
            
            
engfunc(EngFunc_MessageBeginMSG_PVSSVC_TEMPENTITYFOrigin30)
            
write_byte(TE_IMPLOSION)
            
engfunc(EngFunc_WriteCoordFOrigin3[0])
            
engfunc(EngFunc_WriteCoordFOrigin3[1])
            
engfunc(EngFunc_WriteCoordFOrigin3[2])
            
write_byte(200)
            
write_byte(100)
            
write_byte(5)  
            
message_end()
            
            
engfunc(EngFunc_MessageBeginMSG_PVSSVC_TEMPENTITYFOrigin30)
            
write_byte(TE_PARTICLEBURST// TE id
            
engfunc(EngFunc_WriteCoordFOrigin3[0]) // x
            
engfunc(EngFunc_WriteCoordFOrigin3[1]) // y
            
engfunc(EngFunc_WriteCoordFOrigin3[2]) // z
            
write_short(50// radius
            
write_byte(72// color
            
write_byte(6// duration (will be randomized a bit)
            
message_end()
        }
        if(
cs_get_user_team(victim) == CS_TEAM_CT && player_challenged[victim])
        {
            
knife_duel[attacker] = false
            deagle_duel
[attacker] = false
            m3_duel
[attacker] = false
            grenade_duel
[attacker] = false
            scout_duel
[attacker] = false
            once
[attacker] = false
            strip_user_weapons
(attacker)
            
give_item(attacker"weapon_knife")
            
set_user_rendering(attacker)
            
duel_menu(attacker)
        }
        else if(
cs_get_user_team(victim) == CS_TEAM_CT && !player_challenged[victim])
        {
            
set_task(0.4"kill_player"attacker)
            
set_hudmessage02550, -1.00.4025.08.00.00.010)
            
show_hudmessage(0"%L"LANG_PLAYER,"DUEL_DOWN"name)
            
        }
    }
    
remove_task(attacker)
    
remove_task(victim)
}


public 
kill_player(id)
{
    
user_kill(id)
}


/*================================================================================
Main Menu                
=================================================================================*/


public duel_menu(id)
{    
    if(!
is_user_alive(id))
        return 
PLUGIN_HANDLED
    
    
if (!once[id])
    {
        if(
cs_get_user_team(id) == CS_TEAM_T)
        {
            new 
cts[32], ts[32], ctsnumtsnum 
            
            
for (new id=1id <= g_maxPlayersid++)
            {
                if (!
is_user_connected(id) || !is_user_alive(id)) 
                { 
                    continue 
                } 
                
                if (
cs_get_user_team(id) == CS_TEAM_T
                { 
                    
ts[tsnum++] = id
                

                else if (
cs_get_user_team(id) == CS_TEAM_CT
                { 
                    
cts[ctsnum++] = id
                

            } 
            if (
tsnum == && ctsnum >= 1
            {  
                
                static 
opcion[64]
                
                
formatex(opcioncharsmax(opcion),"\y%L:"id"CHOOSE_DUEL")
                new 
iMenu menu_create(opcion"sub_duel_menu")
                
                
formatex(opcioncharsmax(opcion),"\w%L"id"DUEL_1")
                
menu_additem(iMenuopcion"1")    
                
                
formatex(opcioncharsmax(opcion),"\w%L"id"DUEL_2")
                
menu_additem(iMenuopcion"2")
                
                
formatex(opcioncharsmax(opcion),"\w%L"id"DUEL_3")
                
menu_additem(iMenuopcion"3")    
                
                
formatex(opcioncharsmax(opcion),"\w%L"id"DUEL_4")
                
menu_additem(iMenuopcion"4")
                
                
formatex(opcioncharsmax(opcion),"\w%L"id"DUEL_5")
                
menu_additem(iMenuopcion"5")
                
                
                
menu_setprop(iMenuMPROP_EXITMEXIT_ALL)
                
menu_display(idiMenu0)
                
            }
            else if    (
tsnum == && ctsnum 1)
            {
                
ChatColor(id"%L"LANG_PLAYER,"NOT_CTS"tag
            }
            else if    (
tsnum 1)
            {
                
ChatColor(id"%L"LANG_PLAYER,"ONLY_LAST"tag)
            }
        }
        else
        {
            
ChatColor(id"%L"LANG_PLAYER,"ONLY_TTS"tag
        }
    }
    else
    {
        
ChatColor(id"%L"LANG_PLAYER,"KILL_CHALLENGED"tag
    }
    return 
PLUGIN_HANDLED
}


public 
sub_duel_menu(idmenuitem)
{
    
    if (
item == MENU_EXIT)
    {
        
menu_destroy(menu)
        return 
PLUGIN_HANDLED
    
}
    
    new 
Data[6], Name[64]
    new 
AccessCallback
    
    menu_item_getinfo
(menuitemAccessData,5Name63Callback)
    
    new 
Key str_to_num(Data)
    
    switch (
Key)
    {
        case 
1:
        {    
            
knife_duel[id] = true
            choose_enemy
(id)
        }
        case 
2
        {
            
deagle_duel[id] = true
            choose_enemy
(id)
        }
        case 
3
        {
            
grenade_duel[id] = true
            choose_enemy
(id)
        }
        case 
4
        {
            
scout_duel[id] = true
            choose_enemy
(id)
        }
        case 
5:
        {
            
m3_duel[id] = true
            choose_enemy
(id)
        }
    }
    
    
menu_destroy(menu)    
    return 
PLUGIN_HANDLED
}


/*================================================================================
Menu of challenges                
=================================================================================*/


public choose_enemy(id)
{
    static 
opcion[64]
    
    
formatex(opcioncharsmax(opcion),"\y%L:"id"CHOOSE_ENEMY")
    new 
iMenu menu_create(opcion"sub_choose_enemy")
    
    new 
players[32], pnumtempid
    
new szName[32], szTempid[10]
    
    
get_players(playerspnum"a")
    
    for( new 
ii<pnumi++ )
    {
        
tempid players
        
        
if (cs_get_user_team(tempid) != CS_TEAM_CT)
        {
            continue
        }
        
        
get_user_name(tempidszName31)
        
num_to_str(tempidszTempid9)
        
menu_additem(iMenuszNameszTempid0)
    }
    
    
menu_display(idiMenu)
    return 
PLUGIN_HANDLED
}


public 
sub_choose_enemy(idmenuitem)
{
    if( 
item == MENU_EXIT )
    {
        
menu_destroy(menu)
        return 
PLUGIN_HANDLED
    
}
    
    new 
Data[6], Name[64]
    new 
AccessCallback
    menu_item_getinfo
(menuitemAccessData,5Name63Callback)
    
    new 
tempid str_to_num(Data)
    
    new 
mapname[32], challenger[32], challenged[32], ct_origin[3], te_origin[3]
    
    
get_mapname(mapname,31)
    
get_user_name(idchallenger31)
    
get_user_name(tempidchallenged31)
    
    
// strip weapons
    
strip_user_weapons(id)
    
strip_user_weapons(tempid)
    
    
// health
    
set_user_health(id100)
    
set_user_health(tempid100)
    
    
// effects
    
switch (get_pcvar_num(cvar_effect))
    {
        case 
0// glow
        
{
            
set_user_rendering(idkRenderFxGlowShell25000kRenderNormal20)    
            
set_user_rendering(tempidkRenderFxGlowShell00250kRenderNormal20)
        }
        case 
1// beacon
        
{
            
set_task(1.0"beacon"id)
            
set_task(1.0"beacon"tempid)
        }
        case 
2// death_effect
        
{
            
death_effect true
        
}
        case 
3// glow n' beacon n' death_effect
        
{
            
set_user_rendering(idkRenderFxGlowShell25000kRenderNormal20)    
            
set_task(1.0"beacon"id)
            
set_user_rendering(tempidkRenderFxGlowShell00250kRenderNormal20)
            
set_task(1.0"beacon"tempid)
            
death_effect true
        
}
    }
    
    
// player challenged
    
player_challenged[tempid] = true
    
    
// lr menu once until he kills the player challenged
    
once[id] = true 
    
    
// unable pick up weapon (only the 2 players on duel)
    
touch_weapons[id] = true
    touch_weapons
[tempid] = true
    
    
if(knife_duel[id])
    {
        
give_item(id"weapon_knife")
        
give_item(tempid"weapon_knife")
        
        if(
equali(mapname,"some1s_jailbreak"))
        {
            
ct_origin[0] = -759ct_origin[1] = 1047ct_origin[2] = 100
            te_origin
[0] = -585te_origin[1] = 867te_origin[2] = 100
            set_user_origin
(id,te_origin)
            
set_user_origin(tempid,ct_origin)
        }
        
        
set_hudmessage02550, -1.00.4025.08.00.00.010)
        
show_hudmessage(0"%L",LANG_PLAYER,"KNIFE_DUEL"challengerchallenged)
        
    }
    else if(
deagle_duel[id])
    {
        
deagle_duel[tempid] = true
        
        cs_set_weapon_ammo
(give_item(id"weapon_deagle"), 1)
        
cs_set_weapon_ammo(give_item(tempid"weapon_deagle"), 1)
        
        if(
equali(mapname,"some1s_jailbreak"))
        {
            
ct_origin[0] = -1352ct_origin[1] = 271ct_origin[2] = 38
            te_origin
[0] = -1338te_origin[1] = -782te_origin[2] = 38
            set_user_origin
(id,te_origin)
            
set_user_origin(tempid,ct_origin)
        }
        
        
set_hudmessage02550, -1.00.4025.08.00.00.010)
        
show_hudmessage(0"%L"LANG_PLAYER,"DEAGLE_DUEL"challengerchallenged)
    }
    else if(
grenade_duel[id])
    {
        
give_item(id"weapon_hegrenade")
        
give_item(tempid"weapon_hegrenade")
        
cs_set_user_bpammo(idCSW_HEGRENADE,get_pcvar_num(cvar_granadas_bpammo))        
        
cs_set_user_bpammo(tempidCSW_HEGRENADE,get_pcvar_num(cvar_granadas_bpammo))
        
        if(
equali(mapname,"some1s_jailbreak"))
        {
            
ct_origin[0] = -1756ct_origin[1] = -2526ct_origin[2] = 36
            te_origin
[0] = -3020te_origin[1] = -2529te_origin[2] = 36
            set_user_origin
(id,te_origin)
            
set_user_origin(tempid,ct_origin)
        }
        
        
set_hudmessage02550, -1.00.4025.08.00.00.010)
        
show_hudmessage(0"%L"LANG_PLAYER,"GRENADE_DUEL"challengerchallenged)
    }
    else if (
m3_duel[id])
    {
        
m3_duel[tempid] = true
        
        cs_set_weapon_ammo
(give_item(id"weapon_m3"), 1)
        
cs_set_weapon_ammo(give_item(tempid"weapon_m3"), 1)
        
        if(
equali(mapname,"some1s_jailbreak"))
        {
            
ct_origin[0] = -1756ct_origin[1] = -2526ct_origin[2] = 36
            te_origin
[0] = -3020te_origin[1] = -2529te_origin[2] = 36
            set_user_origin
(id,te_origin)
            
set_user_origin(tempid,ct_origin)
        }
        
set_hudmessage02550, -1.00.4025.08.00.00.010)
        
show_hudmessage(0"%L"LANG_PLAYER,"M3_DUEL"challengerchallenged)
    }
    else if(
scout_duel[id])
    {
        
give_item(id"weapon_scout")
        
give_item(tempid"weapon_scout")
        
cs_set_user_bpammo(idCSW_SCOUTget_pcvar_num(cvar_scout_bpammo))
        
cs_set_user_bpammo(tempidCSW_SCOUTget_pcvar_num(cvar_scout_bpammo))
        
        if(
equali(mapname,"some1s_jailbreak"))
        {
            
ct_origin[0] = -2898ct_origin[1] = -2040ct_origin[2] = 37
            te_origin
[0] = -2908te_origin[1] = 905te_origin[2] = 37
            set_user_origin
(id,te_origin)
            
set_user_origin(tempid,ct_origin)
        }
        
        
set_hudmessage02550, -1.00.4025.08.00.00.010)
        
show_hudmessage(0"%L"LANG_PLAYER,"SCOUT_DUEL"challengerchallenged)
    }
    
    
server_cmd"amx_cvar bh_enabled 0" );
    
duel_active true
    
    menu_destroy
(menu)
    return 
PLUGIN_HANDLED
}


public 
beacon(id)
{
    if(
cs_get_user_team(id) == CS_TEAM_CT)
    {
        static 
origin[3]
        
get_user_origin(idorigin)
        
message_begin(MSG_BROADCASTSVC_TEMPENTITY)
        
write_byte(TE_BEAMCYLINDER)    // TE id
        
write_coord(origin[0])         // x
        
write_coord(origin[1])        // y
        
write_coord(origin[2]-20)    // z
        
write_coord(origin[0])        // x axis
        
write_coord(origin[1])        // y axis
        
write_coord(origin[2]+200)    // z axis
        
write_short(beacon_sprite)    // sprite
        
write_byte(0)            // startframe   
        
write_byte(1)            // framerate   
        
write_byte(6)            // life
        
write_byte(2)              // width
        
write_byte(1)               // noise    
        
write_byte(0)              // red  
        
write_byte(0)               // green 
        
write_byte(250)         // blue
        
write_byte(200)            // brightness
        
write_byte(0)            // speed
        
message_end()
    }
    else
    {
        static 
origin[3]
        
get_user_origin(idorigin)
        
message_begin(MSG_BROADCASTSVC_TEMPENTITY)
        
write_byte(TE_BEAMCYLINDER)    // TE id
        
write_coord(origin[0])         // x
        
write_coord(origin[1])        // y
        
write_coord(origin[2]-20)    // z
        
write_coord(origin[0])        // x axis
        
write_coord(origin[1])        // y axis
        
write_coord(origin[2]+200)    // z axis
        
write_short(beacon_sprite)    // sprite
        
write_byte(0)            // startframe   
        
write_byte(1)            // framerate   
        
write_byte(6)            // life
        
write_byte(2)              // width
        
write_byte(1)               // noise    
        
write_byte(250)            // red  
        
write_byte(0)               // green 
        
write_byte(0)             // blue
        
write_byte(200)            // brightness
        
write_byte(0)            // speed
        
message_end()
    }
    
set_task(1.0"beacon"id)
    
}
public 
Event_Change_Weapon(id)
{
    new 
iwpnwclipwammo
    iwpn 
get_user_weapon(idwclipwammo)
    
get_user_ammo(idiwpnwammowclip)
    
    if(
duel_active)
    {
        if(
deagle_duel[id])
        {
            
cs_set_user_bpammo(idCSW_DEAGLE1)
        }
        if(
wammo == 0)
        {
            if(
m3_duel[id])
            {
                
cs_set_user_bpammo(id,CSW_M3,1)
            }
            
        }
    }
}
/*================================================================================
Stocks                    
=================================================================================*/


stock ChatColor(const id, const input[], any:...)
{
    new 
count 1players[32]
    static 
msg[191]
    
vformat(msg190input3)
    
    
replace_all(msg190"!g""^4"// Green Color
    
replace_all(msg190"!y""^1"// Default Color
    
replace_all(msg190"!team""^3"// Team Color
    
    
if (idplayers[0] = id
    
else get_players(playerscount"ch")
    for (new 
0counti++)
    {
        if (
is_user_connected(players))
        {
            
message_begin(MSG_ONE_UNRELIABLEg_msgSayText_players)
            
write_byte(players)
            
write_string(msg)
            
message_end()
        }
    }

[/i][/i][/i][/i][/i]

PAWN
KOD YARDIMCISI


Eklentiyle ilgili her türlü yardımı edebilirim.( jail shop hariç )
İletişim: hassel-vl
Reply
#3
eyw bro Smile
Reply
#4
Çözülmüş İsteklere taşındı.
Steam ID: STEAM_1:0:70428872
Steam Name: Seps!s
Skype: jdm.csplague

Takdir ediliyorsan değil, Taklit ediliyorsan başarmışsın demektir.
Albert Einstein
Reply
#5
asdew
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Pluginde hata lütfen yardım :) tarlacixx 2 4,952 10-04-15, 12:45
Last Post: kedusa
  Say kapama plugini HijyeniK 5 4,669 22-02-15, 14:07
Last Post: ishak0678
  Paraşüt - Bunny - Ctlerde olan bıçak pluginleri lazım gir lütfen Peacemackers 5 4,621 20-02-15, 04:20
Last Post: beoujolf
  bunny ve parasut satknun1997 3 3,644 21-07-14, 15:07
Last Post: dogukan12358
  Nemesis Ve Survival Modda Lazer Kapama 41aaa41 4 4,143 12-08-13, 02:31
Last Post: goktu9797
  Pluginde ses çalışmıyor Pikachu 8 3,956 08-07-13, 04:36
Last Post: akcaliberkk
  Pluginde Model Yüklettme Sorunu (Ayrıntıİçerde) Furkan Dize 3 2,406 23-06-13, 14:06
Last Post: akcaliberkk
  Pluginde ufak bı degisiklik melof 5 2,748 22-05-13, 17:41
Last Post: akcaliberkk
  Bir Publici Başka Bir Pluginde Nasıl Kullanabilirim Furkan Dize 3 3,604 25-04-13, 19:32
Last Post: akcaliberkk
  Lr Pluginine Bunny Kapama ekleme Furkan Dize 2 5,063 20-03-13, 01:58
Last Post: DeaTReX

Foruma Atla:


Users browsing this thread: