Raised This Month: $ Target: $400
 0% 

[EDIT] This Plugin (Excerpt from the idea)


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
Napoleon_be
Veteran Member
Join Date: Jul 2011
Location: Belgium
Old 09-13-2011 , 09:47   Re: [EDIT] CT Menu (Excerpt from the idea)
Reply With Quote #1

PHP Code:
#include <amxmodx> 
#include <cstrike> 
#include <fun> 
#include <fakemeta> 

new g_iChosenOption33 ]; 

new 
bool:g_bBuried33 ]; 

new 
g_pFriendlyFire

enum 

FRIENDLY_FIRE 1
NEW_CT
GIVE_C4
BURY
UNBURY 
}; 

public 
plugin_init() 

register_plugin"CT Menu""1.0""H3avY Ra1n" ); 

register_clcmd"say /ctmenu""Cmd_CTMenu" );
register_clcmd"say /ctm""ctmenu");

g_pFriendlyFire get_cvar_pointer"mp_friendlyfire" ); 


public 
client_connectid 

g_bBuriedid ] = false
g_iChosenOptionid ] = 0



public 
Cmd_CTMenuid 

if( 
cs_get_user_teamid ) != CS_TEAM_CT 

    
client_printidprint_chat"You must be a guard to use this item." ); 
    return 
PLUGIN_HANDLED


new 
hMenu menu_create"CT Menu""CTMenu_Handler" ); 

new 
szFormat32 ]; 

formatexszFormatcharsmaxszFormat ), "Turn %s Friendly Fire"get_pcvar_numg_pFriendlyFire ) ? "Off" "On" ); 

menu_additemhMenuszFormat"1" ); 
menu_additemhMenu"Choose a new CT""2" ); 
menu_additemhMenu"Give C4""3" ); 
menu_additemhMenu"Bury Player""4" ); 
menu_additemhMenu"Unbury Player""5" );

menu_displayidhMenu); 

return 
PLUGIN_CONTINUE


public 
CTMenu_HandleridhMenuiItem 

if( 
iItem == MENU_EXIT || cs_get_user_teamid ) != CS_TEAM_CT 

    
menu_destroyhMenu ); 
    return 
PLUGIN_HANDLED


new 
szData]; 
new 
iAccesshCallback

menu_item_getinfohMenuiItemiAccessszDatacharsmaxszData ), __hCallback ); 


g_iChosenOptionid ] = str_to_numszData ); 

if( 
g_iChosenOptionid ] == FRIENDLY_FIRE 
    
set_pcvar_numg_pFriendlyFireget_pcvar_numg_pFriendlyFire ) ? ); 
    
    else 
ShowPlayerMenuid ); 
    
    
menu_destroyhMenu ); 
    return 
PLUGIN_HANDLED


public 
ShowPlayerMenuid 

    new 
hMenu menu_create"Choose a Player:""PlayerMenu_Handler" ); 
    new 
szName32 ], szInfo]; 
    
    new 
iPlayers32 ], iNum
    
get_playersiPlayersiNum"a" ); 
    
    for( new 
0iPlayeriNumi++ ) 
    {     
        
iPlayer iPlayers]; 
        
        switch( 
g_iChosenOptionid ] ) 
        { 
            case 
NEW_CT: if( cs_get_user_teamiPlayer ) != CS_TEAM_T ) continue; 
                case 
BURY: if( g_bBuriediPlayer ] ) continue; 
                case 
UNBURY: if( !g_bBuriediPlayer ] ) continue; 
            } 
        
        
get_user_nameiPlayerszNamecharsmaxszName ) ); 
        
        
num_to_striPlayerszInfocharsmaxszInfo ) ); 
        
        
menu_additemhMenuszNameszInfo ); 
    } 
    
    
menu_displayidhMenu); 


public 
PlayerMenu_HandleridhMenuiItem 

    if( 
iItem == MENU_EXIT || cs_get_user_teamid ) != CS_TEAM_CT 
    { 
        
menu_destroyhMenu ); 
        return 
PLUGIN_HANDLED
    } 
    
    new 
szData]; 
    new 
iAccesshCallback
    
    
menu_item_getinfohMenuiItemiAccessszDatacharsmaxszData ), __hCallback ); 
    
    new 
