Перейти к публикации
  • Сейчас на странице   Всего пользователей: 0   (0 пользователей, 0 гостей)

InFlames

Autohotkey + Warcraft III

Рекомендованные сообщения

Даже если в отдельный скрипт вставляю не работает.

Может старая Version 1.0.48.05 ?

Поделиться сообщением


Ссылка на сообщение

Даже если в отдельный скрипт вставляю не работает.

Может старая Version 1.0.48.05 ?

у меня ласт версия стоит  :nate:

 

Поделиться сообщением


Ссылка на сообщение

вообще я бы дописал бы так

 

Random, OutputVar, 100, 200

!2::
   Random, OutputVar, 100, 200
   sendplay 5x5 ar rakinadne %OutputVar%{enter}
return

 

это тебе игру хостить

 

Random, OutputVar, 100, 200

!2::
   Random, OutputVar, 100, 200
   sendplay /host 5x5 ar rakinadne %OutputVar%{enter}
return

Поделиться сообщением


Ссылка на сообщение

зачем релоад?  :ohmy:


0BdKg2e.png

Скрытый текст

 

Цитата

посоны

я джуса забанил

мне пиздос?

Цитата

xHjcvkA.gif

 

 

 

 

 

Поделиться сообщением


Ссылка на сообщение

зачем релоад?  :ohmy:

без релоада он одно и тоже число выдает все время

Поделиться сообщением


Ссылка на сообщение

ну так строчку с записью рандома в переменную  засунь не в сам скрипт, а в то что по хоткею юзается


0BdKg2e.png

Скрытый текст

 

Цитата

посоны

я джуса забанил

мне пиздос?

Цитата

xHjcvkA.gif

 

 

 

 

 

Поделиться сообщением


Ссылка на сообщение

Random, OutputVar, 100, 200
2::
   sendplay /host 5x5 ar rakinadne %OutputVar%{enter}
   reload
return 

Этот работает.

 

Но если добавляю его в свой код, то хуй. Опять цифры не пишет

 

 

^!VK53::ExitApp ; ctrl+alt+s
#SingleInstance force
#IfWinActive ahk_class Warcraft III
#MaxHotkeysPerInterval 1000
Process, Priority, , High

; оптимизация быстродействия
#noenv
setbatchlines -1
setkeydelay -1

; стоп атаки зажатой клавишей S
$vk53::Send {vk53}

;инвентОрь
vk20::vk61 ;space=1
xbutton1::numpad4
xbutton2::numpad5
z::numpad7 ; z=7
x::numpad8 ; x=8

; прокачка на тильду
;vkC0::vk4F

; отключение биндов во время общения внутри игры
~*Enter::
~*numpadenter::
   suspend
   suspend
   if flagf6
	  return
   	   If (paused:=!paused)
		{
	  SetScrollLockState, alwaysoff
	  suspend, on
	  }
   Else
   {
	  SetScrollLockState, alwayson
	  suspend, off
	  }
Return


~*esc::
~*lbutton::
   suspend
   suspend
   if flagf6
      return
   suspend, off
   paused=0
   SetScrollLockState, alwayson
return

;фразы чата
!2::
sendplay {enter}-weather moonlight{enter}
sleep, 150
sendplay {enter}-water 0 0 0{enter}
sleep, 150
sendplay {enter}-ii{enter}
sleep, 150
sendplay {enter}-clear{enter}
sleep, 150
        sendplay +{enter}-random{enter}
return
!4::sendplay +{enter}SHUT UP I HATE YOU{enter}


!vkC0::sendplay {enter}MISS{enter} ; alt+Ё
!1::sendplay {enter}RE{enter}	

;Потный нвокер
MButton & vk46::sendplay {vk45}{vk45}{vk51}{vk52} ;Forged Spirit (EEQ) (F) Мана: 75, КД: 30

