Получить триал аккаунт EverQuest 2 на 14 дней бесплатно
На сайте нет свежих новостей В Галерее нет новых фотографий Наш TeamSpeak сервер: ts.hussars-online.ru:8767 (пароль tmppass)
Список форумов Гусары-онлайн
Игровой форум Hussars-online
Присоединяйтесь к нашему сообществу! Мы ВКонтакте Мы в Facebook Мы в Twitter
Получить триал аккаунт EVE Online на 14 дней бесплатно
Перейти к разделу EVE Online на сайте Перейти к разделу EverQuest 2 на сайте Перейти к разделу Lord of the Rings Online на сайте Перейти на сайт Ultima Online гильдии [Hussars]
   RSS Feed: Игровой форум Hussars-online  (подробности)   Home * FAQ * Поиск * Пользователи * Группы * Награды * Регистрация * Профиль * Войти и проверить личные сообщения * Вход  
[script] Расшифровка и сортировка карт

 
Начать новую тему   Ответить на тему    Список форумов Гусары-онлайн -> UO Скрипты
Предыдущая тема :: Следующая тема  
Автор Сообщение
Askaneli
Модератор

avatar

Награды: 6 [детали]
''Почётный флудер'' I степени (Всего: 1) ''Флудер 2009'' (Всего: 1) ''Флудер 2010'' (Всего: 1)
''Хранитель форума 2011'' (Всего: 1) Редактор новостей (Всего: 1) Участник турнира (Всего: 1)
Благодарностей: 52

Зарегистрирован: 29.01.2007
Сообщения: 5627
Откуда: Уфимский схрон

СообщениеДобавлено: 05.05.2008 10:07    Заголовок сообщения: Ответить с цитатой

Представляю вашему вниманию 2 своих скрипта.
Первый расшифровывает карты из указанного мешка и раскладывает по левелам. Если вдруг ему по какой-то нелепой случайности попалась уже расшифрованная карта то он её просто переложит в соответствующий мешок. Если какой-нить мешок с картами (например 5 левела Very Happy , у таких как Сфаги или я скромняга такое случается) переполнится то скрипт киданёт карту обратно в мешок и остановится. Нада вручную поменять мешочек на новый и заного запустить скрипт. Да чё я обьясняю. И так все сами с усами. Ну кроме девушкалар канечна. Very Happy

Второй скрипт поинтереснее. Он раскладывает уже расшифрованные карты по координатам. Для этого надо 3 контейнера. В первом мешочки с картами, во втором ну очень многа пустых мешочков (у мну всегда 255 перед запуском, но больше 80-90 обычно не требуется для 3-4-5 левела, а вдруг ...), третий как бы вроде пустой, если он не пустой то скрипт переберёт все мешочки и узнает карты в какие координаты лежат в мешочках которые тама лежат. В общем ничего страшного в том что скрипт вылетел, соскачил конект, жена заигрывающе выдернула вилку из розетки, нету Very Happy Запускаем по новой показываем таргетами на те самые контейнеры по порядку и всё будет тип-топ.

Ну и сами коды.

Код:

###########################################
############### Map_Decode ################
###########################################


sub Map_Decode()
var cc
uo.print('Выбери мешок с нерасшифрованными картами ')
uo.exec('addobject Bag0')
while uo.targeting()
   wait(100)
wend 
wait(100)
uo.print('Выбери мешок для 1 левела ')
uo.exec('addobject Bag1')
while uo.targeting()
   wait(100)
wend
wait(100)
uo.print('Выбери мешок для 2 левела ')
uo.exec('addobject Bag2')
while uo.targeting()
   wait(100)
wend
wait(100)
uo.print('Выбери мешок для 3 левела ')
uo.exec('addobject Bag3')
while uo.targeting()
   wait(100)
wend
wait(100)
uo.print('Выбери мешок для 4 левела ')
uo.exec('addobject Bag4')
while uo.targeting()
   wait(100)
