AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   tag mismatch (https://forums.alliedmods.net/showthread.php?t=316897)

Saint Sinner 06-16-2019 13:03

tag mismatch
 
what can cause this error?

test.sma(84 -- 85) : warning 213: tag mismatch
test.sma(88 -- 89) : warning 213: tag mismatch
test.sma(92 -- 93) : warning 213: tag mismatch

Code:

#include <amxmodx>
#include <fun>
#include <fakemeta>
#include <hamsandwich>
 
#define MAX_WAYS 32
 
enum Duel_Rush
{
    Duel_Arena = 1,
    Rush_Arena
}
 
enum Duel_Hp
{
    KNIFE1 = 1,
    KNIFE35,
    KNIFE100
}
 
enum Duel_Types
{
    SLASH = 1,
    STAB,
    HEAD
}
 
enum Duel_Configs
{
    Duel_Hp:Hp_On,
    Duel_Types:Types_On,
    Duel_Rush:Arenas_On,
}
 
new All_Configs[MAX_WAYS+1][Duel_Configs]
new szTmp[192];
 
public plugin_init()
{
    register_clcmd("say /x","First_Menu")
}
 

 
 
public First_Menu(id)
{
    new menu = menu_create("\y[\r Duel Menu\y ]\w By raizo","First_Menu_Handle")
 
    formatex(szTmp,charsmax(szTmp),"Choose Arena \r%s",PartArenas(All_Configs[id][Arenas_On]));
    menu_additem(menu,szTmp,"1")
 
    formatex(szTmp,charsmax(szTmp),"Choose Battle Type \r%s",PartTypes(All_Configs[id][Types_On]));
    menu_additem(menu,szTmp,"2")
 
    formatex(szTmp,charsmax(szTmp),"Choose Hp \r%s",PartHp(All_Configs[id][Hp_On]));
    menu_additem(menu,szTmp,"3")
 
 
    menu_display(id,menu)
 
    return PLUGIN_HANDLED;
}
 
 
public First_Menu_Handle(id,menu,item)
{
    if(item == MENU_EXIT)
    {
        menu_destroy(menu);
     
        return PLUGIN_HANDLED;
    }
 
    new data[3], iName[64]
    new access, callback;
    menu_item_getinfo(menu, item, access, data,2, iName, 63, callback);
    new key = str_to_num(data)
 
    switch(key)
    {
            case 1:
                {
            All_Configs[id][Arenas_On] = ( ++All_Configs[id][Arenas_On] > (Duel_Rush:2) ) ? (Duel_Rush:1) :All_Configs[id][Arenas_On]
                }
            case 2:
                {
            All_Configs[id][Types_On] = ( ++All_Configs[id][Types_On] > (Duel_Types:3) ) ? (Duel_Types:1) :All_Configs[id][Types_On]
            }
            case 3:
                {
            All_Configs[id][Hp_On] = ( ++All_Configs[id][Hp_On] > (Duel_Hp:3) ) ? (Duel_Hp:1) :All_Configs[id][Hp_On]
            }
 
 
    }
 
    menu_destroy(menu);
 
    First_Menu(id)
 
    return PLUGIN_HANDLED;
}
 
PartHp(Duel_Hp:part)
{
    new szResult[64]
    switch(part)
    {
        case KNIFE1:    copy(szResult, charsmax(szResult), "1HP");
        case KNIFE35:  copy(szResult, charsmax(szResult), "35HP");
        case KNIFE100:  copy(szResult, charsmax(szResult), "100HP");
        default:    copy(szResult, charsmax(szResult), "");
    }
    return szResult;
}
 
PartTypes(Duel_Types:part)
{
    new szResult[64]
    switch(part)
    {
        case SLASH: copy(szResult, charsmax(szResult), "Stab (mouse 2)");
        case STAB:  copy(szResult, charsmax(szResult), "Slash (mouse 1)");
        case HEAD:  copy(szResult, charsmax(szResult), "Only Headshoot");
        default:    copy(szResult, charsmax(szResult), "");
    }
    return szResult;
}
 
PartArenas(Duel_Rush:part)
{
    new szResult[64]
    switch(part)
    {
        case Duel_Arena:    copy(szResult, charsmax(szResult), "Duel");
        case Rush_Arena:    copy(szResult, charsmax(szResult), "Rush");
        default:            copy(szResult, charsmax(szResult), "");
    }
    return szResult;
}


<VeCo> 06-16-2019 13:16

Re: tag mismatch
 
Just Pawn being dumb. Arrays inherit the tags of enums inside.
It's a real pain in the ass dealing with tags, using them so liberally isn't worth the trouble imo, although I understand the appeal.

PHP Code:

new _:All_Configs[MAX_WAYS+1][Duel_Configs


OciXCrom 06-16-2019 13:39

Re: tag mismatch
 
This has been fixed in 1.9.


All times are GMT -4. The time now is 17:26.

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