Автокликер Clickermann :: Форум

Основной раздел => Общие вопросы => Topic started by: maxempolk on June 26, 2017, 02:40:27 PM

Title: Создал считалку урона для игры , немогу доделать .
Post by: maxempolk on June 26, 2017, 02:40:27 PM
Проблема в том что нужно поставить лимит для переменных для $lvl максимум 3 и минимум 0 , для $Mine минимум 0. Если я сам ставлю минимумы и максимумы работает но сбивает Скрипты для повышения и понижения количевства и уровня мин , они то перескакивают через число то вообще не работаеют прошу помочь , буду очень признателен .
Code: [Select]
start::
IF (ISKEYDOWN(#U)=1)
   $Mine=$Mine+1
   HINTPOPUP($Mine, "TechieScript Количевство мин")
   WAIT(1)
END_IF   //На U +1 мина

IF (ISKEYDOWN(#I)=1)
   $lvl=$lvl+1
   HINTPOPUP($lvl, "TechieScript Уровень мин")
   WAIT(1)
END_IF //на I +1 лвл мины.

IF (ISKEYDOWN(#J)=1)
   $Mine=$Mine-1
   HINTPOPUP($Mine, "TechieScript Количевство мин")
   WAIT(1)
END_IF //на J -1 мина

IF (ISKEYDOWN(#K)=1)
   $lvl=$lvl-1
   HINTPOPUP($lvl, "TechieScript Уровень мин")
   WAIT(1)
END_IF //на K -1 лвл мины.
//Скрипты для повышения и понижения количевства и уровня мин.




IF ($mine=0)
   $damage=$Mine*0
END_IF

IF ($lvl=0)
   $damage=$Mine*0
END_IF

IF ($lvl=1)
   $damage=($Mine*300)-((300/100*25)*$Mine)
END_IF //если мины 1 лвла то умножмается количевство мин на 200(1лвл)
IF ($lvl=2)
   $damage=($Mine*450)-((450/100*25)*$Mine)
END_IF //если мины 2 лвла то умножмается количевство мин на 450(2лвл)

IF ($lvl=3)
   $damage=($Mine*600)-((600/100*25)*$Mine)
END_IF //если мины 3 лвла то умножмается количевство мин на 600(3лвл)
//Условия подсчёта

HINTPOPUP($damage ,"Techis(Сумарный урон мин)")
//Макс лвл и мин количевство мин
goto start
Title: Re: Создал считалку урона для игры , немогу доделать .
Post by: Oraven on June 26, 2017, 03:59:58 PM
Ошибки
Не start:: а start:
Не goto start а goto (start)
Не говоря уже что гото тут не нужны

Лучше выводить инфу в лог
Code: (clickermann) [Select]
IF (ISKEYDOWN(#U)=1)
   WHILE(ISKEYDOWN(#U)=1)
      WAITMS(5)
   END_CYC
   INC($Mine,1)
END_IF   //На U +1 мина

IF (ISKEYDOWN(#I)=1)
   WHILE(ISKEYDOWN(#I)=1)
      WAITMS(5)
   END_CYC
   IF($lvl < 3)
      INC($lvl,1)
   END_IF
END_IF //на I +1 лвл мины.

IF (ISKEYDOWN(#J)=1)
   WHILE(ISKEYDOWN(#J)=1)
      WAITMS(5)
   END_CYC
   IF($Mine > 0)
      INC($Mine,-1)
   END_IF
END_IF //на J -1 мина

IF (ISKEYDOWN(#K)=1)
   WHILE(ISKEYDOWN(#K)=1)
      WAITMS(5)
   END_CYC
   IF($lvl > 0)
      INC($lvl,-1)
   END_IF
END_IF //на K -1 лвл мины.

WAITMS(20) // общая задержка

THREAD(t1, 1) // отдельный поток
   
   IF ($mine=0)
      $damage=0
   END_IF
   
   IF ($lvl=0)
      $damage=0
   END_IF
   
   IF ($lvl=1)
      $damage=($Mine*300)-((300/100*25)*$Mine)
   END_IF //если мины 1 лвла то умножмается количевство мин на 200(1лвл)
   
   IF ($lvl=2)
      $damage=($Mine*450)-((450/100*25)*$Mine)
   END_IF //если мины 2 лвла то умножмается количевство мин на 450(2лвл)
   
   IF ($lvl=3)
      $damage=($Mine*600)-((600/100*25)*$Mine)
   END_IF //если мины 3 лвла то умножмается количевство мин на 600(3лвл)
   //Условия подсчёта
   
   LOGCLEAR
   LOGWRITE ("Количевство мин: ", $Mine)
   LOGWRITE ("Уровень мин:     ", $lvl)
   LOGWRITE ("Урон:            ", $damage)
   
   WAITMS(100) // общая задержка потока
   
END_THREAD
Title: Re: Создал считалку урона для игры , немогу доделать .
Post by: maxempolk on June 26, 2017, 04:39:48 PM
мне немного не то нужно было
Code: [Select]
IF (ISKEYDOWN(#U)=1)
   WHILE(ISKEYDOWN(#U)=1)
      WAITMS(5)
   END_CYC
   INC($Mine,1)
   HINTPOPUP($Mine,"Techis(мины)")
   WAIT(1.5)
END_IF   //На U +1 мина

IF (ISKEYDOWN(#I)=1)
   WHILE(ISKEYDOWN(#I)=1)
      WAITMS(5)
   END_CYC
   IF($lvl < 3)
      INC($lvl,1)
      HINTPOPUP($lvl,"Techis(мины)")
      WAIT(1.5)
   END_IF
END_IF //на I +1 лвл мины.

IF (ISKEYDOWN(#J)=1)
   WHILE(ISKEYDOWN(#J)=1)
      WAITMS(5)
   END_CYC
   IF($Mine > 0)
      INC($Mine,-1)
      HINTPOPUP($Mine,"Techis(мины)")
      WAIT(1.5)
   END_IF
END_IF //на J -1 мина
   IF (ISKEYDOWN(#K)=1)
      WHILE(ISKEYDOWN(#K)=1)
         WAITMS(5)
      END_CYC
      IF($lvl > 0)
         INC($lvl,-1)
         HINTPOPUP($lvl,"Techis(мины)")
         WAIT(1.5)
      END_IF
   END_IF //на K -1 лвл мины.
   WAITMS(20) // общая задержка
      IF ($mine=0)
         $damage=0
      END_IF
      IF ($lvl=0)
         $damage=0
      END_IF
      IF ($lvl=1)
         $damage=($Mine*300)-((300/100*25)*$Mine)
      END_IF //если мины 1 лвла то умножмается количевство мин на 200(1лвл)
      IF ($lvl=2)
         $damage=($Mine*450)-((450/100*25)*$Mine)
      END_IF //если мины 2 лвла то умножмается количевство мин на 450(2лвл)
      IF ($lvl=3)
         $damage=($Mine*600)-((600/100*25)*$Mine)
      END_IF //если мины 3 лвла то умножмается количевство мин на 600(3лвл)   
//Условия подсчёта
HINTPOPUP($damage ,"Techis(Сумарный урон мин)")

      WAITMS(100) // общая задержка потока
я переделал
Title: Re: Создал считалку урона для игры , немогу доделать .
Post by: Oraven on June 26, 2017, 05:29:53 PM
Зачем ты поток то удалил? Смысл в том что бы анализировать клавиши каждые 20 мс а инфу выводить гораздо реже
Вот так можно собрать инфу в единую строку и выводить в трей с обновлением каждые 500 мс. При этом клавиши все также будут проверяться каждые 20 мс

Code: (clickermann) [Select]
IF (ISKEYDOWN(#U)=1)
   WHILE(ISKEYDOWN(#U)=1)
      WAITMS(5)
   END_CYC
   INC($Mine,1)
END_IF   //На U +1 мина

IF (ISKEYDOWN(#I)=1)
   WHILE(ISKEYDOWN(#I)=1)
      WAITMS(5)
   END_CYC
   IF($lvl < 3)
      INC($lvl,1)
   END_IF
END_IF //на I +1 лвл мины.

IF (ISKEYDOWN(#J)=1)
   WHILE(ISKEYDOWN(#J)=1)
      WAITMS(5)
   END_CYC
   IF($Mine > 0)
      INC($Mine,-1)
   END_IF
END_IF //на J -1 мина

IF (ISKEYDOWN(#K)=1)
   WHILE(ISKEYDOWN(#K)=1)
      WAITMS(5)
   END_CYC
   IF($lvl > 0)
      INC($lvl,-1)
   END_IF
END_IF //на K -1 лвл мины.

WAITMS(20) // общая задержка

THREAD(t1, 1) // отдельный поток
   
   IF ($mine=0)
      $damage=0
   END_IF
   
   IF ($lvl=0)
      $damage=0
   END_IF
   
   IF ($lvl=1)
      $damage=($Mine*300)-((300/100*25)*$Mine)
   END_IF //если мины 1 лвла то умножмается количевство мин на 200(1лвл)
   
   IF ($lvl=2)
      $damage=($Mine*450)-((450/100*25)*$Mine)
   END_IF //если мины 2 лвла то умножмается количевство мин на 450(2лвл)
   
   IF ($lvl=3)
      $damage=($Mine*600)-((600/100*25)*$Mine)
   END_IF //если мины 3 лвла то умножмается количевство мин на 600(3лвл)
   //Условия подсчёта
   
   HINTPOPUP(STRCONCAT("Кол-во: ", $Mine, " Уровень: ", $lvl, " Урон: ", $damage),"Techis(Урон мин)")
   
   WAITMS(500) // общая задержка потока
   
END_THREAD
Title: Re: Создал считалку урона для игры , немогу доделать .
Post by: maxempolk on June 26, 2017, 09:58:08 PM
У меня не работают твои потоки , удалил ничего не поменялось . Попробовал на всех своих версиях 4.12 , 4.7, 3.X не ввыделяются потоки.
Title: Re: Создал считалку урона для игры , немогу доделать .
Post by: Vint on June 27, 2017, 09:09:43 AM
Потоки появились в версии 4.11.
Какая 4.7 и тем более 3.х