3rd_trader.txt 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230
  1. //===== rAthena Script =======================================
  2. //= 3rd Item Seller
  3. //===== By: ==================================================
  4. //= Masao, Mercurial
  5. //===== Current Version: =====================================
  6. //= 1.2
  7. //===== Compatible With: =====================================
  8. //= rAthena SVN
  9. //===== Description: =========================================
  10. //= [Aegis Conversion]
  11. //= Sells some 3rd Job related items.
  12. //===== Additional Comments: =================================
  13. //= 1.0 First Version.
  14. //= 1.1 Optimized Poison Herb Salesman NPC
  15. //= 1.2 Optimized and standardized. [Euphy]
  16. //============================================================
  17. job3_guil01,79,96,3 script Poison Herb Salesman::PHS 877,{
  18. if (checkweight(1201,1) == 0 || MaxWeight - Weight < 20000) {
  19. mes "- Wait a minute !! -";
  20. mes "- Currently you're carrying -";
  21. mes "- too many items with you. -";
  22. mes "- Please try again -";
  23. mes "- after you lose some weight. -";
  24. close;
  25. }
  26. mes "[Poison Herb Salesman]";
  27. mes "I am the professional";
  28. mes "poison herb seller.";
  29. mes "Which one do you want?";
  30. mes "They cost 4,000 zeny each!";
  31. set .@i, select("Nerium:Rantana:Makulata:Seratum:Scopolia:Amoena:Poison Kit")-1;
  32. next;
  33. if (.@i < 6) {
  34. mes "[Poison Herb Salesman]";
  35. mes "How many do you want? You can";
  36. mes "only buy a maximum of 2000 ea";
  37. mes "and if you want to cancel, enter '0'.";
  38. next;
  39. input .@amount;
  40. mes "[Poison Herb Salesman]";
  41. if (.@amount == 0) {
  42. mes "You've cancelled the trade.";
  43. close;
  44. }
  45. if (.@amount > 2000) {
  46. mes "Please check the maximum";
  47. mes "amount and then try again.";
  48. close;
  49. }
  50. if (Zeny < .@amount*4000) {
  51. mes "Please check the money you have.";
  52. mes "It doesn't seem like you have enough money.";
  53. close;
  54. }
  55. set Zeny, Zeny-(.@amount*4000);
  56. getitem 7932+.@i,.@amount;
  57. mes "Thank you. See you~!";
  58. close;
  59. } else {
  60. mes "[Poison Herb Salesman]";
  61. mes "You can only buy";
  62. mes "1 Poison Kit and it costs 5,000 zeny.";
  63. mes "Will you buy it?";
  64. next;
  65. if(select("Yes, I will.:No, I won't.") == 2) {
  66. mes "[Poison Herb Salesman]";
  67. mes "Well, I see. See you~!";
  68. close;
  69. }
  70. mes "[Poison Herb Salesman]";
  71. if (Zeny < 5000) {
  72. mes "Please check the money you have.";
  73. mes "It doesn't seem like you have enough money.";
  74. close;
  75. }
  76. set Zeny, Zeny-5000;
  77. getitem 7931,1;
  78. mes "[Poison Herb Salesman]";
  79. mes "Thank you. See you~!";
  80. close;
  81. }
  82. }
  83. morocc,190,96,4 duplicate(PHS) Poison Herb Salesman#moc 877
  84. lhz_in02,16,205,4 duplicate(PHS) Poison Herb Salesman#lhz 877
  85. job3_rune01,90,62,3 script Rune Salesman::runesale 853,{
  86. if (checkweight(1201,1) == 0 || MaxWeight - Weight < 20000) {
  87. mes "- Wait a minute !! -";
  88. mes "- Currently you're carrying -";
  89. mes "- too many items with you. -";
  90. mes "- Please try again -";
  91. mes "- after you lose some weight. -";
  92. close;
  93. }
  94. mes "[Rune Salesman]";
  95. mes "Hey, do you need Runes?!";
  96. mes "I sell all kinds of Rune Stones!";
  97. mes "What kind of Rune do you want?";
  98. next;
  99. set .@i, select("Buy high-quality Rune Stones.:Buy ordinary Rune Stones.");
  100. mes "[Rune Salesman]";
  101. if (.@i == 1) {
  102. mes "High-quality Runes!";
  103. mes "They cost 2,500 zeny each!";
  104. setarray .@rune[0],12734,2500;
  105. } else {
  106. mes "Ordinary Rune Stones?";
  107. mes "They cost 1,000 zeny each!";
  108. setarray .@rune[0],12737,1000;
  109. }
  110. mes "Tell me how many you want to buy";
  111. mes "and remember, you can only";
  112. mes "buy a maximum amount of 2000 ea!";
  113. next;
  114. input .@amount;
  115. mes "[Rune Salesman]";
  116. if (.@amount == 0) {
  117. mes "You're not buying? Go away!";
  118. close;
  119. }
  120. if (.@amount > 2000) {
  121. mes "Please check the maximum";
  122. mes "amount and then come back to me again!";
  123. close;
  124. }
  125. if (Zeny < .@amount*.@rune[1]) {
  126. mes "Money! Money!";
  127. mes "You are short of money!";
  128. mes "Check the amount of money you have!!";
  129. close;
  130. }
  131. if (!checkweight(.@rune[0],.@amount)) {
  132. mes "You're not able to carry it, so why are you trying to buy it?!";
  133. close;
  134. }
  135. set Zeny, Zeny-(.@amount*.@rune[1]);
  136. getitem .@rune[0],.@amount;
  137. mes "You can buy more again.";
  138. mes "So, see you later.";
  139. close;
  140. }
  141. prontera,168,228,3 duplicate(runesale) Rune Salesman#1 853
  142. job3_guil01,91,93,3 script Rare Herb Collector 49,{
  143. if (checkweight(1201,1) == 0 || MaxWeight - Weight < 20000) {
  144. mes "- Wait a minute !! -";
  145. mes "- Currently you're carrying -";
  146. mes "- too many items with you. -";
  147. mes "- Please try again -";
  148. mes "- after you lose some weight. -";
  149. close;
  150. }
  151. if (Class == Job_Guillotine_Cross || Class == Job_Guillotine_Cross_T || Class == Job_Baby_Cross) {
  152. mes "[Rare Poison Herb Collector]";
  153. mes "I wander around the world and collect rare poison herbs. Recently, I am dealing in the herb called Izidor. If you are interested, you can buy them.";
  154. next;
  155. set .@i, select("How can I buy them?:Exchange it with Animal Blood:Exchange it with a Bitter Herb:Exchange it with a Deadly Noxious Herb:Exchange it with a Frozen Rose:Exchange it with Ment:Exchange it with Hinalle")-1;
  156. if (.@i == 0) {
  157. mes "[Rare Poison Herb Collector]";
  158. mes "You can buy any of those items for 10,000 zeny: Animal Blood, Bitter Herb, Deadly Noxious Herb, Frozen Rose, Ment or Hinalle. ";
  159. next;
  160. mes "[Rare Poison Herb Collector]";
  161. mes "Why I ask for money? That is just to pay a little respect to a collector like me. Ha ha ha...";
  162. close;
  163. } else {
  164. setarray .@exchange[1],702,621,631,749,605,703;
  165. mes "[Rare Poison Herb Collector]";
  166. if (!countitem(.@exchange[.@i]) || Zeny < 10000) {
  167. mes "Hey, try again after you've prepared all the requirements for the exchange.";
  168. close;
  169. }
  170. mes "Thank you. I've received your payment.";
  171. delitem .@exchange[.@i],1;
  172. set Zeny, Zeny-10000;
  173. getitem 709,1;
  174. close;
  175. }
  176. }
  177. mes "[Rare Poison Herb Collector]";
  178. mes "I wander around the world and collect rare poison herbs. But I don't feel like selling my herbs to a person like you... ha ha ha...";
  179. close;
  180. }
  181. gef_tower,105,172,5 script Point Salesman#Sorcerer::pss 700,{
  182. if (checkweight(1201,1) == 0 || MaxWeight - Weight < 20000) {
  183. mes "- Wait a minute !! -";
  184. mes "- Currently you're carrying -";
  185. mes "- too many items with you. -";
  186. mes "- Please try again -";
  187. mes "- after you lose some weight. -";
  188. close;
  189. }
  190. mes "[Point Salesman]";
  191. mes "Hello. I'm selling a catalyst called ^FF0000Points^000000 for Sorcerers. What would you like?";
  192. next;
  193. set .@i, select("Scarlet Points - 200z:Lime Green Points - 200z:Indigo Points - 200z:Yellow Wish Points - 200z:Cancel")-1;
  194. mes "[Point Salesman]";
  195. if (.@i == 4) {
  196. mes "You can't find the stuff you need?";
  197. close;
  198. }
  199. setarray .@itemid[0],6360,6363,6361,6362;
  200. setarray .@color$[0],"Scarlet","Lime Green","Indigo","Yellow Wish";
  201. mes "You have chosen "+.@color$[.@i]+" Points.";
  202. mes "How many do you want?";
  203. mes "If you want to cancel, enter 0.";
  204. next;
  205. input .@amount;
  206. mes "[Point Salesman]";
  207. if (.@amount == 0) {
  208. mes "You've cancelled the trade.";
  209. close;
  210. }
  211. if (Zeny < .@amount*200) {
  212. mes "You don't seem to have enough money.";
  213. close;
  214. }
  215. if (!checkweight(.@itemid[.@i],.@amount)) {
  216. mes "You don't have enough space in your inventory to buy this amount.";
  217. close;
  218. }
  219. set Zeny, Zeny-(.@amount*200);
  220. getitem .@itemid[.@i],.@amount;
  221. mes "Thank you very much. See you~!";
  222. close;
  223. }
  224. comodo,241,103,6 duplicate(pss) Point Salesman#1 700
  225. alberta,105,52,7 duplicate(pss) Point Salesman#2 700
  226. veins,202,128,6 duplicate(pss) Point Salesman#3 700