Jump to content
  • 0

Multime mixture and counteragent npc


eboni001

Question


  • Group:  Members
  • Topic Count:  79
  • Topics Per Day:  0.02
  • Content Count:  327
  • Reputation:   4
  • Joined:  06/22/13
  • Last Seen:  

Hey guys, is there any way to make the mixture and counteragent npc to make multiple items at same time?  It only makes 1 by 1, I have quests that require 400 of each and it takes way too long to make them.

geffen_in,141,140,3	script	Molgenstein#cm	121,{
	if (checkweight(1201,1) == 0) {
		mes "- Wait a minute !! -";
		mes "- Currently you're carrying -";
		mes "- too many items with you. -";
		mes "- Please try again -";
		mes "- after you loose some weight. -";
		close;
	}
	if (MISC_QUEST & 4) {
		mes "[Chemist Molgenstein]";
		mes ".....";
		mes "Welcome.";
		mes "Hehehehe....";
		mes "Heeheeheeheehee....";
		next;
		switch(select("Ask about his research:Ask him to make a new solution.:Cancel")) {
		case 1:
			mes "[Chemist Molgenstein]";
			mes "Heeheeheeheee...";
			mes "You must have heard the rumors about my research. Yes! But since you probably know already, I'll tell you without hiding, I mean, there's nothing to hide.";
			next;
			mes "[Chemist Molgenstein]";
			mes "Actually, you can say my research is complete! Nothing's impossible for my genius! Bwahaha, it's just a matter of time!";
			next;
			mes "[Chemist Molgenstein]";
			mes "Are you still here? Right, you wanted to know about my research. It's actually very simple. I was just trying to invent a super liquid that can melt everything!";
			next;
			mes "[Chemist Molgenstein]";
			mes "Isn't it interesting? No matter how strong you are, you can't break apart stone or steel, but with my new liquid, you can melt those things, making them soft like puddy!";
			next;
			mes "[Chemist Molgenstein]";
			mes "It can't melt everything yet, but I did find that you could combine things that you could never mix before with my invention. Heeheeheehee~!";
			next;
			mes "[Chemist Molgenstein]";
			mes "You can make a whole lot of things that you'd never would have imagined possible! I can make you a lot of new things you never would have imagined using this method... as long as you want it!!";
			next;
			mes "[Chemist Molgenstein]";
			mes "The endorphins are rushing to my face at least 2.1 times faster than the usual rate! Ah! I'm so excited! I... I just can't hide it!";
			close;
		case 2:
			mes "[Chemist Molgenstein]";
			mes "So...";
			mes "You want me to make something totally new, huh? Hehhehheh! I love your sense of scientific adventure!";
			next;
			switch(select("Counteragent:Mixture")) {
			case 1:
				mes "[Chemist Molgenstein]";
				mes "Ooh...!";
				mes "You want to make a Counteragent? Hohohohoho, let's see what we'll need...";
				next;
				mes "[Chemist Molgenstein]";
				mes "Oh, I remember, yes, Alcohol, and um, er, Detrimindexta and an Empty Bottle to put it it all in. Just these three items and 3000 zeny.";
				next;
				mes "[Chemist Molgenstein]";
				mes "Bwahahahah!";
				mes "Oh, I just can't wait to make this! Are you ready to begin?";
				next;
				if (select("Make:Cancel") == 1) {
					if (countitem(970) == 0 || countitem(971) == 0 || countitem(713) == 0 || Zeny < 3000) {
						mes "[Chemist Molgenstein]";
						mes "Heuheuheuheuh.... not enough... not enough.. Haah...Haah... Go..... get the rest of the materials!";
						mes "We'll postpone the fun until then... Heuheuheuheuheuh.";
						close;
					}
					mes "[Chemist Molgenstein]";
					mes "Ooooooooh...... heeheeheeheehee...... yes... like that...... yes... more... more........ heeheeheehee.";
					mes ".... Aaah.... ahah... ha....ahahooooooooohoh!";
					next;
					if (countitem(970) < 1 || countitem(971) < 1 || countitem(713) < 1) {
						mes "[Chemist Molgenstein]";
						mes "Hohohoho.... not enough... not enough... haah...haah... go..... go get the rest of the materials!!";
						close;
					}
					delitem 970,1; //Alchol
					delitem 971,1; //Detrimindexta
					delitem 713,1; //Empty_Bottle
					set Zeny, Zeny-3000;
					getitem 973,1; //Counteragent
					mes "[Chemist Molgenstein]";
					mes "Hee hee hee...";
					mes "Haaaaah......";
					mes "Oh? We're done already?!";
					close;
				}
				mes "[Chemist Molgenstein]";
				mes "Hee hee hee...!";
				mes "Come back when";
				mes "you're ready~";
				close;
			case 2:
				mes "[Chemist Molgenstein]";
				mes "Ooh...!";
				mes "You want to make a Mixture? Hohohohoho, let's see what we'll need...";
				next;
				mes "[Chemist Molgenstein]";
				mes "Ooh, I remember now, yes, Alcohol, and um, er, Karvodailnirol and an empty bottle to put all of it in. Just these three items and 4000 zeny.";
				next;
				mes "[Chemist Molgenstein]";
				mes "Bwahahahah!";
				mes "Oh, I just can't wait to make this! Are you ready to begin?";
				next;
				if (select("Make:Cancel") == 1) {
					if (countitem(970) == 0 || countitem(972) == 0 || countitem(713) == 0 || Zeny < 4000) {
						mes "[Chemist Molgenstein]";
						mes "Hohohoho.... not enough... not enough... haah...haah... go..... go get the rest of the materials!!";
						mes "We'll have to postpone the fun for later... Hehehehe";
						close;
					}
					mes "[Chemist Molgenstein]";
					mes "Ooooooooh... heehee...... yes... like that...... yes... more... more........ heeheeheehee";
					mes ".... Aaah.... ahah... ha....ahah...oooooooooooooooooh!!!...!!!!!!";
					next;
					if (countitem(970) < 1 || countitem(972) < 1 || countitem(713) < 1) {
						mes "[Chemist Molgenstein]";
						mes "Hohohoho.... not enough... not enough... haah...haah... go..... go get the rest of the materials!!";
						close;
					}
					delitem 970,1; //Alchol
					delitem 972,1; //Karvodailnirol
					delitem 713,1; //Empty_Bottle
					set Zeny, Zeny-4000;
					getitem 974,1; //Mixture
					mes "[Chemist Molgenstein]";
					mes "Hee hee hee...";
					mes "Haaaaah......";
					mes "Oh? We're done already?!";
					close;
				}
				mes "[Chemist Molgenstein]";
				mes "[Chemist Molgenstein]";
				mes "Hee hee hee...!";
				mes "Come back when";
				mes "you're ready~";
				mes "Heh... heuheuheuheh....";
				close;
			}
		case 3:
			mes "[Chemist Molgenstein]";
			mes "Heehee....heheheheh....";
			close;
		}
	}
	if (molgenstain == 2) {
		set MISC_QUEST,MISC_QUEST | 4;
		set molgenstain,0;
		mes "[Chemist Molgenstein]";
		mes "Heeheeheehee.... welcome. Hehehehe.... heeheeheeheehee....";
		next;
		mes "[Chemist Molgenstein]";
		mes "Ah...?!";
		mes "So sorry if I weirded you out. It's just... I haven't seen a living person in soooo long. So, er, what can I do for you??";
		next;
		if (select("Ask about his research.:Cancel.") == 1) {
			mes "[Chemist Molgenstein]";
			mes "Heeheeheeheee...";
			mes "You must have heard the rumors about my research. Yes! But since you probably know already, I'll tell you without hiding, I mean, there's nothing to hide.";
			next;
			mes "[Chemist Molgenstein]";
			mes "Actually, you can say my research is complete! Nothing's impossible for my genius! Bwahaha, it's just a matter of time!";
			next;
			mes "[Chemist Molgenstein]";
			mes "Are you still here? Right, you wanted to know about my research. It's actually very simple. I was just trying to invent a super liquid that can melt everything!";
			next;
			mes "[Chemist Molgenstein]";
			mes "Isn't it interesting? No matter how strong you are, you can't break apart stone or steel, but with my new liquid, you can melt those things, making them soft like puddy!";
			next;
			mes "[Chemist Molgenstein]";
			mes "It can't melt everything yet, but I did find that you could combine things that you could never mix before with my invention.";
			next;
			mes "[Chemist Molgenstein]";
			mes "I can make you a lot of new things you never would have imagined using this method... as long as you want it!!";
			next;
			mes "[Chemist Molgenstein]";
			mes "The endorphins are rushing to my face at least 2.1 times faster than the usual rate! Ah! I'm so excited! I... I just can't hide it!";
			close;
		}
		close;
	}
	mes "[Chemist Molgenstein]";
	mes "Heeheeheehee...";
	mes "You're not here to be a test subject, are you? Probably not though. Not since my little 'accident.' Heeheeheeee~!";
	close;
}
Link to comment
Share on other sites

