AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   undefined symbol (https://forums.alliedmods.net/showthread.php?t=293828)

yas17sin 02-11-2017 18:31

undefined symbol
 
Hi guys.

i have this errors and i don't know what cause them here is the compile error pictures : http://prntscr.com/e7kf5e

and here is the code :
PHP Code:

#include <amxmodx>
#include <cstrike>
#include <fun>
#include <hamsandwich>
#include <levels>

#define PLUGIN "CSO level System"
#define VERSION "1.0"
#define AUTHOR "yas17sin"

new menu;



public 
plugin_init()
{
    
register_pluginPLUGINVERSIONAUTHOR )
    
register_clcmd"buy""main_menu" )
    
RegisterHam(Ham_Spawn"player""FwdPlayerSpawnPost"1);
}
public 
main_menuid )
{
    if(!
is_user_aliveid ) )
        return;
    
    
menu menu_create"Weapon Menu""menu_handler" );
    
    
menu_additemmenu"Pistol Menu""")
    
menu_additemmenu"Assault Menu """)
    
menu_additemmenu"Knife Menu """)
    
    
menu_displayidmenu);
}
    
public 
menu_handleridmenuitem )
{
    switch( 
item )
    {
        case 
0:
        {
            
Pistols_submenuid );
        }
        case 
1:
        {
            
Assault_submenuid );
        }
        case 
2:
        {
            
Knife_submenuid );
        }
        case 
MENU_EXIT:
        {
            
client_printidprint_center"Good Luck And Be a Pro Umbrella Soilder");
        }
    }
    
menu_destroymenu );
    return 
PLUGIN_HANDLED;
}
Pistols_submenuid )
{
    
menu menu_create"Pistols Menu""submenu_handler" );
    
    
menu_additemmenu"Dual Elite[lvl:0]""")
    
menu_additemmenu"Blarog-I[lvl:2]""")
    
menu_additemmenu"Dual Infinity[lvl:5]""")
    
    
menu_displayidmenu)
}
public 
submenu_handleridmenuitem )
{
    switch( 
item )
    {
        case 
0:
        {
            
give_itemid"weapon_elite" )
            
cs_set_user_bpammoidCSW_ELITE120 )
            if( 
is_user_connectedid ) && ( get_user_level(id) == ) )
        }
        case 
1:
        {
            
client_cmdid"get_b1" )
            if( 
is_user_connectedid ) && ( get_user_level(id) == ) )
        }
        case 
2:
        {
            
client_cmdid"get_infiniy" )
            if( 
is_user_connectedid ) && ( get_user_level(id) == ) )
        }
        case 
MENU_EXIT:
        {
            if( 
is_user_connectedid ) )
            
main_menuid );
        }
    }
    
menu_destroymenu );
    return 
PLUGIN_HANDLED;
}
Assault_submenuid )
{
    
menu menu_create"Assault Menu""submenu2_handler" )
    
    
menu_additemmenu"AK-47[lvl:1]""")
    
menu_additemmenu"M4A1[lvl:3]""")
    
menu_additemmenu"Gilboa-Viper[lvl:5]""")
    
menu_additemmenu"Gauss Sniper[lvl:8]""")
    
    
menu_displayidmenu)
}
public 
submenu2_handleridmenuitem)
{
    switch( 
item )
    {
        case 
0:
        {
            
give_itemid"weapon_m4a1" )
            
cs_set_user_bpammoidCSW_M4A190 )
            if( 
is_user_connectedid ) && ( get_user_level(id) == ) )
        }
        case 
1:
        {
            
give_itemid"weapon_ak47" )
            
cs_set_user_bpammoidCSW_AK4790 )
            if( 
is_user_connectedid ) && ( get_user_level(id) == ) )
        }
        case 
2:
        {
            
client_cmdid"get_gl" )
            if( 
is_user_connectedid ) && ( get_user_level(id) == ) )
        }
        case 
3:
        {
            
client_cmdid"get_gs" )
            if( 
is_user_connectedid ) && ( get_user_level(id) == ) )
        }
        case 
MENU_EXIT:
        {
            if( 
is_user_connectedid ) )
            
main_menuid );
        }
    }
    
menu_destroymenu );
    return 
PLUGIN_HANDLED;
}
Knife_submenuid )
{
    
menu menu_create"Knife Menu""submenu3_handler" )
    
    
menu_additemmenu"Normal Knife[lvl:0]""")
    
