|
@@ -8,7 +8,6 @@
|
|
//= rAthena SVN
|
|
//= rAthena SVN
|
|
//===== Description: =========================================
|
|
//===== Description: =========================================
|
|
//= Write you name on your rare equipment or weapon ^_-
|
|
//= Write you name on your rare equipment or weapon ^_-
|
|
-//= Original X-Mas mini-quest(could be used as a permanent one)
|
|
|
|
//===== Additional Comments: =================================
|
|
//===== Additional Comments: =================================
|
|
//= 1.1 Cleaned and edited for general use. [Euphy]
|
|
//= 1.1 Cleaned and edited for general use. [Euphy]
|
|
//============================================================
|
|
//============================================================
|
|
@@ -21,7 +20,7 @@ prt_in,24,61,7 script Perchik 47,{
|
|
mes "[Perchik]";
|
|
mes "[Perchik]";
|
|
mes "I can ^0055FFsign your name^000000 on almost any rare item you hold.";
|
|
mes "I can ^0055FFsign your name^000000 on almost any rare item you hold.";
|
|
next;
|
|
next;
|
|
- if(select("Tell me more...:Sign my items, please!")==1) {
|
|
|
|
|
|
+ if(select("Tell me more...:Sign my items, please!") == 1) {
|
|
mes "[Perchik]";
|
|
mes "[Perchik]";
|
|
mes "I can put your name on any slotless equipment or weapon.";
|
|
mes "I can put your name on any slotless equipment or weapon.";
|
|
emotion e_ic;
|
|
emotion e_ic;
|
|
@@ -29,11 +28,11 @@ prt_in,24,61,7 script Perchik 47,{
|
|
mes "[Perchik]";
|
|
mes "[Perchik]";
|
|
if (getarraysize(.@Item) || getarraysize(.@Cost)) {
|
|
if (getarraysize(.@Item) || getarraysize(.@Cost)) {
|
|
mes "For my work I accept:";
|
|
mes "For my work I accept:";
|
|
- if (getarraysize(.@Item))
|
|
|
|
- for(set .@i,0; .@i<getarraysize(.@Item); set .@i,.@i+2)
|
|
|
|
- mes " ~ "+.@Item[.@i+1]+"x "+getitemname(.@Item[.@i]);
|
|
|
|
|
|
+ if (getarraysize(.@Item)) for(set .@i,0; .@i<getarraysize(.@Item); set .@i,.@i+2)
|
|
|
|
+ mes " ~ "+.@Item[.@i+1]+"x "+getitemname(.@Item[.@i]);
|
|
if (.@Cost[0]) mes " ~ "+.@Cost[0]+" Zeny";
|
|
if (.@Cost[0]) mes " ~ "+.@Cost[0]+" Zeny";
|
|
- if (.@Cost[1]) mes " ~ "+.@Cost[1]+" Zeny per refine"; }
|
|
|
|
|
|
+ if (.@Cost[1]) mes " ~ "+.@Cost[1]+" Zeny per refine";
|
|
|
|
+ }
|
|
else mes "I work for free, but...";
|
|
else mes "I work for free, but...";
|
|
next;
|
|
next;
|
|
emotion e_cry;
|
|
emotion e_cry;
|
|
@@ -45,7 +44,8 @@ prt_in,24,61,7 script Perchik 47,{
|
|
mes "Or it was 12 angry children";
|
|
mes "Or it was 12 angry children";
|
|
mes "and a very hungry wife...";
|
|
mes "and a very hungry wife...";
|
|
emotion e_hmm;
|
|
emotion e_hmm;
|
|
- close; }
|
|
|
|
|
|
+ close;
|
|
|
|
+ }
|
|
mes "[Perchik]";
|
|
mes "[Perchik]";
|
|
mes "Show me your items to sign...";
|
|
mes "Show me your items to sign...";
|
|
next;
|
|
next;
|
|
@@ -54,7 +54,8 @@ prt_in,24,61,7 script Perchik 47,{
|
|
for (set .@i,1; .@i<=10; set .@i,.@i+1) {
|
|
for (set .@i,1; .@i<=10; set .@i,.@i+1) {
|
|
if (getequipisequiped(.@i))
|
|
if (getequipisequiped(.@i))
|
|
set .@menu$, .@menu$+.@pos$[.@i]+" [^0055FF"+getequipname(.@i)+"^000000]";
|
|
set .@menu$, .@menu$+.@pos$[.@i]+" [^0055FF"+getequipname(.@i)+"^000000]";
|
|
- set .@menu$, .@menu$+":"; }
|
|
|
|
|
|
+ set .@menu$, .@menu$+":";
|
|
|
|
+ }
|
|
set .@part, select(.@menu$);
|
|
set .@part, select(.@menu$);
|
|
set .@id, getequipid(.@part);
|
|
set .@id, getequipid(.@part);
|
|
set .@ref, getequiprefinerycnt(.@part);
|
|
set .@ref, getequiprefinerycnt(.@part);
|
|
@@ -62,59 +63,67 @@ prt_in,24,61,7 script Perchik 47,{
|
|
if (!getequipisequiped(.@part)) {
|
|
if (!getequipisequiped(.@part)) {
|
|
mes "Nothing is equipped there!";
|
|
mes "Nothing is equipped there!";
|
|
emotion e_wah;
|
|
emotion e_wah;
|
|
- close; }
|
|
|
|
|
|
+ close;
|
|
|
|
+ }
|
|
for(set .@i,0; .@i<4; set .@i,.@i+1)
|
|
for(set .@i,0; .@i<4; set .@i,.@i+1)
|
|
set .@slot[.@i], getequipcardid(.@part,.@i);
|
|
set .@slot[.@i], getequipcardid(.@part,.@i);
|
|
if (.@slot[0]==255 || .@slot[0]==254 || .@slot[0]<0) {
|
|
if (.@slot[0]==255 || .@slot[0]==254 || .@slot[0]<0) {
|
|
mes "Alas, this item's already signed.";
|
|
mes "Alas, this item's already signed.";
|
|
mes "I would never touch a master's work.";
|
|
mes "I would never touch a master's work.";
|
|
emotion e_hmm;
|
|
emotion e_hmm;
|
|
- close; }
|
|
|
|
|
|
+ close;
|
|
|
|
+ }
|
|
if (.@slot[0]>4000 && .@slot[0]<5000) {
|
|
if (.@slot[0]>4000 && .@slot[0]<5000) {
|
|
mes "A card? Here?!";
|
|
mes "A card? Here?!";
|
|
mes "As I said before, I don't sign items with cards.";
|
|
mes "As I said before, I don't sign items with cards.";
|
|
emotion e_hmm;
|
|
emotion e_hmm;
|
|
- close; }
|
|
|
|
|
|
+ close;
|
|
|
|
+ }
|
|
if (getiteminfo(.@id,10)) {
|
|
if (getiteminfo(.@id,10)) {
|
|
mes "Sorry, I don't sign slotted items.";
|
|
mes "Sorry, I don't sign slotted items.";
|
|
emotion e_sry;
|
|
emotion e_sry;
|
|
- close; }
|
|
|
|
|
|
+ close;
|
|
|
|
+ }
|
|
getinventorylist;
|
|
getinventorylist;
|
|
for(set .@i,0; .@i<@inventorylist_count; set .@i,.@i+1)
|
|
for(set .@i,0; .@i<@inventorylist_count; set .@i,.@i+1)
|
|
if (@inventorylist_expire[.@i] != 0) {
|
|
if (@inventorylist_expire[.@i] != 0) {
|
|
mes "Sorry, I don't sign rental items!";
|
|
mes "Sorry, I don't sign rental items!";
|
|
emotion e_hmm;
|
|
emotion e_hmm;
|
|
- close; }
|
|
|
|
|
|
+ close;
|
|
|
|
+ }
|
|
set .@price, .@Cost[0]+(.@Cost[1]*.@ref);
|
|
set .@price, .@Cost[0]+(.@Cost[1]*.@ref);
|
|
if (getarraysize(.@Item) || .@price) {
|
|
if (getarraysize(.@Item) || .@price) {
|
|
mes "I will need:";
|
|
mes "I will need:";
|
|
- if (getarraysize(.@Item))
|
|
|
|
- for(set .@i,0; .@i<getarraysize(.@Item); set .@i,.@i+2) {
|
|
|
|
- mes " ~ "+.@Item[.@i+1]+"x "+getitemname(.@Item[.@i]);
|
|
|
|
- if (countitem(.@Item[.@i]) < .@Item[.@i+1]) set .@nr,1; }
|
|
|
|
- if (.@price) mes " ~ "+.@price+" Zeny"; }
|
|
|
|
|
|
+ if (getarraysize(.@Item)) for(set .@i,0; .@i<getarraysize(.@Item); set .@i,.@i+2) {
|
|
|
|
+ mes " ~ "+.@Item[.@i+1]+"x "+getitemname(.@Item[.@i]);
|
|
|
|
+ if (countitem(.@Item[.@i]) < .@Item[.@i+1]) set .@nr,1;
|
|
|
|
+ }
|
|
|
|
+ if (.@price) mes " ~ "+.@price+" Zeny";
|
|
|
|
+ }
|
|
mes "Shall I sign your ^0055FF"+getitemname(.@id)+"^000000?";
|
|
mes "Shall I sign your ^0055FF"+getitemname(.@id)+"^000000?";
|
|
next;
|
|
next;
|
|
if(select("Ok!:Leave")==2) {
|
|
if(select("Ok!:Leave")==2) {
|
|
mes "[Perchik]";
|
|
mes "[Perchik]";
|
|
mes "See you...";
|
|
mes "See you...";
|
|
emotion e_yawn;
|
|
emotion e_yawn;
|
|
- close; }
|
|
|
|
|
|
+ close;
|
|
|
|
+ }
|
|
mes "[Perchik]";
|
|
mes "[Perchik]";
|
|
if (Zeny < .@price || .@nr) {
|
|
if (Zeny < .@price || .@nr) {
|
|
mes "I don't work for 'thanks'.";
|
|
mes "I don't work for 'thanks'.";
|
|
emotion e_sry;
|
|
emotion e_sry;
|
|
- close; }
|
|
|
|
|
|
+ close;
|
|
|
|
+ }
|
|
if (!countitem2(.@id,1,.@ref,0,.@slot[0],.@slot[1],.@slot[2],.@slot[3])) {
|
|
if (!countitem2(.@id,1,.@ref,0,.@slot[0],.@slot[1],.@slot[2],.@slot[3])) {
|
|
mes "Where is "+getitemname(@id)+"...?";
|
|
mes "Where is "+getitemname(@id)+"...?";
|
|
npctalk "You're a snoozy cheater!";
|
|
npctalk "You're a snoozy cheater!";
|
|
logmes "CHEATER: Tried to sign an item not having it: "+getitemname(@id);
|
|
logmes "CHEATER: Tried to sign an item not having it: "+getitemname(@id);
|
|
emotion e_wah;
|
|
emotion e_wah;
|
|
- close; }
|
|
|
|
|
|
+ close;
|
|
|
|
+ }
|
|
if (.@price) set Zeny, Zeny-.@price;
|
|
if (.@price) set Zeny, Zeny-.@price;
|
|
- if (getarraysize(.@Item))
|
|
|
|
- for(set .@i,0; .@i<getarraysize(.@Item); set .@i,.@i+2)
|
|
|
|
- delitem .@Item[.@i], .@Item[.@i+1];
|
|
|
|
|
|
+ if (getarraysize(.@Item)) for(set .@i,0; .@i<getarraysize(.@Item); set .@i,.@i+2)
|
|
|
|
+ delitem .@Item[.@i], .@Item[.@i+1];
|
|
delitem2 .@id,1,1,.@ref,0,.@slot[0],.@slot[1],.@slot[2],.@slot[3];
|
|
delitem2 .@id,1,1,.@ref,0,.@slot[0],.@slot[1],.@slot[2],.@slot[3];
|
|
mes "Done!";
|
|
mes "Done!";
|
|
emotion e_proud;
|
|
emotion e_proud;
|