6 answers to this question

Recommended Posts

  • 0

  • Group:  Forum Moderator
  • Topic Count:  93
  • Topics Per Day:  0.02
  • Content Count:  10013
  • Reputation:   2348
  • Joined:  10/28/11
  • Last Seen:  

change

delitem 970,1; //Alchol
delitem 971,1; //Detrimindexta
delitem 713,1; //Empty_Bottle
set Zeny, Zeny-3000;
getitem 973,1; //Counteragent

into

while ( countitem(970) && countitem(971) && countitem(713) && Zeny >= 3000 ) {
	delitem 970,1; //Alchol
	delitem 971,1; //Detrimindexta
	delitem 713,1; //Empty_Bottle
	set Zeny, Zeny-3000;
	getitem 973,1; //Counteragent
}


 

change

delitem 970,1; //Alchol
delitem 972,1; //Karvodailnirol
delitem 713,1; //Empty_Bottle
set Zeny, Zeny-4000;
getitem 974,1; //Mixture

into this

while( countitem(970) && countitem(972) && countitem(713) && Zeny >= 4000) {
	delitem 970,1; //Alchol
	delitem 972,1; //Karvodailnirol
	delitem 713,1; //Empty_Bottle
	set Zeny, Zeny-4000;
	getitem 974,1; //Mixture
}
Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  162
  • Topics Per Day:  0.04
  • Content Count:  745
  • Reputation:   47
  • Joined:  03/12/14
  • Last Seen:  