wend
wait(100)
uo.print('Выбери мешок для 5 левела ')
uo.exec('addobject Bag5')
while uo.targeting()
   wait(100)
wend
wait(100)

uo.useobject('Bag0')
wait(1000)

uo.findtype('0x14EB','0x0000','Bag0')
wait(200)
While uo.findcount()>0
   uo.deletejournal()
   uo.click('finditem')
   repeat
      wait(10)
   until uo.injournal("treasure map")
   if uo.injournal("Tattered treasure map") then
      uo.moveitem('finditem','-1','backpack')
      
      cc=0
      while cc==0
         wait(100)
         cc=uo.count('0x14EB','0x0000')
      wend
      wait(200)
      
      uo.deletejournal()
      uo.useobject('finditem')
      repeat
         wait(10)
      until uo.injournal("It's seems like that this map is level")

      if uo.injournal("It's seems like that this map is level 1") then
         uo.moveitem('finditem','-1','Bag1')
      end if

      if uo.injournal("It's seems like that this map is level 2") then
         uo.moveitem('finditem','-1','Bag2')
      end if

      if uo.injournal("It's seems like that this map is level 3") then
         uo.moveitem('finditem','-1','Bag3')
      end if

      if uo.injournal("It's seems like that this map is level 4") then
         uo.moveitem('finditem','-1','Bag4')         
      end if

      if uo.injournal("It's seems like that this map is level 5") then
         uo.moveitem('finditem','-1','Bag5')
      end if
      wait(600)
      
      if uo.injournal("Too many items in that container") then
         uo.moveitem('finditem','-1','Bag0')
         wait(500)
         return
      end if

   else

      if uo.injournal("(1 level)") then
         uo.moveitem('finditem','-1','Bag1')
      end if

      if uo.injournal("(2 level)") then
         uo.moveitem('finditem','-1','Bag2')
      end if
   
      if uo.injournal("(3 level)") then
         uo.moveitem('finditem','-1','Bag3')
      end if

      if uo.injournal("(4 level)") then
         uo.moveitem('finditem','-1','Bag4')
      end if

      if uo.injournal("(5 level)") then
         uo.moveitem('finditem','-1','Bag5')
      end if
      
      wait(600)
      if uo.injournal("Too many items in that container") then
         uo.moveitem('finditem','-1','Bag0')
         wait(500)
         return
      end if

   end if
   uo.findtype('0x14EB','0x0000','Bag0')
   wait(200)
wend
end sub

###########################################
############## Map_Sort_Uni ###############
###########################################

sub Map_Sort_Uni()
var tx,ty,s,i=0,j=0,flag=0,cc,k=0,Bag0,TMap
var BPack1,BPack2,BPack3

UO.UseObject('backpack')
Cheklag()
UO.exec('resend')
Cheklag()
uo.ignorereset()
wait(50)

Dim Bags[255]
Dim KoordX[255]
Dim KoordY[255]

uo.set('injectecho','1')

uo.print('Пак 1')
uo.exec('addobject Pack')
while uo.targeting()
   wait(100)
wend
BPack1=uo.getserial('Pack')

uo.print('Пак 2')
uo.exec('addobject Pack')
while uo.targeting()
   wait(100)
wend
BPack2=uo.getserial('Pack')

uo.print('Пак 3')
uo.exec('addobject Pack')
while uo.targeting()
   wait(100)
wend
BPack3=uo.getserial('Pack')

uo.useobject(BPack1)
wait(500)
uo.useobject(BPack2)
wait(500)
uo.useobject(BPack3)
wait(500)

