Raised This Month: $ Target: $400
 0% 

First Plugin - need help. :/


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
Nelson Mandela
Junior Member
Join Date: Aug 2008
Location: Germany
Old 09-04-2008 , 11:41   First Plugin - need help. :/
Reply With Quote #1

Hey guys.

Im new at scripting and need some help with my first plugin..

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

#define PLUGIN "FH ABILITIES"
#define VERSION "0.2"
#define AUTHOR "felon."
#define ADMINACCESS ADMIN_CHAT

public plugin_init()

{    
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_clcmd( "pimp","pimenu")
}

public pimenu(id)
{
    new menu = menu_create("\rPIMP MENU:", "menu_handler")
    
    menu_additem(menu, "\wHEALTH", "1", 0)
    menu_additem(menu, "\wGRAVITY", "2", 0)
    menu_additem(menu, "\wFOOTSTEPS", "3", 0)
    menu_additem(menu, "\wLONGJUMP", "4", 0)
    menu_additem(menu, "\wMONEY", "5", ADMIN_CHAT)
    menu_additem(menu, "\wVISIBILITY", "6", ADMIN_CHAT)
    menu_additem(menu, "\wNOCLIP", "7", ADMIN_CHAT)
    menu_additem(menu, "\wGODMODE", "8", ADMIN_CHAT)
    menu_additem(menu, "\wALLES", "9", ADMIN_CHAT)
    
    menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
    
    menu_display(id, menu, 0)
    
    set_hudmessage(0, 0, 255, -1.0, 0.3, 0, 6.0, 2.0)
    show_hudmessage(id, "GRAU HINTERLEGTE MENUPUNKTE SIND NUR FUER ADMINS!")
}

public menu_handler(id, menu, item)
{
    if (item == MENU_EXIT)
    {
        menu_destroy(menu)
        
        return PLUGIN_HANDLED
    }
    
    new data[6], iName[64]
    new access, callback
    
    menu_item_getinfo(menu, item, access, data,5, iName, 63, callback)
    
    new key = str_to_num(data)
    
    switch(key)
    {
        case 1:{
            set_user_health(id, 255);
            set_hudmessage(0, 0, 255, -1.0, 0.3, 0, 6.0, 2.0)
            show_hudmessage(id, "YOU GOT 255 HEALTHPOINTS!")
            menu_destroy(menu)
            return PLUGIN_HANDLED
        }
        case 2:{
            set_user_gravity(id, 0.75);
            set_hudmessage(0, 0, 255, -1.0, 0.3, 0, 6.0, 2.0)
            show_hudmessage(id, "GRAVITY IS REDUCED!")
            menu_destroy(menu)
            return PLUGIN_HANDLED
        }
        case 3:{
            set_user_footsteps(id, 1);
            set_hudmessage(0, 0, 255, -1.0, 0.3, 0, 6.0, 2.0)
            show_hudmessage(id, "NO FOOTSTEPS ANYMORE!")
            menu_destroy(menu)
            return PLUGIN_HANDLED
        }
        case 4:{
            give_item(id, "item_longjump");
            set_hudmessage(0, 0, 255, -1.0, 0.3, 0, 6.0, 2.0)
            show_hudmessage(id, "YOU GOT THE LONGJUMP!")
            menu_destroy(menu)
            return PLUGIN_HANDLED
        }
        case 5:{
            cs_set_user_money(id, cs_get_user_money(id) + 10000);
            set_hudmessage(0, 0, 255, -1.0, 0.3, 0, 6.0, 2.0)
            show_hudmessage(id, "YOU GOT 10000$!")
            menu_destroy(menu)
            return PLUGIN_HANDLED
        }
        case 6:{
            set_entity_visibility(id, 0);
            set_hudmessage(0, 0, 255, -1.0, 0.3, 0, 6.0, 2.0)
            show_hudmessage(id, "YOU ARE INVISIBLE!")
            menu_destroy(menu)
            return PLUGIN_HANDLED
        }
        case 7:{
            set_user_noclip(id, 1);
            set_hudmessage(0, 0, 255, -1.0, 0.3, 0, 6.0, 2.0)
            show_hudmessage(id, "YOU GOT NOCLIP!")
            menu_destroy(menu)
            return PLUGIN_HANDLED
        }
        case 8:{
            set_user_godmode(id, 1);
            set_hudmessage(0, 0, 255, -1.0, 0.3, 0, 6.0, 2.0)
            show_hudmessage(id, "YOU GOT GODMODE!")
            menu_destroy(menu)
            return PLUGIN_HANDLED
        }
        case 9:{
            set_user_health(id, 255);
            set_user_gravity(id, 0.75);
            set_user_footsteps(id, 1);
            set_user_godmode(id, 1);
            give_item(id, "item_longjump");
            set_entity_visibility(id, 0);
            set_hudmessage(0, 0, 255, -1.0, 0.3, 0, 6.0, 2.0)
            show_hudmessage(id, "YOU GOT EVERYTHING!")
            menu_destroy(menu)
            return PLUGIN_HANDLED
        }
    }
    
    menu_destroy(menu)
    return PLUGIN_HANDLED
}
The abilites (ex: health) should work just 1 time per round now..
how can i do this?

