Auto chơi Game Kim Cương trên Zing Me

G

Gió

Guest
Auto được viết trên ngôn ngữ AutoIT, đã test rất đơn giản và hiệu quả b-)

Yêu cầu đối với các Tool viết bằng AutoIT là: TẮT ANTIVIRUS TRƯỚC KHI TẢI VỀ.

Chạy Auto (File Application.exe).
Vào chơi Game Kim cương, http://me.zing.vn/apps/bejeweled?_src=m, Click vào nút bắt đầu để chơi, sau đó nhanh tay di chuột vào vị trí 1x1 trên bàn kim cương(đầu tiên), và ấn số 1 để start.

untitled-23.jpg

Hết Game, ấn phím số 2 để tạm ngừng.
Auto được viết dựa trên hàm lấy điểm ảnh trên màn hình.
Khuyên dùng trên XP.

Video chơi:

[YOUTUBE]ydrdr-muhFM[/YOUTUBE]​

Source:

Mã:
Global $sx = 40
Global $sy = 40
Global $mx = 470 + $sx/2
Global $my = 300 + $sy/2
Global $db,$x,$y,$maze[8][8]
Global $1 = -1,$2 = -1

HotKeySet("1", "batdau")
HotKeySet("2", "tamdung")

Func batdau()
        Local $mouse = MouseGetPos()
        $mx = $mouse[0]
        $my = $mouse[1]
        $db = 1
        $x = 0
        $y = 0
EndFunc

Func tamdung()
        $db = 0
EndFunc


While 1
        For $x=0 To 7
                For $y=0 To 7
                        $maze[$x][$y] = PixelGetColor ($mx+ $x*$sx,$my+ $y*$sy)
                Next
        Next

        $1 = -1
        $2 = -1

        For $x=0 To 7
                For $y=0 To 7
                        If $db Then
                                If ($x = $1 Or $x = $1+1 Or $x = $1-1) And ($y = $2 Or $y = $2+1 Or $y = $2-1) Then ContinueLoop

                                If $x > 0 And kiemtra($x,$y,-1,0) Then
                                        click($x,$y,-1,0)
                                Else
                                        If $x < 7 And kiemtra($x,$y,1,0) Then
                                                click($x,$y,1,0)
                                        Else
                                                If $y > 0 And kiemtra($x,$y,0,-1) Then
                                                        click($x,$y,0,-1)
                                                Else
                                                        If $y < 7 And kiemtra($x,$y,0,1) Then click($x,$y,0,1)
                                                EndIf
                                        EndIf
                                EndIf
                        Else
                                Sleep(100)
                        EndIf
                Next
        Next

WEnd

Func click($x,$y,$a,$b)
        Local $mouse = MouseGetPos()
        MouseClick("left", $mx+ $x*$sx,$my+ $y*$sy, 1, 1)
        MouseClick("left", $mx+ ($x+$a)*$sx,$my+ ($y+$b)*$sy, 1, 1)
        MouseMove($mouse[0], $mouse[1], 1)
        $1 = $x
        $2 = $y
        ;MouseMove($mx+ $x*$sx,$my+ $y*$sy, 1)
        ;MouseMove($mx+ ($x+$a)*$sx,$my+ ($y+$b)*$sy, 1000)
        ;Sleep(400)
EndFunc


Func kiemtra($x,$y,$a,$b)
        If $maze[$x][$y] = $maze[$x+$a][$y+$b] Then Return
        If $a <> 0 Then
                If xetcot($x+$a,$y+$b,$maze[$x][$y]) Then Return 1
                If xethang($x+$a,$y+$b,$maze[$x][$y],$a) Then Return 1
        Else
                If xethang($x+$a,$y+$b,$maze[$x][$y]) Then Return 1
                If xetcot($x+$a,$y+$b,$maze[$x][$y],$b) Then Return 1
        EndIf
EndFunc


Func xetcot($x,$y,$dem,$mode=0)
        Local $i,$a=0
        For $i = -1 To 1
                If $y+$i < 0 Or $y + $i > 7 Then ContinueLoop
                If $dem = $maze[$x][$y+$i] Then
                        $a+=1
                        Switch $i
                                Case -1
                                        if $mode <> 1 And $y-1 > 0 And $dem = $maze[$x][$y-2] Then Return 2
                                Case 1
                                        if $mode <> -1 And $y+1 < 7 And $dem = $maze[$x][$y+2] Then Return 3
                        EndSwitch
                EndIf
        Next
        If $mode = 0 And $a > 1 Then Return 1
EndFunc

Func xethang($x,$y,$dem,$mode=0)
        Local $i,$a=0
        For $i = -1 To 1
                If $x+$i < 0 Or $x + $i > 7 Then ContinueLoop
                If $dem = $maze[$x+$i][$y] Then
                        $a+=1
                        Switch $i
                                Case -1
                                        if $mode <> 1 And $x-1 > 0 And $dem = $maze[$x-2][$y] Then Return 1
                                Case 1
                                        if $mode <> -1 And $x+1 < 7 And $dem = $maze[$x+2][$y] Then Return 1
                        EndSwitch
                EndIf
        Next
        If $mode = 0 And $a > 1 Then Return 1
EndFunc


Download (Source and Application): http://www.ziddu.com/download/13693958/Auto-Kim-Cuong-Tren-Zing-Me.zip.html

P.s. cao nhất mình chạy auto kiếm đc 840k :D
 
Bên trên