Bowcraft под RunUO... но что-то не пашет

Anything and all.

Moderators: Murderator+, Murderator

Post Reply
Zholud
Posts: 12
Joined: 2006-02-04 14:06:10

Bowcraft под RunUO... но что-то не пашет

Post by Zholud »

сделал я скрипт на крафт под RunUO - т.е. вместо waitmenu используются recall
Вроде всё правильно, но скрипт не пашет.
может кто подскажет причину?

Code: Select all

VAR Ingots='0x1bf2' #ingots
var boards='0x1BD7' #boards
VAR product='0x0F50' #xbow
VAR bktools='0x1022' #tongs
VAR Ins2='0x1EB8'
VAR Sunduk='0x4002D632'
var Trash='0x4002409C'
VAR kol, kol2
uo.addobject('Sunduk',Sunduk)
uo.addobject('Trash',Trash)
sub bcraft()
Uo.set('norbcalc','1')
Uo.set('norbcheck','1')
Uo.set('injectecho','1')
repeat
uo.findtype(boards)
if uo.FindCount()<50 then
load()
endif
uo.findtype(Ingots)
if uo.FindCount()<10 then
load()
endif
   if uo.count(bktools)>0 then
            uo.recall('0xC793BB88',21)
            uo.usetype(bktools)
            wait(3000)
        if uo.count(product)>0 then
            Uo.moveitem('product','1','Trash')
            wait(700)
        endif 
    else
if uo.count(ins2)>0 then
            uo.recall('0xC793BB88',21)
            wait(5000)
            uo.usetype(ins2)
            wait(5000)
else
     uo.say('No Instruments')
               wait(60000)
             
end if
   wait(1000)
   until uo.dead()
end sub   
Sub load()
if uo.count(Ingots)<10 then
    uo.useobject('Sunduk')
   wait(3000)
   uo.findtype(Ingots,-1,'Sunduk')
   uo.grab('20','findfitem')
   wait(3000)
endif

if uo.count(boards)<50 then
    uo.useobject('Sunduk')
   wait(3000)
   uo.findtype(boards,-1,'Sunduk')
   uo.grab('200','finditem')
   wait(3000)
endif
end sub
BigMouseI
Posts: 93
Joined: 2006-04-15 09:00:35

Post by BigMouseI »

меня вот это вот смущает

Code: Select all

uo.recall('0xC793BB88',21)
uo.usetype(bktools)


Попробуй так,

Code: Select all

uo.recall(bktools,'21')
Zholud
Posts: 12
Joined: 2006-02-04 14:06:10

Post by Zholud »

BigMouseI wrote:меня вот это вот смущает

Code: Select all

uo.recall('0xC793BB88',21)
uo.usetype(bktools)


Попробуй так,

Code: Select all

uo.recall(bktools,'21')
Так не работает. Если не ошибаюсь, то 0xC793BB88 это графика кнопка в меню, 21 это номер кнопки (Это make last). У меня есть похожий скрипт без загрузки-разгрузки и эта конструкция с реколом там работает. Но для её работы включены

Code: Select all

uo.set('norbcalc','1') 
uo.set('norbcheck','1')

Что вроде не даёт возможности нормально загрузить/разгрузить...
:roll:
Edred
Expert!
Posts: 2544
Joined: 2004-04-03 17:36:29
Location: Saint-Petersburg

Post by Edred »

Под рануо тебе лучше использовать ongump.
Ни один скрипт не работает? Пора обновить Инжект...
Все работает, но хочется большего? Пора переходить на стелс...
Zholud
Posts: 12
Joined: 2006-02-04 14:06:10

Post by Zholud »

Edred wrote:Под рануо тебе лучше использовать ongump.
А что прописывать в описании гампа? Можно пример с любого точно действующего крафтого скрипта с гампами под Ранку? Заранее благодарен.
omi4
Posts: 457
Joined: 2005-07-10 21:53:05

Post by omi4 »

Кошки вкусные...
нужно только варить правильно

Code: Select all

sub Craft()
   repeat
      UO.DeleteJournal()
         repeat
            UO.Recall('^0x1022','21')
            wait(2000)
            UO.Recall('^0x1022', '0')
            wait(1000)
         until UO.InJournal("cliloc# 0xEE46")
   until UO.Dead() || not UO.Count('0x1022') || not UO.Count('0x1BF2') || not UO.Count('0x1BD7')
endsub
Zholud
Posts: 12
Joined: 2006-02-04 14:06:10

Post by Zholud »

omi4 wrote:Кошки вкусные...

Code: Select all

sub Craft()
   ...
            UO.Recall('^0x1022','21')
            wait(2000)
       ....
endsub
я тоже использую эту конструкцию. Или подобную ей. Проблема в том чо не пашет в случае с 2-мя инструиентами т.е. например рубанок для дров и тинкер тулз для рубанка если кончились. рубанок пашет а вот тинкер нет....
omi4
Posts: 457
Joined: 2005-07-10 21:53:05