change

delitem 970,1; //Alchol
delitem 971,1; //Detrimindexta
delitem 713,1; //Empty_Bottle
set Zeny, Zeny-3000;
getitem 973,1; //Counteragent
into
while ( countitem(970) && countitem(971) && countitem(713) && Zeny >= 3000 ) {
	delitem 970,1; //Alchol
	delitem 971,1; //Detrimindexta
	delitem 713,1; //Empty_Bottle
	set Zeny, Zeny-3000;
	getitem 973,1; //Counteragent
}

change

delitem 970,1; //Alchol
delitem 972,1; //Karvodailnirol
delitem 713,1; //Empty_Bottle
set Zeny, Zeny-4000;
getitem 974,1; //Mixture
into this
while( countitem(970) && countitem(972) && countitem(713) && Zeny >= 4000) {
	delitem 970,1; //Alchol
	delitem 972,1; //Karvodailnirol
	delitem 713,1; //Empty_Bottle
	set Zeny, Zeny-4000;
	getitem 974,1; //Mixture
}
can you make the dyestuff quest too? same as is request
Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  79
  • Topics Per Day:  0.02
  • Content Count:  327
  • Reputation:   4
  • Joined:  06/22/13
  • Last Seen:  

Bringer, on 31 Oct 2016 - 12:13 PM, said:

Emistry, on 30 Oct 2016 - 11:43 PM, said:

change

delitem 970,1; //Alchol
delitem 971,1; //Detrimindexta
delitem 713,1; //Empty_Bottle
set Zeny, Zeny-3000;
getitem 973,1; //Counteragent
into
while ( countitem(970) && countitem(971) && countitem(713) && Zeny >= 3000 ) {
	delitem 970,1; //Alchol
	delitem 971,1; //Detrimindexta
	delitem 713,1; //Empty_Bottle
	set Zeny, Zeny-3000;
	getitem 973,1; //Counteragent
}

change

delitem 970,1; //Alchol
delitem 972,1; //Karvodailnirol
delitem 713,1; //Empty_Bottle
set Zeny, Zeny-4000;
getitem 974,1; //Mixture
into this
while( countitem(970) && countitem(972) && countitem(713) && Zeny >= 4000) {
	delitem 970,1; //Alchol
	delitem 972,1; //Karvodailnirol
	delitem 713,1; //Empty_Bottle
	set Zeny, Zeny-4000;
	getitem 974,1; //Mixture
}
can you make the dyestuff quest too? same as is request

