Raised This Month: $ Target: $400
 0% 

CurrentRound and sv_restart


  
 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
leonardo_
Member
Join Date: Nov 2012
Location: Moscow, right now in Vic
Old 02-12-2013 , 09:58   Re: CurrentRound and sv_restart
Reply With Quote #10

Quote:
Originally Posted by wickedd View Post
Post your code with the changes that you made.
PHP Code:
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <hamsandwich>
#include <fakemeta_util>
#include <cstrike>

#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "Alexander"
#define MAXPLAYERS 32 + 1


new bool:gbUsed[MAXPLAYERS];
new 
count



public 
plugin_init() 
{
    
register_plugin("Weapon Menu""0.1""Alex");
    
register_clcmd"SpecialMenu","AwesomeMenu");
    
register_logevent"eventRoundEnd"2"1=Round_End" );
    
register_event"HLTV""new_round""a""1=0""2=0" );
    
RegisterHam(Ham_Spawn"player""Spawn_Post"true); // This is called when a player spawn.7
    
register_event("SomethingLikeThat""GiveFreeGrenades""a");
    
register_event"TextMsg""Event_GameWillRestartIn""a""2=#Game_will_restart_in" )
    
//register_logevent("LogEvent_RoundStart", 2, "1 = Round_Start" )
    
}

/*public LogEvent_RoundStart(){
CurrentRound++
}*/

public new_round( )
{
    
count++


public 
Event_GameWillRestartIn( )
{
    
count 0


public 
Spawn_Postid )
{    
    if(
is_user_aliveid ) && count >= 2)
    {
        
AwesomeMenuid )
    }
}  

public 
eventRoundEnd()
{
arraysetgbUsedfalseMAXPLAYERS )
}

public 
client_disconnect(id)
{
gbUsed[id] = false;
}