maybe u guys have sum code?! :/

thank u very much..


best regards,
Danny

PS: Sorry for my english, i'm german..
__________________
...chess is a funsport, when played with shotguns!
Nelson Mandela is offline
Send a message via MSN to Nelson Mandela
anakin_cstrike
Veteran Member
Join Date: Nov 2007
Location: Romania
Old 09-04-2008 , 13:21   Re: First Plugin - need help. :/
Reply With Quote #2

Here:
PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>
#include <engine>

#define PLUGIN "FH ABILITIES"
#define VERSION "0.2"
#define AUTHOR "felon."
#define ADMINACCESS ADMIN_CHAT

new 
g_all[33],g_god[33],g_noclip[33],g_visibility[33],
g_money[33],g_jump[33],g_foot[33],
g_grav[33],g_health[33];
public 
plugin_init()
{    
    
register_plugin(PLUGINVERSIONAUTHOR);
    
register_event("ResetHUD","hook_reset","b");
    
register_event("HLTV","hook_newround","a","1=0","2=0");
    
register_clcmd"pimp","pimenu")
}
public 
hook_reset(id)
{
    
g_all[id] = 0;
    
g_god[id] = 0;
    
g_noclip[id] = 0;
    
g_visibility[id] = 0;
    
g_money[id] = 0;
    
g_jump[id] = 0;
    
g_foot[id] = 0;
    
g_grav[id] = 0;
    
g_health[id] = 0;
}
public 
hook_newround()
{
    new 
players[32],num,id,i;
    
get_players(players,num);
    for(
0;num;i++)
    {
        
id players[i];
        
g_all[id] = 0;
        
g_god[id] = 0;
        
g_noclip[id] = 0;
        
g_visibility[id] = 0;
        
g_money[id] = 0;
        
g_jump[id] = 0;
        
g_foot[id] = 0;
        
g_grav[id] = 0;
        
g_health[id] = 0;
    }
}
public 
pimenu(id)
{
    new 
menu menu_create("\rPIMP MENU:""menu_handler")
    
    
menu_additem(menu"\wHEALTH""1"0)
    
menu_additem(menu"\wGRAVITY""2"0)
    
menu_additem(menu"\wFOOTSTEPS""3"0)
    
menu_additem(menu"\wLONGJUMP""4"0)
    
menu_additem(menu"\wMONEY""5"ADMIN_CHAT)
    
menu_additem(menu"\wVISIBILITY""6"ADMIN_CHAT)
    
menu_additem(menu"\wNOCLIP""7"ADMIN_CHAT)
    
menu_additem(menu"\wGODMODE""8"ADMIN_CHAT)
    
menu_additem(menu"\wALLES""9"ADMIN_CHAT)
    
    
menu_setprop(menuMPROP_EXITMEXIT_ALL)
    
    
menu_display(idmenu0)
    
    
set_hudmessage(00255, -1.00.306.02.0)
    
show_hudmessage(id"GRAU HINTERLEGTE MENUPUNKTE SIND NUR FUER ADMINS!")
}