Post by omi4 »

Кнопка 21 называется повторить последний крафт!!!!

Вычисли настоящие кнопки в гампе и делай рубанки…
Zholud
Posts: 12
Joined: 2006-02-04 14:06:10

Post by Zholud »

omi4 wrote:Кнопка 21 называется повторить последний крафт!!!!
Я знаю. вопрос в другом

Code: Select all

if uo.count(bktools)>0 then
            UO.Recall('^0x1022','21')
            uo.usetype(bktools)
            wait(4100)

    else
while uo.count(ins2)>0 and uo.count(bktools)==0
            UO.Recall('^0x1022','21')
            uo.usetype(ins2)
            wait(5000)
wend
это кусок кода. Как видно сначала делаются вещи одним инструментом, если же он кончается - то другим. Одна и та же кнопка make last на разных инструментах естественно делает разные вещи. Точнее должна делать но не делает....

omi4 wrote:Вычисли настоящие кнопки в гампе и делай рубанки…
я когда-то так и делал, но тут хотел одной кнопкой обойтись... меньше гемора вроде... :roll:
omi4
Posts: 457
Joined: 2005-07-10 21:53:05

Post by omi4 »

Если в руках сворд, а в last Вася.
То при замене его на дубину в last Петя не появится.
Zholud
Posts: 12
Joined: 2006-02-04 14:06:10

Post by Zholud »

omi4 wrote:Если в руках сворд, а в last Вася.
То при замене его на дубину в last Петя не появится.
Но у нас вроде не last кто-то, а сделать последнее, что делали этим предметом (мечем Васю, дубиной Петю)
т.е. если последнее что делали инструментом 1 это лук то будет лук, а если последнее что делали инструментом 2 это меч то будет меч (а не лук) :oops:
omi4
Posts: 457
Joined: 2005-07-10 21:53:05

Post by omi4 »

Этот непорядок не в скрипте инжи, а на сервере.
Проси админов поправить.
Или пусть сразу команду [add item и [set skill 100 для удобства откроют.
Zholud
Posts: 12
Joined: 2006-02-04 14:06:10

Post by Zholud »

omi4 wrote:Этот непорядок не в скрипте инжи, а на сервере.
Проси админов поправить.
Сомневаюсь что послушают...
omi4 wrote:Или пусть сразу команду [add item и [set skill 100 для удобства откроют.
Это сарказм?
:roll:
Zholud
Posts: 12
Joined: 2006-02-04 14:06:10

Post by Zholud »

И в догонку наверно глупый вопрос - откуда взяли '^0x1022'? что это? ид графики кнопки?

Уже понял - это Bowcraft/Fletching tools тип. Новый вопрос - а может рекол 2 кнопки нажать или взять какой0нибуть уникальный параметр кнопки? А то сделал я на Make Last а хочу сделать чтоб само в меню выбирало. Меню вроде стандартное для RunUO - справа темы (напр. Wooden Tools) слева - вещи которые крафтить. У вещей кнопки одинаковые т.е. если выбрал wooden tools то это jointing plane а если просто tools то это scissors.
а реколом 2 кнопки даже последовательно не пишутся... :roll:
Last edited by Zholud on 2006-06-30 13:40:21, edited 1 time in total.
omi4
Posts: 457
Joined: 2005-07-10 21:53:05

Post by omi4 »

Zholud wrote:
omi4 wrote:Этот непорядок не в скрипте инжи, а на сервере.
Проси админов поправить.
Сомневаюсь что послушают...


Сервер это программа, а не сказочный мир. Все что он помнит хранится в переменных и занимает память машины. Сейчас на твоем чаре есть один указатель последний крафт, а тебе хочется их иметь пару сотен… А на сервере еще пара тысяч чаров. Что на твою просьбу ответят админы?

omi4 wrote:Или пусть сразу команду [add item и [set skill 100 для удобства откроют.
Это сарказм?
:roll:[/quote]

Это рецепт для написания самого простого скрипта…
Одна строчка и скилл прокачен плюс можно делать любой предмет одной строкой.

Только я знаю что на это скажут админы..

Zholud wrote:И в догонку наверно глупый вопрос - откуда взяли '^0x1022'? что это? ид графики кнопки?


В хелпе по инже это описано
Zholud
Posts: 12
Joined: 2006-02-04 14:06:10

Post by Zholud »

Повторю часть что вставил эдитом а то может пропустят:
Новый вопрос - а может рекол 2 кнопки нажать или взять какой0нибуть уникальный параметр кнопки? А то сделал я на Make Last а хочу сделать чтоб само в меню выбирало. Меню вроде стандартное для RunUO - справа темы (напр. Wooden Tools) слева - вещи которые крафтить. У вещей кнопки одинаковые т.е. если выбрал wooden tools то это jointing plane а если просто tools то это scissors.
а реколом 2 кнопки даже последовательно не пишутся...

всем спасибо, всё заработало!
Post Reply