Jump to content

Skorm

Forum Moderator
  • Posts

    1282
  • Joined

  • Last visited

  • Days Won

    41

Everything posted by Skorm

  1. Just remove the OnHourXX: OnHour02: //CHANGE THIS TO THE HOUR YOU WOULD LIKE THIS EVENT TO LOAD! OnHour05: OnHour09: OnHour14: OnHour17: OnHour20: OnHour23:
  2. if(rand(0,3)) { mes .npc$; mes "I'm sorry but I've failed you!"; misceffect 155; emotion e_sob,0; delitem .item,.pric; delitem2 .@geid, 1, 1, .@gerf, 0, .@crd1, .@crd2, .@crd3, .@crd4; close; }
  3. prontera,194,188,4 script Enchant Expert 712,{ mes .npc$; mes "Hello there!"; mes "I can enchant your items,"; mes "for a small fee of "+.pric+"z."; emotion e_no1,0; next; if(select("Yes:No")&2) { mes .npc$; mes "Alright, thanks anyways!"; close; } if(Zeny<.pric) { mes .npc$; mes "I'm sorry you don't have enough Zeny, please come back later."; close; } mes .npc$; mes "Which item would you like to enchant?"; next; while(set(.@a,.@a+1)<=.e_len) { if(getequipid(.@a)>-1) set .@menu$, .@menu$+.eqp$[.@a-1]+"- [^0000FF"+getitemname(getequipid(.@a))+"^000000]:"; else set .@menu$, .@menu$+"^adb4be"+.eqp$[.@a-1]+"- [Empty]^000000:"; } select(.@menu$); set .@eq_loc, @menu; set .@eq_itm, getequipid(.@eq_loc); if(.@eq_itm<0) { mes .npc$; mes "Hmm, I don't think you have anything equipped there."; close; } set .@menu$, ""; set(.@eq,(getiteminfo(.@eq_itm,2)==4?4:.@eq_loc)); for(set(.@b,0);.@b<getarraysize(getd(".itm"+.@eq));set(.@b,.@b+1)) { set(.@items,getd(".itm"+.@eq+"["+.@b+"]")); if(getiteminfo(.@items,2)>-1) if(set(.@c,countitem(.@items))) { set .@menu$, .@menu$+getitemname(.@items)+" x"+.@c+":"; set .@b,.@b+1; set .@item[.@b], .@items; } } if(.@menu$=="") { mes .npc$; mes "Hmm, you don't seem to have any enchantment orbs for that equipment."; close; } mes .npc$; mes "Please, select an enchantment from the menu."; next; select(.@menu$); set .@itm, .@item[@menu]; set .@menu$, ""; set .@a, 0; while((set(.@a,.@a+1)-1)<4) { setd(".@crd"+.@a, getequipcardid(.@eq_loc,.@a-1)); if(getequipcardid(.@eq_loc,.@a-1)) set .@menu$, .@menu$+.@a+.crd_c$[.@a-1]+" Slot- [^a92435"+getitemname(getequipcardid(.@eq_loc,.@a-1))+"^000000]:"; else set .@menu$, .@menu$+.@a+.crd_c$[.@a-1]+" Slot- [^30ad25Empty^000000]:"; } mes .npc$; mes "Select a slot."; next; set(.@slot,select(.@menu$)-1); set .@eqrf, getequiprefinerycnt(.@eq_loc); if(getequipcardid(.@eq_loc,.@slot)) { mes .npc$; mes "Would you like me to remove this card?"; next; if(select("Yes:No")&2) { mes .npc$; mes "Alright, thanks anyways!"; close; } getitem getequipcardid(.@eq_loc,.@slot),1; delitem2 .@eq_itm, 1, 1, .@eqrf, 0, .@crd1, .@crd2, .@crd3, .@crd4; setd(".@crd"+(@menu+1), 0); getitem2 .@eq_itm, 1, 1, .@eqrf, 0, .@crd1, .@crd2, .@crd3, .@crd4; } if(rand(101)>.perc[.@slot]) { mes .npc$; mes "I'm sorry but I've failed you!"; misceffect 155; emotion e_sob,0; set Zeny,Zeny-.pric; close; } set Zeny,Zeny-.pric; delitem .@itm,1; delitem2 .@eq_itm, 1, 1, .@eqrf, 0, .@crd1, .@crd2, .@crd3, .@crd4; setd(".@crd"+(@menu+1), .@itm); getitem2 .@eq_itm, 1, 1, .@eqrf, 0, .@crd1, .@crd2, .@crd3, .@crd4; misceffect .efet; emotion e_no1,0; mes .npc$; mes "All done!"; equip .@eq_itm; close; //NPC Constants OnInit: //=-=-=-=-=-=-=Configuration=-=-=-=-=-=-= set .npc$ , "[^0000FFEnchant Expert^000000]"; // NPC Name set .pric , 1000000; // Price set .efet , 154; // Effect Number setarray .perc , 100,80,50,10; // Percent slot setarray .crd_c$, "st", "nd", "rd", "th"; // Count setarray .itm3 , 4760; // Sheilds setarray .itm2 , 4761; // Armor setarray .itm5 , 4762; // Garment setarray .itm6 , 4763, 4764; // Footgear setarray .itm7 , 4765; // Accessory1 setarray .itm8 , 4766; // Accessory2 setarray .itm4 , 4765; // Weapon setarray .itm10 , 4766; // Low Headgear setarray .itm9 , 4767; // Mid Headgear setarray .itm1 , 4767; // Upper Headgear setarray .eqp$ , "Upper Headgear", "Armor", "Left Hand", "Right Hand", "Garment", "Shoes", "Accessory1", "Accessory2", "Mid Headgear", "Low Headgear"; set .e_len , getarraysize(.eqp$); //=-=-=-=-=-=-=-=-Skorm-=-=-=-=-=-=-=-=-= }
  4. This information has more than 3. http://ragnarok.levelupgames.ph/main/neo-echantment-special-event/ I'll leave the rest up to you. prontera,201,188,4 script Neo Enchanter 851,{ mes .npc$; mes "Hello there!"; mes "I can make Neo items even better!"; mes "If you have a ^0000FF"+getitemname(atoi(.e_itl$[1]))+"^000000,"; mes "a ^0000FF"+getitemname(atoi(.e_itl$[0]))+"^000000,"; mes "or a ^0000FF"+getitemname(atoi(.e_itl$[2]))+"^000000."; mes "I'll enchant it for "+.pric+" "+getitemname(.item)+"(s)."; next; if(select("Yes:No")&2) { mes .npc$; mes "Alright, thanks anyways!"; close; } if(countitem(.item)<.pric) { mes .npc$; mes "I'm sorry you don't have enough "+getitemname(.item)+", please come back later."; close; } if(.note){ mes "^a92435----------NOTICE----------"; mes "The enchanted Neo armor will only"; mes "be available during the event"; mes "period. (October 17 - November 21)"; next; } mes .npc$; mes "Which Neo item would you like to enchant?"; next; while(set(.@a,.@a+1)<=.e_len) { if(compare("|"+.e_itl$[.@a-1]+"|","|"+getequipid(.e_loc[.@a-1])+"|")) set .@menu$, .@menu$+.eqp$[.@a-1]+"- [^0000FF"+getitemname(getequipid(.e_loc[.@a-1]))+"^000000]:"; else set .@menu$, .@menu$+"^adb4be"+.eqp$[.@a-1]+"- [Empty]^000000:"; } select(.@menu$); set .@eq_loc, .e_loc[(@menu-1)]; set .@eq_id, getequipid(.@eq_loc); set .@eq_rf, getequiprefinerycnt(.@eq_loc); if(compare("|"+.e_itm$+"|","|"+.@eq_id+"|")) { set .@crd0, getequipcardid(.@eq_loc,0); while(getd(".menu"+.@b+"$")!="") { mes .npc$; mes "Choose ^0000FF"+(.@b+1)+.itm_c$[.@b]+"^000000 enchantment for your item."; next; select(getd(".menu"+.@b+"$")); setd(".@crd"+(.@b+1),getequipcardid(.@eq_loc,(.@b+1))); setd(".@n_crd"+(.@b+1),getd(".itm"+(.@b+1)+"["+(@menu-1)+"]")); set(.@b,.@b+1); } } else { mes .npc$; mes "Sorry I don't recoginze that equipment."; close; } delitem(.item,.pric); if(rand(101)<=.rate) { delitem2 .@eq_id, 1, 1, .@eq_rf, 0, .@crd0, .@crd1, .@crd2, .@crd3; getitem2 .@eq_id, 1, 1, .@eq_rf, 0, .@crd0, .@n_crd1, .@n_crd2, .@n_crd3; misceffect .efet; mes .npc$; mes "All done!"; emotion e_no1,0; equip .@eq_id; } else { misceffect 155; mes .npc$; mes "I'm sorry I've failed you"; emotion e_sob,0; } close; //NPC Constants OnInit: //=-=-=-=-=-=-=Configuration=-=-=-=-=-=-= set .npc$ , "[Neo Enchanter]"; // NPC Name set .note , 1; // Shows notice 1=on/0=off set .pric , 3; // Price set .item , 6242; // required item set .rate , 30; set .efet , 154; // Effect Number setarray .itm1 , 4704; // Item Menu1 setarray .itm2 , 4764; // Item Menu2 setarray .itm3 , 4802, 4788, 4765, 4763, 4799; // Item Menu3 setarray .itm_c$, "st", "nd", "rd"; // Numbers setarray .eqp$ , "Shield", "Garment", "Accessory1", "Accessory2";// Menu3 setarray .e_itl$, "2137", "2548", "2763", "2763"; // Equip Items setarray .e_loc , 3, 5, 7, 8; // Equip Locations set .e_itm$, implode(.e_itl$,"|"); set .e_len , getarraysize(.eqp$); set .len0 , getarraysize(.itm1); set .len1 , getarraysize(.itm2); set .len2 , getarraysize(.itm3); //=-=-=-=-=-=-=-=-Skorm-=-=-=-=-=-=-=-=-= while(getd(".len"+.@a)) { for(set(.@b,0);.@b<getd(".len"+.@a);set(.@b,.@b+1)) setd ".menu"+.@a+"$", getd(".menu"+.@a+"$")+ getitemname(getd(".itm"+(.@a+1)+"["+.@b+"]"))+":"; set(.@a,.@a+1); } }
  5. setarray .itm1 , 4704, 4764; // Item Menu1 Range setarray .itm2 , 4802, 4788, 4765, 4763, 4799; // Item Menu2
  6. I have no time to test, but the changes have been made. prontera,201,188,4 script Neo Enchanter 851,{ mes .npc$; mes "Hello there!"; mes "I can make Neo items even better!"; mes "If you have a ^0000FF"+getitemname(atoi(.e_itl$[1]))+"^000000,"; mes "a ^0000FF"+getitemname(atoi(.e_itl$[0]))+"^000000,"; mes "or a ^0000FF"+getitemname(atoi(.e_itl$[2]))+"^000000."; mes "I'll enchant it for "+.pric+" "+getitemname(.item)+"(s)"; next; if(select("Yes:No")&2) { mes .npc$; mes "Alright, thanks anyways!"; close; } if(countitem(.item)<.pric) { mes .npc$; mes "I'm sorry you don't have enough "+getitemname(.item)+", please come back later."; close; } if(.note){ mes "^a92435----------NOTICE----------"; mes "The enchanted Neo armor will only"; mes "be available during the event"; mes "period. (October 17 - November 21)"; next; } mes .npc$; mes "Which Neo item would you like to enchant?"; next; while(set(.@a,.@a+1)<=.e_len) { if(compare("|"+.e_itl$[.@a-1]+"|","|"+getequipid(.e_loc[.@a-1])+"|")) set .@menu$, .@menu$+.eqp$[.@a-1]+"- [^0000FF"+getitemname(getequipid(.e_loc[.@a-1]))+"^000000]:"; else set .@menu$, .@menu$+"^adb4be"+.eqp$[.@a-1]+"- [Empty]^000000:"; } select(.@menu$); set .@eq_loc, .e_loc[(@menu-1)]; set .@eq_id, getequipid(.@eq_loc); set .@eq_rf, getequiprefinerycnt(.@eq_loc); if(compare("|"+.e_itm$+"|","|"+.@eq_id+"|")) { set .@crd0, getequipcardid(.@eq_loc,0); while(getd(".menu"+.@b+"$")!="") { mes .npc$; mes "Choose ^0000FF"+(.@b+1)+.itm_c$[.@b]+"^000000 enchantment for your item."; next; select(getd(".menu"+.@b+"$")); setd(".@crd"+(.@b+1),getequipcardid(.@eq_loc,(.@b+1))); setd(".@n_crd"+(.@b+1),((.@b>1)?.itm2[@menu-1]:.itm1[0]+((@menu-1)*10))); set(.@b,.@b+1); } } else { mes .npc$; mes "Sorry I don't recoginze that equipment."; close; } delitem(.item,.pric); if(rand(101)<=.rate) { delitem2 .@eq_id, 1, 1, .@eq_rf, 0, .@crd0, .@crd1, .@crd2, .@crd3; getitem2 .@eq_id, 1, 1, .@eq_rf, 0, .@crd0, .@n_crd1, .@n_crd2, .@n_crd3; misceffect .efet; mes .npc$; mes "All done!"; emotion e_no1,0; equip .@eq_id; } else { misceffect 155; mes .npc$; mes "I'm sorry I've failed you"; emotion e_sob,0; } close; //NPC Constants OnInit: //=-=-=-=-=-=-=Configuration=-=-=-=-=-=-= set .npc$ , "[Neo Enchanter]"; // NPC Name set .note , 1; // Shows notice 1=on/0=off set .pric , 3; // Price set .item , 6242; // required item set .rate , 30; set .efet , 154; // Effect Number setarray .itm1 , 4704, 4764; // Item Menu1 Range setarray .itm2 , 4802, 4788, 4765, 4763, 4799; // Item Menu2 setarray .itm_c$, "st", "nd", "rd"; // Numbers setarray .eqp$ , "Shield", "Garment", "Accessory1", "Accessory2";// Menu3 setarray .e_itl$, "2137", "2548", "2763", "2763"; // Equip Items setarray .e_loc , 3, 5, 7, 8; // Equip Locations set .e_itm$, implode(.e_itl$,"|"); set .e_len , getarraysize(.eqp$); set .i_len , getarraysize(.itm2); //=-=-=-=-=-=-=-=-Skorm-=-=-=-=-=-=-=-=-= for(set(.@a,.itm1[0]);.@a<=.itm1[1];set(.@a,.@a+10)) set .menu0$, .menu0$+ getitemname(.@a)+":"; set .menu1$, .menu0$; for(set(.@a,0);.@a<.i_len;set(.@a,.@a+1)) set .menu2$, .menu2$+ getitemname(.itm2[.@a])+":"; }
  7. I actually really liked the art design of RO2:GOTW. It felt true to RO, but there just wasn't enough to do, and not enough classes imo.
  8. Well it was your use of colour that attracted me not just that fact that it was coloured... You have a good eye for templates/palettes. So I guess I disagree with DE I don't like your primary coloured ones as much
  9. Olrox I'm incredibly jealous of your epic talents :/ Btw first one is awesome.
  10. I'm very sorry to hear you quit RO goodluck in whatever you're doing now.

  11. I would assume so... Just save the instance id into a variable from the first party and then use it in the command. warp(instance_mapname("prontera",.instanceid),0,0); I know Hercules has some really nice instance commands. That allow for player, server, party, or even guild specific instances. :0 I don't know if rAthena has adopted them yet, because I'm using a slightly older revision.
  12. Skorm

    Server News

    Version 1.1

    687 downloads

    This is an easily editable npc the shows current server news. Everything is saved on sql so you could potentially link it to a php file and then to html for dynamic in game site and patcher changes... You can watch this script here: .
    Free
  13. File Name: Server News File Submitter: Skorm File Submitted: 16 Nov 2013 File Category: Utilities Content Author: Skorm This is an easily editable npc that shows current server news. Everything is saved on sql so you could potentially link it to a php file and then to html for dynamic in game site and patcher changes... Click here to download this file
  14. Skorm

    Ctrl + V

    mes "Event Map: ^0000ff"+.maps$[.event]; mes "^000000Parties: ^0000ff"+.party[.event]; mes "^000000Members: ^0000ff"+.ptmem[.event]; mes "Select a map to change the game mode."; mes "^ff0000(Changes are not permanent and will be reset every-time the server restarts.)^000000"; for(set(.@a,0);.@a<getarraysize(.maps$);set(.@a,.@a+1)) set .@gmenu$, .@gmenu$+.maps$[.@a]+"-"+.party[.@a]+"x"+.party[.@a]+"-"+.ptmem[.@a]+"mem:"; set @menu, select(.@gmenu$)-1; next; set .event,@menu; mes "Game-mode has been changed!"; close;
  15. Use the quest db for monster hunting of one monster type.
  16. - script Sprakki#newbe05::NvSprakkiB -1,{ if (job_novice_q == 0) { cutin "v_sprakki02",2; mes "^00D1FE[Sprakki]^000000"; mes "Hello there! Welcome to the World of ^00CFAARagnarok^000000."; mes "My name is Sprakki and I'm in charge of giving you basic gameplay tips."; mes "Click on the ^F268D3[Next]^000000 button or press ^60D8FF[Enter]^000000 key to continue."; next; mes "^00D1FE[Sprakki]^000000"; mes "First you need to learn the very basics of controlling your character."; mes "All the basic ^4d4dffmoves, selection of items, and attacks^000000 use the ^4d4dff left click of the mouse^000000."; next; cutin "",255; cutin "tutorial01",3; mes "-! Info !-"; mes "Click on the ground to move the character."; mes "Attacking monsters and conversations with the people of this world can be done by simply clicking on them."; next; cutin "",255; cutin "v_sprakki02",2; mes "^00D1FE[Sprakki]^000000"; mes "Well then, I will give you a quest to talk to me."; mes "After the conversation is over, talk to me again by left-clicking on me."; set job_novice_q,1; setquest 7117; next; cutin "",255; cutin "tutorial02",3; mes "-! Info !-"; mes "You've received a quest from Sprakki."; mes "You can check the contents of the quest in the Quest Info Window by pressing the ^4d4dffAlt + U^000000 keys at the same time."; next; cutin "",255; cutin "v_sprakki01",2; mes "^00D1FE[Sprakki]^000000"; mes "Have you checked the Quest Info Window?"; mes "Well, talk to me again."; close2; cutin "",255; end; } else if (job_novice_q < 3&&job_novice_q != 2) { if (job_novice_q == 1) { cutin "v_sprakki02",2; mes "^00D1FE[Sprakki]^000000"; mes "Great!"; mes "Now you know how to move and talk to others, right?"; getexp 600,5; set job_novice_q,2; setquest 7118; completequest 7117; next; } cutin "",255; cutin "v_sprakki02",2; mes "^00D1FE[Sprakki]^000000"; mes "The Training Center is prepared for novices just like you."; mes "You are going to be trained to get used to the basics of the Game."; next; mes "^00D1FE[Sprakki]^000000"; mes "I will guide you to the Novice Training Center."; mes "Instructor 'Brade' will be waiting to speak to you."; next; mes "^00D1FE[Sprakki]^000000"; mes "Please go see Instructor 'Brade' across the bridge to continue your training."; mes "But, you will miss all the advantages you can get in the Training Center."; next; cutin "",255; mes "^4d4dffYou received a quest from Sprakki."; mes "Please check the Quest Info Window.^000000"; close; } else if (job_novice_q == 2) { cutin "v_sprakki02",2; mes "^00D1FE[Sprakki]^000000"; mes "Please go see Instructor 'Brade' across the bridge to continue your training."; close2; cutin "",255; end; } } I imagine it'd be better to use checkquest but variables work too.
  17. 1000 milliseconds is equal to 1 second. MillSec | Sec | Min | Converted Milliseconds 1000 * 60 * 30 = 1800000 - warmmessage -1,{ OnPCLoginEvent: addtimer(1800000,"warmmessage::On30Min"); end; On30Min: message(strcharinfo(0),"You've been playing for 30 minutes please concider taking a break."); }
  18. I'm not 100% sure what you mean? Something like this? prontera,159,182,3 script slots 100,{ OnSlots: setarray(.@f_items,501,502,503,504); setarray(.@t_items,1166,2527,2115); for(set(.@b,1);.@b<=3;set(.@b,.@b+1)) for(set(.@a,1);.@a<=8;set(.@a,.@a+1)) { cutin "",255; cutin "collection_slotmachine000"+.@a,4; sleep2(100*.@; } set(.@g,rand(2)?8:4); for(set(.@a,1);.@a<=.@g;set(.@a,.@a+1)) { cutin "",255; cutin "collection_slotmachine000"+.@a,4; sleep2(400); } cutin "",255; if(.@g==8) getitem(.@t_items[rand(getarraysize(.@t_items))],1); else getitem(.@f_items[rand(getarraysize(.@f_items))],1); end; } http://www.mediafire.com/?sv24z24a20t2j3l Except you want it daily... The best way for making anything daily, in my option, is by adding a quest with a timer to it. Just make the cooldown 24 hours long.
  19. I love this... I love everything you do... <3
  20. Skorm

    MVP Spawner

    https://code.google.com/p/ea-addicts/downloads/detail?name=mvpspawner.txt&can=2&q=
  21. if (Class > 20) end; To: if (eaclass()&EAJL_UPPER) end;
  22. If getequipid was returning 0 then yeah it would. prontera,201,188,4 script Neo Enchanter 851,{ mes .npc$; mes "Hello there!"; mes "I can make Neo items even better!"; mes "If you have a ^0000FF"+getitemname(atoi(.e_itl$[1]))+"^000000,"; mes "a ^0000FF"+getitemname(atoi(.e_itl$[0]))+"^000000,"; mes "or a ^0000FF"+getitemname(atoi(.e_itl$[2]))+"^000000."; mes "I'll enchant it for 1,000,000z"; next; if(select("Yes:No")&2) { mes .npc$; mes "Alright, thanks anyways!"; close; } if(Zeny<.pric) { mes .npc$; mes "I'm sorry you don't have enough Zeny, please come back later."; close; } if(.note){ mes "^a92435----------NOTICE----------"; mes "The enchanted Neo armor will only"; mes "be available during the event"; mes "period. (October 17 - November 21)"; next; } mes .npc$; mes "Which Neo item would you like to enchant?"; next; while(set(.@a,.@a+1)<=.e_len) { if(compare("|"+.e_itl$[.@a-1]+"|","|"+getequipid(.e_loc[.@a-1])+"|")) set .@menu$, .@menu$+.eqp$[.@a-1]+"- [^0000FF"+getitemname(getequipid(.e_loc[.@a-1]))+"^000000]:"; else set .@menu$, .@menu$+"^adb4be"+.eqp$[.@a-1]+"- [Empty]^000000:"; } select(.@menu$); set .@eq_loc, .e_loc[(@menu-1)]; set .@eq_id, getequipid(.@eq_loc); set .@eq_rf, getequiprefinerycnt(.@eq_loc); if(compare("|"+.e_itm$+"|","|"+.@eq_id+"|")) { set .@crd0, getequipcardid(.@eq_loc,0); while(getd(".menu"+.@b+"$")!="") { mes .npc$; mes "Choose ^0000FF"+(.@b+1)+.itm_c$[.@b]+"^000000 enchantment for your item."; next; select(getd(".menu"+.@b+"$")); setd(".@crd"+(.@b+1),getequipcardid(.@eq_loc,(.@b+1))); setd(".@n_crd"+(.@b+1),((.@b>1)?.itm2[@menu-1]:.itm1[0]+((@menu-1)*10))); set(.@b,.@b+1); } } else { mes .npc$; mes "Sorry I don't recoginze that equipment."; close; } set Zeny, Zeny-.pric; delitem2 .@eq_id, 1, 1, .@eq_rf, 0, .@crd0, .@crd1, .@crd2, .@crd3; getitem2 .@eq_id, 1, 1, .@eq_rf, 0, .@crd0, .@n_crd1, .@n_crd2, .@n_crd3; misceffect .efet; mes .npc$; mes "All done!"; equip .@eq_id; close; //NPC Constants OnInit: //=-=-=-=-=-=-=Configuration=-=-=-=-=-=-= set .npc$ , "[Neo Enchanter]"; // NPC Name set .note , 1; // Shows notice 1=on/0=off set .pric , 1000000; // Price set .efet , 154; // Effect Number setarray .itm1 , 4704, 4764; // Item Menu1 Range setarray .itm2 , 4802, 4788, 4765, 4763, 4799; // Item Menu2 setarray .itm_c$, "st", "nd", "rd"; // Numbers setarray .eqp$ , "Shield", "Garment", "Accessory1", "Accessory2";// Menu3 setarray .e_itl$, "2137", "2548", "2763", "2763"; // Equip Items setarray .e_loc , 3, 5, 7, 8; // Equip Locations set .e_itm$, implode(.e_itl$,"|"); set .e_len , getarraysize(.eqp$); set .i_len , getarraysize(.itm2); //=-=-=-=-=-=-=-=-Skorm-=-=-=-=-=-=-=-=-= for(set(.@a,.itm1[0]);.@a<=.itm1[1];set(.@a,.@a+10)) set .menu0$, .menu0$+ getitemname(.@a)+":"; set .menu1$, .menu0$; for(set(.@a,0);.@a<.i_len;set(.@a,.@a+1)) set .menu2$, .menu2$+ getitemname(.itm2[.@a])+":"; }
  23. On the off chance that you happen to be using eAthena instead of rAthena you can always use my super old and outdated script here... http://code.google.com/p/ea-addicts/downloads/detail?name=gmprotectcleanwithoutaddon.txt&can=2&q= Change gothic to whatever password... set $@Password$, "gothic"; Change 5 to 60... getgmlevel() >= 5 @Khazou: That is flawed you need to mute the player or something to prevent them from warping away with Alt+(1-0)...
  24. prontera,194,188,4 script Enchant Expert 712,{ mes .npc$; mes "Hello there!"; mes "I can enchant your items,"; mes "for a small fee of "+.pric+"z."; emotion e_no1,0; next; if(select("Yes:No")&2) { mes .npc$; mes "Alright, thanks anyways!"; close; } if(Zeny<.pric) { mes .npc$; mes "I'm sorry you don't have enough Zeny, please come back later."; close; } mes .npc$; mes "Which item would you like to enchant?"; next; while(set(.@a,.@a+1)<=.e_len) { if(getequipid(.@a)>-1) set .@menu$, .@menu$+.eqp$[.@a-1]+"- [^0000FF"+getitemname(getequipid(.@a))+"^000000]:"; else set .@menu$, .@menu$+"^adb4be"+.eqp$[.@a-1]+"- [Empty]^000000:"; } select(.@menu$); set .@eq_loc, @menu; set .@eq_itm, getequipid(.@eq_loc); if(.@eq_itm<0) { mes .npc$; mes "Hmm, I don't think you have anything equipped there."; close; } set .@menu$, ""; set .@a, .en_orb[0]; while((set(.@a,.@a+1)-1)<=.en_orb[1]) if(getiteminfo(.@a-1,2)>-1) if(set(.@c,countitem(.@a-1))) { set .@menu$, .@menu$+getitemname(.@a-1)+" x"+.@c+":"; set .@b,.@b+1; set .@item[.@b], .@a-1; } if(.@menu$=="") { mes .npc$; mes "Hmm, you don't seem to have any enchantment orbs."; close; } mes .npc$; mes "Please, select an enchantment from the menu."; next; select(.@menu$); set .@itm, .@item[@menu]; set .@menu$, ""; set .@a, 0; while((set(.@a,.@a+1))<4) { if(getequipcardid(.@eq_loc,.@a)) set .@menu$, .@menu$+(.@a+1)+.crd_c$[.@a]+" Slot- [^a92435"+getitemname(getequipcardid(.@eq_loc,.@a))+"^000000]:"; else set .@menu$, .@menu$+(.@a+1)+.crd_c$[.@a]+" Slot- [^30ad25Empty^000000]:"; } setarray .@card, getequipcardid(.@eq_loc,0), getequipcardid(.@eq_loc,1), getequipcardid(.@eq_loc,2), getequipcardid(.@eq_loc,3); mes .npc$; mes "Select a slot."; next; set .@men, select(.@menu$); set .@eqrf, getequiprefinerycnt(.@eq_loc); if(getequipcardid(.@eq_loc,@menu)) { mes .npc$; mes "Would you like me to remove this card?"; next; if(select("Yes:No")&2) { mes .npc$; mes "Alright, thanks anyways!"; close; } getitem getequipcardid(.@eq_loc,.@men),1; unequip(.@eq_loc); delitem2 .@eq_itm, 1, 1, .@eqrf, 0, .@card[0], .@card[1], .@card[2], .@card[3]; set .@card[.@men], 0; getitem2 .@eq_itm, 1, 1, .@eqrf, 0, .@card[0], .@card[1], .@card[2], .@card[3]; } if(rand(100)>.perc) { mes .npc$; mes "I'm sorry but I've failed you!"; misceffect 155; emotion e_sob,0; set Zeny,Zeny-.pric; close; } set Zeny,Zeny-.pric; delitem .@itm,1; delitem2 .@eq_itm, 1, 1, .@eqrf, 0, .@card[0], .@card[1], .@card[2], .@card[3]; set .@card[.@men], .@itm; getitem2 .@eq_itm, 1, 1, .@eqrf, 0, .@card[0], .@card[1], .@card[2], .@card[3]; misceffect .efet; emotion e_no1,0; mes .npc$; mes "All done!"; equip .@eq_itm; close; //NPC Constants OnInit: //=-=-=-=-=-=-=Configuration=-=-=-=-=-=-= set .npc$ , "[^0000FFEnchant Expert^000000]"; // NPC Name set .pric , 1000000; // Price set .efet , 154; // Effect Number set .perc , rand(50,80); // Percent setarray .crd_c$, "st", "nd", "rd", "th"; // Count setarray .en_orb, 4700, 4862; // Range of IDs selected for enchanting. setarray .eqp$ , "Upper Headgear", "Armor", "Left Hand", "Right Hand", "Garment", "Shoes", "Accessory1", "Accessory2", "Mid Headgear", "Low Headgear"; set .e_len , getarraysize(.eqp$); //=-=-=-=-=-=-=-=-Skorm-=-=-=-=-=-=-=-=-= }
  25. http://www.youtube.com/watch?v=OA5dsJgGay4 Anything by DJ Okawari is simply amazing but I've taking an interest in this song lately.
×
×
  • Create New...