Author Topic: Определение своего местонахождения в на игровом поле  (Read 2914 times)

0 Members and 1 Guest are viewing this topic.

Doda

  • Guest
Глаз замылен, не могу сообразить
[spoiler][/spoiler]
   
как написать простейший скрипт определения своей позиции на поле?
мое местонахождение определяется по красной полоске, окаймляющей ник
теперь надо связать это, с той фирмой на которой нахожусь, в переменную выдавать значение текущей фирмы. я начал писать, но это никуда не годится(66 строк на нижний и верхний ряды фирм, без боковых)

Code: (clickermann) [Select]
GETSCREEN
IF_PICTURE_IN (302,105, 1063,645, "krasnii.bmp", -1, 100)
   
   if  ($_return2<222)
      if  (($_return1>414)& ($_return1<458)) //1
      else
         if  (($_return1>503)& ($_return1<533))
         else
            if  (($_return1>548)& ($_return1<584))
            else
               if  (($_return1>636)& ($_return1<666))
               else
                  if  (($_return1>680)& ($_return1<710))
                     print ("в рекламе")
                  else
                     if  (($_return1>723)& ($_return1<753))
                     else
                        if  (($_return1>813)& ($_return1<836))
                        else
                           if  (($_return1>855)& ($_return1<892))
                           else
                              if  (($_return1>900)& ($_return1<930))
                                 
                              END_IF
                           END_IF
                        END_IF
                     END_IF
                  END_IF
               END_IF
            END_IF
         END_IF
      END_IF
     
   else
      if  ($_return2>527)
         if  (($_return1>414)& ($_return1<458)) //1
         else
            if  (($_return1>503)& ($_return1<533))
            else
               if  (($_return1>548)& ($_return1<584))
               else
                  if  (($_return1>636)& ($_return1<666))
                  else
                     if  (($_return1>680)& ($_return1<710))
                        print ("в рекламе")
                     else
                        if  (($_return1>723)& ($_return1<753))
                        else
                           if  (($_return1>813)& ($_return1<836))
                           else
                              if  (($_return1>855)& ($_return1<892))
                              else
                                 if  (($_return1>900)& ($_return1<930))
                                   
                                 END_IF
                              END_IF
                           END_IF
                        END_IF
                     END_IF
                  END_IF
               END_IF
            END_IF
         END_IF
      END_IF
     
   END_IF
   
   WAITMS(100)
END_IF
« Last Edit: January 14, 2016, 01:04:50 PM by Браm комара »

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Можно сократить условия. Если ты проверяешь слева направо, то проверять переменную на больше ">" нет смысла.
Будем отсекать последовательно.
Если меньше 458, то поле 1.
Дальше проверяем если меньше 533, то поле 2 и т.д.

Code: (clickermann) [Select]
   if  ($_return2 < 222)   // верхний ряд
      if ($_return1 < 458) //1
      else
         if ($_return1 < 533)
         else
            if ($_return1 < 584)
            else
               if ($_return1 < 666)
               else
                  if ($_return1 < 710)
                     print ("в рекламе")
                  else
                     if ($_return1 < 753)
                     else
                        if ($_return1 < 836)
                        else
                           if ($_return1 < 892)
                           else
                              if ($_return1 < 930)
                                 
                              END_IF
                           END_IF
                        END_IF
                     END_IF
                  END_IF
               END_IF
            END_IF
         END_IF
      END_IF
      // и так далее..........

Мне непонятен один вопрос, почему определяем 9 мест в ряду? Ячеек же больше. Или на них не может стоять?
Если может, то нужно обязательно и их определять и соответствующе обрабатывать.

Пока ты с этим определись. Я покажу на том что есть как бы я сделал.
Во первых нужно пронумеровать поля на которых мы стоим, например, от старта по часовой стрелке. Старт это 0.
Можно координаты для сравнивания загнать в массив и сравнивать пробегаясь по массиву. Ну и получая номер поля. Дальше от номера будут зависеть действия.

Вот как, примерно, будет выглядеть для верхней и нижней строк:
Code: (clickermann) [Select]
STRSEPARATE("458:533:584:666:710:753:836:892:930", ":", $pos_coord_X)

GETSCREEN
IF_PICTURE_IN (302,105, 1063,645, "krasnii.bmp")
   $avatar_X = $_return1
   $avatar_Y = $_return2
END_IF

$field = -1
IF($avatar_Y < 222)  // верхний ряд
   FOR($i=0, $i < ARRSIZE($pos_coord_X))
      IF($avatar_X < $pos_coord_X[$i])
         $field = $i + 1
         $i = 100
      END_IF
   END_CYC
ELSE                 //нижний ряд
   FOR($i=0, $i < ARRSIZE($pos_coord_X))
      IF($avatar_X < $pos_coord_X[$i])
         // тут нужно пересчитать индекс в номер поля например:
         $field = 16 + 9 - $i  // 9 вверху+6 справа + инверт низа
         $i = 100
      END_IF
   END_CYC
END_IF

« Last Edit: January 14, 2016, 01:45:27 PM by Vint »


Vint

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

Определяй в начале скрипта, например по флажкам "старт" левый верхний угол всего поля игры.
А в скрипте используй уже смещения от этой точки.
Если одной точки недостаточно (всё плавает или резиновое), можно сделать несколько.


Doda

  • Guest
Насчет жестких координат. берем маячки, и вручную прибавляем к маяку +x1,y2 до цели? вручную долго считать все это..есть ли быстрые способы?

Quote
Если ты проверяешь слева направо, то проверять переменную на больше ">" нет смысла
не сообразил насчет этого,  ведь  if вложенные, и смысла в двух условиях нет

Quote
Мне непонятен один вопрос, почему определяем 9 мест в ряду? Ячеек же больше. Или на них не может стоять?
может стоять на всех клетках, но мне нужно знать лишь на каких фирмах стоит игрок, чтобы знать -покупать или нет фирму, на которую я попадаю, анализируя важность фирмы для меня. Остальные ячейки не требуют особого внимания(например, ячейка налог - дествие -оплатить)

Quote
Во первых нужно пронумеровать поля на которых мы стоим, например, от старта по часовой стрелке. Старт это 0.
нумерация вот такая
Code: (clickermann) [Select]
analiz(424,219,454,219) // кафе    [b] 0[/b]
analiz(512,219,542,219) // бар [b]1[/b]
analiz(557,219,587,219) // ресторан[b] 2
[/b]
analiz(645,219,675,219) // москва   3
analiz(949,359,951,391)  //киев 4
analiz(689,532,719,532)  //париж 5
analiz(416,359,417,391)  //лондон  6