This script is not mine it belongs to Capuche but it was posted for free use so I share it with you, the multiple dyestuff npc:
morocc_in,146,99,3	script	Java Dullihan	58,{
//- multi dyestuff 0/1 - disabled/enabled
	.multi = 1;
//-

	if ((MaxWeight-Weight) < 200 || checkweight(1201,1) == 0) {
		mes "- Wait a moment! -";
		mes "- Currently you're carrying -";
		mes "- too many items with you. -";
		mes "- Please come back later -";
		mes "- after you put some items into kafra storage. -";
		close;
	}
	mes "[Dye Maker Java Dullihan]";
	mes "Wow...";
	mes "Such a nice day. Days like this are perfect to make dyes.";
	next;
	switch(select("Talk:Make Dyestuffs:Cancel")) {
	case 1:
		mes "[Dye Maker Java Dullihan]";
		mes "Erm, I don't really have much to say to you. But, if you would like me to tell you about my life, I can do that. It's a little long and boring, but would you like to listen?";
		next;
		if (select("Listen:Don't Listen") == 1) {
			mes "[Dye Maker Java Dullihan]";
			mes "As long as I can remember, my father has been making dyes. He used to spend countless hours making dyes of different colors. Even when my mother passed away, he never stopped.";
			next;
			mes "[Dye Maker Java Dullihan]";
			mes "At one point in my life, I became rebellious and ran away from home. I didn't want to be stuck to the family business and wanted to try other things.";
			next;
			mes "[Dye Maker Java Dullihan]";
			mes "Anyways...";
			mes "I eventually wound up back home to carry on the family tradition, making dyes for 15 years already. I guess it was really in my blood.";
			next;
			mes "[Dye Maker Java Dullihan]";
			mes "Something I realized these days is that now I can understand my father. Why my father devoted everything to making dyes...";
			next;
			mes "[Dye Maker Java Dullihan]";
			mes "In the middle of all that tedious and hard work, he probably felt the magic of those colors passing on so many dreams for other people.";
			next;
			mes "[Dye Maker Java Dullihan]";
			mes "It was probably for those dreams that he tried so hard to make dyes for his customers...";
			next;
			mes "[Dye Maker Java Dullihan]";
			mes "Heh... How do I know this? Well, that's the way I feel right now. Since a couple years ago, I've been able to hear what the colors were saying...";
			next;
			mes "[Dye Maker Java Dullian]";
			mes "Just watch. Someday, I'm going to succeed in making the color my father wanted to, but never got the chance to make.";
			close;
		}
		mes "[Dye Maker Java Dullihan]";
		mes "Ahahahaha...";
		mes "Well, I guess no one would want to listen to a measly dyemaker's story anyway. Hahaha....";
		close;

	case 2:
		mes "[Dye Maker Java Dullihan]";
		mes "Great! If you want it, I'll make it for you. I promise I'll make you the color you want. But what color dye would you like to make? The fee is different depending on the color.";
		next;
		mes "[Dye Maker Java Dullihan]";
		mes "Why, do you ask? Just remember that there are colors that are easy to make, and those that require more effort and work. Please don't think the fee is too expensive.";
		next;
		mes "[Dye Maker Java Dullihan]";
		mes "The color of the dye is special, made with all my heart and soul.";
		next;
		switch( select( .@a$ = "Scarlet Dyestuffs:Lemon Dyestuffs:Cobaltblue Dyestuffs:Darkgreen Dyestuffs:Orange Dyestuffs:Violet Dyestuffs:White Dyestuffs:Black Dyestuffs:Cancel" )) {
		case 1: callsub S_MakeDye,1,1,.@a$; break;
		case 2: callsub S_MakeDye,2,1,.@a$; break;
		case 3: callsub S_MakeDye,3,2,.@a$; break;
		case 4: callsub S_MakeDye,4,3,.@a$; break;
		case 5: callsub S_MakeDye,5,4,.@a$; break;
		case 6: callsub S_MakeDye,6,4,.@a$; break;
		case 7: callsub S_MakeDye,7,4,.@a$; break;
		case 8: callsub S_MakeDye,8,4,.@a$; break;
		case 9:
			mes "[Dye Maker Java Dullihan]";
			mes "Eeeehhhh!! What's this? You change your mind now!? So disappointing...";
			close;
		}

	case 3:
		mes "[Dye Maker Java Dullihan]";
		mes "I'm not bragging or anything. But I have the skills to make dyestuff. If you ever need dyestuff, please come to me. I'll make them for you at a reasonable price.";
		close;
	}

S_MakeDye:
	mes "[Dye Maker Java Dullihan]";
    if ( .multi ) {
        explode(.@b$, getarg(2), ":");
        mes "How must ^FF0000"+ .@b$[ @menu-1 ] +"^000000 do you want to do ?";
        if( input( .@n, 1, 100000) != 0 ) {
            mes "Sorry, wrong value.";
            close; }
    } else
        .@n = 1;
	switch(getarg(0)) {
	case 1:
		setarray .@count[0], 30*.@n,   1*.@n,   1*.@n;
		set .@cost,3000*.@n;
		mes "Mmm... I need "+.@count[0]+" Red Herbs, "+.@count[1]+" Counteragent, and "+.@count[2]+" Empty Bottle to make Red Dyestuffs. The fee is only "+.@cost+" zeny to make it.";
		setarray .@item[0], 507, 973, 713;
		set .@dyestuff,975;
		break;
	case 2:
		setarray .@count[0], 30*.@n,   1*.@n,   1*.@n;
		set .@cost,3000*.@n;
		mes "Mmm... I need "+.@count[0]+" Yellow Herbs, "+.@count[1]+" Couneragent, and "+.@count[2]+" Empty Bottle to make Lemon Dyestuffs. The fee is only "+.@cost+" zeny to make it.";
		setarray .@item[0], 508, 973, 713;
		set .@dyestuff,976;
		break;
	case 3:
		setarray .@count[0], 20*.@n,   1*.@n,   1*.@n;
		set .@cost,3500*.@n;
		mes "Mmm... I need "+.@count[0]+" Blue Herbs, "+.@count[1]+" Counteragent, and "+.@count[2]+" Empty Bottle to make Cobaltblue Dyestuff. It's hard to use the Blue Herb, so the fee is going to be "+.@cost+" zeny.";
		setarray .@item[0], 510, 973, 713;
		set .@dyestuff,978;
		break;
	case 4:
		setarray .@count[0],  5*.@n,  20*.@n,  20*.@n,   1*.@n,   1*.@n,   1*.@n;
		set .@cost,5000*.@n;
		mes "Mmm... I need "+.@count[0]+" Blue Herbs, "+.@count[1]+" Green Herbs, "+.@count[2]+" Yellow Herbs, "+.@count[3]+" Counteragent, "+.@count[4]+" Mixture, and "+.@count[5]+" Empty Bottle to make Darkgreen Dyestuffs. Don't get all of the materials confused. The fee is only "+.@cost+" zeny.";
		setarray .@item[0], 510, 511, 508, 974, 973, 713;
		set .@dyestuff,979;
		break;
	case 5:
		setarray .@count[0], 20*.@n,  20*.@n,   1*.@n,   1*.@n,   1*.@n;
		set .@cost,5000*.@n;
		mes "Mmm... I need "+.@count[0]+" Red Herbs, "+.@count[1]+" Yellow Herbs, "+.@count[2]+" Counteragent, "+.@count[3]+" Mixture, and "+.@count[4]+" Empty Bottle to make Orange Dyestuff. The fee is going to be "+.@cost+" zeny.";
		setarray .@item[0], 507, 508, 974, 973, 713;
		set .@dyestuff,980;
		break;
	case 6:
		setarray .@count[0], 10*.@n,  30*.@n,   1*.@n,   1*.@n,   1*.@n;
		set .@cost,5000*.@n;
		mes "Mmm... I need "+.@count[0]+" Blue Herbs, "+.@count[1]+" Red Herbs, "+.@count[2]+" Counteragent, "+.@count[3]+" Mixture, and "+.@count[4]+" Empty Bottle to make Violet Dyestuffs. The fee will be "+.@cost+" zeny.";
		setarray .@item[0], 510, 507, 974, 973, 713;
		set .@dyestuff,981;
		break;
	case 7:
		setarray .@count[0], 30*.@n,   1*.@n,   1*.@n;
		set .@cost,3000*.@n;
		mes "Mmm... I need "+.@count[0]+" White Herbs, "+.@count[1]+" Counteragent, and "+.@count[2]+" Empty bottle to make White Dyestuffs. The fee will be "+.@cost+" zeny.";
		setarray .@item[0], 509, 973, 713;
		set .@dyestuff,982;
		break;
	case 8:
		setarray .@count[0], 30*.@n,  30*.@n,  30*.@n,   5*.@n,   1*.@n,   1*.@n,   1*.@n;
		set .@cost,7000*.@n;
		mes "Mmm... I need "+.@count[0]+" of each Red, Yellow, and Green Herb, "+.@count[3]+" Blue Herbs, "+.@count[4]+" Counteragent, "+.@count[5]+" Mixture, and "+.@count[6]+" Empty Bottle. The process takes longer and more effort than the others, so it is going to be "+.@cost+" zeny.";
		setarray .@item[0], 507, 508, 511, 510, 974, 973, 713;
		set .@dyestuff,983;
		break;
	}
	next;
	mes "[Dye Maker Java Dullihan]";
	switch(getarg(1)) {
	case 1: mes "Ah! I think you would have everything ready. Would you like to start the process?"; break;
	case 2: mes "Okay! I believe you would have everything ready. Would you like to start the process?"; break;
	case 3: mes "Okay! I believe you would have everything ready. Shall we begin the process?"; break;
	case 4: mes "Okay! I believe you would have everything prepared. Would you like to start the process?"; break;
	}
	next;
	if (select("Make Dyestuffs:Cancel") == 1) {
		set .@size, getarraysize(.@item);
		// check requirements
		for( set .@i,0 ; .@i < .@size ; set .@i,.@i+1 )
			if( countitem(.@item[.@i]) < .@count[.@i] )
				break;
		if( .@i < .@size || Zeny < .@cost ) {
			mes "[Dye Maker Java Dullihan]";
			mes "Hmmm. Not enough...";
			mes "I don't think I'll be able to make the color you want with those materials. Why don't you go get some more materials...?";
			close;
		}
		// delete items
		for (set .@i, 0; .@i < .@size ; set .@i, .@i+1)
			delitem .@item[.@i], .@count[.@i];
		set zeny,zeny-.@cost;
		// get dyestuff
		getitem .@dyestuff,.@n;
		
		mes "[Dye Maker Java Dullihan]";
		mes "Hmm... It came out pretty well. A very rich color. Of course I'll be trying harder to make a more charming color...";
		next;
		mes "[Dye Maker Java Dullihan]";
		mes "Well, then. Stop by whenever you need more dyes.";
		close;
	}
	mes "[Dye Maker Java Dullihan]";
	mes "Eeeehhhh!! What's this?";
	mes "You change your mind now!? So disappointing...";
	return;
}

 

