Author Topic: Не работает код KEYSTRING  (Read 1694 times)

0 Members and 1 Guest are viewing this topic.

Aleksandr254

  • Зашел в гости
  • *
  • Posts: 2
    • View Profile
Не работает код KEYSTRING
« on: September 15, 2019, 10:49:49 AM »
Всем привет вот не давно создавал скрипт для одной игры и там нужно было мне при нажатий клавиши печатался текст ну вот я прочил справку узнал про команду KEYSTRING и решил написать скрипт и столкнулся с проблемой проблема в том что скрипт работает частично там я сделал так что при нажатий клавиш от 2-0  пишиться текст дело в то что при нажатий 2-5 работает а дальше нет
Code: (clickermann) [Select]
thread(th1)
   if (iskeydown(#1)=1)
LCLICK(709,16)
      wait(1)
   end_if
   waitms(10)
end_thread

//=============================================

thread(th1)
   if (iskeydown(#2)=1)
KEYSTRING("")
LCLICK(343,695)
KEYPRESS(#DELETE)
      wait(1)
   end_if
   waitms(10)
end_thread
 
//=============================================

thread(th1)
   if (iskeydown(#0)=1)
KEYSTRING("")
LCLICK(343,695)
KEYPRESS(#DELETE)
      wait(1)
   end_if
   waitms(10)
end_thread

//=============================================

thread(th1)
   if (iskeydown(#9)=1)
KEYSTRING("")
LCLICK(343,695)
KEYPRESS(#DELETE)
      wait(1)
   end_if
   waitms(10)
end_thread

//=============================================

thread(th1)
   if (iskeydown(#8)=1)
KEYSTRING("")
LCLICK(343,695)
KEYPRESS(#DELETE)
      wait(1)
   end_if
   waitms(10)
end_thread

//=============================================

thread(th1)
   if (iskeydown(#7)=1)
KEYSTRING("a soldier")
LCLICK(343,695)
KEYPRESS(#DELETE)
      wait(1)
   end_if
   waitms(10)
end_thread

//=============================================

thread(th1)
   if (iskeydown(#6)=1)
KEYSTRING("")
LCLICK(343,695)
KEYPRESS(#DELETE)
      wait(1)
   end_if
   waitms(10)
end_thread

//=============================================

thread(th1)
   if (iskeydown(#5)=1)
KEYSTRING("")
LCLICK(343,695)
KEYPRESS(#DELETE)
      wait(1)
   end_if
   waitms(10)
end_thread

//=============================================

thread(th1)
   if (iskeydown(#4)=1)
KEYSTRING("")
LCLICK(343,695)
KEYPRESS(#DELETE)
      wait(1)
   end_if
end_thread

//=============================================

thread(th1)
   if (iskeydown(#3)=1) 
KEYSTRING("")
LCLICK(343,695)
KEYPRESS(#DELETE)
      wait(1)
   end_if
   waitms(10)
end_thread

//=============================================

thread(th1)
   if (iskeydown(#TAB)=1)
KEYSTRING("")
      wait(1)
   end_if
   waitms(10)
end_thread
« Last Edit: September 15, 2019, 12:27:17 PM by Oraven »

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Не работает код KEYSTRING
« Reply #1 on: September 15, 2019, 12:28:17 PM »
Ошибка в том что у потоков одни и те же имена. Вообще нужен всего один поток, а если это весь скрипт то и он не нужен.
Правильный код

Code: (clickermann) [Select]
if (iskeydown(#1)=1)
   LCLICK(709,16)
   wait(1)
ELSE
   if (iskeydown(#2)=1)
      KEYSTRING("")
      LCLICK(343,695)
      KEYPRESS(#DELETE)
      wait(1)
   ELSE
      if (iskeydown(#0)=1)
         KEYSTRING("")
         LCLICK(343,695)
         KEYPRESS(#DELETE)
         wait(1)
      ELSE
         if (iskeydown(#9)=1)
            KEYSTRING("")
            LCLICK(343,695)
            KEYPRESS(#DELETE)
            wait(1)
         ELSE
            if (iskeydown(#8)=1)
               KEYSTRING("")
               LCLICK(343,695)
               KEYPRESS(#DELETE)
               wait(1)
            ELSE
               if (iskeydown(#7)=1)
                  KEYSTRING("a soldier")
                  LCLICK(343,695)
                  KEYPRESS(#DELETE)
                  wait(1)
               ELSE
                  if (iskeydown(#6)=1)
                     KEYSTRING("")
                     LCLICK(343,695)
                     KEYPRESS(#DELETE)
                     wait(1)
                  ELSE
                     if (iskeydown(#5)=1)
                        KEYSTRING("")
                        LCLICK(343,695)
                        KEYPRESS(#DELETE)
                        wait(1)
                     ELSE
                        if (iskeydown(#4)=1)
                           KEYSTRING("")
                           LCLICK(343,695)
                           KEYPRESS(#DELETE)
                           wait(1)
                        ELSE
                           if (iskeydown(#3)=1)
                              KEYSTRING("")
                              LCLICK(343,695)
                              KEYPRESS(#DELETE)
                              wait(1)
                           ELSE
                              if (iskeydown(#TAB)=1)
                                 KEYSTRING("")
                                 wait(1)
                              end_if
                           end_if
                        end_if
                     end_if
                  end_if
               end_if
            end_if
         end_if
      end_if
   end_if
end_if
waitms(10)


Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Не работает код KEYSTRING
« Reply #2 on: September 15, 2019, 12:34:14 PM »
Другой вариант скрипта
Code: (clickermann) [Select]
GETKEYSDOWN ($a_key)
IF(ARRSIZE($a_key) > 0)
   SWITCH($a_key[0])
      CASE(#1)
         LCLICK(709,16)
         wait(1)
      CASE(#2)
         KEYSTRING("")
         LCLICK(343,695)
         KEYPRESS(#DELETE)
         wait(1)
      CASE(#0)
         KEYSTRING("")
         LCLICK(343,695)
         KEYPRESS(#DELETE)
         wait(1)
      CASE(#9)
         KEYSTRING("")
         LCLICK(343,695)
         KEYPRESS(#DELETE)
         wait(1)
      CASE(#8)
         KEYSTRING("")
         LCLICK(343,695)
         KEYPRESS(#DELETE)
         wait(1)
      CASE(#7)
         KEYSTRING("a soldier")
         LCLICK(343,695)
         KEYPRESS(#DELETE)
         wait(1)
      CASE(#6)
         KEYSTRING("")
         LCLICK(343,695)
         KEYPRESS(#DELETE)
         wait(1)
      CASE(#5)
         KEYSTRING("")
         LCLICK(343,695)
         KEYPRESS(#DELETE)
         wait(1)
      CASE(#4)
         KEYSTRING("")
         LCLICK(343,695)
         KEYPRESS(#DELETE)
         wait(1)
      CASE(#3)
         KEYSTRING("")
         LCLICK(343,695)
         KEYPRESS(#DELETE)
         wait(1)
      CASE(#TAB)
         KEYSTRING("")
         wait(1)
   END_SWITCH
END_IF
waitms(10)

Aleksandr254

  • Зашел в гости
  • *
  • Posts: 2
    • View Profile
Re: Не работает код KEYSTRING
« Reply #3 on: September 15, 2019, 02:03:26 PM »
Спасибо большое очень выручил