analiz(689,219,719,219) //рекл.агенство  7
analiz(733,219,763,219) //модельное агенство
analiz(822,219,852,219)  //турагенство  9

analiz(866,219,896,219) //радиостанция  10
analiz(910,219,940,219) //телецентр   11

analiz(416,227,417,257) //алм.прииск 12
analiz(416,315,417,347)  //зол.прииск  13

analiz(416,404,417,434) //карибы  14
analiz(416,448,417,478) //таити
analiz(416,492,417,522) //фиджи 16

analiz(424,532,454,532)  //газ.компания 17
analiz(468,532,498,532) //н.компания  18

analiz(512,532,542,532)  //авиакомпания  19
analiz(601,532,631,532) //автом.компания
analiz(645,532,675,532)  //судостроит.компания  21

analiz(777,532,807,532)  //футб.клуб  22
analiz(822,532,852,532)  //бакс.команда
analiz(910,532,940,532)  //хокк.команда 24

analiz(949,227,951,257)  //табачная фабрика 25
analiz(949,271,951,301)  //пиповарня
analiz(949,315,952,347) //спиртзавод 27

analiz(950,404,952,434) //ночной клуб  28
analiz(950,492,952,522) //казино   29
« Last Edit: January 14, 2016, 02:28:02 PM by Браm комара »

Doda

  • Guest
Вот код на определение важности фирмы для покупки.  он  работает примитивно(неплохо бы добавить анализ суммы денег на счету, но это уже нереально для меня), но хоть работает

Code: (clickermann) [Select]
if ($start=0) //маячок игры
   GETSCREEN
   IF_PICTURE_IN (447,240, 516,257, "chat.bmp", -1, 100)
      $start=1
     
      WAITMS(100)
   END_IF
END_IF

if ($start=1)
   if ($mynomer=0)//если игра включена, а цвет моей фишки неопределен, то определеяем
      GETSCREEN
      IF_PIXEL_IN(519,233, 927,257, 4277214)
         $mynomer="cun" //смотрим  окошко чата, какого цвета нету, тот значит мой
      else
         IF_PIXEL_IN(519,233, 927,257, 16490549)
            $mynomer="kras"
            WAITMS(100)
         END_IF
      END_IF
   END_IF
END_IF

//$krasn[0]=12303604
//$krasn[1]=15132667
//$sin[0]=16571048
//$sin[1]=16708320
//$zelen[0]=7338922
//$zelen[1]=13369056
//$zhelt[0]=8257535
//$zhelt[1]=13697023
//$roz[0]=14796284
//$roz[1]=16050942
//$bel[0]=14013909

$cvet[0] = 12303604 //красн
$cvet[1] = 16571048 // синий
$cvet[2] = 8257535  //желтый
$cvet[3] = 7338922 // зеленый
$cvet[4] = 14796284 // розовый
$cvet[5] = 13697023 //з.желт
$cvet[6] = 16708320// заложенный.синий
$cvet[7] = 15132667 // з.красн
$cvet[8] = 16050942// з.роз
$cvet[9] = 13369056 // з.зел
$cvet[10] =14013909 //  белый

SUB(analiz,$pxl_x1,$pxl_y1,$pxl_x2,$pxl_y2)
   GETSCREEN
   FOR($e=0,$e<11)
      IF_PIXEL_IN($pxl_x1,$pxl_y1, $pxl_x2,$pxl_y2,  $cvet[$e])//  прогоняем все цвета и записываем совпадения
         ARRPUSH($firma, $cvet[$e]) ////заносим в массив фирма  совпадения
         $e=11   // на заложенных может быть белый цвет, чтобы не занести в массив лишнй белый, белый цвет  отодвигаем к онец поиска, а при нахождении цвета break цикл
      END_IF
   END_CYC
END_SUB

analiz(424,219,454,219) // кафе     0    //смотриим что какого цвета у нас
analiz(512,219,542,219) // бар
analiz(557,219,587,219) // ресторан 2
//это блоки фирм, собрав блок полностью можно прокачивать каждый дом, для увеличения своей прибыли
analiz(645,219,675,219) // москва   3
analiz(949,359,951,391)  //киев
analiz(689,532,719,532)  //париж
analiz(416,359,417,391)  //лондон  6

analiz(689,219,719,219) //рекл.агенство  7
analiz(733,219,763,219) //модельное агенство
analiz(822,219,852,219)  //турагенство  9

analiz(866,219,896,219) //радиостанция  10
analiz(910,219,940,219) //телецентр   11

analiz(416,227,417,257) //алм.прииск 12
analiz(416,315,417,347)  //зол.прииск  13

analiz(416,404,417,434) //карибы  14
analiz(416,448,417,478) //таити
analiz(416,492,417,522) //фиджи 16

analiz(424,532,454,532)  //газ.компания 17
analiz(468,532,498,532) //н.компания  18

analiz(512,532,542,532)  //авиакомпания  19
analiz(601,532,631,532) //автом.компания
analiz(645,532,675,532)  //судостроит.компания  21

analiz(777,532,807,532)  //футб.клуб  22
analiz(822,532,852,532)  //бакс.команда
analiz(910,532,940,532)  //хокк.команда 24

analiz(949,227,951,257)  //табачная фабрика 25
analiz(949,271,951,301)  //пиповарня
analiz(949,315,952,347) //спиртзавод 27

analiz(950,404,952,434) //ночной клуб  28
analiz(950,492,952,522) //казино   29


if ($mynomer="cun")  //если цвет нашей фишки синий, обозначаем какие цвета мои, какие вражеские. добавляем в мой массив синий, во вражеский - красные цвета
   $pustoi=14013909
   $moi[0]=16571048  //купленная моя
   $moi[1]=16708320  //заложенная моя
   $vrag[0]=12303604
   $vrag[1]=15132667
end_if

if ($mynomer="kras")
   $pustoi=14013909
   $moi[0]=12303604
   $moi[1]=15132667
   $vrag[0]=16571048
   $vrag[1]=16708320
end_if
 