change

delitem 970,1; //Alchol
delitem 971,1; //Detrimindexta
delitem 713,1; //Empty_Bottle
set Zeny, Zeny-3000;
getitem 973,1; //Counteragent

into

while ( countitem(970) && countitem(971) && countitem(713) && Zeny >= 3000 ) {
	delitem 970,1; //Alchol
	delitem 971,1; //Detrimindexta
	delitem 713,1; //Empty_Bottle
	set Zeny, Zeny-3000;
	getitem 973,1; //Counteragent
}


 

change

delitem 970,1; //Alchol
delitem 972,1; //Karvodailnirol
delitem 713,1; //Empty_Bottle
set Zeny, Zeny-4000;
getitem 974,1; //Mixture

into this

while( countitem(970) && countitem(972) && countitem(713) && Zeny >= 4000) {
	delitem 970,1; //Alchol
	delitem 972,1; //Karvodailnirol
	delitem 713,1; //Empty_Bottle
	set Zeny, Zeny-4000;
	getitem 974,1; //Mixture
}

hey sir Emistry, yes it's making more than 1 at same time now, but there is any way I can input how many I want to make at same time?

 

like this Capuche Dyestuff maker:

morocc_in,146,99,3	script	Java Dullihan	58,{
//- multi dyestuff 0/1 - disabled/enabled
	.multi = 1;
//-

	if ((MaxWeight-Weight) < 200 || checkweight(1201,1) == 0) {
		mes "- Wait a moment! -";
		mes "- Currently you're carrying -";
		mes "- too many items with you. -";
		mes "- Please come back later -";
		mes "- after you put some items into kafra storage. -";
		close;
	}
	mes "[Dye Maker Java Dullihan]";
	mes "Wow...";
	mes "Such a nice day. Days like this are perfect to make dyes.";
	next;
	switch(select("Talk:Make Dyestuffs:Cancel")) {
	case 1:
		mes "[Dye Maker Java Dullihan]";
		mes "Erm, I don't really have much to say to you. But, if you would like me to tell you about my life, I can do that. It's a little long and boring, but would you like to listen?";
		next;
		if (select("Listen:Don't Listen") == 1) {
			mes "[Dye Maker Java Dullihan]";
			mes "As long as I can remember, my father has been making dyes. He used to spend countless hours making dyes of different colors. Even when my mother passed away, he never stopped.";
			next;
			mes "[Dye Maker Java Dullihan]";
			mes "At one point in my life, I became rebellious and ran away from home. I didn't want to be stuck to the family business and wanted to try other things.";
			next;
			mes "[Dye Maker Java Dullihan]";
			mes "Anyways...";
			mes "I eventually wound up back home to carry on the family tradition, making dyes for 15 years already. I guess it was really in my blood.";
			next;
			mes "[Dye Maker Java Dullihan]";
			mes "Something I realized these days is that now I can understand my father. Why my father devoted everything to making dyes...";
			next;
			mes "[Dye Maker Java Dullihan]";
			mes "In the middle of all that tedious and hard work, he probably felt the magic of those colors passing on so many dreams for other people.";
			next;
			mes "[Dye Maker Java Dullihan]";
			mes "It was probably for those dreams that he tried so hard to make dyes for his customers...";
			next;
			mes "[Dye Maker Java Dullihan]";
			mes "Heh... How do I know this? Well, that's the way I feel right now. Since a couple years ago, I've been able to hear what the colors were saying...";
			next;
			mes "[Dye Maker Java Dullian]";
			mes "Just watch. Someday, I'm going to succeed in making the color my father wanted to, but never got the chance to make.";
			close;
		}
		mes "[Dye Maker Java Dullihan]";
		mes "Ahahahaha...";
		mes "Well, I guess no one would want to listen to a measly dyemaker's story anyway. Hahaha....";
		close;

	case 2:
		mes "[Dye Maker Java Dullihan]";
		mes "Great! If you want it, I'll make it for you. I promise I'll make you the color you want. But what color dye would you like to make? The fee is different depending on the color.";
		next;
		mes "[Dye Maker Java Dullihan]";
		mes "Why, do you ask? Just remember that there are colors that are easy to make, and those that require more effort and work. Please don't think the fee is too expensive.";
		next;
		mes "[Dye Maker Java Dullihan]";
		mes "The color of the dye is special, made with all my heart and soul.";
		next;
		switch( select( .@a$ = "Scarlet Dyestuffs:Lemon Dyestuffs:Cobaltblue Dyestuffs:Darkgreen Dyestuffs:Orange Dyestuffs:Violet Dyestuffs:White Dyestuffs:Black Dyestuffs:Cancel" )) {
		case 1: callsub S_MakeDye,1,1,.@a$; break;
		case 2: callsub S_MakeDye,2,1,.@a$; break;
		case 3: callsub S_MakeDye,3,2,.@a$; break;
		case 4: callsub S_MakeDye,4,3,.@a$; break;
		case 5: callsub S_MakeDye,5,4,.@a$; break;
		case 6: callsub S_MakeDye,6,4,.@a$; break;
		case 7: callsub S_MakeDye,7,4,.@a$; break;
		case 8: callsub S_MakeDye,8,4,.@a$; break;
		case 9:
			mes "[Dye Maker Java Dullihan]";
			mes "Eeeehhhh!! What's this? You change your mind now!? So disappointing...";
			close;
		}

	case 3:
		mes "[Dye Maker Java Dullihan]";
		mes "I'm not bragging or anything. But I have the skills to make dyestuff. If you ever need dyestuff, please come to me. I'll make them for you at a reasonable price.";
		close;
	}

S_MakeDye:
	mes "[Dye Maker Java Dullihan]";
    if ( .multi ) {
        explode(.@b$, getarg(2), ":");
        mes "How must ^FF0000"+ .@b$[ @menu-1 ] +"^000000 do you want to do ?";
        if( input( .@n, 1, 100000) != 0 ) {
            mes "Sorry, wrong value.";
            close; }
    } else
        .@n = 1;
	switch(getarg(0)) {
	case 1:
		setarray .@count[0], 30*.@n,   1*.@n,   1*.@n;
		set .@cost,3000*.@n;
		mes "Mmm... I need "+.@count[0]+" Red Herbs, "+.@count[1]+" Counteragent, and "+.@count[2]+" Empty Bottle to make Red Dyestuffs. The fee is only "+.@cost+" zeny to make it.";
		setarray .@item[0], 507, 973, 713;
		set .@dyestuff,975;
		break;
	case 2:
		setarray .@count[0], 30*.@n,   1*.@n,   1*.@n;
		set .@cost,3000*.@n;
		mes "Mmm... I need "+.@count[0]+" Yellow Herbs, "+.@count[1]+" Couneragent, and "+.@count[2]+" Empty Bottle to make Lemon Dyestuffs. The fee is only "+.@cost+" zeny to make it.";
		setarray .@item[0], 508, 973, 713;
		set .@dyestuff,976;
		break;
	case 3:
		setarray .@count[0], 20*.@n,   1*.@n,   1*.@n;
		set .@cost,3500*.@n;
		mes "Mmm... I need "+.@count[0]+" Blue Herbs, "+.@count[1]+" Counteragent, and "+.@count[2]+" Empty Bottle to make Cobaltblue Dyestuff. It's hard to use the Blue Herb, so the fee is going to be "+.@cost+" zeny.";
		setarray .@item[0], 510, 973, 713;
		set .@dyestuff,978;
		break;
	case 4:
		setarray .@count[0],  5*.@n,  20*.@n,  20*.@n,   1*.@n,   1*.@n,   1*.@n;
		set .@cost,5000*.@n;
		mes "Mmm... I need "+.@count[0]+" Blue Herbs, "+.@count[1]+" Green Herbs, "+.@count[2]+" Yellow Herbs, "+.@count[3]+" Counteragent, "+.@count[4]+" Mixture, and "+.@count[5]+" Empty Bottle to make Darkgreen Dyestuffs. Don't get all of the materials confused. The fee is only "+.@cost+" zeny.";
		setarray .@item[0], 510, 511, 508, 974, 973, 713;
		set .@dyestuff,979;
		break;
	case 5:
		setarray .@count[0], 20*.@n,  20*.@n,   1*.@n,   1*.@n,   1*.@n;
		set .@cost,5000*.@n;
		mes "Mmm... I need "+.@count[0]+" Red Herbs, "+.@count[1]+" Yellow Herbs, "+.@count[2]+" Counteragent, "+.@count[3]+" Mixture, and "+.@count[4]+" Empty Bottle to make Orange Dyestuff. The fee is going to be "+.@cost+" zeny.";
		setarray .@item[0], 507, 508, 974, 973, 713;
		set .@dyestuff,980;
		break;
	case 6:
		setarray .@count[0], 10*.@n,  30*.@n,   1*.@n,   1*.@n,   1*.@n;
		set .@cost,5000*.@n;
		mes "Mmm... I need "+.@count[0]+" Blue Herbs, "+.@count[1]+" Red Herbs, "+.@count[2]+" Counteragent, "+.@count[3]+" Mixture, and "+.@count[4]+" Empty Bottle to make Violet Dyestuffs. The fee will be "+.@cost+" zeny.";
		setarray .@item[0], 510, 507, 974, 973, 713;
		set .@dyestuff,981;
		break;
	case 7:
		setarray .@count[0], 30*.@n,   1*.@n,   1*.@n;
		set .@cost,3000*.@n;
		mes "Mmm... I need "+.@count[0]+" White Herbs, "+.@count[1]+" Counteragent, and "+.@count[2]+" Empty bottle to make White Dyestuffs. The fee will be "+.@cost+" zeny.";
		setarray .@item[0], 509, 973, 713;
		set .@dyestuff,982;
		break;
	case 8:
		setarray .@count[0], 30*.@n,  30*.@n,  30*.@n,   5*.@n,   1*.@n,   1*.@n,   1*.@n;
		set .@cost,7000*.@n;
		mes "Mmm... I need "+.@count[0]+" of each Red, Yellow, and Green Herb, "+.@count[3]+" Blue Herbs, "+.@count[4]+" Counteragent, "+.@count[5]+" Mixture, and "+.@count[6]+" Empty Bottle. The process takes longer and more effort than the others, so it is going to be "+.@cost+" zeny.";
		setarray .@item[0], 507, 508, 511, 510, 974, 973, 713;
		set .@dyestuff,983;
		break;
	}
	next;
	mes "[Dye Maker Java Dullihan]";
	switch(getarg(1)) {
	case 1: mes "Ah! I think you would have everything ready. Would you like to start the process?"; break;
	case 2: mes "Okay! I believe you would have everything ready. Would you like to start the process?"; break;
	case 3: mes "Okay! I believe you would have everything ready. Shall we begin the process?"; break;
	case 4: mes "Okay! I believe you would have everything prepared. Would you like to start the process?"; break;
	}
	next;
	if (select("Make Dyestuffs:Cancel") == 1) {
		set .@size, getarraysize(.@item);
		// check requirements
		for( set .@i,0 ; .@i < .@size ; set .@i,.@i+1 )
			if( countitem(.@item[.@i]) < .@count[.@i] )
				break;
		if( .@i < .@size || Zeny < .@cost ) {
			mes "[Dye Maker Java Dullihan]";
			mes "Hmmm. Not enough...";
			mes "I don't think I'll be able to make the color you want with those materials. Why don't you go get some more materials...?";
			close;
		}
		// delete items
		for (set .@i, 0; .@i < .@size ; set .@i, .@i+1)
			delitem .@item[.@i], .@count[.@i];
		set zeny,zeny-.@cost;
		// get dyestuff
		getitem .@dyestuff,.@n;
		
		mes "[Dye Maker Java Dullihan]";
		mes "Hmm... It came out pretty well. A very rich color. Of course I'll be trying harder to make a more charming color...";
		next;
		mes "[Dye Maker Java Dullihan]";
		mes "Well, then. Stop by whenever you need more dyes.";
		close;
	}
	mes "[Dye Maker Java Dullihan]";
	mes "Eeeehhhh!! What's this?";
	mes "You change your mind now!? So disappointing...";
	return;
}
Link to comment
Share on other sites

  • 0

  • Group:  Forum Moderator
  • Topic Count:  93
  • Topics Per Day:  0.02
  • Content Count:  10013
  • Reputation:   2348
  • Joined:  10/28/11
  • Last Seen:  

