brendorox

Untitled

Jun 30th, 2012
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.27 KB | None | 0 0
  1. prontera,167,195,4 script Sala dos Cristais 855,{
  2. if(getgmlevel()>79)
  3. {
  4. onconf:
  5. if(!$cr[0]||!$cr[1]||!$cr[2])set(.@_CAINHO$,select("Menu Admnistrativo [CONFIGURAR!]"));
  6. else set(.@_CAINHO$,select("Menu Administrativo:Menu do Jogador"));
  7. if(@menu==2)callsub(onplayer);
  8. while(set(.@_loop,1)) //thx to lord//svro :D~
  9. {
  10. mes("Painel de Configuração:");
  11. mes("~ Lim. Jogadores Sala 1: "+$cr[0]);
  12. mes("~ Lim. Jogadores Sala 2: "+$cr[1]);
  13. mes("~ Lim. Jogadores Sala VIP: "+$cr[2]);
  14. mes("~ BN para 1º Ranking: "+$cr[5]);
  15. mes("~ Bonificação VIP: "+(($cr[4])?"Sim":"Não"));
  16. mes("~ Nv. VIP do Servidor: "+$cr[3]);
  17. next();
  18. switch(select("Lim. de Jogadores Sala 1:Lim. de Jogadores Sala 2:Lim. de Jogadores Sala VIP:BN para o 1º Ranking:Bonificação VIP:Nível VIP do Servidor:Resetar Valores:Sair"))
  19. {
  20. case 1:
  21. case 2:
  22. case 3:
  23. mes("["+strnpcinfo(1)+"]");
  24. mes("Digite o limite de usuários na\rSala "+((@menu==3)?"VIP":@menu));
  25. input(.@_mn,0);
  26. next();
  27. mes("["+strnpcinfo(1)+"]");
  28. mes("Lim. Jogadores Sala "+((@menu==3)?"VIP":@menu)+": "+.@_mn);
  29. set(.@_lastmenu,@menu);
  30. select("Confirmar");
  31. setarray($cr[.@_lastmenu-1],.@_mn);
  32. next();
  33. break;
  34. case 4:
  35. mes("["+strnpcinfo(1)+"]");
  36. mes("Quantas Bandeira Nacional o 1º do ranking de \"kills\" de Cristal deve ganhar?");
  37. input(.@_mn,0);
  38. next();
  39. mes("["+strnpcinfo(1)+"]");
  40. mes("BN para 1º Ranking: "+.@_mn);
  41. select("Confirmar");
  42. setarray($cr[5],.@_mn);
  43. next();
  44. break;
  45. case 5:
  46. mes("["+strnpcinfo(1)+"]");
  47. mes("Jogadores VIP tem chances de drop nos cristais alteradas, favorecendo a eles?");
  48. next();
  49. select("Sim.:Não.");
  50. setarray($cr[4],((@menu==2)?0:1));
  51. next();
  52. break;
  53. case 6:
  54. mes("["+strnpcinfo(1)+"]");
  55. mes("Digite o nível da conta VIP no seu servidor:");
  56. input(.@_mn,0,20);
  57. next();
  58. mes("["+strnpcinfo(1)+"]");
  59. mes("Nível da Conta VIP: "+.@_mn);
  60. select("Confirmar");
  61. setarray($cr[3],.@_mn);
  62. next();
  63. break;
  64. case 7:
  65. mes("["+strnpcinfo(1)+"]");
  66. mes("Tem certeza que deseja resetar TODOS os valores já configurados?");
  67. if(select("Não:Sim")==1)close();
  68. next();
  69. mes("["+strnpcinfo(1)+"]");
  70. mes("Todos os valores foram resetados!");
  71. cleararray($cr[0],0,getarraysize($cr));
  72. next();
  73. break;
  74. case 8:
  75. set(.@_loop,0);
  76. break;
  77. }
  78. }
  79. close();
  80. }
  81. onplayer:
  82. mes("["+strnpcinfo(1)+"]");
  83. if(!$ison)
  84. {
  85. mes("A sala dos cristais está fechada.");
  86. close();
  87. }
  88. mes("Posso te teleportar para várias salas onde existem cristais que ao serem mortos podem ter o item Bandeira Nacional que poderá ser trocado depois por itens.");
  89. next();
  90. mes("["+strnpcinfo(1)+"]");
  91. if((#trap)&&(#sct==$trapadd))
  92. {
  93. mes("Você caiu em uma armadilha de expulsão, volte na próxima rodada.");
  94. close();
  95. }
  96. mes("Pois bem, escolha a sala que você deseja entrar:");
  97. next();
  98. select("Sala Romana [^FF0000"+getmapusers("knight_1-1")+"^000000/^008B00"+$cr[0]+"^000000]:Sala Grega [^FF0000"+getmapusers("knight_2-1")+"^000000/^008B00"+$cr[1]+"^000000]"+(getgmlevel()>$cr[3]?":Sala VIP [^FF0000"+getmapusers("wizard_2-1")+"^000000/^008B00"+$cr[2]+"^000000]":""));
  99. mes("["+strnpcinfo(1)+"]");
  100. if(getgmlevel()<$cr[3])
  101. {
  102. sc_end(-1);
  103. if(getmapusers(((@menu==1)?"knight_1-1":((@menu==2)?"knight_2-1":((@menu==3)?"wizard_2-1":""))))>=$cr[@menu-1])
  104. {
  105. mes("Esta sala está lotada.");
  106. close();
  107. }
  108. if(!$ison)
  109. {
  110. mes("A sala dos cristais está fechada.");
  111. close();
  112. }
  113. warp(((@menu==1)?"knight_1-1":((@menu==2)?"knight_2-1":((@menu==3)?"wizard_2-1":"izlude"))),0,0);
  114. end();
  115. }
  116. if(!$ison)
  117. {
  118. mes("A sala dos cristais está fechada.");
  119. close();
  120. }
  121. warp(((@menu==1)?"knight_1-1":((@menu==2)?"knight_2-1":((@menu==3)?"wizard_2-1":""))),0,0);
  122. end();
  123. onclock0000:onclock1000:onclock1200:onclock1400:onclock1600:onclock1800:onclock2000:onclock2200:
  124. if(!$cr[0]||!$cr[1]||!$cr[2])
  125. {
  126. announce("["+strnpcinfo(1)+"]: A sala dos cristais não foi iniciada porque ainda não foi configurada.",bc_all,"0x00FFFF");
  127. end();
  128. }
  129. set($ison,1);
  130. announce("["+strnpcinfo(1)+"]: A sala dos cristais está aberta por 10 minutos ou até destruirem todos os cristais!",bc_all,"0x00FFFF");
  131. monster("knight_1-1",0,0,"Cristal",1877,10,strnpcinfo(0)+"::onmobdie");
  132. monster("knight_2-1",0,0,"Cristal",1877,10,strnpcinfo(0)+"::onmobdie");
  133. monster("wizard_2-1",0,0,"Cristal",1951,20,strnpcinfo(0)+"::onmobdie");
  134. end();
  135. onclock0010:onclock1010:onclock1210:onclock1410:onclock1610:onclock1810:onclock2010:onclock2210:
  136. if(!$cr[0]||!$cr[1]||!$cr[2]||!$cr[3])end();
  137. set($ison,set(.@_mn,0));
  138. announce("["+strnpcinfo(1)+"]: A sala dos cristais foi fechada!",bc_all,"0x00FFFF");
  139. set($trapadd,$trapadd+1);
  140. for(;.@_mn<getarraysize($maps$);set(.@_mn,.@_mn+1))
  141. {
  142. mapwarp($maps$[.@_mn],"izlude",134,115);
  143. killmonsterall($maps$[.@_mn]);
  144. }
  145. end();
  146. onmobdie:
  147. query_sql("select `kills` from `cristais_by_ragnacrie` where `char_id`='"+getcharid(0)+"'",.@_crk);
  148. if(!getarraysize(.@_crk))query_sql("insert into `cristais_by_ragnacrie` (`char_id`,`name`,`kills`) values ('"+getcharid(0)+"','"+strcharinfo(0)+"','1')");
  149. else query_sql("update `cristais_by_ragnacrie` set kills=kills+1 where `char_id`='"+getcharid(0)+"'");
  150. specialeffect2(100);
  151. if(set(.@rand,rand(100))<=(($cr[4])?((getgmlevel()>$cr[3])?25:35):35))
  152. {
  153. announce("Você quebra um cristal e...é retirado da sala.",bc_self,"0x40E0D0");
  154. warp("izlude",134,115);
  155. end();
  156. }
  157. if(set(.@rane,rand(100))<=(($cr[4])?((getgmlevel()>=$cr[3])?3:5):5))
  158. {
  159. announce("Você quebra um cristal e...é retirado da sala por esta rodada.",bc_self,"0x40E0D0");
  160. warp("izlude",134,115);
  161. set(#trap,1);
  162. set(#sct,$TrapAdd);
  163. end();
  164. }
  165. if(set(.@raed,rand(100))<=(($cr[4])?((getgmlevel()>=$cr[3])?5:3):3))
  166. {
  167. announce("Você quebra um cristal e...recebe 1 parte das letras NSRO !!",bc_self,"0x40E0D0");
  168. getitem(7463,1);
  169. end();
  170. }
  171. if(set(.@rend,rand(100))<=(($cr[4])?((getgmlevel()>=$cr[3])?10:8):8))
  172. {
  173. announce("Você quebra um cristal e...recebe 1 parte das letras NSRO !!",bc_self,"0x40E0D0");
  174. getitem(7464,1);
  175. end();
  176. }
  177. if(set(.@eand,rand(100))<=(($cr[4])?((getgmlevel()>=$cr[3])?20:15):15))
  178. {
  179. announce("Você quebra um cristal e...recebe Aumentar Agilidade Nv.10 !!",bc_self,"0x40E0D0");
  180. sc_Start(32,240000,10);
  181. skilleffect(29,0);
  182. end();
  183. }
  184. if(set(.@ranf,rand(100))<=(($cr[4])?((getgmlevel()>=$cr[3])?3:4):4))
  185. {
  186. if (!countitem(7464))
  187. {
  188. announce("Você quebra um cristal e...é retirado da sala.",bc_self,"0x40E0D0");
  189. warp("izlude",142,128);
  190. end();
  191. }
  192. else
  193. {
  194. announce("Você quebra um cristal e...perde 1 das Partes da Letras NSRO.",bc_self,"0x40E0D0");
  195. delitem(7465,1);
  196. end();
  197. }
  198. }
  199. end();
  200. oninit:
  201. setarray($mf[0],0,1,2,3,4,5,12,13,15,22,29,30,31,33,34,35,41);
  202. setarray($maps$[0],"knight_1-1","knight_2-1","wizard_2-1");
  203. for(set(.@_mn,0);.@_mn<getarraysize($mf);set(.@_mn,.@_mn+1))setmapflag($maps$[0],setmapflag($maps$[1],setmapflag($maps$[2],$mf[.@_mn])));
  204. end();
  205.  
  206. onpcloginevent:
  207. if((!$cr[0]||!$cr[1]||!$cr[2])&&getgmlevel()>79)
  208. {
  209. mes("["+strnpcinfo(1)+"]");
  210. mes("Desculpe pelo incômodo, mas você ainda não me configurou totalmente.");
  211. mes("Isso pode causar bugs, então peço que o faça.");
  212. next();
  213. callsub(onconf);
  214. }
  215. end();
  216. }
  217. izlude,138,120,4 script Loja das Bandeiras 850,{
  218. setarray($_id[0],607,501); /* ID dos Itens */
  219. setarray($_qt[0],20,6); /* Quantidade dos Itens */
  220. setarray($_nb[0],4,2); /* Preço dos Itens */
  221. /* À medida que os itens são colocados, coloque na ordem o número de Bandeira Nacional
  222. * para comprar o item. No exemplo ao lado, 20 Fruto de Yggdrasil (ID 607) custarão 4 Bandeira Nacional,
  223. * 6 Poção Vermelha (ID 501) custarão 2 Bandeira Nacional e assim por diante.
  224. * PS: Caso queira, remova os itens e os preços e adicione os seus. Você pode adicionar até 255 itens. */
  225.  
  226. mes("["+strnpcinfo(1)+"]");
  227. mes("Olá, posso oferecer a você itens por Bandeira Nacional!");
  228. mes("A lista dos itens aparecerá assim:");
  229. mes("[BN necessária] Item");
  230. for(set(.@_mn,0);.@_mn<getarraysize($_id);set(.@_mn,.@_mn+1))set(.@_m$,.@_m$+"["+$_nb[.@_mn]+" BN] "+getitemname($_id[.@_mn])+":");
  231. next();
  232. select (.@_m$);
  233. mes("["+strnpcinfo(1)+"]");
  234. if(countitem(7549)<$_nb[@menu-1])
  235. {
  236. mes("Você não possui Bandeira Nacional necessárias.");
  237. close();
  238. }
  239. if(checkweight($_id[@menu-1],1)==0)
  240. {
  241. mes("Você nao tem peso suficiente para carregar este item.");
  242. close();
  243. }
  244. mes("Pronto, aí está, 1 "+getitemname($_id[@menu-1]));
  245. close2();
  246. delitem(7549,$_nb[@menu-1]);
  247. getitem($_id[@menu-1],$_qt[@menu-1]);
  248. end();
  249. }
  250. izlude,140,121,4 script Ranking dos Cristais 857,{
  251. mes("["+strnpcinfo(1)+"]");
  252. mes("Deseja ver o Ranking de quem mais destruiu os Cristais?");
  253. mes("Todo o mês o primeiro do ranking ganha "+$cr[5]+" Bandeira Nacional.");
  254. next();
  255. query_sql("select `first` from `cristais_by_ragnacrie`",.@_mn);
  256. if(select("Ver Ranking"+(getcharid(0)==.@_mn?":Pegar Prêmio":""))==2)
  257. {
  258. mes("["+strnpcinfo(1)+"]");
  259. if(checkweight(7549,$cr)==0)
  260. {
  261. mes("Você está pesado demais!");
  262. close();
  263. }
  264. mes("Aqui está: "+$cr[5]+" Bandeira Nacional!");
  265. close2();
  266. getitem(7549,$cr[5]);
  267. query_sql("update `cristais_by_ragnacrie` set `first`=''");
  268. end();
  269. }
  270. query_sql("select `kills`,`name` from `cristais` order by `kills` desc",.@_cki,.@_nm$);
  271. for(set(.@_mn,0);.@_mn<getarraysize(.@_cki);set(.@_mn,.@_mn+1))mes((.@_mn+1)+"º | "+.@_nm$[.@_mn]+" | "+.@_cki[.@_mn]+" Kills");
  272. close();
  273.  
  274. onday0101:onday0201:onday0301:onday0401:onday0501:onday0601:onday0701:onday0801:onday0901:onday1001:onday1101:onday1201:
  275. query_sql("select `char_id`,`name` from `cristais_by_ragnacrie` order by `kills` desc limit 1",.@_mn,.@_nmdx$);
  276. query_sql("truncate table `cristais_by_ragnacrie`");
  277. query_sql("insert into `cristais_by_ragnacrie` (`first`) values ('"+.@_mn+"')");
  278. announce("[Sala dos Cristais]: O ranking foi resetado. O vencedor foi: "+.@_nmdx$,bc_all,"0x00FFFF");
  279. end();
  280. }
Advertisement
Add Comment
Please, Sign In to add comment