sub(pole, $firms)  // подпрограмма, поле, перменная фирмс
   SWITCH($firms) // в вызове указать от 1 до 10
   CASE(1)    //если  входной равен 1
      $u1=0     //огда анализируем блок:кафе, ресторан, кофейня
      $u2=3
   CASE(2)    //если  входной равен 2
      $u1=7
      $u2=10
   CASE(3)
      $u1=10
      $u2=12
   CASE(4)
      $u1=12
      $u2=14
   CASE(5)
      $u1=14
      $u2=17
   CASE(6)
      $u1=17
      $u2=19
   CASE(7)
      $u1=19
      $u2=22
   CASE(8)
      $u1=22
      $u2=25
   CASE(9)
      $u1=25
      $u2=28
   CASE(10)
      $u1=28
      $u2=30
   DEFAULT
   END_SWITCH
   
   for ($o=$u1, $o<$u2)//крутим ндексы массива фирма, по блокам монополий
      $q=$firma[$o]
      if ($pustoi=$q) // если находим пустую фирму,
         $p=1    //переменную увеличиваем
            arrpush($pp, $o)  //добавляем в массив индекс массива фирмА, для использорвания в дальнейшем
      end_if
      if (($moi[0]=$q)|($moi[1]=$q))  ///то же самое
         $m=1
         arrpush($mm, $o)
      end_if
      if (($vrag[0]=$q)|($vrag[1]=$q))
         $v=1
         arrpush($vv, $o)
      end_if
   end_cyc
   
   if ($p=1)  //анализ важности фирм
      if  ($m=1)
         if    ($v=1)
            //           print("не надо брать.потратишь впустую деньги")
            //это блок ненужных!!!
            //блок закладывания
            for($k=0, $k<arrsize($pp))
               arrpush($low, ($pp[$k]))
            end_cyc
            for($k=0, $k<arrsize($mm)) 
               arrpush($sale, ($mm[$k]))
            end_cyc
         else
           
            //  print("бери, для полной коллекции")
            //блок нужных!!!
            for($k=0, $k<arrsize($pp))
               arrpush($high, ($pp[$k]))
            end_cyc
            //end_cyc
         end_if
      else
         if    ($v=1)
            //   print("моих нет, бери, чтобы враг не развивал монополию")
            //блок нужных!!
            for($k=0, $k<arrsize($pp))
               arrpush($high, ($pp[$k]))
            end_cyc
           
            UNDEFINE($pp)
         else
            //         print("все пусто")
            for($k=0, $k<arrsize($pp))
               arrpush($high, ($pp[$k]))
            end_cyc
           
            //блок нужных
         end_if
      end_if
   else
      if  ($m=1)
         if    ($v=1)
            //           print("поровну с врагом")
            for($k=0, $k<arrsize($mm))
               arrpush($sale, ($mm[$k]))
            end_cyc
           
            //блок закладывания
         else
            print("все мое")
            //блок постройки фирм
            for($k=0, $k<arrsize($mm))
               arrpush($proect, ($mm[$k]))
            end_cyc
         end_if
      else
         //         print("все у противника")
      end_if
   end_if
   UNDEFINE($v)
   UNDEFINE($m)
   UNDEFINE($p)
   
   //создать 4 массива. важные для покупки. ненужные покупки. закладывание фирм, блок постройки(4)
   
end_sub
sub(clean)
   UNDEFINE($vv)
   UNDEFINE($mm)
   UNDEFINE($pp)
end_sub
//print("общепит")
Pole(1)
clean()
//print("реклама")
Pole(2)
clean()
//print("радио")
Pole(3)
clean()
//print("прииск")
Pole(4)
clean()
//print("острова")
Pole(5)
clean()
//print("нефть")
Pole(6)
clean()
//print("транспорт")
Pole(7)
clean()
//print("спорт")
Pole(8)
clean()
//print("завод")
Pole(9)
clean()
//print("клубы")
Pole(10)
clean()
UNDEFINE($firma)
for($k=0, $k<arrsize($proect)) //
   //  print($proect[$k],"стройк")
end_cyc
for($k=0, $k<arrsize($low))
   //   print($low[$k],"неважн")
end_cyc
for($k=0, $k<arrsize($high))
   //  print($high[$k],"важн")
end_cyc
for($k=0, $k<arrsize($sale))
   // print($sale[$k],"заклад")
end_cyc

halt

Исходя из того на какую клетку попадаем, оцениваем важность и далее предпринимаем действия: купить,  отказаться.  Закладывание ненужных фирм и постройка монополий
« Last Edit: January 14, 2016, 02:53:13 PM by Браm комара »

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Насчет жестких координат. берем маячки, и вручную прибавляем к маяку +x1,y2 до цели? вручную долго считать все это..есть ли быстрые способы?
Да вагон. Мне проще делать скрин и в просмотрщике XnViev вижу любые координаты и расстояния.
Вот этой прогой тоже очень удобно
InqSoft Window Scanner
http://crapware.aidf.org/forum/index.php?topic=42.msg572#msg572
Можно написать минискриптик на том же кликермэне. Будет искать твою опорную точку и по кликам выводит/сохранять уже сами смещения от неё.
Я пользуюсь всеми тремя.

может стоять на всех клетках, но мне нужно знать лишь на каких фирмах стоит игрок, чтобы знать -покупать или нет фирму, на которую я попадаю, анализируя важность фирмы для меня. Остальные ячейки не требуют особого внимания(например, ячейка налог - дествие -оплатить)
Если может стоять везде то и пронумеровать и определять нужно все. Иначе нужно проверять как ты делал <>.
Просто обрабатывать только нужные остальные игнорить, или там ход пропускать... не знаю что в игре делать нужно.

нумерация вот такая
...

Ну раз у тебя уже пронумеровано и остальным полям номера не даны, тогда или не упрощать условия.
Или перенумеровать. Если там уже куча кода написано о котором ты не упомянул... можно сделать по новому определить позицию и перенумеровать через CASE... Даже так и надо! Только увидел что они у тебя по типам, а не по порядку.


Doda

  • Guest
Quote
перенумеровать через CASE
Отличная мысль! 40 клеток всего, переменная $kletka -  если на старте, то =0, и так далее, по кругу(пример ниже может содержать ошибки, так как набросан на коленке))
Code: (clickermann) [Select]
switch($kletka)
case(0)
//ничего не делаем
case(1)//если на первой фирме кафе
sub(polojhenie, $now)
switch($now)
case(0)
$rew=$firma[0]
end_switch

