Author Topic: Стрельба, сдвиг курсора в исходное положение  (Read 3408 times)

0 Members and 1 Guest are viewing this topic.

Skaranin

  • Зашел в гости
  • *
  • Posts: 7
    • View Profile
Здравствуйте.
Впервые на этом форуме, так что сильно не пинайте ногами.
Нужна помощь в написании скрипта для стрельбы из винтовки(полуавтомата).
Есть начальные наметки:
IF(ISKEYDOWN(1)=1)
WAITMS(10)
MOVER(0,3)
ELSE
WAITMS(10)
END_IF
Но проблема в том что бы курсор смещался вниз только после первого выстрела, а все остальные оставался без действия. Так как в моем случае он с каждым выстрелом смещается на указанное число пикселей вниз, и становится все ниже и ниже.

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Code: (clickermann) [Select]
IF(ISKEYDOWN(1)=1)
   WAITMS(10)
   MOVER(0,3)
   WHILE(ISKEYDOWN(1)=1) // этот цикл не пустит скрипт дальше пока не отпустишь левую кнопку
      WAITMS(10)
   END_CYC
ELSE
   WAITMS(10)
END_IF

Skaranin

  • Зашел в гости
  • *
  • Posts: 7
    • View Profile
Code: (clickermann) [Select]
IF(ISKEYDOWN(1)=1)
   WAITMS(10)
   MOVER(0,3)
   WHILE(ISKEYDOWN(1)=1) // этот цикл не пустит скрипт дальше пока не отпустишь левую кнопку
      WAITMS(10)
   END_CYC
ELSE
   WAITMS(10)
END_IF
Немного не то. Я указал что это полуавтомат, а не автомат. И это значит что постоянно кликаешь мышкой. Увод ствола идет только после первого выстрела. Все последующие летят в то место где был второй и т.д выстрелы.
П.С. вероятно по ошибке отправил и личное сообщение.

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
То есть ты кликаешь много раз, а винтовку, почему то, уводит вверх только в первый раз?

Ну хорошо, добавим таймер. Вот так, коррекция не производится если после последнего клика прошло менее 200 мс
Code: (clickermann) [Select]
IF(ISKEYDOWN(1)=1)
   IF($time < $_ms)
      WAITMS(10)
      MOVER(0,3)
   ELSE
      WAITMS(10)
   END_IF
   $time = $_ms + 200 // таймаут 200 мс после последнего клика
ELSE
   WAITMS(10)
END_IF

Skaranin

  • Зашел в гости
  • *
  • Posts: 7
    • View Profile
То есть ты кликаешь много раз, а винтовку, почему то, уводит вверх только в первый раз?

Ну хорошо, добавим таймер. Вот так, коррекция не производится если после последнего клика прошло менее 200 мс
Code: (clickermann) [Select]
IF(ISKEYDOWN(1)=1)
   IF($time < $_ms)
      WAITMS(10)
      MOVER(0,3)
   ELSE
      WAITMS(10)
   END_IF
   $time = $_ms + 200 // таймаут 200 мс после последнего клика
ELSE
   WAITMS(10)
END_IF
Спасибо за помощь.
Это очень близко к тому что хотел. Вполне сойдет для моего примитивного скрипта.

Skaranin

  • Зашел в гости
  • *
  • Posts: 7
    • View Profile
П.С. вероятно по ошибке отправил и личное сообщение.
Я то всё гадаю, почему последнее время так много мне в личку стали писать, а это у нас  баг такой!

Просто я первый день на сайте. Выбрал кнопку ответить, по привычке где она расположена на других сайтах, вместо цитировать  ;D

Еще один вопрос: в чем может быть проблема что КМ в игре не отключается(включается) по горячим клавишам? Запускал от имени админа, тоже самое. Может в самом скрипте есть возможность прописать(назначить на кнопку) его вкл-откл?
« Last Edit: November 14, 2018, 07:51:19 AM by Skaranin »

Skaranin

  • Зашел в гости
  • *
  • Posts: 7
    • View Profile
горячие клавиши действуют только на первую запущенную копию программы, даже если первую потом отключить, а останется одна запущенная второй, то клавиши на неё всё равно действовать не будут....
Не работают. Я запускаю всегда только одну версию программы, и клавиши в игре не работают только в винде.

Skaranin

  • Зашел в гости
  • *
  • Posts: 7
    • View Profile
Вы хоть отдаётё себе отчёт, что написали два взаимоисключающих сообщения?
горячие клавиши для управление программой Clickermann
и управление игрой с помощью Clickermann совершено разные понятия и решаются по разному.
Да, действительно не понимаю. Вроде обсуждал только КМ, а не игру. О каком управлении игрой идет речь не понимаю. Требуется просто чтобы играя можно было вкл.-откл. КМ не сворачивая для этого саму игру.

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Так может горячие клавиши запуска кликера существуют в самой игре?
Переназначить клавиши в кликере или в игре на другие, заведомо свободные.


Skaranin

  • Зашел в гости
  • *
  • Posts: 7
    • View Profile
Так может горячие клавиши запуска кликера существуют в самой игре?
Переназначить клавиши в кликере или в игре на другие, заведомо свободные.
К сожалению этот вариант уже давно опробовал, не работает. :(
Даже на три кнопки пробовал, результат отрицательный.