uo.findtype('0x0E76','0x0000',BPack3)
wait(50)
while uo.findcount() > 0
   Bag0=uo.getserial('finditem')
   wait(50)   
   uo.useobject(Bag0)
   wait(500)
   uo.findtype('0x14EB','0x0000',Bag0)
   wait(50)
   if uo.findcount() > 0 then
      Tmap=uo.getserial('finditem')
      i=i+1
      uo.moveitem(Tmap,'-1','backpack')
      cc=0
      while cc==0
         wait(100)
         cc=uo.count('0x14EB','0x0000')
      wend
      wait(200)
      uo.deletejournal()
      uo.useobject(Tmap)
      repeat
         wait(10)
      until uo.injournal('Map opened to:')
      wait(100)
      uo.rclick(109,150)
      wait(100)
      s = uo.journal(uo.injournal('Map opened to:')-1)
      s = Trim(Right(s,len(s)-15))
      if s[4] == ':' then
         tx = val(left(s,4))
         ty = val(right(s,len(s)-5))
      else
         tx = val(left(s,3))
         ty = val(right(s,len(s)-4))
      end if
      k=k+1
      KoordX[k]=tx
      KoordY[k]=ty            
      Bags[k]=Bag0
      uo.moveitem(Tmap,'-1',Bag0)
      cc=uo.weight
      while cc==uo.weight
         wait(10)
      wend
      wait(200)
      UO.Print("Координат зафиксировано -> "+str(i))
   end if
   uo.ignore(Bag0)
   wait(50)
   uo.useobject(BPack3)
   wait(500)
   uo.findtype('0x0E76','0x0000',BPack3)
   wait(50)
wend

i=0
uo.ignorereset()
wait(50)

uo.findtype('0x0E76','0x0000',BPack1)
wait(50)
while uo.findcount() > 0
   Bag0=uo.getserial('finditem')
   wait(50)   
   uo.useobject(Bag0)
   wait(500)
   uo.findtype('0x14EB','0x0000',Bag0)
   wait(50)
   while uo.findcount() > 0
      Tmap=uo.getserial('finditem')
      i=i+1
      uo.moveitem(Tmap,'-1','backpack')
      cc=0
      while cc==0
         wait(100)
         cc=uo.count('0x14EB','0x0000')
      wend
      wait(200)
      uo.deletejournal()
      uo.useobject(Tmap)
      repeat
         wait(10)
      until uo.injournal('Map opened to:')
      wait(100)
      uo.rclick(109,150)
      wait(100)
      s = uo.journal(uo.injournal('Map opened to:')-1)
      s = Trim(Right(s,len(s)-15))
      if s[4] == ':' then
         tx = val(left(s,4))
         ty = val(right(s,len(s)-5))
      else
         tx = val(left(s,3))
         ty = val(right(s,len(s)-4))
      end if
      flag=0
      if k>0 then
         For j=1 to k
            if abs(KoordX[j]-tx) < 30 and abs(KoordY[j]-ty) < 30 then
               uo.moveitem(Tmap,'-1',Bags[j])
               cc=uo.weight
               while cc==uo.weight
                  wait(10)
               wend
               wait(300)
               flag=1
            end if
         next
      end if
      if flag==0 then
         k=k+1
         KoordX[k]=tx
         KoordY[k]=ty
         uo.findtype('0x0E76','0x0000',BPack2)
         wait(50)
         if uo.findcount()>0 then            
            Bags[k]=uo.getserial('finditem')
            uo.moveitem('finditem','-1',BPack3)
            wait(500)
         else
            uo.exec("terminate all")
         end if
         uo.moveitem(Tmap,'-1',Bags[k])
         cc=uo.weight
         while cc==uo.weight
            wait(10)
         wend
         wait(300)
      end if
      UO.Print("Карт отсортировано -> "+str(i))
      uo.findtype('0x14EB','0x0000',Bag0)
      wait(50)
   wend
   uo.moveitem(Bag0,'-1',BPack2)
   wait(500)
   uo.findtype('0x0E76','0x0000',BPack1)
   wait(50)
wend
uo.set('injectecho','0')
end sub

###########################################
################### abs ###################
###########################################