for($k=0, $k<arrsize($low))
if $rew=$low[$k]//если фирма в списке неважных для покупки
 IF_PICTURE_IN (447,240, 516,257, "отказаться.bmp", -1, 100)//то отказыываемся
  //  кликаем по кнопке отказа
 WAITMS(100)
   END_IF
end_if
end_cyc
for($k=0, $k<arrsize($low))
if $rew=$high[$k]//если фирма в списке важных для покупки
 IF_PICTURE_IN (447,240, 516,257, "покупка.bmp", -1, 100)//то покупаем
  //  кликаем по кнопке покупка
 WAITMS(100)
   END_IF
end_if
end_cyc
end_sub

//и так все остальные кейсы.
end_switch
 





« Last Edit: January 14, 2016, 04:18:01 PM by Браm комара »

Doda

  • Guest
Сделал, сейчас довожу до ума.. единственное гонит слегка. 8 раз прогоняет скрипт, пишет правильно - 23, потом зацикливается и выдает 122
решил! было переполнение массива

Code: (clickermann) [Select]
14:38:39 ----------
14:38:39 23
14:38:39 ----------
14:38:39 23
14:38:39 ----------
14:38:39 23
14:38:40 ----------
14:38:40 23
14:38:40 ----------
14:38:40 23
14:38:40 ----------
14:38:40 23
14:38:40 ----------
14:38:40 23
14:38:41 ----------
14:38:41 23
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122
14:38:41 122

Code: (clickermann) [Select]
if ($massiv=0)
   STRSEPARATE("418:461:506:550:594:639:683:727:771:816:859:903:947:1065", ":", $pos_coord_X1)
   STRSEPARATE("264:309:354:397:441:486:529", ":", $pos_coord_y1)
   STRSEPARATE("948:903:859:816:771:727:683:639:595:550:506:462:418:302", ":", $pos_coord_x2)
   STRSEPARATE("486:442:397:353:309:264:221", ":", $pos_coord_y2) \
   $massiv=0
End_if

GETSCREEN
IF_PICTURE_IN (302,105, 1063,645, "krasnii.bmp")   //ищем красный
   $avatar_X = $_return1  //обзываем возврат аватаром_х
   $avatar_Y = $_return2
   print("----------")
END_IF

$field = -1    // хз
IF($avatar_Y < 222)  // верхний ряд
   FOR($i=0, $i < ARRSIZE($pos_coord_X1)) // от первого элемента массива по последний
      IF($avatar_X < $pos_coord_X1[$i])  //если  аватар меньше чем прописанная координата
         $field = $i + 1  //то файлд равен позиции на которой стою. пример, я на 7 клетке,  0123456. это 7 элемент массива,   файлд= 6
         $i = 100  //прерываем
      END_IF
   END_CYC
else
   IF($avatar_Y > 529)  // верхний ряд
      FOR($i=0, $i < ARRSIZE($pos_coord_X2)) // от первого элемента массива по последний
         IF($avatar_X > $pos_coord_X2[$i])  //если  аватар , больше чем прописанная координата
            $field = $i + 21  //то файлд равен позиции на которой стою. пример, я на 7 клетке,  0123456. это 7 элемент массива,   файлд= 6
            $i = 100  //прерываем
            print($field)
         END_IF
      END_CYC
   END_IF
END_IF

IF($avatar_X > 948)                 //нижний ряд
   FOR($i=0, $i < ARRSIZE($pos_coord_y1))
      IF($avatar_Y < $pos_coord_y1[$i])
         $field = 14+$i
         // тут нужно пересчитать индекс в номер поля например:
         //      $field = 16 + 9 - $i  // 9 вверху+6 справа + инверт низа
         $i = 100
      END_IF
   END_CYC
else
   IF($avatar_X < 417)                 //нижний ряд
      FOR($i=0, $i < ARRSIZE($pos_coord_y2))
         IF($avatar_Y > $pos_coord_y2[$i])
            $field = 35+$i
            // тут нужно пересчитать индекс в номер поля например:
            //      $field = 16 + 9 - $i  // 9 вверху+6 справа + инверт низа
            $i = 100
         END_IF
      END_CYC
   END_IF
END_IF
« Last Edit: January 16, 2016, 12:19:26 PM by Браm комара »

Doda

  • Guest
Quote
Можно написать минискриптик на том же кликермэне. Будет искать твою опорную точку и по кликам выводит/сохранять уже сами смещения от неё.

Например: нашли опорную точку, затем, кликаем где-то в с тороне. вот как отследить этот клик?  нигде не нашел

Doda

  • Guest
Code: (clickermann) [Select]
GETSCREEN

WHILE ($xtime<$_time_t)
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "krasn.bmp", -1, 100)
      $red=1
   END_IF
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sin.bmp", -1, 100)
      $blue=1
   END_IF
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "zhelt.bmp", -1, 100)
      $yellow=1
   END_IF
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "zelen.bmp", -1, 100)
      $green=1
   END_IF
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "roz.bmp", -1, 100)
      $pink=1
     
   END_IF
   $xtime= $_time_t+600
   print ($xtime)
   print($_time_t)
   
   
end_cyc

//if ($start=1)
if ($mynomer=0)//???? ???? ????????, ? ???? ???? ????? ???????????, ?? ???????????
   GETSCREEN
   IF_PIXEL_IN(519,233, 927,257, 4277214)
      $mynomer="cun" //???????  ?????? ????, ?????? ????? ????, ??? ?????? ???
   else
      IF_PIXEL_IN(519,233, 927,257, 16490549)
         $mynomer="kras"
         WAITMS(100)
      END_IF
   END_IF
END_IF


//$krasn[0]=12303604
//$krasn[1]=15132667
//$sin[0]=16571048
//$sin[1]=16708320
// //$zhelt[0]=8257535
//$zhelt[1]=13697023
//$zelen[0]=7338922
//$zelen[1]=13369056
//$roz[0]=14796284
//$roz[1]=16050942
//$bel[0]=14013909

$_ms1= $_ms

$cvet[0] = 12303604 //êðàñ
$cvet[1] = 15132667 // ç êð
$cvet[2] = 16571048 // ñèíèé
$cvet[3] = 16708320// çñèí
$cvet[4] = 8257535  //æ
$cvet[5] = 13697023 //çæ
$cvet[6] = 7338922 // çåë
$cvet[7] = 13369056 // ççåë
$cvet[8] = 14796284 // ðîç
$cvet[9] = 16050942// çðîç
$cvet[10] =14013909 //  áåë





