Jump to content
×
×
  • Create New...
  • 0

Refine_proto c++


xDiiZeRx

Question

2 answers to this question

Recommended Posts

  • 0
  • Moderator

That's right, the default code is crap for this scenario with extended requirements.

If you add a value to vnum4 and count4, the refining will not work anymore for that ID, the required items will be ignored, you can upgrade the item without any requirements.

 

Quote



		for (int i = 0; i < REFINE_MATERIAL_MAX_NUM; i++)
		{
			str_to_number(prt->materials[i].vnum, data[col++]);
			str_to_number(prt->materials[i].count, data[col++]);
			if (prt->materials[i].vnum == 0)
			{
				prt->material_count = i;
				break;
			}
		}

 

 

Basically what they did is to set the material count just when the next column of 'vnum' is empty.

Let's take two examples:

  • 8e69bfc2bfec13c8291740c42fe083bb.png

The refine proto id 430, will have material_count = 1, because the next column 'vnum1' is empty and the condition was fulfilled.

 

  • 7d6ff47a0a963314511a74fc2619fc12.png

The refine proto id 510, will have material_count = 0, because there's no column 'vnum' which is equal to 0.

That means it doesn't satisfy that condition where it sets the material count.

 

The solution is:

Hidden Content

    Give reaction to this post to see the hidden content.

 

Edited by VegaS™
  • Metin2 Dev 20
  • Love 11
  • Love 3
  • Good 3
  • Confused 1
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.