Jump to content
×
×
  • Create New...

Fixed Bonus and Stones if EQ is Equipped


Recommended Posts

Hello Guys,

 

i want to share my char_item.cpp with you,

In my Version the Bonus Add & Bonus Change is fixed,

removing Stones from Armor or Weapon if Equipped  is fixxed too.

 

I removed the Effect from China Firework too (30% Stun)

 

maybe it helps someone :)

 

regards,

killa673 // [sA]Tears aka. [blackBite] @ EPVP

 

PS: for those which changed much Things on the char_item.cpp:

 

to block the extraction of Stones from Equipped EQ search for:

					case USE_DETACHMENT:
						{
							LPITEM item2;

							if (!IsValidItemPosition(DestCell) || !(item2 = GetItem(DestCell)))
								return false;

							if (item2->IsExchanging())
								return false;

and add under

							if (item2->IsExchanging())
								return false;
							if (item2->IsEquipped())
								return false;

so it should look like this:

					case USE_DETACHMENT:
						{
							LPITEM item2;

				if (!IsValidItemPosition(DestCell) || !(item2 = GetItem(DestCell)))
								return false;

							if (item2->IsExchanging())
								return false;
								
							if (item2->IsEquipped())
								return false;
  • Love 1
Link to comment
Share on other sites

  • Premium

This file have 7k lines. But i compare it with my own.

You didn't make hudge fixes... Also you removed stun really bad because you removed effect too.

ZheLc.png

Anyway thanks for release! Some of members can use it.

Link to comment
Share on other sites

  • Honorable Member

  • I don't like the fact you separated both checks, but it's irrelevant.

    syErtXM.png

    Put and removed antiwar stone+4 thrice. Now, (w/o fixing it) we'll have a player with 75% (25*3) against warriors even though the item has no stone.

    `remove stones` scrolls (25100, 71109), 6-7 add/change bonuses (71051, 71052) et similia are all still vulnerable.

    To make it simple:

    You just need to replace `if (item2->IsExchanging())` with `if (item2->IsExchanging() || item2->IsEquipped())`.

    char_item.cpp (12 hits)
    ### CHANGE THOSE ONES BELOW
    	Line 1953: 				if (item2->IsExchanging())
    	Line 3480: 									if (item2->IsExchanging() == true)
    	Line 3843: 									if (item2->IsExchanging() == true)
    	Line 3890: 									if (item2->IsExchanging() == true)
    	Line 4437: 							if (item2->IsExchanging())
    	Line 4493: 							if (item2->IsExchanging())
    	Line 4996: 				if (item2->IsExchanging())
    ### DO NOT CHANGE THOSE ONES BELOW
    	Line 5169: 	if (item->IsExchanging())
    	Line 5360: 	if (item->IsExchanging())
    	Line 5499: 	if (item->IsExchanging())
    	Line 6031: 	if (item->IsExchanging())
    	Line 6620: 	if (item && !item->IsExchanging())
    

    My post on epvp for who will need.
  • You also commented the EffectPacket(SE_CHINA_FIREWORK); removing the spinning top on the ground effect.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


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.