Jump to content
  • 0

Unique Item Signer


Veracious

Question


  • Group:  Members
  • Topic Count:  17
  • Topics Per Day:  0.00
  • Content Count:  179
  • Reputation:   17
  • Joined:  04/24/14
  • Last Seen:  

I want to have an Item Signer NPC that will take some items and Sign player's name on Equipments, and also if its possible on ETC items. It will also sign on slotted equipments, also on enchanted equipments if its possible to do so.

 

 

Currently i'm using Lupus's script but it doesn't sign on slotted gears, etc items & enchanted equipments.

//===== rAthena Script =======================================
//= Sign Your Items
//===== By: ==================================================
//= Lupus
//===== Current Version: =====================================
//= 1.1a
//===== Compatible With: =====================================
//= rAthena Project
//===== Description: =========================================
//= Write you name on your rare equipment or weapon ^_-
//===== Additional Comments: =================================
//= 1.1 Cleaned and edited for general use. [Euphy]
//= 1.1a Added 'disable_items' command. [Euphy]
//============================================================
 
prt_in,24,61,7 script Perchik 47,{
 
setarray .@Item[0],644,3; // Item requirements: <ID>,<Count>{,...} (0 to disable)
setarray .@Cost[0],0,5000; // Zeny requirements: <base price>,<price per refine>
 
disable_items;
mes "[Perchik]";
mes "I can ^0055FFsign your name^000000 on almost any rare item you hold.";
next;
if(select("Tell me more...:Sign my items, please!") == 1) {
mes "[Perchik]";
mes "I can put your name on any slotless equipment or weapon.";
emotion e_ic;
next;
mes "[Perchik]";
if (getarraysize(.@Item) || getarraysize(.@Cost)) {
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 (.@Cost[0]) mes " ~ "+callfunc("F_InsertComma",.@Cost[0])+" Zeny";
if (.@Cost[1]) mes " ~ "+callfunc("F_InsertComma",.@Cost[1])+" Zeny per refine";
}
else mes "I work for free, but...";
next;
emotion e_cry;
mes "[Perchik]";
mes "Alas, I have 12 hungry children";
mes "and a very angry wife.";
next;
mes "[Perchik]";
mes "Or it was 12 angry children";
mes "and a very hungry wife...";
emotion e_hmm;
close;
}
mes "[Perchik]";
mes "Show me your items to sign...";
next;
setarray .@pos$[1],"Upper Headgear","Armor","Left hand","Right hand","Garment","Footgear","Left Accessory","Right Accessory","Mid Headgear","Lower Headgear";
set .@menu$,"";
for (set .@i,1; .@i<=10; set .@i,.@i+1) {
if (getequipisequiped(.@i))
set .@menu$, .@menu$+.@pos$[.@i]+" [^0055FF"+getequipname(.@i)+"^000000]";
set .@menu$, .@menu$+":";
}
set .@part, select(.@menu$);
set .@id, getequipid(.@part);
set .@ref, getequiprefinerycnt(.@part);
mes "[Perchik]";
if (!getequipisequiped(.@part)) {
mes "Nothing is equipped there!";
emotion e_wah;
close;
}
for(set .@i,0; .@i<4; set .@i,.@i+1)
set .@slot[.@i], getequipcardid(.@part,.@i);
if (.@slot[0]==255 || .@slot[0]==254 || .@slot[0]<0) {
mes "Alas, this item's already signed.";
mes "I would never touch a master's work.";
emotion e_hmm;
close;
}
if (.@slot[0]>4000 && .@slot[0]<5000) {
mes "A card? Here?!";
mes "As I said before, I don't sign items with cards.";
emotion e_hmm;
close;
}
if (getiteminfo(.@id,10)) {
mes "Sorry, I don't sign slotted items.";
emotion e_sry;
close;
}
getinventorylist;
for(set .@i,0; .@i<@inventorylist_count; set .@i,.@i+1)
if (@inventorylist_expire[.@i] != 0) {
mes "Sorry, I don't sign rental items!";
emotion e_hmm;
close;
}
set .@price, .@Cost[0]+(.@Cost[1]*.@ref);
if (getarraysize(.@Item) || .@price) {
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";
}
mes "Shall I sign your ^0055FF"+getitemname(.@id)+"^000000?";
next;
if(select("Ok!:Leave")==2) {
mes "[Perchik]";
mes "See you...";
emotion e_yawn;
close;
}
mes "[Perchik]";
if (Zeny < .@price || .@nr) {
mes "I don't work for 'thanks'.";
emotion e_sry;
close;
}
if (!countitem2(.@id,1,.@ref,0,.@slot[0],.@slot[1],.@slot[2],.@slot[3])) {
mes "Where is "+getitemname(@id)+"...?";
npctalk "You're a snoozy cheater!";
logmes "CHEATER: Tried to sign an item not having it: "+getitemname(@id);
emotion e_wah;
close;
}
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];
delitem2 .@id,1,1,.@ref,0,.@slot[0],.@slot[1],.@slot[2],.@slot[3];
mes "Done!";
emotion e_proud;
getitem2 .@id,1,1,.@ref,0,254,0,getcharid(0)&0xffff,(getcharid(0)>>16)&0xffff;
equip .@id;
close;
}
Edited by Veracious
Link to comment
Share on other sites

4 answers to this question

Recommended Posts


  • Group:  Developer
  • Topic Count:  10
  • Topics Per Day:  0.00
  • Content Count:  2407
  • Reputation:   616
  • Joined:  07/05/12
  • Last Seen:  

Our system take all the slots to signed the item so

 

Is it possible to store the names in 3rd slot for pre-renewal servers which doesn't have enchants like eden system in renewal servers? Like one slotted equipments(hgears, armors, accessories, etc) & one slotted and two slotted weapons or one two & three slotted weapons?(can it be like names take 3rd slot for equipments and 4th slot for weapons?

It's not possible

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  17
  • Topics Per Day:  0.00
  • Content Count:  179
  • Reputation:   17
  • Joined:  04/24/14
  • Last Seen:  

anyone?

Edited by Veracious
Merged bump posts.
Link to comment
Share on other sites


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

I dont think it's possible to sign a player name on a slotted items.

The signed name are stored in the item's slot.

  • Upvote 1
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  17
  • Topics Per Day:  0.00
  • Content Count:  179
  • Reputation:   17
  • Joined:  04/24/14
  • Last Seen:  

I dont think it's possible to sign a player name on a slotted items.

The signed name are stored in the item's slot.

 

Is it possible to store the names in 3rd slot for pre-renewal servers which doesn't have enchants like eden system in renewal servers? Like one slotted equipments(hgears, armors, accessories, etc) & one slotted and two slotted weapons or one two & three slotted weapons?(can it be like names take 3rd slot for equipments and 4th slot for weapons?

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...