|
@@ -0,0 +1,119 @@
|
|
|
+//===== rAthena Script =======================================
|
|
|
+//= Headgear Dyer (Cash)
|
|
|
+//===== By: ==================================================
|
|
|
+//= Xantara
|
|
|
+//= Maud_Dib
|
|
|
+//===== Current Version: =====================================
|
|
|
+//= 1.0
|
|
|
+//===== Compatible With: =====================================
|
|
|
+//= rAthena SVN
|
|
|
+//===== Description: =========================================
|
|
|
+//= [Aegis Conversion]
|
|
|
+//= Change headgear's color. Cost is a Mysterious Dyestuff
|
|
|
+//===== Additional Comments: =================================
|
|
|
+//= v1.0 First / Optimized Version
|
|
|
+//============================================================
|
|
|
+
|
|
|
+prt_in,253,168,4 script Alora 862,{
|
|
|
+
|
|
|
+// Mysterious Dyestuff
|
|
|
+ set .@dyeID, 6220;
|
|
|
+// Headgear Choices
|
|
|
+ setarray .@hgn$[1], "Mage Hat","Beanie","Drooping Cat","Deviruchi Hat","Wig","Ribbon","Magestic Goat";
|
|
|
+// Mage Hats - Normal, Yellow, Blue, Brown, Gray, Red
|
|
|
+ setarray .@hg_1[1], 5027, 5242, 5241, 5240, 5239, 5238;
|
|
|
+// Beanies - Normal, Pink, Blue, Brown
|
|
|
+ setarray .@hg_2[1], 5076, 5237, 5236, 5235;
|
|
|
+// Drooping Cats - Normal, Blue, Brown, Gray, Pink, Yellow
|
|
|
+ setarray .@hg_3[1], 5058, 5233, 5231, 5230, 5232, 5234;
|
|
|
+// Deviruchi Hats - Normal, Red, Gray, Brown
|
|
|
+ setarray .@hg_4[1], 5038, 5227, 5228, 5229;
|
|
|
+// Wigs - Happy, Shiny, Marvelous, Fantastic
|
|
|
+ setarray .@hg_5[1], 5273, 5274, 5275, 5276;
|
|
|
+// Ribbons - Normal, Black, Yellow, Green, Pink, Red, Orange, White
|
|
|
+ setarray .@hg_6[1], 2208, 5191, 5192, 5193, 5194, 5195, 5196, 5197;
|
|
|
+// Magestic Goats - Normal, Evolved
|
|
|
+ setarray .@hg_7[1], 2256, 5217;
|
|
|
+
|
|
|
+ mes "[Alora]";
|
|
|
+ mes "Hello, I can change your headgear's color if you bring me a Mysterious Dyestuff.";
|
|
|
+ next;
|
|
|
+ mes "[Alora]";
|
|
|
+ mes "Do you have a headgear that you would like to dye?";
|
|
|
+ next;
|
|
|
+ for(set .@i,1; .@i < getarraysize(.@hgn$); set .@i,.@i+1) {
|
|
|
+ if(.@i == 1) set .@menu$, .@hgn$[.@i];
|
|
|
+ else set .@menu$, .@menu$ +":"+ .@hgn$[.@i];
|
|
|
+ }
|
|
|
+ set .@menu$, .@menu$ +":Cancel";
|
|
|
+ set .@t, select(.@menu$);
|
|
|
+ if(.@t == getarraysize(.@hgn$)) {
|
|
|
+ mes "[Alora]";
|
|
|
+ mes "Have a good journey adventurer!";
|
|
|
+ mes "If you ever are curious to try a new color on your Kafra headgear or the ones you found on your adventures please come to me!";
|
|
|
+ close;
|
|
|
+ }
|
|
|
+ mes "[Alora]";
|
|
|
+ mes "Okay, what color do you want to change it to?";
|
|
|
+ next;
|
|
|
+ for(set .@i,1; .@i < getarraysize(getd(".@hg_"+.@t+"")); set .@i,.@i+1) {
|
|
|
+ if(.@i == 1 && .@t != 5)
|
|
|
+ set .@menu$, "Normal";
|
|
|
+ else if(.@i == 1 && .@t == 5)
|
|
|
+ set .@menu$, getitemname(getd(".@hg_"+.@t+"["+.@i+"]"));
|
|
|
+ else {
|
|
|
+ sscanf(getitemname(getd(".@hg_"+.@t+"["+.@i+"]")),"%s "+ .@hgn$[.@t],.@colour$);
|
|
|
+ set .@menu$, .@menu$ +":"+ .@colour$;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ set .@menu$, .@menu$ +":Cancel";
|
|
|
+ set .@c, select(.@menu$);
|
|
|
+ if(.@c == getarraysize(getd(".@hg_"+.@t+""))) {
|
|
|
+ mes "[Alora]";
|
|
|
+ mes "Oh, okay no problem!";
|
|
|
+ close;
|
|
|
+ }
|
|
|
+ set .@dyHG, getd(".@hg_"+.@t+"["+.@c+"]");
|
|
|
+ mes "[Alora]";
|
|
|
+ mes "Oh I'm so excited aren't you?";
|
|
|
+ mes "And just to be sure, what color is the "+ .@hgn$[.@t] +" you want me to use?";
|
|
|
+ next;
|
|
|
+ mes "[Alora]";
|
|
|
+ mes "Please understand that I'm going to use the ^FF00001st "+ .@hgn$[.@t] +" of that color in your inventory!^000000";
|
|
|
+ next;
|
|
|
+ mes "[Alora]";
|
|
|
+ mes "Any upgrades and cards will be dissolved by the mysterious dye, so be sure you are ok with having a ^0000FF+0 "+ getitemname(.@dyHG) +" without any cards.^000000";
|
|
|
+ next;
|
|
|
+ mes "["+ strcharinfo(0) +"]";
|
|
|
+ mes "Ok, thanks for the warning, I think I'll give you my";
|
|
|
+ next;
|
|
|
+ set .@menu$, "Nevermind";
|
|
|
+ for(set .@i,1; .@i < getarraysize(getd(".@hg_"+.@t+"")); set .@i,.@i+1) {
|
|
|
+ if(.@i == 1) set .@menu$, .@menu$ +":Normal "+ getitemname(getd(".@hg_"+.@t+"["+.@i+"]"));
|
|
|
+ else set .@menu$, .@menu$ +":"+ getitemname(getd(".@hg_"+.@t+"["+.@i+"]"));
|
|
|
+ }
|
|
|
+ set .@mine, select(.@menu$) - 1;
|
|
|
+ if(!.@mine) {
|
|
|
+ mes "[Alora]";
|
|
|
+ mes "It's best to be very sure, have a safe journey.";
|
|
|
+ close;
|
|
|
+ }
|
|
|
+ set .@myHG, getd(".@hg_"+.@t+"["+.@mine+"]");
|
|
|
+ if(.@dyHG == .@myHG) {
|
|
|
+ mes "[Alora]";
|
|
|
+ mes "Woah what happened?";
|
|
|
+ close;
|
|
|
+ }
|
|
|
+ if(!countitem(.@dyeID) || !countitem(.@myHG)) {
|
|
|
+ mes "[Alora]";
|
|
|
+ mes "Oh my, you seem to be missing something.";
|
|
|
+ close;
|
|
|
+ }
|
|
|
+ mes "[Alora]";
|
|
|
+ mes "Looks great doesn't it?!";
|
|
|
+ mes "I hope you'll come back to dye more pretty headgears!";
|
|
|
+ delitem .@dyeID,1; // Dyestuff
|
|
|
+ delitem .@myHG,1; // Your headgear
|
|
|
+ getitem .@dyHG,1; // Dyed headgear
|
|
|
+ close;
|
|
|
+}
|