hair_dyer.txt 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272
  1. //===== rAthena Script =======================================
  2. //= Hair Dyer
  3. //===== By: ==================================================
  4. //= kobra_k88; L0ne_W0lf
  5. //===== Current Version: =====================================
  6. //= 1.5
  7. //===== Compatible With: =====================================
  8. //= rAthena Project
  9. //===== Description: =========================================
  10. //= Hair Dyer with standard palletes
  11. //===== Additional Comments: =================================
  12. //= Fully working
  13. //= 1.1 Bugfix: fixed missing menu label LEnd->M_End [Lupus]
  14. //= 1.2 Rescripted to Aegis 10.3 standards. [L0ne_W0lf]
  15. //= 1.3 Fixed problem what "freezes" the NPC. (bugreport:509) [Samuray22]
  16. //= 1.4 Fixed getlook checking the wrong color. (bugreport:2392) [L0ne_W0lf]
  17. //= 1.5 Added Lighthalzen Hair Dying NPC. [L0ne_W0lf]
  18. //= 1.6 Moving NPC Jovovich to Pre-Renewal [JohnnyPlayy]
  19. //============================================================
  20. // Lighthalzen
  21. lhz_in02,100,134,3 script Hair Dyer#lich 850,{
  22. mes "[Rossa]";
  23. if (Sex == SEX_MALE) {
  24. mes "Welcome, come in~";
  25. mes "Oh, I see that you take";
  26. mes "much better care of your";
  27. mes "hair than those other boys.";
  28. mes "Now would you like to dye";
  29. mes "your hair another color?";
  30. }
  31. else {
  32. mes "Oh, wow~ Where did";
  33. mes "you get your hair styled?";
  34. mes "I love it! But... It would";
  35. mes "be even more beautiful if";
  36. mes "you dyed your hair. What";
  37. mes "do you think about that?";
  38. }
  39. while (.@choose_success != 2) {
  40. next;
  41. switch(select("Dye Hair:Coloring Information:Cancel")) {
  42. case 1:
  43. mes "[Rossa]";
  44. mes "Ho ho ho ho~";
  45. mes "So which color would";
  46. mes "you like to try? Something";
  47. mes "vivid or dark? Sexy or cute?";
  48. next;
  49. while (.@choose_success != 2) {
  50. if (.@choose_success == 1) {
  51. mes "[Rossa]";
  52. mes "Ooh, I like this color!";
  53. mes "But would you like to";
  54. mes "try a different one?";
  55. next;
  56. switch(select("Yes:No")) {
  57. case 1:
  58. mes "[Rossa]";
  59. mes "Please select";
  60. mes "another color~";
  61. next;
  62. break;
  63. case 2:
  64. mes "[Rossa]";
  65. mes "An excellent choice~";
  66. mes "Alright then, thank you";
  67. mes "for using my service and";
  68. mes "I hope you come by again!";
  69. close2;
  70. set .@choose_success,2;
  71. break;
  72. }
  73. }
  74. while (.@choose_success != 2) {
  75. switch(select("Red, please.:Yellow, please.:Purple, please.:Orange, please.:Green, please.:Blue, please.:White, please.:Dark Brown, please.:I like my hair color.")) {
  76. case 1:
  77. set .@headpalette,8;
  78. break;
  79. case 2:
  80. set .@headpalette,1;
  81. break;
  82. case 3:
  83. set .@headpalette,2;
  84. break;
  85. case 4:
  86. set .@headpalette,3;
  87. break;
  88. case 5:
  89. set .@headpalette,4;
  90. break;
  91. case 6:
  92. set .@headpalette,5;
  93. break;
  94. case 7:
  95. set .@headpalette,6;
  96. break;
  97. case 8:
  98. set .@headpalette,7;
  99. break;
  100. case 9:
  101. if (.@choose_success != 0) {
  102. mes "[Rossa]";
  103. mes "Are you sure?";
  104. mes "Alright then, you";
  105. mes "know what's best for";
  106. mes "your beauty and to tell";
  107. mes "the truth, I agree with you~";
  108. close2;
  109. set .@choose_success,2;
  110. }
  111. else {
  112. mes "[Rossa]";
  113. mes "Oh, I see. Still, I can't";
  114. mes "help but feel so disappointed.";
  115. mes "You'd look so good if you dyed";
  116. mes "your hair a different color~";
  117. close2;
  118. set .@choose_success,2;
  119. }
  120. break;
  121. }
  122. if (getlook(VAR_HEADPALETTE) == .@headpalette) {
  123. mes "[Rossa]";
  124. mes "Hmm, your hair color";
  125. mes "is still fine, so there's";
  126. mes "no need to dye it the same";
  127. mes "color again, if that's what";
  128. mes "you're worried about.";
  129. next;
  130. }
  131. else {
  132. if ((.@headpalette == 8) && (countitem(975) == 0)) {
  133. mes "[Rossa]";
  134. mes "Oh, I'm sorry dear,";
  135. mes "but I can't dye your";
  136. mes "hair if you didn't bring";
  137. mes "Scarlet Dyestuffs with you...";
  138. close2;
  139. set .@choose_success,2;
  140. break;
  141. }
  142. else if ((.@headpalette == 1) && (countitem(976) == 0)) {
  143. mes "[Rossa]";
  144. mes "Oh, I'm sorry dear,";
  145. mes "but I can't dye your";
  146. mes "hair if you didn't bring";
  147. mes "Lemon Dyestuffs with you...";
  148. close2;
  149. set .@choose_success,2;
  150. break;
  151. }
  152. else if ((.@headpalette == 2) && (countitem(981) == 0)) {
  153. mes "[Rossa]";
  154. mes "Oh, I'm sorry dear,";
  155. mes "but I can't dye your";
  156. mes "hair if you didn't bring";
  157. mes "Violet Dyestuffs with you...";
  158. close2;
  159. set .@choose_success,2;
  160. break;
  161. }
  162. else if ((.@headpalette == 3) && (countitem(980) == 0)) {
  163. mes "[Rossa]";
  164. mes "Oh, I'm sorry dear,";
  165. mes "but I can't dye your";
  166. mes "hair if you didn't bring";
  167. mes "Orange Dyestuffs with you...";
  168. close2;
  169. set .@choose_success,2;
  170. break;
  171. }
  172. else if ((.@headpalette == 4) && (countitem(979) == 0)) {
  173. mes "[Rossa]";
  174. mes "Oh, I'm sorry dear,";
  175. mes "but I can't dye your";
  176. mes "hair if you didn't bring";
  177. mes "Darkgreen Dyestuffs";
  178. mes "with you. Would you come";
  179. mes "back after you get some?";
  180. close2;
  181. set .@choose_success,2;
  182. break;
  183. }
  184. else if ((.@headpalette == 5) && (countitem(978) == 0)) {
  185. mes "[Rossa]";
  186. mes "Oh, I'm sorry dear,";
  187. mes "but I can't dye your";
  188. mes "hair if you didn't bring";
  189. mes "Cobaltblue Dyestuffs";
  190. mes "with you. Would you come";
  191. mes "back after you get some?";
  192. close2;
  193. set .@choose_success,2;
  194. break;
  195. }
  196. else if ((.@headpalette == 6) && (countitem(982) == 0)) {
  197. mes "[Rossa]";
  198. mes "Oh, I'm sorry dear,";
  199. mes "but I can't dye your";
  200. mes "hair if you didn't bring";
  201. mes "White Dyestuffs with you...";
  202. close2;
  203. set .@choose_success,2;
  204. break;
  205. }
  206. else if ((.@headpalette == 7) && (countitem(983) == 0)) {
  207. mes "[Rossa]";
  208. mes "Oh, I'm sorry dear,";
  209. mes "but I can't dye your";
  210. mes "hair if you didn't bring";
  211. mes "Black Dyestuffs with you...";
  212. close2;
  213. set .@choose_success,2;
  214. break;
  215. }
  216. if (Zeny < 1000) {
  217. mes "[Rossa]";
  218. mes "Oh, I'm so sorry dear,";
  219. mes "but my service fee is";
  220. mes "1,000 zeny. Did you forget";
  221. mes "to bring your money with you?";
  222. close2;
  223. set .@choose_success,2;
  224. break;
  225. }
  226. if (.@headpalette == 8) delitem 975,1; //Scarlet_Dyestuffs
  227. else if (.@headpalette == 1) delitem 976,1; //Lemon_Dyestuffs
  228. else if (.@headpalette == 2) delitem 981,1; //Violet_Dyestuffs
  229. else if (.@headpalette == 3) delitem 980,1; //Orange_Dyestuffs
  230. else if (.@headpalette == 4) delitem 979,1; //Darkgreen_Dyestuffs
  231. else if (.@headpalette == 5) delitem 978,1; //Cobaltblue_Dyestuffs
  232. else if (.@headpalette == 6) delitem 982,1; //White_Dyestuffs
  233. else if (.@headpalette == 7) delitem 983,1; //Black_Dyestuffs
  234. set Zeny, Zeny-1000;
  235. setlook VAR_HEADPALETTE,.@headpalette;
  236. set .@choose_success,1;
  237. break;
  238. }
  239. }
  240. }
  241. break;
  242. case 2:
  243. mes "[Rossa]";
  244. mes "When you're feeling";
  245. mes "down, when you just want";
  246. mes "to look nice for the one you";
  247. mes "love, or when you just want";
  248. mes "a different look, why don't";
  249. mes "you dye your hair?";
  250. next;
  251. mes "[Rossa]";
  252. mes "All you need is one";
  253. mes "Dyestuffs item of the";
  254. mes "color that you want to";
  255. mes "dye your hair, as well as";
  256. mes "a 1,000 zeny service fee.";
  257. mes "I'm here for your beauty needs~";
  258. break;
  259. case 3:
  260. mes "[Rossa]";
  261. mes "You know, when you";
  262. mes "put some effort into";
  263. mes "your appearance, you'll";
  264. mes "not only look better, but";
  265. mes "you'll feel better about";
  266. mes "yourself. Makes sense, right?";
  267. close;
  268. }
  269. }
  270. close;
  271. }