MButton & vk56::sendplay {vk51}{vk51}{vk57}{vk52} ;Ghost Walk (QQW) (V) Мана: 300, КД: 60

MButton & vk54::sendplay {vk45}{vk45}{vk45}{vk52} ;Sun Strike (EEE) (T) Мана: 175, КД: 30

MButton & vk44::sendplay {vk45}{vk45}{vk57}{vk52} ;Chaos Meteor (EEW) (D) Мана: 200, КД: 55

MButton & vk58::sendplay {vk57}{vk57}{vk51}{vk52} ;Tornado (WWQ) (X) Мана: 150, КД: 25

MButton & vk59::sendplay {vk51}{vk51}{vk51}{vk52} ;Cold Snap (QQQ) (Y) Мана: 100, КД: 20 

MButton & vk47::sendplay {vk51}{vk51}{vk45}{vk52} ;Ice Wall (QQE) (G) Мана: 125, КД: 20

MButton & vk5A::sendplay {vk57}{vk57}{vk45}{vk52} ;Alacrity (WWE) (Z) Мана: 50, КД: 15

MButton & vk43::sendplay {vk57}{vk57}{vk57}{vk52} ;EMP (WWW) (C) Мана: 125, КД: 25

MButton & vk42::sendplay {vk51}{vk57}{vk45}{vk52} ;Deafening Blast (QWE (B) Мана: 200, КД: 40

; автокаст
!vk71::
MouseGetPos, x1, y1
return

vkC0::
   BlockInput, On
   MouseGetPos, x0, y0
   SendPlay, {Click %x1%, %y1%, Right}{Click %x0%, %y0%, 0}
   BlockInput, Off
return

 

Поделиться сообщением


Ссылка на сообщение

ну так строчку с записью рандома в переменную  засунь не в сам скрипт, а в то что по хоткею юзается

да чет затупил

Поделиться сообщением


Ссылка на сообщение

Random, OutputVar, 100, 200
2::
   sendplay /host 5x5 ar rakinadne %OutputVar%{enter}
   reload
return 

Этот работает.

 

Но если добавляю его в свой код, то хуй. Опять цифры не пишет

 

 

^!VK53::ExitApp ; ctrl+alt+s
#SingleInstance force
#IfWinActive ahk_class Warcraft III
#MaxHotkeysPerInterval 1000
Process, Priority, , High

; оптимизация быстродействия
#noenv
setbatchlines -1
setkeydelay -1

; стоп атаки зажатой клавишей S
$vk53::Send {vk53}

;инвентОрь
vk20::vk61 ;space=1
xbutton1::numpad4
xbutton2::numpad5
z::numpad7 ; z=7
x::numpad8 ; x=8

; прокачка на тильду
;vkC0::vk4F

; отключение биндов во время общения внутри игры
~*Enter::
~*numpadenter::
   suspend
   suspend
   if flagf6
	  return
   	   If (paused:=!paused)
		{
	  SetScrollLockState, alwaysoff
	  suspend, on
	  }
   Else
   {
	  SetScrollLockState, alwayson
	  suspend, off
	  }
Return


~*esc::
~*lbutton::
   suspend
   suspend
   if flagf6
      return
   suspend, off
   paused=0
   SetScrollLockState, alwayson
return

;фразы чата
!2::
sendplay {enter}-weather moonlight{enter}
sleep, 150
sendplay {enter}-water 0 0 0{enter}
sleep, 150
sendplay {enter}-ii{enter}
sleep, 150
sendplay {enter}-clear{enter}
sleep, 150
        sendplay +{enter}-random{enter}
return
!4::sendplay +{enter}SHUT UP I HATE YOU{enter}


!vkC0::sendplay {enter}MISS{enter} ; alt+Ё
!1::sendplay {enter}RE{enter}	

;Потный нвокер
MButton & vk46::sendplay {vk45}{vk45}{vk51}{vk52} ;Forged Spirit (EEQ) (F) Мана: 75, КД: 30

MButton & vk56::sendplay {vk51}{vk51}{vk57}{vk52} ;Ghost Walk (QQW) (V) Мана: 300, КД: 60

MButton & vk54::sendplay {vk45}{vk45}{vk45}{vk52} ;Sun Strike (EEE) (T) Мана: 175, КД: 30

MButton & vk44::sendplay {vk45}{vk45}{vk57}{vk52} ;Chaos Meteor (EEW) (D) Мана: 200, КД: 55

MButton & vk58::sendplay {vk57}{vk57}{vk51}{vk52} ;Tornado (WWQ) (X) Мана: 150, КД: 25

MButton & vk59::sendplay {vk51}{vk51}{vk51}{vk52} ;Cold Snap (QQQ) (Y) Мана: 100, КД: 20 

MButton & vk47::sendplay {vk51}{vk51}{vk45}{vk52} ;Ice Wall (QQE) (G) Мана: 125, КД: 20

MButton & vk5A::sendplay {vk57}{vk57}{vk45}{vk52} ;Alacrity (WWE) (Z) Мана: 50, КД: 15

MButton & vk43::sendplay {vk57}{vk57}{vk57}{vk52} ;EMP (WWW) (C) Мана: 125, КД: 25

MButton & vk42::sendplay {vk51}{vk57}{vk45}{vk52} ;Deafening Blast (QWE (B) Мана: 200, КД: 40

; автокаст
!vk71::
MouseGetPos, x1, y1
return

vkC0::
   BlockInput, On
   MouseGetPos, x0, y0
   SendPlay, {Click %x1%, %y1%, Right}{Click %x0%, %y0%, 0}
   BlockInput, Off
return

 

 

узнал свои комменты  и код  :trollface:


0BdKg2e.png

Скрытый текст

 

Цитата

посоны

я джуса забанил

мне пиздос?

Цитата

xHjcvkA.gif

 

 

 

 

 

Поделиться сообщением


Ссылка на сообщение

!2:: 

    Random, OutputVar, 100, 200 

    sendplay /host 5x5 ar rakinadne %OutputVar%{enter}

return 

Поделиться сообщением


Ссылка на сообщение

балда ты , у тебя уже стоит !2 фразы чата

ставь на !3 и все будет

вот

 

 

 

^!VK53::ExitApp ; ctrl+alt+s
#SingleInstance force
#IfWinActive ahk_class Warcraft III
#MaxHotkeysPerInterval 1000
Process, Priority, , High


; оптимизация быстродействия
#noenv
setbatchlines -1
setkeydelay -1


; стоп атаки зажатой клавишей S
$vk53::Send {vk53}


;инвентОрь
vk20::vk61 ;space=1
xbutton1::numpad4
xbutton2::numpad5
z::numpad7 ; z=7
x::numpad8 ; x=8


; прокачка на тильду
;vkC0::vk4F


; отключение биндов во время общения внутри игры
~*Enter::
~*numpadenter::
   suspend
   suspend
   if flagf6
	  return
   	   If (paused:=!paused)
		{
	  SetScrollLockState, alwaysoff
	  suspend, on
	  }
   Else
   {
	  SetScrollLockState, alwayson
	  suspend, off
	  }
Return




~*esc::
~*lbutton::
   suspend
   suspend
   if flagf6
      return
   suspend, off
   paused=0
   SetScrollLockState, alwayson
return


;фразы чата
!2::
sendplay {enter}-weather moonlight{enter}
sleep, 150
sendplay {enter}-water 0 0 0{enter}
sleep, 150
sendplay {enter}-ii{enter}
sleep, 150
sendplay {enter}-clear{enter}
sleep, 150
        sendplay +{enter}-random{enter}
return
!4::sendplay +{enter}SHUT UP I HATE YOU{enter}




!vkC0::sendplay {enter}MISS{enter} ; alt+Ё
!1::sendplay {enter}RE{enter}	


;Потный нвокер
MButton & vk46::sendplay {vk45}{vk45}{vk51}{vk52} ;Forged Spirit (EEQ) (F) Мана: 75, КД: 30


MButton & vk56::sendplay {vk51}{vk51}{vk57}{vk52} ;Ghost Walk (QQW) (V) Мана: 300, КД: 60


MButton & vk54::sendplay {vk45}{vk45}{vk45}{vk52} ;Sun Strike (EEE) (T) Мана: 175, КД: 30


MButton & vk44::sendplay {vk45}{vk45}{vk57}{vk52} ;Chaos Meteor (EEW) (D) Мана: 200, КД: 55


MButton & vk58::sendplay {vk57}{vk57}{vk51}{vk52} ;Tornado (WWQ) (X) Мана: 150, КД: 25


MButton & vk59::sendplay {vk51}{vk51}{vk51}{vk52} ;Cold Snap (QQQ) (Y) Мана: 100, КД: 20 


MButton & vk47::sendplay {vk51}{vk51}{vk45}{vk52} ;Ice Wall (QQE) (G) Мана: 125, КД: 20


MButton & vk5A::sendplay {vk57}{vk57}{vk45}{vk52} ;Alacrity (WWE) (Z) Мана: 50, КД: 15


MButton & vk43::sendplay {vk57}{vk57}{vk57}{vk52} ;EMP (WWW) (C) Мана: 125, КД: 25


MButton & vk42::sendplay {vk51}{vk57}{vk45}{vk52} ;Deafening Blast (QWE (B) Мана: 200, КД: 40


; автокаст
!vk71::
MouseGetPos, x1, y1
return


vkC0::
   BlockInput, On
   MouseGetPos, x0, y0
   SendPlay, {Click %x1%, %y1%, Right}{Click %x0%, %y0%, 0}
   BlockInput, Off
return




!3::                  ;хост игры с рандомным числом от 100 до 200
   Random, OutputVar, 100, 200
   sendplay /host 5x5 ar rakinadne %OutputVar%{enter}
return

Поделиться сообщением


Ссылка на сообщение

!2::   
     Random, OutputVar, 100, 200   
     sendplay /host 5x5 ar rakinadne %OutputVar%{enter}
return

 

:avtoradolf: Работает. Спасибо

 

балда ты , у тебя уже стоит !2 фразы чата

ставь на !3 и все будет

вот

 

Я на !5 изначально ставил, он вписывал всё кроме цыфр, теперь все норм.

Поделиться сообщением


Ссылка на сообщение

Да точно, вот так будет верно

!2::
Random, OutputVar, 100, 200
sendplay 5x5 ar rakinadne%OutputVar%{enter}
Return

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

 

Поделиться сообщением


Ссылка на сообщение

Ребят появилась небольшая задумка по поводу отслеживания кд скилов у инвока  :vau: .

InFlames, както писал скрипт по инвокеру:

InFlames
;~ Свои хоткеи можно добавить в конце скрипта
;~ Они не должны дублировать существующие
#NoEnv
#SingleInstance, force
#MaxHotkeysPerInterval 1000
;~ #UseHook, on
Process, Priority, , High
SetBatchLines, -1
SetKeyDelay, -1

; Что нажимать после комбинации (0 - ничего)
Triple=eee

; Время, в течение которого двойное нажатие считается таковым
delay:=350

Sunstrike:=      "eeer"   ,   Key_Sunstrike:=   Key_1 := "t"         ; T
ChaosMeteor:=   "eewr"   ,   Key_ChaosMeteor:=   Key_2 := "d"         ; D
ForgeSpirit:=   "eeqr"   ,   Key_ForgeSpirit:=   Key_3 := "f"         ; F
ColdSnap:=      "qqqr"   ,   Key_ColdSnap:=      Key_4 := "y"         ; Y
GhostWalk:=      "qqwr"   ,   Key_GhostWalk:=   Key_5 := "v"         ; V
IceWall:=       "qqer"   ,   Key_IceWall:=      Key_6 := "g"         ; G
;Alacrity:=      "wwer"   ,   Key_Alacrity:=      Key_7 := "z"         ; Z
Tornado:=       "wwqr"   ,   Key_Tornado:=      Key_8 := "x"         ; X
EMP:=         "wwwr"   ,   Key_EMP:=         Key_9 := "c"         ; C
DeafeningBlast:="qwer"   ,   Key_DeafeningBlast:=Key_10:= "b"        ; B

Spell_List = Sunstrike,ChaosMeteor,ForgeSpirit,ColdSnap,GhostWalk,IceWall,Alacrity,Tornado,EMP,DeafeningBlast
VK_LIST = VK41,VK42,VK43,VK44,VK45,VK46,VK47,VK48,VK49,VK4A,VK4B,VK4C,VK4D,VK4E,VK4F,VK50,VK51,VK52,VK53,VK54,VK55,VK56,VK57,VK58,VK59,VK5A,VKC0
HK_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,``

; Создание хоткеев
Hotkey, IfWinActive, ahk_class Warcraft III
Loop, Parse, Spell_List, CSV
   Hotkey, % "$" VK(Key_%A_Index%), %A_LoopField%, On
Return

; Выполнение комбинаций при нажатии хоткеев
SunStrike:
ChaosMeteor:
ForgeSpirit:
ColdSnap:
GhostWalk:
IceWall:
Alacrity:
Tornado:
EMP:
DeafeningBlast:
   Gosub, Layout ; переключает раскладку на EN
   If (A_TimeSincePriorHotkey < delay) and (Prev=A_ThisLabel) and (State%A_ThisLabel%) ; двойное нажатие
      SendInput, % %A_ThisLabel% . (Triple ? Triple : "")
   Else
   {
      SendInput, % Key_%A_ThisLabel%
      State%Prev%:=0
   }
   State%A_ThisLabel%:=not State%A_ThisLabel%
   Prev:=A_ThisLabel
   SendMessage, 0x50,, %InputlocaleIDLast%,, A ; переключает раскладку на прежнюю
Return

VK(Param) ; функция преобразования хоткея в виртуальный код
   {
      global
      Hotkey:=RegExReplace(Param, "[\^\!\+\#]+(.*)", "$1")
      If StrLen(Hotkey) > 1
         Return Param
      Loop, Parse, HK_LIST, CSV
         If (Hotkey = A_LoopField)
         {
            Index := A_Index
            Loop, Parse, VK_LIST, CSV
               If (A_Index = Index)
                  Return % RegExReplace(Param, "(.*)" Hotkey, "$1" A_LoopField)
         }
   }

Layout:
   SetFormat, Integer, H
   WinGet, WinID,, A
   ThReadID:=DllCall("GetWindowThReadProcessId", UInt, WinID, UInt, 0)
   InputlocaleIDLast:=InputlocaleID:=DllCall("GetKeyboardLayout", UInt, ThReadID, UInt)
   If !(InputlocaleID="0x4090409") ; если не английская раскладка
      SendMessage, 0x50,, 0x4090409,, A
Return

#IfWinActive ahk_class Warcraft III

; клавиши активации чата
~*Enter::
~*Numpadenter::
   Suspend, Permit
   If globalPause ; если стоит пауза
      Return
   Suspend, % (Paused:=!Paused) ? "on" : "off"
Return

; клавиши отмены чата
~*esc::
~*lbutton::
   Suspend, Permit
   If (globalPause or !Paused) ; если стоит пауза или не открыт чат
      Return
   Suspend, off
   Paused:=0
Return

;~;~;~;~;~;~;~;~;~;~
;~ Кастомные хоткеи
;~;~;~;~;~;~;~;~;~;~

;~ -clear
F5::
   SendInput {Enter}
   SendRaw -clear
   SendInput {Enter}
Return


;~ Случайное нажатие ALT+Q будет заменяться на Q
!VK51::SendInput {VK51}

F9:: ; перезагрузка скрипта
   Critical
   Reload
Return
q:: ;~ Хоткей для активации скрипта
   If BlockInput ;~ Если стоит опция Блокировать ввод
      BlockInput, on ;~ Заблокировать ввод с клавиатуры и мыши
         SendInput, "qqq" ;~    
   If BlockInput ;~ Если стоит опция Блокировать ввод
      BlockInput, off ;~ Разблокировать ввод

return
w:: ;~ Хоткей для активации скрипта
   If BlockInput ;~ Если стоит опция Блокировать ввод
      BlockInput, on ;~ Заблокировать ввод с клавиатуры и мыши
         SendInput, "www" ;~    
   If BlockInput ;~ Если стоит опция Блокировать ввод
      BlockInput, off ;~ Разблокировать ввод

return
e:: ;~ Хоткей для активации скрипта
   If BlockInput ;~ Если стоит опция Блокировать ввод
      BlockInput, on ;~ Заблокировать ввод с клавиатуры и мыши
         SendInput, "eee" ;~    
   If BlockInput ;~ Если стоит опция Блокировать ввод
      BlockInput, off ;~ Разблокировать ввод

return
;~ Пауза скрипта
F10::
   Suspend
   globalPause:=!globalPause
   SoPlay, *48
Return

;~ F12 = ALT+Q, т.к. отключили ALT+Q, выходим на F12
F12::SendInput !{VK51}

F6::triple=qqq ; заряд qqq, www или eee после заряда магии, устанавливается клавишами F6-F8, по-умолчанию eee
F7::triple=www
F8::triple=eee

А что если к примеру, при нажатии клавиши D, запускался бы метеор, и одновременно с этим в скрипте активировался бы таймер\секундомер (аля кд у заклинания), по завершению которого запускалось бы звукое сообщение: "Метеор"..  :parovozdjan:

Как выполнить свою задумку на данном языке, ума не приложу, и выполнимо ли вообще)

Интересно что скажут наши гуру :hmm:

Поделиться сообщением


Ссылка на сообщение

Совсем уже ебанулись ?

Может еще скрип который за вас играет написать ?

Поделиться сообщением


Ссылка на сообщение

Бло ну чеж сразу ебанулись то), просто порою в замесе выдаешь 5-6 заклинаний, и что бы при отсуплении не юзануть случайно скил находящийся в кд =\ Былобы не плохо сделать такую напоминалку =_= И не надо пожалуйста, воспринимать все в штыки)

Единственное и самое сложное в скиллах у инвокера- это отсчитывать кд каждого скилла. Это почти невозможно. И иногда ты переключаешься на скилл где идёт кд, а это уже фейл и он может решить замес, а то и вовсе исход игры.

Поделиться сообщением


Ссылка на сообщение

А если скил не запустил? Например, тебя застанили. Таймер пошел, а кд. нет. Ну это совсем уже конечно перебор.

Если что то команда settimer тебе в помощь.

 

Поделиться сообщением


Ссылка на сообщение

А если скил не запустил? Например, тебя застанили. Таймер пошел, а кд. нет. Ну это совсем уже конечно перебор.

Если что то команда settimer тебе в помощь.

Ндя про стан я конечно не подумал (= Моя задумка потерпела крах  :po_weke:. Но всеже ниужеле нету ни какого другого способа (не вмешиваясь в работу игры) отследить кд скилов инвока =\?

Поделиться сообщением


Ссылка на сообщение

Есть, проверять цвет пикселя скиллов, но это еще та ебола, забей. Задрачивай инвокера так.

Поделиться сообщением


Ссылка на сообщение

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Восстановить форматирование

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Загрузка...

×
×
  • Создать...