Jump to content

Refine_proto c++


Recommended Posts

  • 1 month later...
  • Forum 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:

This is the hidden content, please

 

Edited by Metin2 Dev
Core X - External 2 Internal
  • Metin2 Dev 37
  • Confused 1
  • Good 8
  • Love 4
  • Love 17
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.