Sub abs(n)
   if n < 0 then
      return n*(-1)
   else
      return n
   end if
end sub

_________________
"Весь мир в предвкушении очередного апокалипсиса, у нас в стране он судя по всему уже прошёл..." Askaneli.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
v1per
Общительный гость



Благодарностей: 0

Зарегистрирован: 14.11.2008
Сообщения: 8
Откуда: Ukraine, Sumy

СообщениеДобавлено: 14.11.2008 10:08    Заголовок сообщения: Ответить с цитатой

извените еще раз, но этот скрипт тоже не работает, выбираю все правильно, 3 мешка, но опять же, когда все зделал он остановился, может у меня инжект как-то не правильно настроен...
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
HOBOK
VIP Гусар

avatar

Благодарностей: 0

Зарегистрирован: 08.02.2007
Сообщения: 431
Откуда: Димитровград

СообщениеДобавлено: 14.11.2008 12:34    Заголовок сообщения: Ответить с цитатой

v1per писал(а):
извените еще раз, но этот скрипт тоже не работает, выбираю все правильно, 3 мешка, но опять же, когда все зделал он остановился, может у меня инжект как-то не правильно настроен...

там же написано
Цитата:
Для этого надо 3 контейнера. В первом мешочки с картами, во втором ну очень многа пустых мешочков (у мну всегда 255 перед запуском, но больше 80-90 обычно не требуется для 3-4-5 левела,
а не 3 мешка
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
v1per
Общительный гость



Благодарностей: 0

Зарегистрирован: 14.11.2008
Сообщения: 8
Откуда: Ukraine, Sumy

СообщениеДобавлено: 14.11.2008 13:17    Заголовок сообщения: Ответить с цитатой

еще вопросик, скрипт останавливается, так как инжа выбивает "You moving items too fast", можно ли отключить это?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Askaneli
Модератор

avatar

Награды: 6 [детали]
''Почётный флудер'' I степени (Всего: 1) ''Флудер 2009'' (Всего: 1) ''Флудер 2010'' (Всего: 1)
''Хранитель форума 2011'' (Всего: 1) Редактор новостей (Всего: 1) Участник турнира (Всего: 1)
Благодарностей: 52

Зарегистрирован: 29.01.2007
Сообщения: 5627
Откуда: Уфимский схрон

СообщениеДобавлено: 14.11.2008 14:41    Заголовок сообщения: Ответить с цитатой

v1per писал(а):
еще вопросик, скрипт останавливается, так как инжа выбивает "You moving items too fast", можно ли отключить это?


Задержки при мовеитем поставить больше

Код:

uo.moveitem("бла бла бла")
      cc=uo.weight
      while cc==uo.weight ## ждёт пока вес не поменяется у перса
         wait(10)
      wend
      wait(200)  ## на фсякий случай ешо ждёт 200 мс чтоб не приняли за читерюгу


wait(200) везде в таких конструкциях поменяй к примеру на wait(300) или wait(400)

Будет дольше вошкатся просто в сумме. Меня запаривало тысячи карт обрабатывать ...
_________________
"Весь мир в предвкушении очередного апокалипсиса, у нас в стране он судя по всему уже прошёл..." Askaneli.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
v1per
Общительный гость



Благодарностей: 0

Зарегистрирован: 14.11.2008
Сообщения: 8
Откуда: Ukraine, Sumy

СообщениеДобавлено: 14.11.2008 15:13    Заголовок сообщения: Ответить с цитатой

Большое спасибо за скрипты и за помощь, очень благодарен
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
.
Начать новую тему   Ответить на тему    Список форумов Гусары-онлайн -> UO Скрипты Часовой пояс: GMT + 4
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Vote on the EverQuest 2 Top 200 Рейтинг Ролевых Ресурсов Rambler's Top100 Copyright © 2007-2011 Hussars-online
Powered by phpBB © 2001, 2005 phpBB Group
Appalachia Theme © 2002 Droshi's Island