• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

Lua how i can set on monster icon

Erikas Kontenis

Excellent OT User
Joined
Jul 3, 2009
Messages
1,938
Reaction score
682
Location
Lithuania
hello, i would like to request how to place to monster party icon and the monster will allways have that party icon, even if you not in party, just random monster standing with party icon or skull.
 
you can use parameters skull, shield and emblem (0.4+ only)
[cpp]//
if(readXMLString(root, "skull", strValue))
mType->skull = getSkulls(strValue);

if(readXMLString(root, "shield", strValue))
mType->partyShield = getShields(strValue);

if(readXMLString(root, "emblem", strValue))
mType->guildEmblem = getEmblems(strValue);[/cpp]
valid values:
[cpp]Skulls_t getSkulls(std::string strValue)
{
std::string tmpStrValue = asLowerCaseString(strValue);
if(tmpStrValue == "black" || tmpStrValue == "5")
return SKULL_BLACK;

if(tmpStrValue == "red" || tmpStrValue == "4")
return SKULL_RED;

if(tmpStrValue == "white" || tmpStrValue == "3")
return SKULL_WHITE;

if(tmpStrValue == "green" || tmpStrValue == "2")
return SKULL_GREEN;

if(tmpStrValue == "yellow" || tmpStrValue == "1")
return SKULL_YELLOW;

return SKULL_NONE;
}

PartyShields_t getShields(std::string strValue)
{
std::string tmpStrValue = asLowerCaseString(strValue);
if(tmpStrValue == "whitenoshareoff" || tmpStrValue == "10")
return SHIELD_YELLOW_NOSHAREDEXP;

if(tmpStrValue == "blueshareoff" || tmpStrValue == "9")
return SHIELD_BLUE_NOSHAREDEXP;

if(tmpStrValue == "yellowshareblink" || tmpStrValue == "8")
return SHIELD_YELLOW_NOSHAREDEXP_BLINK;

if(tmpStrValue == "blueshareblink" || tmpStrValue == "7")
return SHIELD_BLUE_NOSHAREDEXP_BLINK;

if(tmpStrValue == "yellowshareon" || tmpStrValue == "6")
return SHIELD_YELLOW_SHAREDEXP;

if(tmpStrValue == "blueshareon" || tmpStrValue == "5")
return SHIELD_BLUE_SHAREDEXP;

if(tmpStrValue == "yellow" || tmpStrValue == "4")
return SHIELD_YELLOW;

if(tmpStrValue == "blue" || tmpStrValue == "3")
return SHIELD_BLUE;

if(tmpStrValue == "whiteyellow" || tmpStrValue == "2")
return SHIELD_WHITEYELLOW;

if(tmpStrValue == "whiteblue" || tmpStrValue == "1")
return SHIELD_WHITEBLUE;

return SHIELD_NONE;
}

GuildEmblems_t getEmblems(std::string strValue)
{
std::string tmpStrValue = asLowerCaseString(strValue);
if(tmpStrValue == "blue" || tmpStrValue == "3")
return EMBLEM_BLUE;

if(tmpStrValue == "red" || tmpStrValue == "2")
return EMBLEM_RED;

if(tmpStrValue == "green" || tmpStrValue == "1")
return EMBLEM_GREEN;

return EMBLEM_NONE;
}[/cpp]
 
the same function is in npc.cpp if i copy required parts to monster.cpp such as, it will work?

LUA:
        if(readXMLString(root, "skull", strValue))
        {
                std::string tmpStrValue = asLowerCaseString(strValue);
                if(tmpStrValue == "red" || tmpStrValue == "4")
                        setSkull(SKULL_RED);
                else if(tmpStrValue == "white" || tmpStrValue == "3")
                        setSkull(SKULL_WHITE);
                else if(tmpStrValue == "green" || tmpStrValue == "2")
                        setSkull(SKULL_GREEN);
                else if(tmpStrValue == "yellow" || tmpStrValue == "1")
                        setSkull(SKULL_YELLOW);
                else
                        setSkull(SKULL_NONE);
        }

        if(readXMLString(root, "shield", strValue))
        {
                std::string tmpStrValue = asLowerCaseString(strValue);
                if(tmpStrValue == "whitenoshareoff" || tmpStrValue == "10")
                        setShield(SHIELD_YELLOW_NOSHAREDEXP);
                else if(tmpStrValue == "blueshareoff" || tmpStrValue == "9")
                        setShield(SHIELD_BLUE_NOSHAREDEXP);
                else if(tmpStrValue == "yellowshareblink" || tmpStrValue == "8")
                        setShield(SHIELD_YELLOW_NOSHAREDEXP_BLINK);
                else if(tmpStrValue == "blueshareblink" || tmpStrValue == "7")
                        setShield(SHIELD_BLUE_NOSHAREDEXP_BLINK);
                else if(tmpStrValue == "yellowshareon" || tmpStrValue == "6")
                        setShield(SHIELD_YELLOW_SHAREDEXP);
                else if(tmpStrValue == "blueshareon" || tmpStrValue == "5")
                        setShield(SHIELD_BLUE_SHAREDEXP);
                else if(tmpStrValue == "yellow" || tmpStrValue == "4")
                        setShield(SHIELD_YELLOW);
                else if(tmpStrValue == "blue" || tmpStrValue == "3")
                        setShield(SHIELD_BLUE);
                else if(tmpStrValue == "whiteyellow" || tmpStrValue == "2")
                        setShield(SHIELD_WHITEYELLOW);
                else if(tmpStrValue == "whiteblue" || tmpStrValue == "1")
                        setShield(SHIELD_WHITEBLUE);
                else
                        setShield(SHIELD_NONE);
        }
 

Similar threads

Back
Top