xUniverse 18 Posted November 12, 2018 Share Posted November 12, 2018 Hi, I wanna put different effects on weapons according to the linked stones. For example, if the weapon has a Stone against Warrior will have a red effect. I tried to do it only checking the socket0 with GetSocket(0) in the function __GetRefinedEffect of InstanceBase.cpp case CItemData::WEAPON_FAN: long stoneIdx0 = pItem->GetSocket(0); if (stoneIdx0 == VNUM_STONE_AGAINST_WARRIOR) { m_swordRefineEffectRight = EFFECT_REFINED+EFFECT_WEAPON_RED; } else { m_swordRefineEffectRight = EFFECT_REFINED+EFFECT_FANBELL_REFINED7+refine-7; } break; But when I tested the weapon looks with the normal effect: EFFECT_FANBELL_REFINED7+refine-7 How I can get the vnum of the socket0 in binary? is possible? Link to comment Share on other sites More sharing options...
Premium r00t 123 Posted November 13, 2018 Premium Share Posted November 13, 2018 VNUM_STONE_AGAINST_WARRIOR is declared somewhere? 1 Link to comment Share on other sites More sharing options...
xUniverse 18 Posted November 13, 2018 Author Share Posted November 13, 2018 En 13/11/2018 a las 5:36, r00t dijo: VNUM_STONE_AGAINST_WARRIOR is declared somewhere? Is declared in InstanceBase.h. But it's only an example, you can replace it for the vnum if (stoneIdx0 == xxxx) and is the same result EDIT: # PROBLEM is CItemData works only with client, so pItem->GetSocket(index) will be always 0. Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now