SUB(analiz,$pxl_x1,$pxl_y1,$pxl_x2,$pxl_y2)
   GETSCREEN
   
   FOR($e=0,$e<11)
      if ( $red=1)
         if (($e=0)|($e=1))
            IF_PIXEL_IN($pxl_x1,$pxl_y1, $pxl_x2,$pxl_y2,  $cvet[$e])
               ARRPUSH($firma, $cvet[$e])
               //  print($cvet[$e])
               $e=11
               
            END_IF
         END_IF
         
      END_IF
     
      if ( $blue=1)
         if (($e=2)|($e=3))
            IF_PIXEL_IN($pxl_x1,$pxl_y1, $pxl_x2,$pxl_y2,  $cvet[$e])
               ARRPUSH($firma, $cvet[$e])
               // print($cvet[$e])
               $e=11
               
            END_IF
         END_IF
         
         
      END_IF
      if ($yellow=1)
         if (($e=4)|($e=5))
           
            IF_PIXEL_IN($pxl_x1,$pxl_y1, $pxl_x2,$pxl_y2,  $cvet[$e])
               ARRPUSH($firma, $cvet[$e])
               //  print($cvet[$e])
               $e=11
            END_IF
         END_IF
         
      END_IF
      if ($green=1)
         if (($e=6)|($e=7))
           
            IF_PIXEL_IN($pxl_x1,$pxl_y1, $pxl_x2,$pxl_y2,  $cvet[$e])
               ARRPUSH($firma, $cvet[$e])
               //print($cvet[$e])
               $e=11
               
            END_IF
         END_IF
         
         
      END_IF
      if ($pink=1 )
         if (($e=8)|($e=9))
           
            IF_PIXEL_IN($pxl_x1,$pxl_y1, $pxl_x2,$pxl_y2,  $cvet[$e])
               ARRPUSH($firma, $cvet[$e])
               //print($cvet[$e])
               // $e=11
            END_IF
         END_IF
         
      END_IF
      if ($e=10)
         
         IF_PIXEL_IN($pxl_x1,$pxl_y1, $pxl_x2,$pxl_y2,  $cvet[$e])
            ARRPUSH($firma, $cvet[$e])
            //  print($cvet[$e])
            $e=11
         END_IF
      END_IF
   END_CYC
END_SUB
UNDEFINE($firma)

analiz(424,219,454,219) // êàôå     0    //ñìîòðèèì ÷òî êàêîãî öâåòà ó íàñ
analiz(512,219,542,219) // áàð
analiz(557,219,587,219) // ðåñòîðàí 2
//ýòî áëîêè ôèðì, ñîáðàâ áëîê ïîëíîñòüþ ìîæíî ïðîêà÷èâàòü êàæäûé äîì, äëÿ óâåëè÷åíèÿ ñâîåé ïðèáûëè
analiz(645,219,675,219) // ìîñêâà   3
analiz(949,359,951,391)  //êèåâ
analiz(689,532,719,532)  //ïàðèæ
analiz(416,359,417,391)  //ëîíäîí  6

analiz(689,219,719,219) //ðåêë.àãåíñòâî  7
analiz(733,219,763,219) //ìîäåëüíîå àãåíñòâî
analiz(822,219,852,219)  //òóðàãåíñòâî  9

analiz(866,219,896,219) //ðàäèîñòàíöèÿ  10
analiz(910,219,940,219) //òåëåöåíòð   11

analiz(416,227,417,257) //àëì.ïðèèñê 12
analiz(416,315,417,347)  //çîë.ïðèèñê  13

analiz(416,404,417,434) //êàðèáû  14
analiz(416,448,417,478) //òàèòè
analiz(416,492,417,522) //ôèäæè 16

analiz(424,532,454,532)  //ãàç.êîìïàíèÿ 17
analiz(468,532,498,532) //í.êîìïàíèÿ  18

analiz(512,532,542,532)  //àâèàêîìïàíèÿ  19
analiz(601,532,631,532) //àâòîì.êîìïàíèÿ
analiz(645,532,675,532)  //ñóäîñòðîèò.êîìïàíèÿ  21

analiz(777,532,807,532)  //ôóòá.êëóá  22
analiz(822,532,852,532)  //áàêñ.êîìàíäà
analiz(910,532,940,532)  //õîêê.êîìàíäà 24

analiz(949,227,951,257)  //òàáà÷íàÿ ôàáðèêà 25
analiz(949,271,951,301)  //ïèïîâàðíÿ
analiz(949,315,952,347) //ñïèðòçàâîä 27

analiz(950,404,952,434) //íî÷íîé êëóá  28
analiz(950,492,952,522) //êàçèíî   29
print($_ms-$_ms1)
$_ms2= $_ms
if ($my=0)
   if ($mynomer="cun")  //åñëè öâåò íàøåé ôèøêè ñèíèé, îáîçíà÷àåì êàêèå öâåòà ìîè, êàêèå âðàæåñêèå. äîáàâëÿåì â ìîé ìàññèâ ñèíèé, âî âðàæåñêèé - êðàñíûå öâåòà
      $pustoi=14013909
      $moi[0]=16571048  //êóïëåííàÿ ìîÿ
      $moi[1]=16708320  //çàëîæåííàÿ ìîÿ
      $vrag[0]=12303604
      $vrag[1]=15132667
     
   end_if
   
   if ($mynomer="kras")
      $pustoi=14013909
      $moi[0]=12303604
      $moi[1]=15132667
      $vrag[0]=16571048
      $vrag[1]=16708320
   end_if
   $my=1
end_if

