penal_servitude.txt 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194
  1. //===== eAthena Script =======================================
  2. //= Penal Servitude Script
  3. //===== By ===================================================
  4. //= Lupus
  5. //===== Version ==============================================
  6. //= 1.2
  7. //===== Compatible With ======================================
  8. //= eAthena Final (SVN)
  9. //===== Description ==========================================
  10. //= A simple Penal Servitude Script.
  11. //= It could cheer up your prisoners a bit.
  12. //===== Comments =============================================
  13. // This script uses CHEQUES of the 2nd KAFRA_BANK.TXT
  14. // var PRISON - it counts number of your imprisonments.
  15. // 1.1 English translation
  16. // 1.2 Stricted the conditions a bit
  17. //============================================================
  18. sec_pri,36,58,1 script Chief Warder 105,{
  19. mes "[Saddeus]";
  20. emotion 1;
  21. if(sex) {
  22. mes "Mr. Prisoner #"+BaseLevel+JobLevel+",";
  23. } else {
  24. mes "Ms. Prisoner #"+BaseLevel+JobLevel+",";
  25. }
  26. mes "what's the noise over there?";
  27. next;
  28. menu "Let me free, I'll pay!",-, "Let me to work off my freedom!",M_Q1, "Nothing",M_NO_THANKS;
  29. M_PAY:
  30. mes "[Saddeus]";
  31. set @MUSTPAY,(PRISON+1)*1000000;
  32. if (@MUSTPAY<1000000) set @MUSTPAY,1000000;
  33. if (@MUSTPAY>100000000) set @MUSTPAY,100000000;
  34. if (PRISON==1) mes "I can't remember you. Is it your 1st time?";
  35. if (PRISON>1) mes "You again? Sombody hasn't grown wiser from the very first visit...";
  36. mes "OK, we could release you for ^FF0000"+@MUSTPAY+"z^000000.";
  37. next;
  38. menu "I pay cash!",M_PAYCASH,"Do you accept cheques?",M_PAYBANK,"I've changed my mind.",-;
  39. mes "[Saddeus]";
  40. mes "You've got some time to think about...";
  41. close;
  42. M_PAYCASH:
  43. if (@MUSTPAY>Zeny) goto L_NOCASH;
  44. set Zeny,Zeny-@MUSTPAY;
  45. mes "[Saddeus]";
  46. mes "OK, sing here and there.";
  47. goto L_RELEASE;
  48. L_NOCASH:
  49. mes "[Saddeus]";
  50. mes "What's this? It's not enough!";
  51. close;
  52. M_PAYBANK:
  53. if (@MUSTPAY>#kafrabank) goto L_NOBANK;
  54. set #kafrabank,#kafrabank-@MUSTPAY;
  55. mes "[Saddeus]";
  56. mes "OK, sign your cheque. And put down your name in my book.";
  57. goto L_RELEASE;
  58. L_NOBANK:
  59. mes "[Saddeus]";
  60. if (#kafrabank==0) mes "Your case says nothing about your bank accounts.";
  61. if (#kafrabank!=0) mes "Alas, there's your bank account info... ^FF0000"+#kafrabank+"z^000000... in the case. It's not enough.";
  62. mes "Stop your silly games now!";
  63. close;
  64. L_RELEASE:
  65. set PRISON,PRISON+1;
  66. next;
  67. mes "[Saddeus]";
  68. mes "You are free now!";
  69. next;
  70. savepoint "izlude",105,112;
  71. warp "izlude",105,112;
  72. close;
  73. M_Q1:
  74. //�Eåñ�E1
  75. mes "[Saddeus]";
  76. mes "Our stocks are short of toadstools. Remember your morning's skilly? What about some work at our sponsored mushroom farm?";
  77. next;
  78. menu "OK, I'll work off!",-, "I love this prison!",M_NO_THANKS;
  79. mes "[Saddeus]";
  80. if(checkcart() || checkfalcon() || checkriding()){
  81. emotion e_hmm;
  82. mes "I'm sorry, you should release your Cart, PecoPeco or Falcon!";
  83. close;
  84. }
  85. mes "Talk to our overseer, Oliver.";
  86. next;
  87. nude;
  88. set @rw,rand(1,4);
  89. if (@rw==2) goto L_W2;
  90. if (@rw==3) goto L_W3;
  91. if (@rw==4) goto L_W4;
  92. L_W1:
  93. savepoint "sec_in02",179,76;
  94. warp "sec_in02",179,76;
  95. close;
  96. L_W2:
  97. savepoint "sec_in02",139,32;
  98. warp "sec_in02",139,32;
  99. close;
  100. L_W3:
  101. savepoint "sec_in02",100,28;
  102. warp "sec_in02",100,28;
  103. close;
  104. L_W4:
  105. savepoint "sec_in02",107,75;
  106. warp "sec_in02",107,75;
  107. close;
  108. M_NO_THANKS:
  109. mes "[Saddeus]";
  110. if (rand(2)) mes "Is today X-Mas time, huh?";
  111. mes "Now shut up and back off!";
  112. if (rand(2)) emotion 23;
  113. close;
  114. }
  115. sec_in02,137,57,1 script Overseer 708,{
  116. mes "[Oliver]";
  117. delitem 4002,countitem(4002);//Items: Fabre_Card,
  118. delitem 4009,countitem(4009);//Items: Chonchon_Card,
  119. delitem 4022,countitem(4022);//Items: Spore_Card,
  120. delitem 4048,countitem(4048);//Items: Poison_Spore_Card,
  121. if (PRISON_Q <= 0 ) goto L_GET_Q;
  122. mes "I want you to gather ^FF0000"+PRISON_Q+" Orange Net Mushroom^000000.";
  123. if ( countitem(1069)<PRISON_Q ) close;//Items: Orange_Net_Mushroom,
  124. mes "OK... hand me all the shrooms...";
  125. mes "Let me see... "+countitem(1069)+" of almost eadible ones...";//Items: Orange_Net_Mushroom,
  126. mes "And "+countitem(1070)+" useless deadly ones.";//Items: Orange_Gooey_Mushroom_,
  127. next;
  128. mes "[Oliver]";
  129. mes "Thank you. You are free!";
  130. set PRISON_Q,0;
  131. delitem 1069,countitem(1069);//Items: Orange_Net_Mushroom,
  132. delitem 1070,countitem(1070);//Items: Orange_Gooey_Mushroom_,
  133. next;
  134. savepoint "izlude",105,112;
  135. warp "izlude",105,112;
  136. close;
  137. L_GET_Q:
  138. set PRISON,PRISON+1;
  139. if (PRISON > 1) mes "Hmm... You've been here already... Well-well...";
  140. if ( countitem(1069) || countitem(1070) ) mes "Drop these mushrooms!! They are poisonous!";//Items: Orange_Net_Mushroom, Orange_Gooey_Mushroom_,
  141. delitem 1069,countitem(1069);//Items: Orange_Net_Mushroom,
  142. delitem 1070,countitem(1070);//Items: Orange_Gooey_Mushroom_,
  143. set PRISON_Q, PRISON*3 + BaseLevel/3;
  144. set PRISON_Q, PRISON_Q * (readparam(bAspd)/55 + 1);
  145. set PRISON_Q, PRISON_Q+rand(50,60);
  146. mes "OK, you must bring me ^FF0000"+PRISON_Q+"^000000 edible ^FF0000Orange Net Mushroom^000000 toadstoo.. shrooms.";
  147. if(readparam(bAspd)>=100) mes "You're a fast fella! You'll have to get more shrooms, then.";
  148. if (rand(10)<4) mes "And you may eat the deadly ones for breakfast.";
  149. close;
  150. }
  151. sec_in02 mapflag nomemo
  152. sec_in02 mapflag nosave SavePoint
  153. sec_in02 mapflag noteleport
  154. sec_in02 mapflag nobranch
  155. sec_in02 mapflag nowarp
  156. sec_in02 mapflag nowarpto
  157. sec_in02 mapflag noexp
  158. sec_in02 mapflag noskill
  159. //sec_in02 mapflag pvp
  160. //sec_in02 mapflag pvp_noparty
  161. //sec_in02 mapflag gvg
  162. sec_in02 mapflag pvp_nightmaredrop random,all,300
  163. sec_in02,138,55,100,100 monster Toadstool 1182,30,10000,10000,1
  164. sec_in02,138,55,100,100 monster Fabre 1184,10,20000,20000
  165. sec_in02,138,55,100,100 monster Chonchon 1183,11,20000,20000
  166. sec_in02,138,55,100,100 monster Spore 1014,12,20000,20000
  167. sec_in02,138,55,100,100 monster Poison Spore 1077,3,20000,20000