Search the Community
Showing results for 'item to item exchanger'.
-
Not your typical item exchanger. The idea is it will allow me to exchange setarrays of items. (eg. auras) Lets say i have black amaterasu auras i want to exchange my Black Aura to different colors. The NPC should auto detect that u have that specific aura. And will bring up a menu with different choices. Ofcourse the NPC whould charge me like Aura Coupon or something. I have tons of aura on my project this will be useful for players if they lose interest with the current color of their aura and decided to switch to other colors.
-
I created a file which will exchange a certain item for zennies. Need help pls. on how to make this work prontera,139,70,5, script VIP Box Agent 828,{ mes "[^000088 Mr. Credit ^000000]"; mes "I Can Change VIP Boxes to Zeny"; mes "Remember 1 VIP 3 Days= ^640000500,000z^000000."; mes "and 1 VIP 7 Days Box is= ^6400001,000,000z^000000."; mes "So what do you want?"; menu "3 Days Box To Zeny",-,"7 Days Box to Zeny",-,15c,"15 Days Box to Zeny",ztc; next; mes "[^000088 Mr. Credit ^000000]"; mes "Are you sure you want to exchange your 3 Days Box to Zeny?"; menu "Yes",-,"No",G_no; next; mes "[^000088 Mr. Credit ^000000]"; mes "How many Credits do you want to exchange?"; next; input .@t; if(countitem(12985) < .@t) goto L_NOTENOUGH; mes "[^000088 Mr. Credit ^000000]"; mes "Thanks. . See you again. . . !"; delitem 12985,.@t; set Zeny,Zeny+500000*.@t; close; 15c: next; mes "[^000088 Mr. Credit ^000000]"; mes "Are you sure you want to exchange your 7 Days VIP Boxto Zeny?"; menu "Yes",-,"No",G_no; next; mes "[^000088 Mr. Credit ^000000"; mes "How many Boxes do you want to exchange?"; next; input .@t; if(countitem(12986) < .@t) goto L_NOTENOUGH2; mes "[^000088 Mr. Credit ^000000]"; mes "Thanks. . See you again. . . !"; delitem 12986,.@t; set Zeny,Zeny+1000000*.@t; close; ztc: next; mes "[^000088 Mr. Credit ^000000]"; mes "Are you sure you want to exchange your 15 Days VIP Boxto Zeny?"; menu "Yes",-,"No",G_no; next; mes "[^000088 Mr. Credit ^000000"; mes "How many Boxes do you want to exchange?"; next; input .@t; if(countitem(12984) < .@t) goto L_NOTENOUGH3; mes "[^000088 Mr. Credit ^000000]"; mes "Thanks. . See you again. . . !"; delitem 12984,.@t; set Zeny,Zeny+2000000*.@t; close; L_NOTENOUGH: next; mes "[^000088 ^000088 Mr. Credit ^000000]"; mes "You dont have it."; close; L_NOTENOUGH2: next; mes "[^000088 ^000088 Mr. Credit ^000000]"; mes "You dont have it."; L_NOTENOUGH3: next; mes "[^000088 ^000088 Mr. Credit ^000000]"; mes "You dont have it."; close; G_no: next; mes "[^000088 ^000088 Mr. Credit ^000000]"; mes "Please use my service next time"; close; end; }
-
Hi. please put scripts inside a code box next time, the indentation is all lost otherwise. //==== DarkRO Scripts ==================================== //= Credit Exchanger //===== By: ================================================== //= //===== Current Version: ===================================== //= 1.4 //===== Description: ========================================= //= Allow to Convert Zeny into a Ticket. //===== Changelog: =========================================== //= Not yet tested for bugs //= 1.0 Implementation //= 1.1 Re-script (added quest) //= 1.2 Automated zeny-to-credit exchange and vice-versa //= 1.3 Added @security checking. //= 1.4 Added Black Credit Exchange feature //============================================================ - script Credit Agent -1,{ set @header$,"[^FF8000 Credit Agent ^000000]"; .@credit_id = 40000; //Credit Item ID if (checksecurity()) { message strcharinfo(0), "You can't do this action, Protected by @security."; end; } if(#CREDITPASSPORT > gettimetick(2)) { disable_items; setpcblock(PCBLOCK_COMMANDS, true, getcharid(3)); getinventorylist(); mes @header$; mes "Hello, I can see that you still have your Intergalactical Passport."; mes " "; mes "What can I do for you?"; mes " "; mes "^FF0000Your current credit: " + F_InsertComma(countitem(.@credit_id)); next; switch(prompt("I want to change Zeny to Credit:I want to change Credit to Zeny.:Nothing, just passing by.")){ case 255: setpcblock(PCBLOCK_COMMANDS, false, getcharid(3)); break; case 1: if (@inventorylist_count == MAX_INVENTORY && !countitem(.@credit_id)) { setpcblock(PCBLOCK_COMMANDS, false, getcharid(3)); mes @header$; mes "You need to clear your inventory first."; close(); } mes @header$; mes "The exchange rate is fixed and its ^00008810,000,000^000000 Zeny = 1 ^FF0000Credit^000000."; mes " "; mes "How will you exchange your Zeny?"; next; .@i = prompt("Decide on how many Credits I need.:Exchange all my Zeny:Cancel"); if (.@i == 3) goto L_Cancel; else if (.@i == 255) { setpcblock(PCBLOCK_COMMANDS, false, getcharid(3)); break; } else if (.@i == 1) { mes @header$; mes "How much Credits do you need?"; mes " "; mes "^FF0000(Enter '0' to cancel the transaction)^000000"; next; input @ZTC; if (@ZTC <= 0) goto L_Cancel; else if (@ZTC > MAX_ZENY / 10000000) { L_Exceed: setpcblock(PCBLOCK_COMMANDS, false, getcharid(3)); mes @header$; mes "Sorry, but you have"; mes "exceeded from the limit."; close(); } else if (@ZTC > Zeny / 10000000) { L_LessZeny: setpcblock(PCBLOCK_COMMANDS, false, getcharid(3)); mes @header$; mes "You don't have enough zeny."; close(); } else { L_ConvertZTC: if (!checkweight(.@credit_id,@ZTC)) { mes @header$; mes "Sorry. You can't hold this amount of credit."; mes "Such amount would exceed your weight limit."; for(; @ZTC; @ZTC--) if (checkweight(.@credit_id,@ZTC)) break; if (@ZTC) { mes "You can only hold up to " + @ZTC + "."; mes "Would this amount do?"; next; if (select("Ok, " + @ZTC + " is acceptable", "No, just cancel") == 2) callsub L_Cancel; } else { setpcblock(PCBLOCK_COMMANDS, false, getcharid(3)); close; } } mes @header$; mes "You will be receiving ^FF0000"+@ZTC+" Credit"+(@ZTC != 1 ? "s":"")+"^000000."; mes " "; mes "Proceed?"; next; .@menu = prompt("I changed my mind:Proceed!"); if (.@menu == 1) { setpcblock(PCBLOCK_COMMANDS, false, getcharid(3)); close(); break; } if (.@menu == 255) { setpcblock(PCBLOCK_COMMANDS, false, getcharid(3)); break; } setpcblock(PCBLOCK_COMMANDS, false, getcharid(3)); Zeny -= @ZTC * 10000000; getitem .@credit_id, @ZTC; mes @header$; mes "Here you go!"; mes "Thank you for using our service."; close(); } } else { @ZTC = Zeny / 10000000; if (@ZTC == 0) goto L_LessZeny; else goto L_ConvertZTC; } break; case 2: goto L_ConvertCTZ_Main; break; default: L_Cancel: setpcblock(PCBLOCK_COMMANDS, false, getcharid(3)); mes @header$; mes "Please do come back, Have a nice day!."; close; break; } end; } if(#CRED_Q == 1) { disable_items; setpcblock(PCBLOCK_COMMANDS, true, getcharid(3)); mes @header$; mes "Welcome back!, "+strcharinfo(0)+"."; mes "Do you have what I asked for?"; next; switch(prompt("Yes, here it is!:What do I need again?:I want to change Credit to Zeny.:Not yet.")){ case 255: setpcblock(PCBLOCK_COMMANDS, false, getcharid(3)); break; case 1: if(Zeny < 100000000){ setpcblock(PCBLOCK_COMMANDS, false, getcharid(3)); mes @header$; mes "I think you are missing something this is the list that i needed:"; mes "^FF0000100,000,000 Zeny^000000."; close; } next; mes @header$; mes "Congratulations, Enjoy your Intergalactical Passport."; mes " "; mes "You may now use Zeny to ^FF0000Credit^000000 services in a matter of time."; setpcblock(PCBLOCK_COMMANDS, false, getcharid(3)); Zeny -= 100000000; #CREDITPASSPORT = 1728000+ gettimetick(2); #CRED_Q = 0; close; break; case 2: mes @header$; mes "You will have to bring me the following:"; mes "^FF0000100,000,000 Zeny^000000."; next; setpcblock(PCBLOCK_COMMANDS, false, getcharid(3)); mes @header$; mes "I suggest you look for Simon in Prontera. He is known as gumbling master that could provide you tickets."; mes " "; mes "I'll be waiting for you!"; close; break; case 3: goto L_ConvertCTZ_Main; break; case 4: setpcblock(PCBLOCK_COMMANDS, false, getcharid(3)); mes @header$; mes "Okay, Hurry up!"; close; break; } } mes @header$; mes "Hello, It looks like you don't have an Intergalactical Passport yet."; mes " "; mes "Would you like to have one?"; next; switch(prompt("Yes, I'd like to have one.:Intergalactical Passport? What is that?:I want to change Credit to Zeny.:No thanks!")){ case 1: mes @header$; mes "Very well. You will have to bring me the following:"; mes "^FF0000100,000,000 Zeny^000000."; next; mes @header$; mes "I suggest you look for Simon in Prontera. He is known as gumbling master that could provide you tickets."; mes " "; mes "I'll be waiting for you!"; #CRED_Q = 1; close; break; case 2: mes @header$; mes "An Intergalactical Passport is required to use the Intergalactical currency: ^FF0000Credit^000000."; mes " "; mes "The value of ^FF0000Credit^000000 is equivalent to ^00008810,000,000^000000 Zeny."; next; mes @header$; mes "Once you have this passport, You can exchange Zeny to ^FF0000Credit^000000 with any Credits Agents in major towns."; next; mes @header$; mes "^FF0000NOTE^000000: That the passport is not required when exchanging ^FF0000Credit^000000 to Zeny."; next; mes @header$; mes "That contract will last for 20 days. After that time, You will have to renew your passport."; close; break; case 3: disable_items; setpcblock(PCBLOCK_COMMANDS, true, getcharid(3)); L_ConvertCTZ_Main: mes @header$; mes "The exchange rate is fixed and its 1 ^FF0000Credit^000000 = ^00008810,000,000^000000 Zeny."; mes " "; mes "How will you exchange your ^FF0000Credits^000000?"; next; .@i = prompt("Decide how many Credits to exchange.:Exchange all my Credits:Cancel"); if (.@i == 3) goto L_Cancel; else if (.@i == 255) { setpcblock(PCBLOCK_COMMANDS, false, getcharid(3)); break; } else if (.@i == 1) { mes @header$; mes "How many ^FF0000Credits^000000 do you want to exchange?"; mes " "; mes "^FF0000(Enter '0' to cancel transaction)^000000"; next; input @CTZ; if (@CTZ <= 0) goto L_Cancel; else if (@CTZ > countitem(.@credit_id)) { L_LessCredit: setpcblock(PCBLOCK_COMMANDS, false, getcharid(3)); mes @header$; mes "You don't have enough Credits."; close(); } else { @CTZ_ = Zeny%10000000; if (@CTZ_ > 0) @CTZ_ = ((MAX_ZENY/10000000) - (Zeny/10000000)) - 1; else @CTZ_ = (MAX_ZENY/10000000) - (Zeny/10000000); if (@CTZ > (MAX_ZENY/10000000) || @CTZ_ < @CTZ ) goto L_Exceed; if (@CTZ > countitem(.@credit_id)) goto L_LessCredit; L_ConvertCTZ: mes @header$; mes "You will be exchanging your ^FF0000"+@CTZ+" Credit"+(@CTZ != 1 ? "s":"")+"^000000."; mes " "; mes "Proceed?"; next; .@menu = prompt("I changed my mind:Proceed!"); if (.@menu == 1) { setpcblock(PCBLOCK_COMMANDS, false, getcharid(3)); close(); break; } if (.@menu == 255) { setpcblock(PCBLOCK_COMMANDS, false, getcharid(3)); break; } delitem .@credit_id, @CTZ; Zeny += 10000000 * @CTZ; message(strcharinfo(0), "You have received "+F_InsertComma(10000000 * @CTZ)+" Z."); setpcblock(PCBLOCK_COMMANDS, false, getcharid(3)); mes @header$; mes "Here you go!"; mes "Thank you for using our service."; close(); } close(); } else { @CTZ = countitem(.@credit_id); .@ZenyCap = (MAX_ZENY - Zeny) / 10000000; if (@CTZ == 0) goto L_LessCredit; if (@CTZ >= .@ZenyCap) @CTZ = .@ZenyCap; if (@CTZ == 0) goto L_Exceed; goto L_ConvertCTZ; } break; case 4: setpcblock(PCBLOCK_COMMANDS, false, getcharid(3)); mes @header$; mes "Please do come back, Have a nice day!."; close; break; } } // Duplicates //prontera,132,215,5 duplicate(Credit Agent) Credit Agent#prt 4_M_KHBOY market,99,53,6 duplicate(Credit Agent) Credit Agent#mall 4_M_KHBOY
-
Thats what i got so far: Need Help with event Poring roulette // Poring spawns on custom map // exchange NPC sorry in first place i am not that good in makeing npcs anymore last one was 10 years ago ^^ //===== rAthena Script ======================================= //= Poring Event //===== Description: ========================================= //= Multiple NPCs that assigns quests, warps events //===== Additional Comments: ================================= //= 1.0 Initial release. [Syrisone] [yourname] //============================================================ //===== rAthena Script ======================================= //= Popo //===== Description: ========================================= // Event Map warper Poring,Marin,Poporing,Drops and King Poring //============================================================ prontera,159,192,4 script Popo 1096,{ mes "[Popo]"; mes "Have you heaed about the myserious"; mes "island that is full of porings?"; mes "I can send you there!"; mes "Poring Islandd resets at every hour,"; mes "and the remaining time is ;time; ."; //dont know how to show time next; if(select("Go:Stop")==2) { mes "[Popo]"; //If GO --->Check once per day free warp if go above warp if been there go use ticket mes "You´ve been there already! Its a"; mes "pity that you can only go to Poring"; mes "Island once a dady."; mes "But if you use ^0000FFPoring Island Entry^000000"; mes "O^0000FFTicket 1 pcs^000000 you can go again. Do"; mes "you want to use the Entry Ticket?"; next; if(select("Use:Don´t use")==2) { mes "[Popo]"; mes "Ticket Verified. I will send you"; mes "there right away!"; close; //warp map command dunno :D mes "[Popo]"; //if Stop mes "Come back to me when you change your mind"; close; } //===== rAthena Script ======================================= //= Poring Roulette Staff //===== Description: ========================================= // Poring Roulet Poring, Drops, Poporing, Golden Poring //============================================================ eventmap.gat.159.192,4 script Poring Roulette Staff oldmanid,{ mes "[Poring Roulette Staff]"; mes "I´m the Person in charge of Poring"; mes "Roulett event!"; mes "What do you need?"; next; if(select("What is Poring Roulet?:Roulette Betting:Claim Reward:Cancel")==4) { //if Roulett Betting check claim reward mes "[Poring Roulette Staff]"; mes "Want to place a bet? Remind you"; mes "that you have not claimed your"; mes "Rewardd, so you cannot bet!" next; mes "[Poring Roulette Staff]"; mes "Witch poring do you want to bet"; mes "on"; next; if(select("Poring(2x):Poporing(4x):Drops(6x):Golden Poring(10x)")==4) { //if chose poring bet on mes "[Poring Roulette Staff]"; mes "Decide the number of Event Token to"; mes "bet. Minimum 1 and Maximum 20."; next; //input number here mes "[Poring Roulette Staff]"; mes "Roulette selection - ShowChoosedPoringHere"; mes "Amount of Event Token -ShowTokenSet" mes ""; mes "Is it correct?"; next; if(select("Correct:Wrong")==2) { //If wrong go back to put number mes "[Poring Roulette Staff]"; mes "Decide the number of Event Token to"; mes "bet. Minimum 1 and Maximum 20."; next; //input number here //If correct start Roulette mes "[Poring Roulette Staff]"; mes "Your bet has been confirmedd. If you"; mes "win, please collect your reward"; mes "before the next spin."; close; wawnna help to make it like in this video https://www.youtube.com/watch?v=zn9cSoe3a4o&t=1s&ab_channel=GravityGameHub //===== rAthena Script ======================================= //= Ling Ling //============================================================ // Poring Roulette Reward //===== Description: ========================================= eventmap.gat.159.192,4 script Poring Roulette Staff oldmanid,{ mes "[Ling Ling]"; mes "you can use Event Tokens and"; mes "Diamonds to Exchange for various"; mes "goods. What do you need?"; next; if(select("Exchange Costume:Limited-time Items:Cancel")==3) { //if Exchange costume mes "[Ling Ling]", mes "The followings can be exchanged:"; next; if(select("Costume Poring Mufffler:Costume Poporing Muffler:Costume Marin Muffler:Costume Drops Muffler:Costume Rainbow Poring Hat:Cancel")==6) { mes "[Ling Ling]"; mes "you need 500 Event Token and 2 Poring Diamonds"; //if items give Muffler if not else mes "[Ling Ling]"; mes "Sorry u need:"; mes "Show green 500+ or red les 500 Event token counter"; mes "show green 2+ or red les 2 Poring Diamonds", close; mes "[Ling Ling]"; mes "you need 500 Event Token and 2 Poporing Diamonds"; //if items give Muffler if not else mes "[Ling Ling]"; mes "Sorry u need:"; mes "Show green 500+ or red les 500 Event token counter"; mes "show green 2+ or red les 2 Poporing Diamonds", close; mes "[Ling Ling]"; mes "you need 500 Event Token and 2 Marin Diamonds"; //if items give Muffler if not else mes "[Ling Ling]"; mes "Sorry u need:"; mes "Show green 500+ or red les 500 Event token counter"; mes "show green 2+ or red les 2 Marin Diamonds", close; mes "[Ling Ling]"; mes "you need 500 Event Token and 2 Drops Diamonds"; //if items give Muffler if not else mes "[Ling Ling]"; mes "Sorry u need:"; mes "Show green 500+ or red les 500 Event token counter"; mes "show green 2+ or red les 2 Drops Diamonds", close; mes "[Ling Ling]"; mes "you need 500 Event"; mes "for the Costume Rainbow Poring Hat"; //if items give Costume Rainbow Poring Hat if not else mes "[Ling Ling]"; mes "Sorry u need:"; mes "Show red les 500 Event token counter"; close; //Limited-time Items only on this time other wise close mes "[Ling Ling]"; mes "Limited exchanger will be open at"; mes "04:00~05:00, 11:00~12:00,"; mes "20:00~21:00"; mes "it´s opening hours, what do you"; mes "need?"; next; //limited show numvers left for all players and reduce by purchase 199 red if(select("Savage BBQ - 199 left:Drosera Herb Stew - 199 left:Minor Brisket - 199 left:Warg Blood Cocktail - 199 left:Siroma Icetea - 199 left:Pettite Tail Noodles - 199 left:Bradium - 199 left:Carnium - 199 left:Costume Poring Basket - 1 left")==10) { //ok button cancel button //ok = -1 amount //choose item ids to put reward // poring Basket just 1 each time openening // set event token ammount in check item // check items for each Limited-Time item in list above mes "[Ling Ling]"; mes "you need 500 Event"; mes "for the Costume Poring Basket"; //if items give Costume Poring Basket if not else mes "[Ling Ling]"; mes "Sorry u need:"; mes "Show red les 500 Event token number"; mes "more, come back soon..."; close; } *EDIT* Roulette event is triggered every 2 hours (2am, 4pm, 6am etc.) Broadcast will be made 10 minutes prior Light appears on the monsters when it starts Light stops on a random monsters to determine winners Broadcast will be made to announce winners here the mob_db.txt and i need help with resistance stats etc that is balanced for 3rd class //RATHENA // Monster Database // // Structure of Database : // ID,Sprite_Name,kROName,iROName,LV,HP,SP,EXP,JEXP,Range1,ATK1,ATK2,DEF,MDEF,STR,AGI,VIT,INT,DEX,LUK,Range2,Range3,Scale,Race,Element,Mode,Speed,aDelay,aMotion,dMotion,MEXP,ExpPer,MVP1id,MVP1per,MVP2id,MVP2per,MVP3id,MVP3per,Drop1id,Drop1per,Drop2id,Drop2per,Drop3id,Drop3per,Drop4id,Drop4per,Drop5id,Drop5per,Drop6id,Drop6per,Drop7id,Drop7per,Drop8id,Drop8per,Drop9id,Drop9per,DropCardid,DropCardper // Note: Keep the Sprite_Name field as it is (in the game client). You may change Name,JName field tough //Respawn all 30 min 2538,E_KING_PORING,King Poring,King Poring,99,10000000,1,47115,12553,1,100,200,0,10,10,10,10,10,10,10,10,12,2,0,20,0x6203695,100,1500,500,1000,0,0,0,0,0,0,0,7654,10000,2345,2,2347,2,2351,2,2349,2,18785,1,19587,1,6646,5,0,0,0,0 //need clone or new id dunno //Respawn instand 1002,PORING,Poring,Poring,115,40000,0,13000,9000,1,7,10,42,5,1,1,1,0,6,30,10,12,1,3,21,0x83,400,1872,672,480,0,0,0,0,0,0,0,0,909,7000,1202,100,938,400,512,1000,713,1500,512,150,619,20,0,0,0,0,4001,1 1031,POPORING,Poporing,Poporing,115,40000,0,13000,9000,1,59,72,42,17,1,14,14,0,19,15,10,12,1,3,25,0x83,300,1672,672,480,0,0,0,0,0,0,0,0,938,5500,910,1500,511,500,514,200,512,5,1207,5,512,250,0,0,0,0,4033,1 1113,DROPS,Drops,Drops,115,40000,0,13000,9000,1,10,13,42,0,1,3,3,0,12,15,10,12,1,3,23,0x83,400,1372,672,480,0,0,0,0,0,0,0,0,909,7500,1602,80,938,500,512,1100,713,1700,512,800,620,20,0,0,0,0,4004,1 1242,MARIN,Marin,Marin,155,40000,0,13000,9000,1,39,43,42,8,1,10,10,5,35,15,10,12,1,3,41,0x81,400,1872,672,480,0,0,0,0,0,0,0,0,910,3200,938,1500,700,100,720,40,510,75,529,350,5035,1,0,0,0,0,4196,1 add items and mobs per yml and how sprite works O_O here are some pics: Should have Drops King Poring change resists and stats for 3rd class server Porings on event map change also resists and stats for 3rd class server Inside of Data.rar are Following items: *EDIT* map problem solved *EDIT* Font Problem Solved my server setup is here ----> Server setup (youtube) +EDIT* Poring island Event --->Poring island event and map is attached to i hope someone could help i upload Project on any time inside txt u can readd version number and changes on the end i will translate in german and reupload event in mean time i try to get the poring ring for roulet to setup *EDIT* DATA. v01.rar (poring Diamonds and Event Token sprites, collect and item added) *EDIT* need help adding items and mobs per sql or yml cus i saw my server read yml not sql anyways i ve no clue how to i am happy find out how to add items to cash shop per yml *EDIT* Positions from npcs set Event Positions set gonryun,183,136,3 script Poporing 1031,{ } gonryun,184,133,3 script Poring 1002,{ } gonryun,183,130,3 script Drops 1113,{ } gonryun,181,139,3 script Poring 1002,{ } gonryun,181,127,3 script Poring 1002,{ } gonryun,177,140,3 script Golden Poring 2248,{ } gonryun,173,139,3 script Poring 1002,{ } gonryun,171,136,3 script Poporing 1031,{ } gonryun,170,133,3 script Poring 1002,{ } gonryun,171,130,3 script Drops 1113,{ } gonryun,173,127,3 script Poring 1002,{ } gonryun,177,125,3 script Drops 1113,{ } gonryun,186,137,5 script Ling Ling 949,{ } gonryun,165,137,5 script Popo 948,{ } gonryun,164,131,6 script Poring Event Staff 109,{ } PoringIsland.rar Data v.01.rar
-
Hello, Could somebody script me an npc like this? Costume Exchanger who can take ANY costume item (head/mid/low/garment) and in return gives you an item for it. The npc scans all costumes in your inventory and in the menu you can select which costume you wanna exchange for a jellopy I would appreciate it! Thanks!
-
Good day ? ..I would like to request an Item Exchanger that uses array script .. This is how it will work The NPC will only recognize 3 items (501 502 503) when I click the NPC the recognize item will appear as menu .. If I chose 501 the NPC will exchange it for item 601 , if I chose 502 the NPC will exchange it for item 602 ..so on thanks
-
How to refresh the quantity of an item in stock? (market_refine_) I tried @reloadscript @reloadbarterdb and even restarted the server, it didn't work. The stock stays the same like the last time I purchased the item //=Ore Exchanger //============================================================ - marketshop market_refine_prt_in -1,1010:-1:999999,1011:-1:999999 - marketshop market_refine_payon -1,1010:-1:999999,1011:-1:999999 - marketshop market_refine_morocc_in -1,1010:-1:999999,1011:-1:999999 - marketshop market_refine_alberta_in -1,1010:-1:999999,1011:-1:999999 - marketshop market_refine_yuno_in01 -1,1010:-1:999999,1011:-1:999999 - marketshop market_refine_ein_in01 -1,1010:-1:999999,1011:-1:999999 - marketshop market_refine_lhz_in02 -1,1010:-1:999999,1011:-1:999999 prt_in,63,69,3 script Dietrich#ns_prt 4_M_02,{ mes "[" + strnpcinfo(1) + "]"; mes "We sell and exchange various ores used in smelting."; next; switch( select( "View basic smelting ores", "View advanced smelting ores", "Cancel" ) ) { case 1: mes "[" + strnpcinfo(1) + "]"; mes "Phracon and Emveretarcon are available for use in smelting low-level weapons."; close2; callshop "market_refine_" + strnpcinfo(4); end; case 2: mes "[" + strnpcinfo(1) + "]"; mes "We are purifying Elunium Stone and Oridecon Stone, or exchanging Coins."; close2; callshop "barter_refine_1"; end; case 3: mes "[" + strnpcinfo(1) + "]"; mes "If you lack the materials used for smelting, come anytime."; close; } end; OnInit: setunittitle getnpcid(0), "<Ore Refiner>"; end; } I'm using the latest git and pre renewal.
-
Hi i would like to request a npc that can exchange an item to another item with specific amount, for example - 250 GC = Old Blue Box - 500 GC = Box of 10 Oridecon or Box of 10 Elunium - 750 GC= Old Purple Box and 2,500 GC = Old Card Album hopefully someone can make this thank you in advance.
-
I'm looking for item trader/exchanger with success/failed rate and multiple item list ex: poring card 10 pcs trade to poporing card 1 pc with 50% success rate poporing card 5 pcs trade to marin card 1 pc with 25% success rate and so on.
-
this is my concept setarray .item1, 601; > exchange > poring coin setarray .item2, 602; > exchange > gold coin setarray .item3, 603; > exchange > silver coin somebody can help me to make this script?? thxx.
-
good day can i request a npc that can exchange several weapons to 1 item only for example a katar can be exchange for 1 jellopy in random amount a dagger that can exchange for jellopy in random amount etc. etc. i think this is more different than master euphy or emistry exchange npc all items listen at the npc can be exchange only in 1 item in random amount thank you
-
good day masters.. can i request an npc this are the functions 1st NPC : - any kinds of weapon inside the dungeons can be exchange for energy debris (6820) in a random chance example Krishna (weapon) can exchange to debris in a random drop 1,2,3,4 or 5 2nd NPC: an npc that can exchange to item example 50pcs energy debris can exchange to head gear example 50x energy debris to peco peco hat thank you
-
prontera,155,181,5 script Sample 757,{ mes "Exchange "+.amount+"x "+getitemname(.itemid)+" into a costume."; if (select("Yes" , "Cancel") == 1) { if (countitem(.itemid) < .amount) { mes "not enough item."; } else { delitem .itemid, .amount; getitem F_Rand(501, 502, 503, 504, 505), 1; mes "You gained a costume."; } } close; OnInit: .itemid = 512; .amount = 1; end; } there are probably thousand of exchanger NPCs like these can be found in the forum, might as well try to search for it next time.
-
Hello, I have searched and dont found any scripts that similiar to my request I would like to request NPC like this: - NPC that can trade 3 items from list for 1 Poring Coin. for example : List are 501,502,503,504,505,506,507,508 So if i have 501,504,505 i can trade for 1 Poring Coin likewise if i have 501,502,505 i can trade for 1 Poring Coin too. You just need 3 items from listed to trade for 1 Poring Coin. Could u help me please? Thankyou.
-
Hello, I tried to edit this script to change Gold Coins into Cash Points.. I succeed making display bottom and delitem with amount user input earlier.. But the Cashpoints doesn't add or increasing.. Also I failed to change NPC dialog when input incorrect amount or not enough amount of item.. Below is the script.. Hope someone can help me fix this.. Thanks.. //Original Script : RevelationRO Custom Script by Zeshan. //Edited by Rakuzas prontera,147,157,0 script Kafra points 861,{ mes .NPC$; mes "Do you want to exchange your " + getitemname(.ID) + " into Cashpoints?"; mes "The conversion rate is " + .NP + " Cashpoint for each " + getitemname(.ID) + "."; next; if (select("Yes:No") - 1) close; mes .NPC$; mes "How many " + getitemname(.ID) + " do you have?"; next; input .@amount; if (.@amount == 0) { mes .NPC$; mes "Umm, please enter your amount!"; close; } .@amount2 = (.@amount * .ID); if (.@amount > .@amount2) { mes .NPC$; mes "You dont' have enough coins!!!"; close; } if (.@amount2 == 0){ mes .NPC$; mes "You don't have coins!!"; close; } mes .NPC$; mes "Here you go!"; set ##CASHPOINTS,##CASHPOINTS += .@amount2; delitem .ID,.@amount; dispbottom "You got "+.@amount+" Cashpoints!"; close; OnInit: set .NPC$,"[ " +strnpcinfo(1)+ " ]"; // NPC Name set .ID,671; // Item to take set .NP,1; // Amount of Cashpoints to give end; }
-
Hi, i would like to have a NPC that accept TCG Cards (7227) for some choices. For example 5 TCG - 2 Bubble Gum (12210) 5 TCG - 2 Job Battle Manual (14592) 5 TCG - 3 Battle Manual (12208) 5 TCG - 2 100% Battle Manual (14533) Please & thank you!
-
E - Script Collection Last Update : September 10, 2013 Refine Function SQL Mission Board Monster Marching Vendor Control Advanced Stylist Coin Exchanger Doppelganger Race Of The Day Limited Items Multi Currency Shop Random News GM Online List Link Broken E-Inquiry DotA Runes Flower Counting Game Class Restriction Chain Quest Build Manager Misc Scripts : Freebies Script Card Trader Gold Room [ Pick Gold ] Gold Room [ Guild Tax ] Map Restriction [ GM Based ] Daily Reward Monthly Reward Monster Spawner Monster Summoner with Last Summoned Display Players Stats & Equipments 3rd Job Item Giver Exchanger [ Cashpoint to Coins ] Exchanger [ Poring Coin - Zeny ] Exchanger [ Points to Tickets ] Exchanger [ Item to Item ] Exchanger [ Item to Item ] Exchanger [ Multi Item to 1 Item ] Party Match Auto Ban Over Stats Users Soul Link Buff Kill Players gain Cash Points Party Members All Get Items [ Snippet ] Message Board Stalker Class Skill Reproduce NPC Multiple Selection Quest [ Template ] In-Game Item Rewarder In-Game Points Rewarder Invasion Event Custom Item Rate Status Point Seller [ Snippet ] Anti Bot Security Script Anti Bot Script [ Code / Question ] Item Combo Restriction [ LHZ Card ] Drop Item Upon Death PVP Switcher + Announcer [ Guild Master ] Rotating Waitingroom Messages +10 Refiner [ Specific Items ] Random Rate Item Exchanger MVP Invasion Premium Users [ Boost Rates ] Display Cutin Image upon Login Custom Randomed Box Items Kick GM during WOE Custom Crafting NPC Restrict Same IP [ Certain Map ] Coloured Items Exchanger Guild Master Changer Party Team PK Match Gambling Game IRC Channel Crafting NPC Guild Storage Restriction Stage Game [ Version 4 ] Monster Wiki Event [ Version 3 ] Special Thank you for my Tutor : Notes : I am a bit lazy to write all those Script Descriptions, i do believe that all of you able to get how this script works. Anyway, i will still doing my best to write the Updated Changelog or informations about the script as detail as possible. All the Scripts above are uploaded to Pastebin . Abide the Following Rule : Scripts Error / Not Working , you have to Explain it in Details. ( Add in Images / Modified Scripts ) Do not SPAM / BUMP in my Topic. Do not ask for Support stuffs for other Scripts in this Topic. Link Down , then drop [ @Emistry ] a message. I Reserved the Right for NOT Answering your Posts if you did not abide my Topic's Rules. Keep This In Your Mind : All the Scripts i distribute here are NOT FOR COMMERCIAL USES . DO NOT remove my Credits if you are using part of the scripts to modify your own. DO NOT re-release the scripts in any form / way. If you ♥ these Scripts , Click on to Vote this Topic up. Or you may also click on at above the Topic
- 515 replies
-
- 276
-
-
-
-
Command to recall npc script did not work
_Terra replied to Dolphin86's question in Scripting Support
- script Crafter_Command -1,{ OnInit: bindatcmd "craft","Crafter_Command::OnCraftCommand"; // What Item you want to Make ? set .GiveItem,7539; // Item Requirements + Amounts setarray .Item[0],607,1,608,1,512,1; end; OnCrafterMenu: OnCraftCommand: mes "^00c000Master Craft^000000"; mes "Please select which would you like to craft"; next; switch(select("- Weapon:- Armor:- Headgear:- Accessories:- Shield:- Garment:- Footgear:- Usable Item:- Exit")) { case 1: mes "^00c000Master Craft^000000"; mes "Please select which would you like to craft"; next; switch(select("- Dagger:- 1 Hand Swords:- 2 Hand Swords:- 1 Hand Spear:- 2 Hand Spear:- 1 Hand Axe:- 2 Hand Axe:- Mace:- 1 Hand Staff:- 2 Hand Staff:- Bow:- Knuckle:- Musical Weapons:- Whip:- Book:- Katar:- Revolver:- Rifle:- Gatling Gun:- Shot Gun:- Grenade Luncher:- Shuriken:- Exit")) { case 1: mes "^00c000Master Craft^000000"; mes "Just give me the required items and ill give you Coin of Ymir."; mes "Required Mats per ^FF0000"+getitemname(.GiveItem)+"^000000:"; for( set .@i,0; .@i < getarraysize( .Item ) - 1; set .@i,.@i + 2 ) mes "- ^FF0000"+.Item[.@i+1]+" "+getitemname(.Item[.@i]); next; if( select("Make ^FF0000"+getitemname( .GiveItem )+"^000000:Cancel") == 2 ) end; mes "[Ymir Coin Exchanger]"; mes "How many would you like to make?"; next; input .@amount,1,999; mes "[Ymir Coin Exchanger]"; mes .@amount+"x ^FF0000"+getitemname(.GiveItem)+"^000000, is this correct?"; next; if( select("Yes, Make ^FF0000"+.@amount+" "+getitemname( .GiveItem )+"^000000:Cancel") == 2 ) end; for( set .@i,0; .@i < getarraysize( .Item ) - 1; set .@i,.@i + 2 ) if( countitem( .Item[.@i] ) < .Item[.@i+1]*.@amount ){ mes "[Ymir Coin Exchanger]"; mes "Insufficient Materials"; for( set .@i,0; .@i < getarraysize( .Item ) - 1; set .@i,.@i + 2 ) mes "- Need ( "+countitem(.Item[.@i])+"/"+.Item[.@i + 1]*.@amount+" ) "+getitemname( .Item[.@i] ); end; } if(!checkweight(.GiveItem,.@amount)){ mes "Insufficient inventory space or weight."; end; } for( set .@i,0; .@i < getarraysize( .Item ) - 1; set .@i,.@i + 2 ) delitem .Item[ .@i ],.Item[ .@i + 1 ]*.@amount; getitem .GiveItem,.@amount; mes "[Ymir Coin Exchanger]"; mes "You have Made ^FF0000"+.@amount+"x "+getitemname( .GiveItem )+"^000000"; announce "["+strcharinfo(0)+"] has made "+.@amount+"x ["+getitemname( .GiveItem )+"]",0; close; case 2: mes "^00c000Master Craft^000000"; mes "1 Hand Swords"; end; case 3: mes "^00c000Master Craft^000000"; mes "2 Hand Swords"; end; case 4: mes "^00c000Master Craft^000000"; mes "1 Hand Spear"; end; case 5: mes "^00c000Master Craft^000000"; mes "2 Hand Spear"; end; case 6: mes "^00c000Master Craft^000000"; mes "1 Hand Axe"; end; case 7: mes "^00c000Master Craft^000000"; mes "2 Hand Axe"; end; case 8: mes "^00c000Master Craft^000000"; mes "Mace"; end; case 9: mes "^00c000Master Craft^000000"; mes "1 Hand Staff"; case 10: mes "^00c000Master Craft^000000"; mes "2 Hand Staff"; end; case 11: mes "^00c000Master Craft^000000"; mes "Bow"; end; case 12: mes "^00c000Master Craft^000000"; mes "Knuckle"; end; case 13: mes "^00c000Master Craft^000000"; mes "Musical Weapons"; end; case 14: mes "^00c000Master Craft^000000"; mes "Whip"; end; case 15: mes "^00c000Master Craft^000000"; mes "Book"; end; case 16: mes "^00c000Master Craft^000000"; mes "Katar"; end; case 17: mes "^00c000Master Craft^000000"; mes "Revolver"; end; case 18: mes "^00c000Master Craft^000000"; mes "Rifle"; end; case 19: mes "^00c000Master Craft^000000"; mes "Gatling Gun"; end; case 20: mes "^00c000Master Craft^000000"; mes "Shot Gun"; end; case 21: mes "^00c000Master Craft^000000"; mes "Grenade Luncher"; end; case 22: mes "^00c000Master Craft^000000"; mes "Shuriken"; end; case 23: mes "^00c000Master Craft^000000"; mes "Good Bye"; close; } case 2: warp "payon",165,59; // Change this warp coordinates end; case 3: warp "morocc",160,85; // Change this warp coordinates end; case 4: warp "geffen",119,67; // Change this warp coordinates end; case 5: warp "alberta",117,57; // Change this warp coordinates end; case 6: warp "aldebaran",141,114; // Change this warp coordinates end; case 7: warp "comodo",196,143; // Change this warp coordinates end; case 8: warp "izlude",127,107; // Change this warp coordinates end; case 9: mes "[Rohayu]"; mes "Well if you need warp just come look for me"; mes "Good Bye"; close; } } function script call_crafter { doevent "Crafter_Command::OnCrafterMenu"; end; } neko_isle,77,127,4 script Crafter 826,{ callfunc "call_crafter"; } I'm not expert at scripting but i made it work. Tested and works fine. When i type @craft When i talk to npc: -
Hello Everybody, this is an item exchanger. Can someone tell me what's wrong plus can anyone help me with this? Any help will be appreciated. Ciao. turbo_room,106,117,4 script Currency Exchanger 860,{ menu "Skulls to PODs",-,"PODs to Skulls",CS_2,"^ff0000Leave^000000",M_EXIT; if( countitem(7420) < 1000 ) mes "You didnt have 1000 "+getitemname( 7420 ); else{ set .@Amount,( countitem(7420) / 1000 ); delitem 7420,( .@Amount * 1000 ); getitem 7179,.@Amount; mes "Done...you gained "+.@Amount+" "+getitemname(7179); } close; } CS_2: if( countitem(7179) < 1 ) mes "You didnt have 1 "+getitemname( 7179 ); else{ set .@Amount,( countitem(7420) / 1000 ); delitem 7179,( .@Amount * 1 ); getitem 7420,1000; mes "Done...you gained 1000 "+getitemname(7179); } close; } M_EXIT: mes "^ff0000@awesomazingxed^000000 ( Admin )"; mes callfunc("F_Bye"); close; OnInit: end; }
-
Halo rathena. Can someone please fix this script for me. This is a simple item exchanger I just want to have a menu of: 1. Skulls to PODS 2. PODS to SKULL Thanks in advance. turbo_room,106,117,4 script Currency Exchanger 860,{ mes callfunc("F_Hi"); mes "Yo! I am the Currency Exchanger!"; mes "Do you want to change your Skulls to PODS?"; mes "or I rather say your PODS to Skulls?"; next; switch(select("Skulls to PODS:PODS to Skulls")) { case 1: if( countitem(7420) < 1000 ) mes "You didnt have 1000 "+getitemname( 7420 ); else{ set .@Amount,( countitem(7420) / 1000 ); delitem 7420,( .@Amount * 1000 ); getitem 7179,.@Amount; mes "Done...you gained "+.@Amount+" "+getitemname(7179); } close; } case 2: if( countitem(7179) < 1 ) mes "You didnt have 1 "+getitemname( 7179 ); else{ set .@Amount,( countitem(7179) / 1 ); delitem 7179,( .@Amount * 1 ); getitem 7420,( .@Amount * 1000 );; mes "Done...you gained "+.@Amount+" "+getitemname(7420); } close; } Anyone?
-
it's simple script but i cannot find anywhere! can someone make exchanger example: 100 TCG = 1 credit 1 credit = 100 TCG i think you know what i mean! you can change 100 tcg to 1 credit and second choice you can either change it again 1 credit to 100 TCG THANKS in ADVANCE.
-
I would like to request an "exchanger npc". A "shop type" NPC but a TCG Card (7227) item is needed to buy from the NPC. It displays the items available on a shop type menu. But before opening the shop, the NPC shall first say a couple of messages. I will just edit messages part. Thank you.
-
can someone help me. i`ve got errored when it goes to gold coin. i`m using eathena
-
can i request script for exchange +7 Cotton Shirt to Safe to 7 Body Armor Certificate please ?
-
Donation Girl/NPC with Donation Item Viewer & $ to COIN exchanger
Syntax32 posted a question in Script Requests
Hello, I'm interested with the Donation Girl/NPC and I was wondering whether there is someone willing to build a script for a Donation Girl with Item Viewer (Item stats,attribute,etc.) and also with Donate Currency ($) to Coin Echanger. It's hard to explain everything, I was looking for a donation girl just like dRO have. Here's some screenshot for it : Looking forward for a contribution from an expert cause I'm non expert. Really appreciate if there's people willing to help.