sub(pole, $firms)  // ïîäïðîãðàììà, ïîëå, ïåðìåííàÿ ôèðìñ
   SWITCH($firms) // â âûçîâå óêàçàòü îò 1 äî 10
   CASE(1)    //åñëè  âõîäíîé ðàâåí 1
      $u1=0     //îãäà àíàëèçèðóåì áëîê:êàôå, ðåñòîðàí, êîôåéíÿ
      $u2=3
   CASE(2)    //åñëè  âõîäíîé ðàâåí 2
      $u1=7
      $u2=10
   CASE(3)
      $u1=10
      $u2=12
   CASE(4)
      $u1=12
      $u2=14
   CASE(5)
      $u1=14
      $u2=17
   CASE(6)
      $u1=17
      $u2=19
   CASE(7)
      $u1=19
      $u2=22
   CASE(8)
      $u1=22
      $u2=25
   CASE(9)
      $u1=25
      $u2=28
   CASE(10)
      $u1=28
      $u2=30
   DEFAULT
   END_SWITCH
   
   for ($o=$u1, $o<$u2)//êðóòèì íäåêñû ìàññèâà ôèðìà, ïî áëîêàì ìîíîïîëèé
      $q=$firma[$o]
      if ($pustoi=$q) // åñëè íàõîäèì ïóñòóþ ôèðìó,
         $p=1    //ïåðåìåííàÿ åäèíè÷êà
         arrpush($pp, $o)  //äîáàâëÿåì â ìàññèâ èíäåêñ ìàññèâà ôèðìÀ, äëÿ èñïîëüçîðâàíèÿ â äàëüíåéøåì
      end_if
      if (($moi[0]=$q)|($moi[1]=$q))  ///òî æå ñàìîå
         $m=1
         arrpush($mm, $o)
      end_if
      if (($vrag[0]=$q)|($vrag[1]=$q))
         $v=1
         arrpush($vv, $o)
      end_if
   end_cyc
   
   if ($p=1)  //àíàëèç âàæíîñòè ôèðì
      if  ($m=1)
         if    ($v=1)
            //           print("íå íàäî áðàòü.ïîòðàòèøü âïóñòóþ äåíüãè")
            //ýòî áëîê íåíóæíûõ!!!
            //áëîê çàêëàäûâàíèÿ
            for($k=0, $k<arrsize($pp))
               arrpush($low, ($pp[$k]))
            end_cyc
            for($k=0, $k<arrsize($mm))
               arrpush($sale, ($mm[$k]))
            end_cyc
            for($k=0, $k<arrsize($vv))
               arrpush($arend, ($vv[$k]))
            end_cyc
         else
           
            //  print("áåðè, äëÿ ïîëíîé êîëëåêöèè")
            //áëîê íóæíûõ!!!
            for($k=0, $k<arrsize($pp))
               arrpush($high, ($pp[$k]))
            end_cyc
            //end_cyc
         end_if
      else
         if    ($v=1)
            //   print("ìîèõ íåò, áåðè, ÷òîáû âðàã íå ðàçâèâàë ìîíîïîëèþ")
            //áëîê íóæíûõ!!
            for($k=0, $k<arrsize($pp))
               arrpush($high, ($pp[$k]))
            end_cyc
            for($k=0, $k<arrsize($vv))
               arrpush($arend, ($vv[$k]))
            end_cyc
           
         else
            //         print("âñå ïóñòî")
            for($k=0, $k<arrsize($pp))
               arrpush($high, ($pp[$k]))
            end_cyc
           
            //áëîê íóæíûõ
         end_if
      end_if
   else
      if  ($m=1)
         if    ($v=1)
            //           print("ïîðîâíó ñ âðàãîì")
            for($k=0, $k<arrsize($mm))
               arrpush($sale, ($mm[$k]))
            end_cyc
            for($k=0, $k<arrsize($vv))
               arrpush($arend, ($vv[$k]))
            end_cyc
            //áëîê çàêëàäûâàíèÿ
         else
            print("âñå ìîå")
            //áëîê ïîñòðîéêè ôèðì
            for($k=0, $k<arrsize($mm))
               arrpush($proect, ($mm[$k]))
            end_cyc
         end_if
      else
         for($k=0, $k<arrsize($vv))
            arrpush($arend, ($vv[$k]))
         end_cyc  //         print("âñå ó ïðîòèâíèêà")
      end_if
   end_if
   UNDEFINE($v)
   UNDEFINE($m)
   UNDEFINE($p)
   UNDEFINE($vv)
   UNDEFINE($mm)
   UNDEFINE($pp)
   //ñîçäàòü 4 ìàññèâà. âàæíûå äëÿ ïîêóïêè. íåíóæíûå ïîêóïêè. çàêëàäûâàíèå ôèðì, áëîê ïîñòðîéêè(4)
   
end_sub
UNDEFINE($proect)
UNDEFINE($arend)
UNDEFINE($low)
UNDEFINE($high)
UNDEFINE($sale)
//print("îáùåïèò")
Pole(1)
//print("ðåêëàìà")
Pole(2)
//print("ðàäèî")
Pole(3)
//print("ïðèèñê")
Pole(4)
//print("îñòðîâà")
Pole(5)
//print("íåôòü")
Pole(6)
//print("òðàíñïîðò")
Pole(7)
//print("ñïîðò")
Pole(8)
//print("çàâîä")
Pole(9)
//print("êëóáû")
Pole(10)

for($k=0, $k<arrsize($proect)) //
   print($proect[$k],"ñòðîéê")
end_cyc
for($k=0, $k<arrsize($low))
   print($low[$k],"íåâàæí")
end_cyc
for($k=0, $k<arrsize($high))
   print($high[$k],"âàæí")
end_cyc
for($k=0, $k<arrsize($sale))
   print($sale[$k],"çàêëàä")
end_cyc
print($_ms-$_ms2)

if ($massiv=0)
   STRSEPARATE("418:461:506:550:594:639:683:727:771:816:859:903:947:1065", ":", $pos_coord_X1)
   STRSEPARATE("264:309:354:397:441:486:529", ":", $pos_coord_y1)
   STRSEPARATE("948:903:859:816:771:727:683:639:595:550:506:462:418:302", ":", $pos_coord_x2)
   STRSEPARATE("486:442:397:353:309:264:221", ":", $pos_coord_y2)
   $massiv=1
End_if

$_ms3=$_ms2

GETSCREEN
if ($mynomer="kras")
   IF_PICTURE_IN (302,105, 1063,645, "krasn.bmp")   //èùåì êðàñíûé
      $avatar_X = $_return1  //îáçûâàåì âîçâðàò àâàòàðîì_õ
      $avatar_Y = $_return2
      print("----------")
     
   END_IF
else
   if ($mynomer="cun")
      IF_PICTURE_IN (302,105, 1063,645, "sin.bmp")   //èùåì êðàñíûé
         $avatar_X = $_return1  //îáçûâàåì âîçâðàò àâàòàðîì_õ
         $avatar_Y = $_return2
         print("----------")
         
      END_IF
   END_IF
