Emistry icon

[RO] Antibot - Colored Code + Math Calculation

Emistry | PRO | 05/01/17 09:20:42 AM UTC | 0 ⭐ | 1330 👁️ | Never ⏰ | []
text |

2.01 KB

|

None

|

0 👍

/

0 👎

// http://upaste.me/6e5f275a371f5b9
// https://rathena.org/board/topic/109622-anti-bot/
 -	script	Sample	-1,{
	function GetString;
 	OnPCLoginEvent:
		addtimer (3600 * 1000), strnpcinfo(3) + "::OnPCLoginEvent";
		if (getmapflag(.@map$, mf_town)) end;
 		switch( rand(2) ){
			case 0:
				set .@String$,GetString( 15,rand(5,10) );
				mes "Input the ^FF0000RED COLOUR^000000 part";
				mes "^0000FF"+GetString( 15,rand(5,10) )+"^FF0000"+.@String$+"^0000FF"+GetString( 15,rand(3,10) )+"^000000";
				input .@Input$;
				if( .@Input$ != .@String$ ){
					mes "Wrong..";
					atcommand "@kick "+strcharinfo(0);
				}
				break;
 			case 1:
				set .@A,rand(1000);
				set .@B,rand(1000);
				mes "If A = "+.@A+"   B = "+.@B;
				switch( rand(4) ){
					case 0:
						set .@Answer,.@A + .@B;
						mes "How many is A + B ?";
						break;
					case 1:
						set .@Answer,.@A - .@B;
						mes "How many is A - B ?";
						break;
					case 2:
						set .@Answer,.@A * .@B;
						mes "How many is A * B ?";
						break;
					case 3:
						set .@Answer,.@A / .@B;
						mes "How many is A / B ?";
						break;
				}
				input .@Input;
				if( .@Input != .@Answer ){
					mes "Wrong";
					atcommand "@kick "+strcharinfo(0);
				}
				break;
		}
		close;
 	function	GetString	{
		if( getarg(0) & 1 ) setarray .@List$[ getarraysize( .@List$ ) ],"1","2","3","4","5","6","7","8","9";
		if( getarg(0) & 2 ) setarray .@List$[ getarraysize( .@List$ ) ],"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z";
		if( getarg(0) & 4 ) setarray .@List$[ getarraysize( .@List$ ) ],"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z";
		if( getarg(0) & 8 ) setarray .@List$[ getarraysize( .@List$ ) ],"!","@","#","$","%","^","&","*","(",")","-","=","/","+";
 		set .@Str$,"";
		while( getstrlen( .@Str$ ) < getarg(1) )
			set .@Str$,.@Str$ + .@List$[ rand( getarraysize( .@List$ ) ) ];
		return .@Str$;
 	}
 }

Comments

  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    👍

    /

    👎