menu_additemmenu"Katana[lvl:8]"""ADMIN_BAN )
    
    
menu_displayidmenu)
}
public 
submenu3_handleridmenuitem )
{
    switch( 
item )
    {
        case 
0:
        {
            
give_itemid"weapon_knife" )
            if( 
is_user_connectedid ) && ( get_user_level(id) == ) )
        }
        case 
1:
        {
            
client_cmdid"get_katana" )
            if( 
is_user_connectedid ) && ( get_user_level(id) == ) )
        }
        case 
MENU_EXIT:
        {
            if( 
is_user_connectedid ) )
            
main_menuid );
        }
    }
    
menu_destroymenu );
    return 
PLUGIN_HANDLED;
}
public 
FwdPlayerSpawnPost(id)
{
    if(
is_user_alive(id)) 
    {
        
main_menuid );
    }        


Thanks for Advance.

edon1337 02-11-2017 18:52

Re: undefined symbol
 
Move them to the top of the code or make them stocks (Assault_Menu, Knife_Menu, Pistol_Menu).

yas17sin 02-11-2017 18:58

Re: undefined symbol
 
both didn't work

Black Rose 02-11-2017 19:12

Re: undefined symbol
 
I highlighted some lines, they seem to be in the wrong order.
These errors are common when the compiler cannot find the functions in the code because of incorrect usage of curly brackets.

Code:
#include <amxmodx> #include <cstrike> #include <fun> #include <hamsandwich> #include <levels> #define PLUGIN "CSO level System" #define VERSION "1.0" #define AUTHOR "yas17sin" new menu; public plugin_init() {     register_plugin( PLUGIN, VERSION, AUTHOR )     register_clcmd( "buy", "main_menu" )     RegisterHam(Ham_Spawn, "player", "FwdPlayerSpawnPost", 1); } public main_menu( id ) {     if(!is_user_alive( id ) )     return;     menu = menu_create( "Weapon Menu", "menu_handler" );     menu_additem( menu, "Pistol Menu", "", 0 )     menu_additem( menu, "Assault Menu ", "", 0 )     menu_additem( menu, "Knife Menu ", "", 0 )     menu_display( id, menu, 0 ); } public menu_handler( id, menu, item ) {     switch( item )     {         case 0:         {             Pistols_submenu( id );         }         case 1:         {             Assault_submenu( id );         }         case 2:         {             Knife_submenu( id );         }         case MENU_EXIT:         {             client_print( id, print_center, "Good Luck And Be a Pro Umbrella Soilder");         }     }     menu_destroy( menu );     return PLUGIN_HANDLED; } Pistols_submenu( id ) {     menu = menu_create( "Pistols Menu", "submenu_handler" );     menu_additem( menu, "Dual Elite[lvl:0]", "", 0 )     menu_additem( menu, "Blarog-I[lvl:2]", "", 0 )     menu_additem( menu, "Dual Infinity[lvl:5]", "", 0 )     menu_display( id, menu, 0 ) } public submenu_handler( id, menu, item ) {     switch( item )     {         case 0:         {             give_item( id, "weapon_elite" )             cs_set_user_bpammo( id, CSW_ELITE, 120 )             if( is_user_connected( id ) && ( get_user_level(id) == 0 ) )         }         case 1:         {             client_cmd( id, "get_b1" )             if( is_user_connected( id ) && ( get_user_level(id) == 2 ) )         }         case 2:         {             client_cmd( id, "get_infiniy" )             if( is_user_connected( id ) && ( get_user_level(id) == 5 ) )         }         case MENU_EXIT:         {             if( is_user_connected( id ) )             main_menu( id );         }     }     menu_destroy( menu );     return PLUGIN_HANDLED; } Assault_submenu( id ) {     menu = menu_create( "Assault Menu", "submenu2_handler" )     menu_additem( menu, "AK-47[lvl:1]", "", 0 )     menu_additem( menu, "M4A1[lvl:3]", "", 0 )     menu_additem( menu, "Gilboa-Viper[lvl:5]", "", 0 )     menu_additem( menu, "Gauss Sniper[lvl:8]", "", 0 )     menu_display( id, menu, 0 ) } public submenu2_handler( id, menu, item) {     switch( item )     {         case 0:         {             give_item( id, "weapon_m4a1" )             cs_set_user_bpammo( id, CSW_M4A1, 90 )             if( is_user_connected( id ) && ( get_user_level(id) == 1 ) )         }         case 1:         {             give_item( id, "weapon_ak47" )             cs_set_user_bpammo( id, CSW_AK47, 90 )             if( is_user_connected( id ) && ( get_user_level(id) == 3 ) )         }         case 2:         {             client_cmd( id, "get_gl" )             if( is_user_connected( id ) && ( get_user_level(id) == 5 ) )         }         case 3:         {             client_cmd( id, "get_gs" )             if( is_user_connected( id ) && ( get_user_level(id) == 8 ) )         }         case MENU_EXIT:         {             if( is_user_connected( id ) )             main_menu( id );         }     }     menu_destroy( menu );     return PLUGIN_HANDLED; } Knife_submenu( id ) {     menu = menu_create( "Knife Menu", "submenu3_handler" )     menu_additem( menu, "Normal Knife[lvl:0]", "", 0 )     menu_additem( menu, "Katana[lvl:8]", "", ADMIN_BAN )     menu_display( id, menu, 0 ) } public submenu3_handler( id, menu, item ) {     switch( item )     {         case 0:         {             give_item( id, "weapon_knife" )             if( is_user_connected( id ) && ( get_user_level(id) == 0 ) )         }         case 1:         {             client_cmd( id, "get_katana" )             if( is_user_connected( id ) && ( get_user_level(id) == 8 ) )         }         case MENU_EXIT:         {             if( is_user_connected( id ) )             main_menu( id );         }     }     menu_destroy( menu );     return PLUGIN_HANDLED; } public FwdPlayerSpawnPost(id) {     if(is_user_alive(id))     {         main_menu( id );     }         }

