Jump to content

[HELP] How I can get the vnum of the socket0 of a weapon in client binary?


Recommended Posts

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

  • Replies 2
  • Created
  • Last Reply

Top Posters In This Topic

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

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

Announcements



×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.