AutoHotkey'i oyunun metin giriş satırına bir dize göndermek için nasıl kullanırım?


2

Oynadığım oyunun kullanıcı girişi için tek satırlık bir sohbet kutusu var. Metin yapıştırmaya izin vermiyor ve önceden ayarlanmış bir tebrik / mesaj vb. Grubu oluşturamazsınız. Bu yüzden farklı tuş basışlarının farklı mesajlar ekleyeceği bir AutoHotkey betiğine ihtiyacım var.

Dizeleri Not Defteri'ne, tarayıcıya vb. Gönderebilirim ancak yukarıda belirtildiği gibi oyuna nasıl göndereceğimi bilmiyorum.

Ben deneyimli bir programcıyım ancak bugün yalnızca AutoHotkey'i indirdim. Bu özel oyun için zaten yapıldığı için bunun mümkün olduğunu da biliyorum.

Yanıtlar:


1

Durum tepsisindeki AHK simgesine sağ tıklayın ve "Komut dosyasını düzenle" yi seçin. Var olanı silin (kendiniz komut dosyası oluşturmadığınızı farz ediyorum) ve bunu içine yapıştırın.

<your hotkey>::Send <your text>[{enter} (if you want it to automatically send]

Saklayın, kapatın, simgeye tekrar sağ tıklayın ve "Betiği yeniden yükle" yi tıklayın. Kısayol tuşunu kullanmadan önce imleci sohbet kutusuna yerleştirmeniz gerekir; sohbet kutusuna odaklanmak için basabileceğiniz bir tuş yoksa Bu durumda, bu anahtarı önündeki komut dosyasına koyun. <your text>. Nasıl yapılacağından emin değilseniz, anahtarın ne olduğunu bana bildirin ve cevabı da ekleyeceğim.


Ben kullandım! N :: Gönder {F6} hola {enter} (dönüş lol ve olmadan)
Doclands

Yani cevabım senin için işe yaradı mı?
SaintWacko

Üzgünüm-ne kadar aptalım lol - hayır, hayır, yapmadıysanız :( Ben zaten denedim F6 - sohbet çubuğunu etkinleştirmek için bir tuşa basmak gibi çalışır ancak Autohotkey betiği ile çalışmadı) - evet, yeniden yükledim vb. ayrıca Gönder, SendInput, vb. de denedi. - fikirlerin tükenmesi lol Bu arada girdiğiniz için teşekkür ederiz - takdir için teşekkür ederiz.
Doclands

Kısayol tuşunu kullanmadan önce {F6} öğesini kaldırır ve sohbet çubuğunu el ile etkinleştirirseniz işe yarar mı?
SaintWacko

Hayır - ikimiz de programcı olduğumuzu söyleyebilirim - lol de denedim lol Tarayıcıda çalışıyor ve F6 kısayolunu doğru kullanıyor vb. oyun (WWIIOnline) ama bilmiyorum - ya da kim yazdı - öğrenmeye çalışıyorum :)
Doclands

1

Bu nihayet benim için çalıştı:

  1. Oyun penceresi başlığı, etkinleştirilebilmesi için gereklidir (eğer oyununuz TAM ekransa ALT TAB kullanın ve pencere Başlığı belirgin olacaktır) - not - imleci oyun sohbet penceresinde etkin hale getirmek, pencereyi aktif hale getirmez bu tür bir şey!
  2. Duraklatmanız gerekir, aksi halde metin kaydedilmez
  3. Kısayol tuşu oyunun dışından çağırılmalıdır! Muhtemelen bütün bunları başarmanın daha iyi yolları olacak ama işe yarıyor, bu yüzden şimdilik!
  4. WWIIOL'u Untitled - Notepad ile değiştirin (Notepad'de yeni bir txt belgesi açtıktan sonra nasıl çalıştığını göreceksiniz - evet bunu başka şekillerde de yapabilirsiniz, ancak bir oyun için bunun işe yarayabildiğini bulabilirim.

Senaryo:

!m::
IfWinExist, WWIIOL 
{WinActivate ; use the window found above
 Sleep, 200 ; wait for 200ms
 Send {F6} HELLO {Enter}
}
else
 Msgbox Hello
return
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.