Please do not bump your topics unless you're providing extra details.

Anyway, your code.

input .@amount,0,100;
while( countitem(970) && countitem(972) && countitem(713) && Zeny >= 4000 && .@amount > 0 ) {
	delitem 970,1; //Alchol
	delitem 972,1; //Karvodailnirol
	delitem 713,1; //Empty_Bottle
	set Zeny, Zeny-4000;
	getitem 974,1; //Mixture
	.@amount--;
}

 

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  79
  • Topics Per Day:  0.02
  • Content Count:  327
  • Reputation:   4
  • Joined:  06/22/13
  • Last Seen:  

On 10/11/2016 at 1:08 PM, Emistry said:

Please do not bump your topics unless you're providing extra details.

Anyway, your code.


input .@amount,0,100;
while( countitem(970) && countitem(972) && countitem(713) && Zeny >= 4000 && .@amount > 0 ) {
	delitem 970,1; //Alchol
	delitem 972,1; //Karvodailnirol
	delitem 713,1; //Empty_Bottle
	set Zeny, Zeny-4000;
	getitem 974,1; //Mixture
	.@amount--;
}

 

Hey sir Emistry now the npc ask me to input the number of solutions I want to creato so I went to test it with items to make 20 solutions and I input I wanted to create only 1, but the npc created the 20 anyway.

Link to comment
Share on other sites

  • 0

  • Group:  Forum Moderator
  • Topic Count:  93
  • Topics Per Day:  0.02
  • Content Count:  10013
  • Reputation:   2348
  • Joined:  10/28/11
  • Last Seen:  

17 hours ago, eboni001 said:

Hey sir Emistry now the npc ask me to input the number of solutions I want to creato so I went to test it with items to make 20 solutions and I input I wanted to create only 1, but the npc created the 20 anyway.

cant reproduce your issue, work fine when I test the code in my test server.

At least post your latest edited codes everytime if it doesn't work.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...