Advertisement
Guest User

Untitled

a guest
May 27th, 2015
291
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.12 KB | None | 0 0
  1. geffen.gat,156,80,1 script Login_Looks_OnInit#555 -1,{
  2.  
  3. OnInit:
  4. //----- 是否開啟線上驗證 (預設 開啟) -----
  5. set $@OnlineBotTest,1;
  6.  
  7. //----- 是否開啟系統提示 (預設 開啟) On/Off -----
  8. set $@NpcShowOnOff,1;
  9.  
  10. //====================================================//
  11.  
  12. //--- Script 執行時的相關設定 , 請各伺服器依情況斟酌 ---
  13.  
  14. //----- 不需驗證的最小GM權限 (預設 40 等) -----
  15. set $@GameManagement,100;
  16.  
  17. //----- 線上驗證可錯誤次數 (預設 3 次) -----
  18. set $@KickOnlineWrong,2;
  19.  
  20. //----- 線上驗證的驗證碼長度 (預設 6 碼) -----
  21. set $@OnlineNumber,6;
  22.  
  23. //----- 線上驗證的限制時間 (請用 5的倍數) -----
  24. set $@Totaltime,10;
  25.  
  26. //====================================================//
  27.  
  28. //----- 反外掛程式的驗證碼主函式 -----
  29. // setarray $@BotName$[1],"1","1","2","3","4","5","6","7","8","9"
  30. // ,"1","2","3","4","5","6","7","8","9"
  31. // ,"A","B","C","D","E","F","G","H","I"
  32. // ,"J","K","L","M","N","O","P","Q","R"
  33. // ,"S","T","U","V","W","X","Y","Z"
  34. // ,"a","b","c","d","e","f","g","h","i"
  35. // ,"j","k","l","m","n","o","p","q","r"
  36. // ,"s","t","u","v","w","x","y","z";
  37.  
  38. setarray $@BotName$[1],"1","1","2","3","4","5","6","7","8","9"
  39. ,"1","2","3","4","5","6","7","8","9"
  40. ,"1","2","3","4","5","6","7","8","9"
  41. ,"1","2","3","4","5","6","7","8","9"
  42. ,"1","2","3","4","5","6","7","8"
  43. ,"1","2","3","4","5","6","7","8","9"
  44. ,"1","2","3","4","5","6","7","8","9"
  45. ,"1","2","3","4","5","6","7","8";
  46.  
  47. }
  48.  
  49. //====================================================//
  50.  
  51. - script OnNPCKillEvent -1,{
  52.  
  53. OnNPCKillEvent:
  54. if ( $@OnlineBotTest != 1 ) { end; }
  55. set @KillMod,@KillMod+1;
  56.  
  57. //線上驗證部份
  58. if ( @KillMod >= 1 ) {
  59. if ( @KillMod >= 100 ) {
  60. if ( getgmlevel() >= $@GameManagement ) {
  61. mes "[反外掛程式]";
  62. mes "GM大大不需驗證偵測!!";
  63. mes "請您按下 Enter 鍵,繼續遊戲吧。";
  64. set @KillMod,0;
  65. close;
  66. }
  67. set @CheckCRF,callfunc("CheckCRF_Event");
  68. atcommand "@option 02 00 64 ";
  69.  
  70. Online_Bot_Test:
  71. set @OnlineWrong,@OnlineWrong+1;
  72. set @OnlineBot1$,"";
  73. for ( set @i,0; @i < $@OnlineNumber; set @i,@i + 1 ) {
  74. set @OnlineBot1$,@OnlineBot1$+$@BotName$[rand(70)]; }
  75. mes "[反外掛程式]";
  76. mes "您好!為了降低外掛對伺服器的侵擾,";
  77. mes "我們需要驗證才能讓您繼續遊戲,";
  78. mes "請您正確輸入下面的驗證碼。";
  79. mes "╔════╦═══╗";
  80. mes "║驗證碼:║^FF0000"+@OnlineBot1$+"^000000║";
  81. mes "╚════╩═══╝";
  82. initnpctimer "OnTimerDelay",getcharid(3);
  83. announce "║ 反外掛程式 ║ : 請輸入對話框內的驗證碼,您有"+$@Totaltime+"秒的輸入時間.",bc_self,0xB41E3C;
  84. set @check,1;
  85. set @time,0;
  86. next;
  87. input @OnlineBot2$;
  88. if(@OnlineBot2$==@OnlineBot1$) goto ite;
  89. if(@OnlineBot2$!=@OnlineBot1$) {
  90.  
  91. //驗證輸入錯誤
  92. if(@OnlineWrong == $@KickOnlineWrong) {
  93. callfunc "SetCRF_Event";
  94. atcommand "@kick "+strcharinfo(0);
  95. close;
  96. }
  97.  
  98. //驗證輸入剩餘次數
  99. mes "[反外掛程式]";
  100. mes "重新輸入次數:^FF0000剩餘 "+($@KickOnlineWrong-@OnlineWrong)+" 次^000000";
  101. next;
  102. set @time,-1;
  103. goto Online_Bot_Test;
  104. }
  105.  
  106.  
  107. ite:
  108. callfunc "SetCRF_Event";
  109. mes "[反外掛程式]";
  110. mes "您已偵測完畢,並非外掛程式!!";
  111. mes "請您按下 Enter 鍵,繼續遊戲謝謝。";
  112. set @CheckCRF,0;
  113. set @KillMod,0;
  114. set @OnlineWrong,0;
  115. set @time,-1;
  116. set @check,0;
  117. close; } }
  118. if ( @KillMod == 1 ) dispbottom "您再繼續屠殺 5 隻怪物系統將會對您進行線上驗證。";
  119. end;
  120. }
  121.  
  122. //====================================================//
  123. - script OnTimerDelay -1,{
  124.  
  125. OnTimer5000:
  126. set @time,@time+5;
  127. set @total,$@Totaltime - @time;
  128.  
  129. if( @time == $@Totaltime )
  130. {
  131. announce "║ 反外掛程式 ║ : 驗證失敗,剔除下限.",bc_self,0x6666FF;
  132. callfunc "SetCRF_Event";
  133. atcommand "@kick "+strcharinfo(0);
  134. end;
  135. }
  136. if( @check == 1 )
  137. {
  138. announce "║ 反外掛程式 ║ : 您剩餘"+@total+"秒可輸入對話框內的數字.",bc_self,0x3399FF;
  139. }
  140. if( @time > 0 )
  141. {
  142. initnpctimer "OnTimerDelay",getcharid(3);
  143. }
  144. else { set @time,0; }
  145. end;
  146. }
  147. //====================================================//
  148.  
  149. function script CheckCRF_Event {
  150. set @CheckCRF,0;
  151. if ( checkfalcon() || checkcart() || checkriding() ) set @CheckCRF,1;
  152. if ( checkoption(0x80) ) set @CheckCRF,2;
  153. if ( checkoption(0x100) ) set @CheckCRF,3;
  154. if ( checkoption(0x200) ) set @CheckCRF,4;
  155. if ( checkoption(0x400) ) set @CheckCRF,5;
  156. return @CheckCRF; }
  157.  
  158. //====================================================//
  159.  
  160. function script SetCRF_Event {
  161. atcommand "@option 00 00 00 ";
  162. if ( @CheckCRF == 1 ) {
  163. if ( getskilllv(39) >=1 ) setcart;
  164. if ( getskilllv(63) >= 1 ) setriding;
  165. if ( getskilllv(127) >= 1 ) setfalcon; }
  166. if ( @CheckCRF == 2 ) setcart 2;
  167. if ( @CheckCRF == 3 ) setcart 3;
  168. if ( @CheckCRF == 4 ) setcart 4;
  169. if ( @CheckCRF == 5 ) setcart 5;
  170. return; }
  171.  
  172. //====================================================//
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement