UORPG.net Free UO Shard
http://forum.uorpg.net/

Injection Fastloot by Roomer
http://forum.uorpg.net/viewtopic.php?f=28&t=14179
Page 1 of 2

Author:  Roomer [ 13 Jul 2016, 23:07 ]
Post subject:  Injection Fastloot by Roomer

Да простят меня те кто не успеет схватить свою 50-ую фантом или демоник палку :)

Функция fastloot() - запускает лут если рядом найден труп, .
Функция loot() - основная лутящая функция содержит список приоритетных для лута вещей (которые будут лутиться в первую очередь)
Функция lootlag() - динамическая задержка, ожидаем пока в трупе появятся предметы
Функция clearloot() - добавляет список вещей которые лутить не надо =)
Функция skining() - режем и долучиваем тело
Функция findcorps() - ищет трупы под ногами

Если по простому, то для лута надо запустить фастлут, он ищет труп под ногами, если есть то сначала лутит приоритетные вещи, потом долучивает труп.
Если есть сумка куда складывать лут то складывает в неё, если нет такой сумки то лутит в пак.

Code:
sub fastloot()
   var corpse
   corpse = findcorps()
   if not corpse == 'null' then
      UO.addobject('corps', corpse)
      lootlag()
      loot()
   else
      uo.print('CORPS NOT FOUND!')
      uo.print('CORPS NOT FOUND!')
      uo.print('CORPS NOT FOUND!')
      uo.ignore('corps', 'off')
   end if
   uo.msg('.upd')
end sub

sub loot()
   var bag = '0x0E75' ; Тип сумки в которую складываем лут.
   var all = 1   ; Если 1 то лутит все, если 0 то лутит только приоритетные вещи.
   var clear = 1 ; Если 1 то игнорирует вещи из списка, если 0 то не игнорирует.
   if uo.findtype(bag,"-1","backpack") then
      uo.addobject('lootpack', 'finditem')
   else
      uo.addobject('lootpack', 'backpack')
   end if
   
   DIM Loot[10] # сколько вещей в списке
   var a
   
   # Указываем типы приоритетных для лута вещей.
   # Эти вещи будут лутиться в первую очередь.
   
   Loot[1]="0x1F08"  ; Necklace
   Loot[2]="0x1088"  ; Gold Necklace
   Loot[3]="0x1B76"  ; Heater Shield
   Loot[4]="0x1B75"  ; Kite Shield
   Loot[5]="0x1B76"  ; Heater Shield
   Loot[6]="0x1BC3"  ; Chaos Shield
   Loot[7]="0x1B7A"  ; Shield of Energy
   Loot[8]="0x14EF"  ; Recipe
   Loot[9]="0x13F9"  ; Staff
   Loot[10]="0x0EED"  ; Gold
   
   loot:
   for a=1 to 10
      uo.findtype(Loot[a],"-1","corps")
      if UO.FindCount()>0 and Uo.GetDistance("corps")<=2 then
         uo.moveitem("finditem", "-1", "lootpack")
         wait(1000)
         goto loot
      end if
   next
   if all == 1 then
      if clear == 1 then
         clearloot("corps")
      end if
      allloot:
      uo.findtype("-1","-1","corps")
      if uo.findCount() > 0 and Uo.GetDistance("corps")<=2 then
         uo.moveitem("finditem", "-1", "lootpack")
         wait(1000)
         goto allloot
      else if uo.findCount() == 0 then
         uo.print('Ignore Corps!')
         uo.ignore("corps", "on")
      end if
   end if
   skining()
end sub

sub lootlag()
   var timer
   timer = uo.timer()
   repeat
      uo.findtype("-1","-1","corps")
      wait(50)
   until uo.findcount() > 0 or timer + 3 <= uo.timer()
end sub

sub skining()
   UO.WaitTargetObject('corps')
   UO.UseType('0x0EC4')
   wait(500)
   allloot:
   uo.findtype("-1","-1","corps")
   if uo.findCount() > 0 and Uo.GetDistance("corps")<=2 then
      uo.moveitem("finditem", "-1", "lootpack")
      goto allloot
      wait(200)
   end if
end sub

sub clearloot(corpse)
   DIM Item[89]
   VAR i
   ##################################################
   # Тут указываем типы игнорируемых для лута вещей.#
   ##################################################
   Item[0] = "0x0E20" ; Bloody Bandage
   Item[1] = "0x14FB" ; Lockpicks
   Item[2] = "0x0F39" ; Shovel
   Item[3] = "0x0F36" ; Sheaf of hay
   Item[4] = "0x14F5" ; Spyglass
   Item[5] = "0x14F5" ; Sextant
   Item[6] = "0x0F86" ; MR
   Item[7] = "0x0F85" ; GS
   Item[8] = "0x0F7A" ; BP
   Item[9] = "0x0F84" ; GA
   Item[10] = "0x0F88" ; NS
   Item[11] = "0x0F8D" ; SS
   Item[12] = "0x0F8C" ; SA
   Item[13] = "0x0F7B" ; BM
   Item[14] = "0x1F65" ; Earthquake scroll
   Item[15] = "0x1F54" ; Summon Creature scroll
   Item[16] = "0x1F49" ; Greater Heal scroll
   Item[17] = "0x1F64" ; Polymorph scroll
   Item[18] = "0x1F31" ; Heal scroll
   Item[19] = "0x1F52" ; Paralyze scroll
   Item[20] = "0x1F2D" ; Reactive Armor scroll
   Item[21] = "0x1F4E" ; Dispel Field scroll
   Item[22] = "0x1F48" ; Fire Field scroll
   Item[23] = "0x1F50" ; Magic Reflection scroll
   Item[24] = "0x1F59" ; Mark scroll
   Item[25] = "0x1F69" ; Summon Deamon scroll
   Item[26] = "0x1F3C" ; Strength scroll
   Item[27] = "0x1F53" ; Poison Field scroll
   Item[28] = "0x1F2E" ; Clumsy scroll
   Item[29] = "0x1F4B" ; Mana Drain scroll
   Item[30] = "0x1F5D" ; Chain Lightning scroll
   Item[31] = "0x1F4C" ; Recall scroll
   Item[32] = "0x1F55" ; Dispel scroll
   Item[33] = "0x1F67" ; Resurrection scroll
   Item[34] = "0x1F5A" ; Mass Curse scroll
   Item[35] = "0x1F4D" ; Blade Spirits scroll
   Item[36] = "0x1F5F" ; Flame Strike scroll
   Item[37] = "0x1F42" ; Teleport scroll
   Item[38] = "0x1F4A" ; Lightning scroll
   Item[39] = "0x1F40" ; Poison scroll
   Item[40] = "0x1F61" ; Mana Vampire scroll
   Item[41] = "0x1F39" ; Magic Trap scroll
   Item[42] = "0x1F44" ; Wall of Stone scroll
   Item[43] = "0x1F33" ; Night Sight scroll
   Item[44] = "0x1F45" ; Arch Cure scroll
   Item[45] = "0x1F5B" ; Paralyze Field scroll
   Item[46] = "0x1F51" ; Mind Blast scroll
   Item[47] = "0x1F36" ; Cunning scroll
   Item[48] = "0x1F56" ; Energy Bolt scroll
   Item[49] = "0x1F34" ; Weaken scroll
   Item[50] = "0x1F35" ; Agility scroll
   Item[51] = "0x1F4F" ; Incognito scroll
   Item[52] = "0x1F30" ; Feeblemind scroll
   Item[53] = "0x1F3B" ; Protection scroll
   Item[54] = "0x1F38" ; Harm scroll
   Item[55] = "0x1F37" ; Cure scroll
   Item[56] = "0x1F47" ; Curse scroll
   Item[57] = "0x0E76" ; Bag
   Item[58] = "0x1F3E" ; Fireball scroll
   Item[59] = "0x1F44" ; Wall of Stone scroll
   Item[60] = "0x1F33" ; Night Sight scroll
   Item[61] = "0x1F45" ; Arch Cure scroll
   Item[62] = "0x1F5B" ; Paralyze Field scroll
   Item[63] = "0x1F51" ; Mind Blast scroll
   Item[64] = "0x1F36" ; Cunning scroll
   Item[65] = "0x1F56" ; Energy Bolt scroll
   Item[66] = "0x1F34" ; Weaken scroll
   Item[67] = "0x1F35" ; Agility scroll
   Item[68] = "0x1F4F" ; Incognito scroll
   Item[69] = "0x1F30" ; Feeblemind scroll
   Item[70] = "0x1F3B" ; Protection scroll
   Item[71] = "0x1F38" ; Harm scroll
   Item[72] = "0x1F37" ; Cure scroll
   Item[73] = "0x1F47" ; Curse scroll
   Item[74] = "0x1F3A" ; Magic Untrap scroll
   Item[75] = "0x1F41" ; Telekinesis scroll
   Item[76] = "0x1F5C" ; Reveal scroll
   Item[77] = "0x1F32" ; Magic Arrow scroll
   Item[78] = "0x1F6C" ; Summon Water Elemental scroll
   Item[79] = "0x1F63" ; Meteor Swarm scroll
   Item[80] = "0x1F43" ; Unlock scroll
   Item[81] = "0x1F3D" ; Bless scroll
   Item[82] = "0x1F60" ; Gate Travel scroll
   Item[83] = "0x1F62" ; Mass Dispel scroll
   Item[84] = "0x1F2F" ; Create Food scroll
   Item[85] = "0x1F57" ; Explosion scroll
   Item[86] = "0x1F58" ; Invisibility scroll
   Item[87] = "0x1F66" ; Energy Vortex scroll
   Item[88] = "0x1F3F" ; Magic Lock scroll
   Item[89] = "0x1F6B" ; Summon Fire Elemental scroll
   for i=0 to 89
      ignoreitem:
      uo.findtype(Item[i],"-1",corpse)
      if UO.FindCount()>0 and Uo.GetDistance(corpse)<=2 then
         uo.ignore("finditem")
         goto ignoreitem
         # wait(10) ; раскомментировать если крашит
      end if
   next
end sub

sub findcorps()
   DIM body[4]
   var a
   Uo.Set('finddistance','2')
   body[1] = '0x0ECA';
   body[2] = '0x2006';
   body[3] = '0x0E40'; Treasyre Chest Lvl 5
   body[4] = '0x0E41'; Treasyre Chest Lvl 5
   For a = 1 to 4
      Uo.FindType(body[a],'-1','ground')
      If Uo.FindCount()>0 then
         uo.useobject('finditem')
         return Uo.GetSerial('finditem')
      endif
   next
   return 'null'
end sub

Author:  Luchasik [ 13 Jul 2016, 23:12 ]
Post subject:  Re: Injection Fastloot by Roomer

Эххх Рома , Рома. Нет тебе прощения =)))

Author:  Roomer [ 13 Jul 2016, 23:14 ]
Post subject:  Re: Injection Fastloot by Roomer

Luchasik wrote:
Эххх Рома , Рома. Нет тебе прощения =)))

Пора начинать скриптить на стелс, люблю Python =)

Author:  zeroeh [ 13 Jul 2016, 23:53 ]
Post subject:  Re: Injection Fastloot by Roomer

чем то зомби напоминает

Author:  Murz [ 25 Jan 2017, 20:55 ]
Post subject:  Re: Injection Fastloot by Roomer

Скажите этот скрипт работает ,только если поставить его на кнопку, или он автоматически сам лутает как только открывается труп?

Author:  Lolikus [ 25 Jan 2017, 20:57 ]
Post subject:  Re: Injection Fastloot by Roomer

Murz wrote:
Скажите этот скрипт работает ,только если поставить его на кнопку, или он автоматически сам лутает как только открывается труп?

На кнопку бинди fastloot

Author:  Luchasik [ 25 Jan 2017, 20:57 ]
Post subject:  Re: Injection Fastloot by Roomer

На кнопку.

Author:  Murz [ 28 Jan 2017, 19:29 ]
Post subject:  Re: Injection Fastloot by Roomer

Пасиб, так и ставил

Author:  Vikky [ 28 Jan 2017, 20:18 ]
Post subject:  Re: Injection Fastloot by Roomer

В ваш скрипт нужно добавить сундуки из Prist dungeon , у них тип другой.
А так-же подправить трупы всяких Ghost'ов и тех прозрачных типов.
Так-же включить переменную if, по поводу лута трупа если он не твой (лутать можно через какое-то время) ибо идёт флуд.

А в целом скрипт можно использовать.

Author:  дув [ 03 Apr 2017, 02:22 ]
Post subject:  Re: Injection Fastloot by Roomer

Просвятите нюба,как етот макрос запускать с кнопки,что и где надо прописывать?

Page 1 of 2 All times are UTC + 2 hours [ DST ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/