Что нового

Бот-кликер для игры

Статус
Закрыто для дальнейших ответов.

Vaycher

Новичок
Сообщения
2
Репутация
1
Версия AutoIt: 3.
Version 2.28

Описание:
Нужен простой бот-кликер клавиш "Tab, 1,2-9,0" с интервалом от 1 до 1000 секунд

для игры battle of the immortals genesis (бота там нету а кнопки одни и те же все время жать надо :'( )

Примечания:
нашел тут на форуме бота на 3 кнопки но он глючит и дополнительно постоянно жмет "Y" и "K" с непонятным интервалом (возможно это не глюк но хотелось бы исправить) :whistle:

Код:
#include <GUIConstantsEx.au3>
#include <EditConstants.au3>

Dim $aControls[4][5] = [[3],['Key 1'],['Key 2'],['Key 3']]
$fWork = False

GUICreate('Test', 170, 400)
For $i = 1 To $aControls[0][0]
    $aControls[$i][1] = GUICtrlCreateCheckbox($aControls[$i][0], 20, 10 + ($i - 1) * 30, 60, 20)
    $aControls[$i][2] = GUICtrlCreateInput(0, 90, 10 + ($i - 1) * 30, 60, 20, $ES_READONLY)
    GUICtrlCreateUpdown(-1)
    GUICtrlSetLimit(-1, 10, 0)

Next
$nButtonStart = GUICtrlCreateButton('Start', 35, 300, 100, 30)
$nButtonStop = GUICtrlCreateButton('Stop', 35, 340, 100, 30)
GUICtrlSetState(-1, $GUI_DISABLE)
GUISetState()

While 1
    Switch GUIGetMsg()
        Case $GUI_EVENT_CLOSE
            Exit
        Case $nButtonStop
            $fWork = False
            ConsoleWrite('-----> Stop Click' & @LF)
            GUICtrlSetState($nButtonStop, $GUI_DISABLE)
            GUICtrlSetState($nButtonStart, $GUI_ENABLE)
            For $i = 1 To $aControls[0][0]
                $aControls[$i][3] = 0
                $aControls[$i][4] = 0
            Next
        Case $nButtonStart
            For $i = 1 To $aControls[0][0]
                If BitAND(GUICtrlRead($aControls[$i][1]), $GUI_CHECKED) Then
                    $aControls[$i][3] = GUICtrlRead($aControls[$i][2])
                    If Number($aControls[$i][3]) Then
                        $aControls[$i][4] = TimerInit()
                        $fWork = True
                    EndIf
                EndIf
            Next
            If $fWork Then
                GUICtrlSetState($nButtonStart, $GUI_DISABLE)
                GUICtrlSetState($nButtonStop, $GUI_ENABLE)
            EndIf
    EndSwitch
    If $fWork Then
        For $i = 1 To $aControls[0][0]
            If Number($aControls[$i][3]) Then
                If TimerDiff($aControls[$i][4]) > $aControls[$i][3] * 1000 Then; sec
                    ;здесь можно нажимать клавиши
                    ConsoleWrite($aControls[$i][0] & @TAB & StringFormat('%.1f sec', TimerDiff($aControls[$i][4]) / 1000) & @LF)
                    Send($aControls[$i][0])
                    $aControls[$i][4] = TimerInit()
                EndIf
            EndIf
        Next
    EndIf
WEnd


кнопки я добавил время тоже но постоянное моргание 2х окон относящихся к кнопкам Y и K немного напрягает.
Да и с Табом не получается, пишу "Key tab", но наверно это не правильно(((

Не силен в программирование. Помогите если не трудно :(
Заранее благодарен :IL_AutoIt_1:
 

lirikmel

Продвинутый
Сообщения
226
Репутация
84
Re: Нужен бот-кликер для игры

Код:
#include <GUIConstantsEx.au3>
#include <EditConstants.au3>

Dim $aControls[5][5] = [[4],['1'],['4'],['0'],['{tab}']]
$fWork = False

GUICreate('Test', 170, 400)
For $i = 1 To $aControls[0][0]
    $aControls[$i][1] = GUICtrlCreateCheckbox($aControls[$i][0], 20, 10 + ($i - 1) * 30, 60, 20)
    $aControls[$i][2] = GUICtrlCreateInput(0, 90, 10 + ($i - 1) * 30, 60, 20, $ES_READONLY)
    GUICtrlCreateUpdown(-1)
    GUICtrlSetLimit(-1, 10, 0)

Next
$nButtonStart = GUICtrlCreateButton('Start', 35, 300, 100, 30)	
$nButtonStop = GUICtrlCreateButton('Stop', 35, 340, 100, 30)
GUICtrlSetState(-1, $GUI_DISABLE)
GUISetState()

While 1
    Switch GUIGetMsg()
        Case $GUI_EVENT_CLOSE
            Exit
        Case $nButtonStop
            $fWork = False
            ConsoleWrite('-----> Stop Click' & @LF)
            GUICtrlSetState($nButtonStop, $GUI_DISABLE)
            GUICtrlSetState($nButtonStart, $GUI_ENABLE)
            For $i = 1 To $aControls[0][0]
                $aControls[$i][3] = 0
                $aControls[$i][4] = 0
            Next
        Case $nButtonStart
            For $i = 1 To $aControls[0][0]
                If BitAND(GUICtrlRead($aControls[$i][1]), $GUI_CHECKED) Then
                    $aControls[$i][3] = GUICtrlRead($aControls[$i][2])
                    If Number($aControls[$i][3]) Then
                        $aControls[$i][4] = TimerInit()
                        $fWork = True
                    EndIf
                EndIf
            Next
            If $fWork Then
                GUICtrlSetState($nButtonStart, $GUI_DISABLE)
                GUICtrlSetState($nButtonStop, $GUI_ENABLE)
            EndIf
    EndSwitch
    If $fWork Then
        For $i = 1 To $aControls[0][0]
            If Number($aControls[$i][3]) Then
                If TimerDiff($aControls[$i][4]) > $aControls[$i][3] * 1000 Then; sec
                    ;здесь можно нажимать клавиши
                    ConsoleWrite($aControls[$i][0] & @TAB & StringFormat('%.1f sec', TimerDiff($aControls[$i][4]) / 1000) & @LF)
                    Send($aControls[$i][0])
                    $aControls[$i][4] = TimerInit()
                EndIf
            EndIf
        Next
    EndIf
WEnd



ЗЫ никогда не видел настолько сложный скрипт для нажатия трех кнопок :stars:
 

Belfigor

Модератор
Локальный модератор
Сообщения
3,608
Репутация
941
Re: Нужен бот-кликер для игры

Предупреждение За нарушение правил форума (пункт Б.5):
Имя темы должно нести смысловую нагрузку (отражать суть вопроса/проблемы)
Правильно сформулированное название темы привлекает больше внимания, и шансы получить конкретный ответ увеличиваются.


Данные правила могут пополняться локальными правилами раздела.
Как правильно называть темы

"Нужен бот-кликер для игры" - это неприемлемое название темы, переименуйте тему иначе она будет закрыта, а вам возможно будет выдан бан на несколько дней.

С уважением, ваш Модератор.
 
Автор
V

Vaycher

Новичок
Сообщения
2
Репутация
1
СПС огромное и лишнее кнопки не жмутся :laugh: :IL_AutoIt_1: Сяп еще раз
 
Статус
Закрыто для дальнейших ответов.
Верх