Что нового

[Массивы] Как соединить два скрипта в один

Alex Loony

Новичок
Сообщения
6
Репутация
0
Здраствуйте.

Вот такое дело, имею 2 скрипта на онлайн игру Last Chaos.

Вот 1. Он Убивает мобов.

Код:
HOTKEYSET("{PAUSE}","PauseFunc")
$VAR=0
$HWND1=_PROCESSGETWINDOW("Nksp.exe")
WHILE 1
CONTROLSEND($HWND1,"","","{TAB}")
$RANDOM=RANDOM(-100,100,0)
SLEEP(200+$RANDOM)
CONTROLSEND($HWND1,"","","{1}")
$RANDOM=RANDOM(-100,100,0)
SLEEP(1000+$RANDOM)
WEND
FUNC _PROCESSGETWINDOW($IPID,$IRET=1)
LOCAL $AWINLIST=WINLIST()
LOCAL $ARET[2]
IF ISSTRING($IPID)THEN
$IPID=PROCESSEXISTS($IPID)
ENDIF
FOR $I=1 TO UBOUND($AWINLIST)-1
IF WINGETPROCESS($AWINLIST[$I][1])=$IPID THEN
$ARET[0]=$AWINLIST[$I][0]
$ARET[1]=$AWINLIST[$I][1]
IF $IRET=0 THEN
RETURN $ARET[0]
ENDIF
IF $IRET=1 THEN
RETURN $ARET[1]
ENDIF
RETURN $ARET
ENDIF
NEXT
RETURN SETERROR(1,0,$ARET)
ENDFUNC
FUNC PAUSEFUNC()
IF $VAR=0 THEN
$VAR=1
PAUSEFUNC2()
ELSE
$VAR=2
ENDIF
ENDFUNC
FUNC PAUSEFUNC2()
WHILE 1
IF $VAR=2 THEN
$VAR=0
EXITLOOP
ENDIF
SLEEP(500)
WEND
ENDFUNC


Вот 2. Он Делает баф.

Код:
HOTKEYSET("{PAUSE}","PauseFunc")
$VAR=0
$HWND1=_PROCESSGETWINDOW("Nksp.exe")
WHILE 1
CONTROLSEND($HWND1,"","","{4}")
$RANDOM=RANDOM(-100,100,0)
SLEEP(295000+$RANDOM)
WEND
FUNC _PROCESSGETWINDOW($IPID,$IRET=1)
LOCAL $AWINLIST=WINLIST()
LOCAL $ARET[2]
IF ISSTRING($IPID)THEN
$IPID=PROCESSEXISTS($IPID)
ENDIF
FOR $I=1 TO UBOUND($AWINLIST)-1
IF WINGETPROCESS($AWINLIST[$I][1])=$IPID THEN
$ARET[0]=$AWINLIST[$I][0]
$ARET[1]=$AWINLIST[$I][1]
IF $IRET=0 THEN
RETURN $ARET[0]
ENDIF
IF $IRET=1 THEN
RETURN $ARET[1]
ENDIF
RETURN $ARET
ENDIF
NEXT
RETURN SETERROR(1,0,$ARET)
ENDFUNC
FUNC PAUSEFUNC()
IF $VAR=0 THEN
$VAR=1
PAUSEFUNC2()
ELSE
$VAR=2
ENDIF
ENDFUNC
FUNC PAUSEFUNC2()
WHILE 1
IF $VAR=2 THEN
$VAR=0
EXITLOOP
ENDIF
SLEEP(500)
WEND
ENDFUNC


Каким образом их можно объединить?

P.s Побывал последовательно не получилось, работает только 1 из 2. :IL_AutoIt_1:
 

winstan

Эксплотатор)
Сообщения
406
Репутация
79
Код:
TimerDiff($begin)
$begin = TimerInit()
Очень полезные :smile:
код лучше в спецальный тег для автоит
Код:
[autoit][/autoit]
 
Автор
A

Alex Loony

Новичок
Сообщения
6
Репутация
0
Уважаемый Виктор Николаевич.
А пример можно маленький?

P.s В AutoIt'e первый раз.) Языками написания не обладаю. :'(
 

winstan

Эксплотатор)
Сообщения
406
Репутация
79
Код:
Func _hill()
    Global $dif = TimerDiff($begin)
    If $dif > "14000" Then
        $result = _MemoryRead($hill, $memory)
        If $result < $hillmin Then
            Sleep(1000)
            ControlSend($hWnd1, "", "", "{F7}")
            $begin = TimerInit()
        Else
        EndIf
    Else

    EndIf
EndFunc   ;==>_hill
так я хилился
и потом в основной цикл добавить обращение в функцую
предварительно зарезервировав и прировняв $begin=0
 
Верх