public 
menu_handler(idmenuitem)
{
    if (
item == MENU_EXIT)
    {
        
menu_destroy(menu)
        
        return 
PLUGIN_HANDLED
    
}
    
    new 
data[6], iName[64]
    new 
accesscallback
    
    menu_item_getinfo
(menuitemaccessdata,5iName63callback)
    
    new 
key str_to_num(data)
    
    switch(
key)
    {
        case 
1:{
            if(
g_health[id])
            {
                
// mesage;
                
return PLUGIN_HANDLED;
            }
            
g_health[id] = 1;
            
set_user_health(id255);
            
set_hudmessage(00255, -1.00.306.02.0)
            
show_hudmessage(id"YOU GOT 255 HEALTHPOINTS!")
            
menu_destroy(menu)
            return 
PLUGIN_HANDLED
        
}
        case 
2:{
            if(
g_grav[id])
            {
                
// mesage;
                
return PLUGIN_HANDLED;
            }
            
g_grav[id] = 1;
            
set_user_gravity(id0.75);
            
set_hudmessage(00255, -1.00.306.02.0)
            
show_hudmessage(id"GRAVITY IS REDUCED!")
            
menu_destroy(menu)
            return 
PLUGIN_HANDLED
        
}    
        case 
3:{
            if(
g_foot[id])
            {
                
// mesage;
                
return PLUGIN_HANDLED;
            }
            
g_foot[id] = 1;
            
set_user_footsteps(id1);
            
set_hudmessage(00255, -1.00.306.02.0)
            
show_hudmessage(id"NO FOOTSTEPS ANYMORE!")
            
menu_destroy(menu)
            return 
PLUGIN_HANDLED
        
}
        case 
4:{
            if(
g_jump[id])
            {
                
// mesage;
                
return PLUGIN_HANDLED;
            }
            
g_jump[id] = 1;
            
give_item(id"item_longjump");
            
set_hudmessage(00255, -1.00.306.02.0)
            
show_hudmessage(id"YOU GOT THE LONGJUMP!")
            
menu_destroy(menu)
            return 
PLUGIN_HANDLED
        
}
        case 
5:{
            if(
g_money[id])
            {
                
// mesage;
                
return PLUGIN_HANDLED;
            }
            
g_money[id] = 1;
            
cs_set_user_money(idcs_get_user_money(id) + 10000);
            
set_hudmessage(00255, -1.00.306.02.0)
            
show_hudmessage(id"YOU GOT 10000$!")
            
menu_destroy(menu)
            return 
PLUGIN_HANDLED
        
}
        case 
6:{
            if(
g_visibility[id])
            {
                
// mesage;
                
return PLUGIN_HANDLED;
            }
            
g_visibility[id] = 1;
            
set_entity_visibility(id0);
            
set_hudmessage(00255, -1.00.306.02.0)
            
show_hudmessage(id"YOU ARE INVISIBLE!")
            
menu_destroy(menu)
            return 
PLUGIN_HANDLED
        
}
        case 
7:{
            if(
g_noclip[id])
            {
                
// mesage;
                
return PLUGIN_HANDLED;
            }
            
g_noclip[id] = 1;
            
set_user_noclip(id1);
            
set_hudmessage(00255, -1.00.306.02.0)
            
show_hudmessage(id"YOU GOT NOCLIP!")
            
menu_destroy(menu)
            return 
PLUGIN_HANDLED
        
}
        case 
8:{
            if(
g_god[id])
            {
                
// mesage;
                
return PLUGIN_HANDLED;
            }
            
g_god[id] = 1;
            
set_user_godmode(id1);
            
set_hudmessage(00255, -1.00.306.02.0)
            
show_hudmessage(id"YOU GOT GODMODE!")
            
menu_destroy(menu)
            return 
PLUGIN_HANDLED
        
}
        case 
9:{
            if(
g_all[id])
            {
                
// mesage;
                
return PLUGIN_HANDLED;
            }
            
g_all[id] = 1;
            
set_user_health(id255);
            
set_user_gravity(id0.75);
            
set_user_footsteps(id1);
            
set_user_godmode(id1);
            
give_item(id"item_longjump");
            
set_entity_visibility(id0);
            
set_hudmessage(00255, -1.00.306.02.0)
            
show_hudmessage(id"YOU GOT EVERYTHING!")
            
menu_destroy(menu)
            return 
PLUGIN_HANDLED
        
}
    }
    
    
menu_destroy(menu)
    return 
PLUGIN_HANDLED

Reset when a player spawns:
PHP Code:
public hook_reset(id)
{
    
g_all[id] = 0;
    
g_god[id] = 0;
    
g_noclip[id] = 0;
    
g_visibility[id] = 0;
    
g_money[id] = 0;
    
g_jump[id] = 0;
    
g_foot[id] = 0;
    
g_grav[id] = 0;
    
g_health[id] = 0;

Reset at new round:
PHP Code:
public hook_newround()
{
    new 
players[32],num,id,i;
    
get_players(players,num);
    for(
0;num;i++)
    {
        
id players[i];
        
g_all[id] = 0;
        
g_god[id] = 0;
        
g_noclip[id] = 0;
        
g_visibility[id] = 0;
        
g_money[id] = 0;
        
g_jump[id] = 0;
        
g_foot[id] = 0;
        
g_grav[id] = 0;
        
g_health[id] = 0;
    }

You can remove engine module by using set_user_rendering instead of set_entity_visibility..
__________________

anakin_cstrike is offline
Nelson Mandela
Junior Member
Join Date: Aug 2008
Location: Germany
Old 09-04-2008 , 17:07   Re: First Plugin - need help. :/
Reply With Quote #3

Thank you very much. Works fine!
+k <3
__________________
...chess is a funsport, when played with shotguns!
Nelson Mandela is offline
Send a message via MSN to Nelson Mandela
Reply


Thread Tools
Display Modes

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:18.


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