Кто может рассказать о Гампах?

Anything and all.

Moderators: Murderator+, Murderator

CRazych
Posts: 24
Joined: 2006-02-07 15:26:45

Кто может рассказать о Гампах?

Post by CRazych »

Как они работают?
И как можно информацию перенисти их в уо?
Askaneli
Sphere expert
Posts: 1143
Joined: 2004-10-01 08:27:38
Location: Уфа

Post by Askaneli »

,infogump - информация о последнем гампе, repl нада глядеть
,ongump - обработчик гампа
,recall - то же обработчик гампа в старой интертрепации, требует дополнительных установок ,SET
Сделал дело - флуди смело !!!
Grin
Expert!
Posts: 2580
Joined: 2005-05-04 14:05:19
Location: Москва

Post by Grin »

uo.LastGump() - инфа о прошлом гампе но уже в живую...
CRazych
Posts: 24
Joined: 2006-02-07 15:26:45

Post by CRazych »

Вот после команды ,infigump можно какнить перенести из того окна что появляется в скрипт или журнал? Или на крайняк в файл записать?
Askaneli
Sphere expert
Posts: 1143
Joined: 2004-10-01 08:27:38
Location: Уфа

Post by Askaneli »

CRazych wrote:Вот после команды ,infigump можно какнить перенести из того окна что появляется в скрипт или журнал? Или на крайняк в файл записать?

Выделяешь мышкой текст. Ctrl-C. Создаёшь текстовый файл. Ctrl-V.
Сделал дело - флуди смело !!!
CFA
Posts: 64
Joined: 2006-02-03 06:53:36

Post by CFA »

uo.lastgump(section, line)
например uo.lastgump('text', 1) - первая строка из секции 'text'
CRazych
Posts: 24
Joined: 2006-02-07 15:26:45

Post by CRazych »

Следующий вопрос, как разделить строку на несколько частей?
Допустим:

Записываем значения гампа в переменную.
var i
i=uo.lastgump('text', 1)
uo.print(i)
выводим строку.

Допустим выводится 123 123 123 123

Как можно её разделить на несколько частей, например по 123.
Для дальнеишей проверки по скрипту.
CRazych
Posts: 24
Joined: 2006-02-07 15:26:45

Post by CRazych »

всё уже разобрался всё проще некуда )
CFA
Posts: 64
Joined: 2006-02-03 06:53:36

Post by CFA »

из встроенных функций для работы со строками есть: left, right, mid - выдирают кусок строки
к строке можно обращаться как к массиву (только для чтения)

Code: Select all

var t
var str = 'abcdefg'
t = str[0] #a
t = str[1] #b
t = str[5] #f

немного желания и все можно сделать. если лень можно посмотреть тут - функцию GetWord
CRazych
Posts: 24
Joined: 2006-02-07 15:26:45

Post by CRazych »

БЛин вот пишу макрос на сортировку сос ботлов. Стока гемароя проверок тьма просто.
Ктонить сваю логику предложить может?

и скажите почему не срабатывает
x=i[15]+i[16]

Code: Select all

sub sort()
var i,x,y.ii

   if 60<x<80 then
      uo.setreceivingcontainer('Bag')
      uo.grab(-1,'finditem')
      uo.unsetreceivingcontainer()
      wait(400)
   else
      uo.setreceivingcontainer('Next')
      uo.grab(-1,'finditem')
      uo.unsetreceivingcontainer()
      wait(400)
   end if
end sub


Ошибку не пишет просто почему то условие не срабатывает.


Я подозреваю что надо "х" привести к строке.
Но как правельно это сделать в такой ситуации?
CFA
Posts: 64
Joined: 2006-02-03 06:53:36

Post by CFA »

это "if 60<x<80 then" что за конструкция? что от нее требуеться?
CRazych
Posts: 24
Joined: 2006-02-07 15:26:45

Post by CRazych »

ну вот наприме если х = 70
то выполняется код который выше
если нет
то тот который ниже
admir
Posts: 528
Joined: 2005-01-13 07:20:54

Post by admir »

if (60<x) and (x<80) then
CRazych
Posts: 24
Joined: 2006-02-07 15:26:45

Post by CRazych »

А больше условий можно создать?

В плане
if (60<x) and (x<80) and (10<y) and (y<50) then

Такая конструкция работать будет?
Kynep
Expert!
Posts: 1348
Joined: 2006-02-07 08:51:40
Location: г. Старый Оскол
Contact:

Post by Kynep »

CRazych wrote:А больше условий можно создать?

В плане
if (60<x) and (x<80) and (10<y) and (y<50) then

Такая конструкция работать будет?


А ты попробуй :D
По идеи будет :twisted:
admir
Posts: 528
Joined: 2005-01-13 07:20:54

Post by admir »

с чего не работать то?
CRazych
Posts: 24
Joined: 2006-02-07 15:26:45

Post by CRazych »

Мда...........
Структура жестокая получилась.
как вы думаете можно ли как то упрастить или улучьшить этот код?

Code: Select all

sub sort()
var i,x,y.ii      
   if (30<x) and (x<40) and (60<y) and (y<70)then
      uo.setreceivingcontainer('Bag1')
      uo.grab(-1,'finditem')
      uo.unsetreceivingcontainer()
      wait(400)
   else
      if (10<x) and (x<25) and (75<y) and (y<90)then
         uo.setreceivingcontainer('Bag2')
         uo.grab(-1,'finditem')
         uo.unsetreceivingcontainer()
         wait(400)
      else
         if (65<x) and (x<80) and (75<y) and (y<90)then
            uo.setreceivingcontainer('Bag3')
            uo.grab(-1,'finditem')
            uo.unsetreceivingcontainer()
            wait(400)
         else
            if (130<x) and (x<145) and (80<y) and (y<95)then
               uo.setreceivingcontainer('Bag4')
               uo.grab(-1,'finditem')
               uo.unsetreceivingcontainer()
               wait(400)
            else
               if (60<x) and (x<85) and (110<y) and (y<125)then
                  uo.setreceivingcontainer('Bag5')
                  uo.grab(-1,'finditem')
                  uo.unsetreceivingcontainer()
                  wait(400)
               else
                  uo.setreceivingcontainer('Bag6')
                  uo.grab(-1,'finditem')
                  uo.unsetreceivingcontainer()
                  wait(400)
               end if
            end if
         end if
      end if
   end if
end sub
admir
Posts: 528
Joined: 2005-01-13 07:20:54

Post by admir »

можно сократить код
CRazych
Posts: 24
Joined: 2006-02-07 15:26:45

Post by CRazych »

ТЫ имеешь ввиду масивом сделать?
Мне просто интересно можно ли делать что то типа else if
просто тут бы очень помагло.
Destruction
Junior Expert
Posts: 3221
Joined: 2004-06-24 22:08:56

Post by Destruction »

Code: Select all

if (30<x) and (x<40)

Не вижу логики, будет верно если x < 30, зачем тогда двойное условие? Возможно имелось в виду так:

Code: Select all

if (30>x) and (x<40)
Post Reply