public 
GiveFreeGrenadesid ){
if(
count >= 0) {
    
give_item(id"weapon_hegrenade")
    
give_item(id"weapon_flashbang")
    
give_item(id"weapon_flashbang")
    
give_item(id"weapon_smokegrenade")
}
}
public 
AwesomeMenu(id)
{
    if(!
gbUsed[id])
    {    
    
    
//first we need to make a variable that will hold the menu
    
new menu menu_create("\rChoose your gun:""menu_handler");
    
//Note - menu_create
    //The first parameter  is what the menu will be titled (what is at the very top)
    //The second parameter is the function that will deal/handle with the menu (which key was pressed, and what to do)
    
    //Now lets add some things to select from the menu
    
menu_additem(menu"\wGet M4A1 + Deagle""1"ADMIN_LEVEL_G);
    
menu_additem(menu"\wGet AK47 + Deagle""2"ADMIN_LEVEL_G);
    
menu_additem(menu"\wGet AWP + Deagle""3"ADMIN_LEVEL_G);
    
//menu_additem(menu, "\wI'm Selection #2", "2", 0);
    //menu_additem(menu, "\wI'm Secret Selection #3", "3", ADMIN_LEVEL_G);
    //Note - menu_additem
    //The first parameter is which menu we will be adding this item/selection to
    //The second parameter is what text will appear on the menu (Note that it is preceeded with a number of which item it is)
    //The third parameter is data that we want to send with this item
    //The fourth parameter is which admin flag we want to be able to access this item (Refer to the admin flags from the amxconst.inc)
    //The fifth parameter is the callback for enabling/disabling items, by default we will omit this and use no callback (default value of -1) Refer to the Menu Items with Callbacks section for more information.
    
    //Set a property on the menu
    
menu_setprop(menuMPROP_EXITMEXIT_ALL);
    
//Note - menu_setprop
    //The first parameter is the menu to modify
    //The second parameter is what to modify (found in amxconst.inc)
    //The third parameter is what to modify it to (in this case, we are adding a option to the menu that will exit the menu. setting it to MEXIT_NEVER will disable this option)
    
    //Lets display the menu
    
menu_display(idmenu0);
    
//Note - menu_display
    //The first parameter is which index to show it to (you cannot show this to everyone at once)
    //The second parameter is which menu to show them (in this case, the one we just made)
    //The third parameter is which page to start them on
    
}
}
//okay, we showed them the menu, now lets handle it (looking back at menu_create, we are going to use that function)
public menu_handler(idmenuitem)
{
//we don't want to deal with them if they exited a menu
if( item == MENU_EXIT )
{
menu_destroy(menu);
    
//Note that you will want to destroy the menu after they do something
return PLUGIN_HANDLED;
}

//now lets create some variables that will give us information about the menu and the item that was pressed/chosen
new data[6], szName[64];
new 
accesscallback;
//heres the function that will give us that information (since it doesnt magicaly appear)
menu_item_getinfo(menuitemaccessdata,charsmax(data), szName,charsmax(szName), callback);

//Note - that you can do this next step how you want, this is just the way I prefer

//looking back to menu_additem, we sent data with every item we added, this is where it gets a little fishy for us (where you can do your own method)
new key str_to_num(data);
//note that all my datas were numbers (you can do it with whatever type of string you want)

//now lets find which item was pressed
switch(key)
{
    case 
1:
    {
        new 
bool:HasC4
        
if (user_has_weapon(idCSW_C4) && get_user_team(id) == 1
            
HasC4 true
        else 
            
HasC4 false
        
strip_user_weaponsid )
        
give_item(id"weapon_m4a1")
        
give_item(id,"ammo_556nato")
        
give_item(id,"ammo_556nato")
        
give_item(id,"ammo_556nato")
        
give_item(id,"ammo_556nato")
        
give_item(id"weapon_deagle")
        
give_item(id,"ammo_50ae")
        
give_item(id,"ammo_50ae")
        
give_item(id,"ammo_50ae")
        
give_item(id,"ammo_50ae")
        
give_item(id,"ammo_50ae")
        
give_item(id,"ammo_50ae")
        
give_item(id,"ammo_50ae")
        
give_item(id,"weapon_knife")
        
give_item(id"item_assaultsuit")
        
give_item(id"item_thighpack")
        
        if (
HasC4
        { 
            
give_item(id"weapon_c4"); 
            
cs_set_user_plantid ); 
        } 
        
        
client_print(idprint_center"You got free M4A1 + Deagle");
        
gbUsed[id] = true;
        
//note that if we dont want to continue through the function, we can't just end with a return. We want to kill the menu first
        
menu_destroy(menu);
        return 
PLUGIN_HANDLED;
    }
    case 
2:
    {
        new 
bool:HasC4;
        if (
user_has_weapon(idCSW_C4) && get_user_team(id) == 1
            
HasC4 true
        else 
            
HasC4 false
        
strip_user_weaponsid )
        
give_item(id,"weapon_ak47")
        
give_item(id,"ammo_762nato")
        
give_item(id,"ammo_762nato")
        
give_item(id,"ammo_762nato")
        
give_item(id,"ammo_762nato")
        
give_item(id,"weapon_deagle")
        
give_item(id,"ammo_50ae")
        
give_item(id,"ammo_50ae")
        
give_item(id,"ammo_50ae")
        
give_item(id,"ammo_50ae")
        
give_item(id,"ammo_50ae")
        
give_item(id,"ammo_50ae")
        
give_item(id,"ammo_50ae")
        
give_item(id,"weapon_knife")
        
give_item(id,"item_assaultsuit")
        
give_item(id,"item_thighpack")
        if (
HasC4
        { 
            
give_item(id"weapon_c4"); 
            
cs_set_user_plantid ); 
        } 
        
client_print(idprint_chat"OH YEAH! YOU GOT NICE AK + DEAGLE!");
    }
    case 
3//again i don't have experience with the admin limitations, so i don't know if you need to have a check before this (im assuming you don't though ^_^)
        
{
        new 
bool:HasC4;
        if (
user_has_weapon(idCSW_C4) && get_user_team(id) == 1)     
            
HasC4 true
        else 
            
HasC4 false
        
strip_user_weaponsid )
        
give_item(id"weapon_awp")
        
give_item(id,"ammo_338magnum")
        
give_item(id,"ammo_338magnum")
        
give_item(id,"ammo_338magnum")
        
give_item(id,"ammo_338magnum")
        
give_item(id"weapon_deagle")
        
give_item(id,"ammo_50ae")
        
give_item(id,"ammo_50ae")
        
give_item(id,"ammo_50ae")
        
give_item(id,"ammo_50ae")
        
give_item(id,"ammo_50ae")
        
give_item(id,"ammo_50ae")
        
give_item(id,"ammo_50ae")
        
give_item(id,"weapon_knife")
        
give_item(id"item_assaultsuit")
        
give_item(id"item_thighpack")
        if (
HasC4
        { 
            
give_item(id"weapon_c4"); 
            
cs_set_user_plantid ); 
        } 
        
client_print(idprint_chat"OH YEAH! YOU GOT NICE AWP + DEAGLE!");
    }
}

//lets finish up this function with a menu_destroy, and a return
menu_destroy(menu);
return 
PLUGIN_HANDLED;

__________________
www.Deagle-Shot.ru - Game Community

Last edited by leonardo_; 02-12-2013 at 09:59.
leonardo_ is offline
Send a message via ICQ to leonardo_ Send a message via Skype™ to leonardo_
 



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 20:36.


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