END_IF
IF($avatar_Y < 222)  // âåðõíèé ðÿä
   FOR($i=0, $i < ARRSIZE($pos_coord_X1)) // îò ïåðâîãî ýëåìåíòà ìàññèâà ïî ïîñëåäíèé
      IF($avatar_X < $pos_coord_X1[$i])  //åñëè  àâàòàð ìåíüøå ÷åì ïðîïèñàííàÿ êîîðäèíàòà
         $field = $i   //òî ôàéëä ðàâåí ïîçèöèè íà êîòîðîé ñòîþ. ïðèìåð, ÿ íà 7 êëåòêå,  0123456. ýòî 7 ýëåìåíò ìàññèâà,   ôàéëä= 6
         $i = 100  //ïðåðûâàåì
         print($field)
      END_IF
   END_CYC
else
   IF($avatar_Y > 529)  // âåðõíèé ðÿä
      FOR($i=0, $i < ARRSIZE($pos_coord_X2)) // îò ïåðâîãî ýëåìåíòà ìàññèâà ïî ïîñëåäíèé
         IF($avatar_X > $pos_coord_X2[$i])  //åñëè  àâàòàð , áîëüøå ÷åì ïðîïèñàííàÿ êîîðäèíàòà
            $field = $i + 21  //òî ôàéëä ðàâåí ïîçèöèè íà êîòîðîé ñòîþ. ïðèìåð, ÿ íà 7 êëåòêå,  0123456. ýòî 7 ýëåìåíò ìàññèâà,   ôàéëä= 6
            $i = 100  //ïðåðûâàåì
            print($field)
         END_IF
      END_CYC
   END_IF
END_IF

IF($avatar_X > 948)                 //íèæíèé ðÿä
   FOR($i=0, $i < ARRSIZE($pos_coord_y1))
      IF($avatar_Y < $pos_coord_y1[$i])
         $field = 14+$i
         // òóò íóæíî ïåðåñ÷èòàòü èíäåêñ â íîìåð ïîëÿ íàïðèìåð:
         //      $field = 16 + 9 - $i  // 9 ââåðõó+6 ñïðàâà + èíâåðò íèçà
         $i = 100
         print($field)
      END_IF
   END_CYC
else
   IF($avatar_X < 417)                 //íèæíèé ðÿä
      FOR($i=0, $i < ARRSIZE($pos_coord_y2))
         IF($avatar_Y > $pos_coord_y2[$i])
            $field = 35+$i
            // òóò íóæíî ïåðåñ÷èòàòü èíäåêñ â íîìåð ïîëÿ íàïðèìåð:
            //      $field = 16 + 9 - $i  // 9 ââåðõó+6 ñïðàâà + èíâåðò íèçà
            $i = 100
            print($field)
         END_IF
      END_CYC
   END_IF
END_IF
print($_ms-$_ms3," ìóð")





if ($mynomer="cun")
   $noxodme1=  3014841
   $noxodme2=  1507421
   $xodme1= 16215040
   $xodme2=  8140288
else
   if ($mynomer="kras")
      $noxodme1= 16215040
      $noxodme2= 8140288
      $xodme1= 3014841
      $xodme2=  1507421
   END_IF
END_IF

//íèæå èíäèêàòîð.
GETSCREEN
IF_PIXEL_IN(524,660,835,686, $xodme1)// ìîé õîä
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "brosok.bmp", -1, 100)
      if (arrsize($proect)<1)
         if ($field!13)
            LCLICK($_return1, $_return2)
            MOVE(1365,290)
            WAITMS(100)
         END_IF
      END_IF
   END_IF
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "oplata.bmp", -1, 100)
      if (($field=2)|($field=9)|($field=19)|($field=23)|($field=30)|($field=40))
         LCLICK($_return1, $_return2)
         MOVE(1365,290)
         WAITMS(100)
      else
         for($k=0, $k<arrsize($arend))
            if ($field=$arend[$k])
               LCLICK($_return1, $_return2)
               MOVE(1365,290)
               $k=100
            END_IF
         end_cyc
      END_IF
   END_IF
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "kupit.bmp", -1, 100)
      for($k=0, $k<arrsize($high))
         if ($field=$high[$k])
            LCLICK($_return1, $_return2)
            MOVE(1365,290)
            $k=100
         END_IF
      end_cyc
   END_IF
END_IF
//else
//   IF_PIXEL_IN(524,660,835,686, $noxodme2)//íå ìîé õîä àêöèîí
//      WAITMS(1000)
//   else
//      IF_PIXEL_IN(524,660,835,686, $xodme1)//ÿ õîæó
//         $xozhu=1
//         WAITMS(1000)
//      else
//         IF_PIXEL_IN(524,660,835,686, $xodme2)//ÿ õîæó
//            $xozhu=1
//            WAITMS(1000)
//         END_IF
//      END_IF
//   END_IF
//END_IF
////äåéñòâèå ïðè ìîåì õîäå.
//if ($xozhu=1)
//   GETSCREEN
//   IF_PIXEL_IN(297,46,994,92, 234206)
//      LOGWRITE ("ìîé õîä")
//      WAITMS(1000)
//   else
//      IF_PIXEL_IN(297,46,994,92, 827129)
//         LOGWRITE ("ìîé õîä")
//         WAITMS(1000)
//      else
//         IF_PIXEL_IN(297,46,994,92, 350078)
//            LOGWRITE ("ìîé õîä")
//            WAITMS(1000)
//         else
//            IF_PIXEL_IN(297,46,994,92, 84591)
//               LOGWRITE ("ìîé õîä")
//               WAITMS(1000)
//            END_IF
//         END_IF
//      END_IF
//   END_IF
//END_IF

Вот что вышло. позже допилю, а пока скидываю может кому надо.

Doda

  • Guest
Принцип:
1.  смотрим кто играет(чтобы не проверять лишние цвета на поле, включаем таймер на 10 минут
2. проверяем через чат какого цвета нет -  и присваиваем себе
3. анализ всех клеток,  че кого,  выводим всю ифу в массив фирма
4. смотрим мой цвет,  вводим 3 массива:пустые фирмы, мои, врага
5. через саб  прокручиваем каждый филиал(по 2-3 фирмы), проверяем,   важность фирмы, нужно ли покупать/закладывать ,строить, кидать на аукцион
6. проверка   где находится моя фишка на поле
7. смотрим, если мой ход, то ... Вот здесь у меня косяки пошли с  иерархией кода, ну и соотвтествием  позиции и фирмы.  массив фирмы - из 30, а  позиций 42)) чет подтупливаю