yas17sin 02-11-2017 20:03

Re: undefined symbol
 
i don't know why but i still get these errors : http://prntscr.com/e7lbgz

Black Rose 02-11-2017 20:31

Re: undefined symbol
 
I haven't done anything with the code, I just pointed to where your problem actually is.
You have to move the lines i highlighted.

For example:
Code:
        case 0:         {             give_item( id, "weapon_elite" )             cs_set_user_bpammo( id, CSW_ELITE, 120 )             if(is_user_connected( id ) && ( get_user_level(id) == 0))         }
I'm guessing it should really be:
Code:
        case 0:         {             if(is_user_connected( id ) && ( get_user_level(id) == 0))             {                 give_item( id, "weapon_elite" )                 cs_set_user_bpammo( id, CSW_ELITE, 120 )             }         }

Black Rose 02-11-2017 21:51

Re: undefined symbol
 
The log file will contain the reason for the bad load so start by checking those (cstrike/logs and cstrike/addons/amxmodx/logs). My guess is that you're missing the levels API ("native/function not found")

yas17sin 02-11-2017 21:58

Re: undefined symbol
 
the log have nothing and i fix it.
but i don't know how player will level up. it's my first work with level things.

any idea how could i make player level up ?

and here is the code full fixed :
PHP Code:

#include <amxmodx>
#include <cstrike>
#include <fun>
#include <hamsandwich>
#include <levels>

#define PLUGIN "CSO level System"
#define VERSION "1.0"
#define AUTHOR "yas17sin"

new menu;

public 
plugin_init()
{
    
register_pluginPLUGINVERSIONAUTHOR )
    
register_clcmd"say /i""main_menu" )
    
RegisterHam(Ham_Spawn"player""FwdPlayerSpawnPost"1);
}
public 
main_menuid )
{
    if(!
is_user_aliveid ) )
    return;

    
menu menu_create"Weapon Menu""menu_handler" );

    
menu_additemmenu"Pistol Menu""")
    
menu_additemmenu"Assault Menu """)
    
menu_additemmenu"Knife Menu """)

    
menu_displayidmenu);
}

public 
menu_handleridmenuitem )
{
    switch( 
item )
    {
        case 
0:
        {
            
Pistols_submenuid );
        }
        case 
1:
        {
            
Assault_submenuid );
        }
        case 
2:
        {
            
Knife_submenuid );
        }
        case 
MENU_EXIT:
        {
            
client_printidprint_center"Good Luck And Be a Pro Player");
        }
    }
    
menu_destroymenu );
    return 
