Okay i was using Emistry's Quest NPC and then suddenly i made it as a YGG Seed to Ygg Berry Converter.
Now i want to put it a script that says "How many Ygg Seeds do you have?" and then you need to input the numbers so that the players with a higher amount of seed doesn't bother to spam the npc. Thanks!
caspen,181,182,7 script Seed to Berry 704,{
// What Item you want to Make ?
set .GiveItem,607;
// Item Requirements + Amounts
setarray .Item[0],
608,2;
for( set .@i,0; .@i < getarraysize( .Item ) - 1; set .@i,.@i + 2 )
if( countitem( .Item[.@i] ) < .Item[.@i + 1] ){
for( set .@i,0; .@i < getarraysize( .Item ) - 1; set .@i,.@i + 2 )
mes "1 Ygg Berry = "+.Item[.@i + 1]+" x "+getitemname( .Item[.@i] );
mes "Do you want to convert your seeds now?";
close;
}
if( select("Make ^FF0000"+getitemname( .GiveItem )+"^000000:Cancel") == 2 ) close;
for( set .@i,0; .@i < getarraysize( .Item ) - 1; set .@i,.@i + 2 )
delitem .Item[ .@i ],.Item[ .@i + 1 ];
getitem .GiveItem,1;
mes "You have successfully made ^FF0000"+getitemname( .GiveItem )+"^000000";
close;
}
and Lastly, Why is it that only the maximum of 2 Requirements is allowed on this dynamic npc script?
I tried putting 3 Requirements but it doesn't work. The npc pauses at the Requirements phase.
Here i edited some :
- shop QUEST_zeal -1,501:50
caspen,149,236,5 script Zealotus Doll Maker 1200,{
set @i,1;
mes "[ Zherlthsh ]";
mes "Hello, "+strcharinfo(0);
mes "Yes! I am the maker of";
mes "^FF0000 Zealotus Doll^000000!";
next;
mes "[ Zherlthsh ]";
mes "Would you like to make one for your self?";
mes "I promise, It will give you some good Attributes!";
next;
mes "[ Zherlthsh ]";
mes "Take time to review my item";
mes "Done? Drag it and Check the Requirements.";
callshop "QUEST_zeal",1;
npcshopattach "QUEST_zeal";
end;
OnBuyItem:
if(.BuildQuest) {
for(set .e,0; !compare(getarg(.e+1),"Zeny"); set .e,.e+2) {}
npcshopadditem "QUEST_zeal",getarg(.e+2),getarg(.e)*compare(getarg(.e+1),"SZeny");
setarray .Shop[.i],getarg(.e+2);
set .i,.i+1;
goto Quest_Setup;
}
if(.Shop[@i]!=@bought_nameid) for(set @i,1; 1; set @i,@i+1) if(.Shop[@i]==@bought_nameid) { set .i,@i; callsub Quest_Setup; }
for(set @i,1; !@e; set @i,@i+1) if(.Shop[@i]==@bought_nameid) { set @e,1; set .i,@i; callsub Quest_Setup; }
mes "[ TCG Shop ]";
mes "I require the following:";
for(set @i,0; !compare(getarg(@i+1),"Zeny"); set @i,@i+2) mes "^FF0000" + ((countitem(getarg(@i))>=getarg(@i+1))? "^00FF00":"") + "" + getarg(@i+1) + " " + getitemname(getarg(@i)) + " [" + countitem(getarg(@i)) + "/" + getarg(@i+1) + "]";
if(getarg(@i)) mes "^FF0000" + ((Zeny>=getarg(@i))? "^00FF00":"") + "" + getarg(@i) + " Zeny";
mes "^000000In exchange, I will give you:^0000FF";
for(set @i,@i+2; getarg(@i+1,0); set @i,@i+2) mes getarg(@i+1) + " " + getitemname(getarg(@i));
switch(select("Exchange:" + (((((getiteminfo(@bought_nameid,5) & 1) || (getiteminfo(@bought_nameid,5) & 256) || (getiteminfo(@bought_nameid,5) & 512)) && @equip==0))? "Preview Item":"") + ":No thanks")) {
case 1:
for(set @i,0; !compare(getarg(@i+1),"Zeny"); set @i,@i+2) if(countitem(getarg(@i)) < getarg(@i+1)) {
next;
mes "You have " + countitem(getarg(@i)) + " " + getitemname(getarg(@i)) + ", while I require " + getarg(@i+1) + ".";
mes "Please obtain ^FF0000" + (getarg(@i+1)-countitem(getarg(@i))) + " more " + getitemname(getarg(@i)) + "^000000.";
close;
}
if(Zeny < getarg(@i)) {
next;
mes "You do not have enough Zeny.";
mes "Please obtain ^FF0000" + (getarg(@i)-Zeny) + " more Zeny^000000.";
close;
}
for(set @i,0; !compare(getarg(@i+1),"Zeny"); set @i,@i+2) delitem getarg(@i),getarg(@i+1);
set Zeny,Zeny-getarg(@i);
for(set @i,@i+2; getarg(@i+1,0); set @i,@i+2) getitem getarg(@i),getarg(@i+1);
if (compare(getarg(@i,0),"announce")) announce strcharinfo(0) + " has just obtained " + getitemname(@bought_nameid) + " from the Event Exchanger!",bc_all;
close;
case 2:
set @bottomview, getlook(3);
set @topview, getlook(4);
set @midview, getlook(5);
addtimer 1000, strnpcinfo(3)+"::On_Leave";
set @equip,getiteminfo(@bought_nameid, 5);
set @view, getiteminfo(@bought_nameid, 11);
if(@equip != -1 && @view > 0) {
if(@equip & 1) atcommand "@changelook 3 " + @view;
if(@equip & 256) atcommand "@changelook 1 " + @view;
if(@equip & 512) atcommand "@changelook 2 " + @view;
}
next;
goto OnBuyItem;
case 3:
close;
}
On_Leave:
atcommand "@changelook 1 " + @topview;
atcommand "@changelook 2 " + @midview;
atcommand "@changelook 3 " + @bottomview;
set @equip,0;
set @view,0;
set @topview,0;
set @midview,0;
set @bottomview,0;
end;
OnInit:
npcshopitem "QUEST_zeal",0,0;
set .BuildQuest,1;
set .i,1;
Quest_Setup:
switch(.i) {
default: set .BuildQuest,0; set .e,0; set .i,0; end;
case 1: callsub OnBuyItem,7293,10,916,200,10000000,"SZeny",20001,1;
}
}
Question
Littlefoot
Okay i was using Emistry's Quest NPC and then suddenly i made it as a YGG Seed to Ygg Berry Converter.
Now i want to put it a script that says "How many Ygg Seeds do you have?" and then you need to input the numbers so that the players with a higher amount of seed doesn't bother to spam the npc. Thanks!
and Lastly, Why is it that only the maximum of 2 Requirements is allowed on this dynamic npc script?
I tried putting 3 Requirements but it doesn't work. The npc pauses at the Requirements phase.
Here i edited some :
Up and added 1 issue
Edited by LittlefootLink to comment
Share on other sites
2 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.