Doda

  • Guest
через кейс можно прикрутить   соответствия. а еще вопрос, если экран тухнет, то тухнут все  цвета фирмы(бывает при аукционах). получается что 3 цвета, которые мы указали для определения фирмы - их не хватает.  и кликер вылетает с ошибкой

Code: (clickermann) [Select]
GETSCREEN
IF_PIXEL_IN(524,660,835,686, $xodme1)// видим, что наш ход на нижней панельке
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "brosok.bmp", -1, 100)////видим кнопку бросить кубики
      if (arrsize($proect)<1)//если  нет фирм для постройки
         if ($field!13)// если не в тюрьме
            LCLICK($_return1, $_return2)// бросаем
            MOVE(1365,290)
            WAITMS(100)
         END_IF
      END_IF
   END_IF
   WAIT(3)//ждем 3 секунды. здесь самое интересное.   ход может перейти сопернику, без совершнея мною действий. или   нужно купить/продать.. и т.дт
switch($field)// соотносим местоположение и действия
CASE(0)//старт  , ниче не делаем
CASE(1)
CASE(2)
CASE(3)
CASE(4)
CASE(5)
CASE(6)
CASE(7)
CASE(8)
CASE(9)
CASE(10)
CASE(11)
CASE(12)
CASE(13)
CASE(14)
CASE(15)
CASE(16)
CASE(17)
CASE(18)
CASE(19)
CASE(20)
CASE(21)
CASE(22)
CASE(23)
CASE(24)
CASE(25)
CASE(26)
CASE(27)
CASE(28)
CASE(29)
CASE(30)
CASE(31)
CASE(32)
CASE(33)
CASE(34)
CASE(35)
CASE(36)
CASE(37)
CASE(38)
CASE(39)
CASE(40)
CASE(41)
« Last Edit: January 21, 2016, 04:19:21 PM by Браm комара »

Doda

  • Guest
подпрограммы в подпрограмме - так можно делать или нет?))
переназначение через кейсы
Code: (clickermann) [Select]
sub(plata)
   GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "oplata.bmp", -1, 100)
      LCLICK($_return1, $_return2)
      MOVE(1365,290)
      WAITMS(100)
   END_IF
end_sub

sub(pokupka)
   GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "kupit.bmp", -1, 100)
      LCLICK($_return1, $_return2)
      MOVE(1365,290)
      WAITMS(100)
   END_IF
end_sub

sub(akcion)
   GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "akcion.bmp", -1, 100)
      LCLICK($_return1, $_return2)
      WAITMS(100)
   END_IF
end_sub


switch($field)
CASE(0)//ñòàðò
CASE(1)
   for($k=0, $k<arrsize($high))
      if ($high[$k]=1)
         pokupka()
         $k=100
      END_IF
   end_cyc
   for($k=0, $k<arrsize($low))
      if ($low[$k]=1)
         akcion()
         $k=100
      END_IF
   end_cyc
   for($k=0, $k<arrsize($arend))
      if ($arend[$k]=1)
         plata()
         $k=100
      END_IF
   end_cyc
CASE(2)
   plata()
CASE(3)
   for($k=0, $k<arrsize($high))
      if ($high[$k]=2)
         pokupka()
         $k=100
      END_IF
   end_cyc
   for($k=0, $k<arrsize($low))
      if ($low[$k]=2)
         akcion()
         $k=100
      END_IF
   end_cyc
for($k=0, $k<arrsize($arend))
      if ($arend[$k]=2)
         plata()
         $k=100
      END_IF
   end_cyc
CASE(4)
    for($k=0, $k<arrsize($high))
      if ($high[$k]=3)
         pokupka()
         $k=100
      END_IF
   end_cyc
   for($k=0, $k<arrsize($low))
      if ($low[$k]=3)
         akcion()
         $k=100
      END_IF
   end_cyc
for($k=0, $k<arrsize($arend))
      if ($arend[$k]=3)
         plata()
         $k=100
      END_IF
   end_cyc
CASE(5)
   //ïðîïóñêàåì õîä
CASE(6)
   pokupka()
CASE(7)
   for($k=0, $k<arrsize($high))
      if ($high[$k]=7)
         pokupka()
         $k=100
      END_IF
   end_cyc
CASE(8)
   for($k=0, $k<arrsize($high))
      if ($high[$k]=8)
         pokupka()
         $k=100
      END_IF
   end_cyc
CASE(9)
   plata()
CASE(10)  // òóðèì
   for($k=0, $k<arrsize($high))
      if ($high[$k]=9)
         pokupka()
         $k=100
      END_IF
   end_cyc
CASE(11)  //  ðàäèî
   for($k=0, $k<arrsize($high))
      if ($high[$k]=10 )
         pokupka()
         $k=100
      END_IF
   end_cyc
CASE(12)  //òåëåö
   for($k=0, $k<arrsize($high))
      if ($high[$k]=11)
         pokupka()
         $k=100
      END_IF
   end_cyc
CASE(13)  //òàìîæíÿ . ïîçæå íàïèøó
CASE(14)  //òàáà÷
   for($k=0, $k<arrsize($high))
      if ($high[$k]=11)
         pokupka()
         $k=100
      END_IF
   end_cyc
CASE(15)//ïèâî
   for($k=0, $k<arrsize($high))
      if ($high[$k]=11)
         pokupka()
         $k=100
      END_IF
   end_cyc
CASE(16)      //ñïèð
   for($k=0, $k<arrsize($high))
      if ($high[$k]=11)
         pokupka()
         $k=100
      END_IF
   end_cyc
CASE(17)//êèåâ// так далее вн4из
   pokupka()
CASE(18)
CASE(19)
   plata()
CASE(20)
CASE(21)
CASE(22)
CASE(23)
   plata()
CASE(24)
CASE(25)
CASE(26)
CASE(27)
CASE(28)
CASE(29)
CASE(30)
   plata()
CASE(31)
CASE(32)
CASE(33)
CASE(34)
CASE(35)
CASE(36)
CASE(37)
CASE(38)
CASE(39)
CASE(40)
   plata()
CASE(41)
« Last Edit: January 21, 2016, 05:36:40 PM by Браm комара »

Doda

  • Guest
спасибо за ответ. просто думал, что нельзя  вызывать одну в другой

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
А где завершение свитча?
Code: (clickermann) [Select]
DEFAULT
END_SWITCH