PLUGIN_HANDLED;
}
Pistols_submenuid )
{
    
menu menu_create"Pistols Menu""submenu_handler" );

    
menu_additemmenu"Dual Elite[lvl:0]""")
    
menu_additemmenu"Blarog-I[lvl:2]""")
    
menu_additemmenu"Dual Infinity[lvl:5]""")

    
menu_displayidmenu)
}
public 
submenu_handleridmenuitem )
{
    switch( 
item )
    {
        case 
0:
        {
            if(
is_user_connectedid ) && ( get_user_level(id) == 0))
            {
                
give_itemid"weapon_elite" )
                
cs_set_user_bpammoidCSW_ELITE120 )
            }
        }
        case 
1:
        {
        if( 
is_user_connectedid ) && ( get_user_level(id) == ) )
            {
            
client_cmdid"get_b1" )
            }
        }
        case 
2:
        if( 
is_user_connectedid ) && ( get_user_level(id) == ) )
        {
            {
            
client_cmdid"get_infiniy" )
            }
        }
        case 
MENU_EXIT:
        {
            if( 
is_user_connectedid ) )
            
main_menuid );
        }
    }
    
menu_destroymenu );
    return 
PLUGIN_HANDLED;
}
Assault_submenuid )
{
    
menu menu_create"Assault Menu""submenu2_handler" )

    
menu_additemmenu"AK-47[lvl:1]""")
    
menu_additemmenu"M4A1[lvl:3]""")
    
menu_additemmenu"Gilboa-Viper[lvl:5]""")
    
menu_additemmenu"Gauss Sniper[lvl:8]""")

    
menu_displayidmenu)
}
public 
submenu2_handleridmenuitem)
{
    switch( 
item )
    {
        case 
0:
        if( 
is_user_connectedid ) && ( get_user_level(id) == ) )
        {
            {
            
give_itemid"weapon_m4a1" )
            
cs_set_user_bpammoidCSW_M4A190 )
            }
        }
        case 
1:
        if( 
is_user_connectedid ) && ( get_user_level(id) == ) )
        {
            {
            
give_itemid"weapon_ak47" )
            
cs_set_user_bpammoidCSW_AK4790 )
            }
        }
        case 
2:
        if( 
is_user_connectedid ) && ( get_user_level(id) == ) )
        {
            {
            
client_cmdid"get_gl" )
            }
        }
        case 
3:
        if( 
is_user_connectedid ) && ( get_user_level(id) == ) )
        {
            {
            
client_cmdid"get_gs" )
            }
        }
        case 
MENU_EXIT:
        {
            if( 
is_user_connectedid ) )
            
main_menuid );
        }
    }
    
menu_destroymenu );
    return 
PLUGIN_HANDLED;
}
Knife_submenuid )
{
    
menu menu_create"Knife Menu""submenu3_handler" )

    
menu_additemmenu"Normal Knife[lvl:0]""")
    
menu_additemmenu"Katana[lvl:8]"""ADMIN_BAN )

    
menu_displayidmenu)
}
public 
submenu3_handleridmenuitem )
{
    switch( 
item )
    {
        case 
0:
        if( 
is_user_connectedid ) && ( get_user_level(id) == ) )
        {
            {
            
give_itemid"weapon_knife" )
            }
        }
        case 
1:
        if( 
is_user_connectedid ) && ( get_user_level(id) == ) )
        {
            {
            
client_cmdid"get_katana" )
            }
        }
        case 
MENU_EXIT:
        {
            if( 
is_user_connectedid ) )
            
main_menuid );
        }
    }
    
menu_destroymenu );
    return 
PLUGIN_HANDLED;
}
public 
FwdPlayerSpawnPost(id)
{
    if(
is_user_alive(id)) 
    {
        
main_menuid );
    }        
}
public 
plugin_natives()
{
    
register_native("get_user_level""native_get_user_level"1);
}
public 
native_get_user_level(id)
{
    return;



Natsheh 02-12-2017 02:39

Re: undefined symbol
 
PHP Code:

Raise_level(index)
{
          If( 
user_level[index] == MAXLEVELS)
                       return
          
user_level[index] ++


heres an example....

yas17sin 02-12-2017 03:06

Re: undefined symbol
 
can you edit the code contain the function. because i have no idea how this should work. sorry.


All times are GMT -4. The time now is 20:57.

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