iPlayer str_to_numszData ); 
    
    if( !
is_user_aliveiPlayer ) ) 
    { 
        
client_printidprint_chat"That player is no longer alive." ); 
        
        
menu_destroyhMenu ); 
        
        
ShowPlayerMenuid ); 
        
        return 
PLUGIN_HANDLED
    } 
    
    switch( 
g_iChosenOptionid ] ) 
    { 
        case 
BURYbury_playeridiPlayer ); 
            case 
UNBURYunbury_playeridiPlayer ); 
            case 
GIVE_C4give_itemiPlayer"weapon_c4" ); 
            case 
NEW_CTcs_set_user_teamiPlayerCS_TEAM_CT ); 
        } 
    
    
menu_destroyhMenu ); 
    return 
PLUGIN_HANDLED


bury_player(idvictim

new 
name[32], iwpns[32], nwpn[32], iwpn 
get_user_name
(victim,name,31
get_user_weapons(victim,iwpns,iwpn
for(new 
a=0;a<iwpn;++a) { 
    
get_weaponname(iwpns[a],nwpn,31
    
engclient_cmd(victim,"drop",nwpn

engclient_cmd(victim,"weapon_knife"
new 
origin[3
get_user_origin(victimorigin
origin[2] -=    30 
fm_set_user_origin
(victimorigin

client_printidprint_chat"You have successfully buried %s."name ); 

g_bBuriedvictim ] = true
Cmd_CTMenuid ); 


unbury_player(id,victim

new 
name[32], origin[3
get_user_name(victim,name,31
get_user_origin(victimorigin
origin[2] +=    35 
fm_set_user_origin
(victimorigin

client_printidprint_chat"You have successfully unburied %s."name ); 

g_bBuriedvictim ] = false
Cmd_CTMenuid ); 


stock fm_set_user_origin(index/* const */ origin[3]) { 
new 
Float:orig[3
IVecFVec(originorig

return 
fm_entity_set_origin(indexorig


stock fm_entity_set_origin(index, const Float:origin[3]) { 
new 
Float:mins[3], Float:maxs[3
pev(indexpev_minsmins
pev(indexpev_maxsmaxs
engfunc(EngFunc_SetSizeindexminsmaxs

return 
engfunc(EngFunc_SetOriginindexorigin
}  

public 
ctmenu(id)
{
if (
is_user_alive(id) && get_user_team(id) == 2)
{
new 
menu menu_create("\rCT \yMenu""ctmenu_handler")
menu_additem(menu"300 Spartan Mod""1"id)
menu_additem(menu"God Mode for CT""2"id)
menu_display(idmenu0)
menu_setprop(menuMPROP_EXITMEXIT_ALL)
}
}

public 
ctmenu_handler(idmenuitem)
{
new 
Client[33]
get_user_name(idClient32)
if (
is_user_alive(id) && get_user_team(id)==2)
{
switch(
item)
{
    case 
0:
    {
        
give_item(0"weapon_shield")
        
give_item(0"weapon_deagle")
        
give_item(0"ammo_50ae")
        
give_item(0"ammo_50ae")
        
give_item(0"ammo_50ae")
        
give_item(0"ammo_50ae")
        
give_item(0"ammo_50ae")
        
give_item(0"ammo_50ae")
        
give_item(0"ammo_50ae")
    }
    case 
1:
    {
        new 
menu menu_create("God Mode for CT""godmode_handler")
        
menu_additem(menu"Enabled""1"id)
        
menu_additem(menu"Disabled""2"id)
        
menu_display(idmenu0)
        
menu_setprop(menuMPROP_EXITMEXIT_ALL)
    }
}
}
}

public 
godmode_handler(idmenuitem)
{
new 
Client [33]
get_user_name(idClient32)
if (
is_user_alive(id) && get_user_team(id)==2)
{
switch(
item)
{
    case 
0:
    {
        
set_user_godmode(id1)
    }
    case 
1:
    {
        
set_user_godmode(id0)
    }
}
}

Type /ctm to open the menu that you requested. I couldn't test it because my cstrike module doesn't work atm.
Napoleon_be is offline
Send a message via Skype™ to Napoleon_be
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 03:21.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode