Yoko
http://forum.yoko.com.ua/

Bowcraft под RunUO... но что-то не пашет
http://forum.yoko.com.ua/viewtopic.php?f=20&t=8101
Page 1 of 1

Author:  Zholud [ 2006-06-29 13:37:48 ]
Post subject:  Bowcraft под RunUO... но что-то не пашет

сделал я скрипт на крафт под RunUO - т.е. вместо waitmenu используются recall
Вроде всё правильно, но скрипт не пашет.
может кто подскажет причину?
Code:
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

Author:  BigMouseI [ 2006-06-29 13:56:45 ]
Post subject: 

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

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


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

Code:
uo.recall(bktools,'21')

Author:  Zholud [ 2006-06-29 14:50:58 ]
Post subject: 

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

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


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

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

Что вроде не даёт возможности нормально загрузить/разгрузить...
:roll:

Author:  Edred [ 2006-06-29 16:31:23 ]
Post subject: 

Под рануо тебе лучше использовать ongump.

Author:  Zholud [ 2006-06-29 17:35:46 ]
Post subject: 

Edred wrote:
Под рануо тебе лучше использовать ongump.
А что прописывать в описании гампа? Можно пример с любого точно действующего крафтого скрипта с гампами под Ранку? Заранее благодарен.

Author:  omi4 [ 2006-06-29 18:29:39 ]
Post subject: 

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

Code:
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

Author:  Zholud [ 2006-06-29 22:22:27 ]
Post subject: 

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

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

Author:  omi4 [ 2006-06-29 23:32:40 ]
Post subject: 

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

Вычисли настоящие кнопки в гампе и делай рубанки…

Author:  Zholud [ 2006-06-30 06:34:31 ]
Post subject: 

omi4 wrote:
Кнопка 21 называется повторить последний крафт!!!!
Я знаю. вопрос в другом
Code:
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:

Author:  omi4 [ 2006-06-30 07:01:05 ]
Post subject: 

Если в руках сворд, а в last Вася.
То при замене его на дубину в last Петя не появится.

Author:  Zholud [ 2006-06-30 07:42:03 ]
Post subject: 

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

Author:  omi4 [ 2006-06-30 08:47:05 ]
Post subject: 

Этот непорядок не в скрипте инжи, а на сервере.
Проси админов поправить.
Или пусть сразу команду [add item и [set skill 100 для удобства откроют.

Author:  Zholud [ 2006-06-30 09:34:25 ]
Post subject: 

omi4 wrote:
Этот непорядок не в скрипте инжи, а на сервере.
Проси админов поправить.
Сомневаюсь что послушают...
omi4 wrote:
Или пусть сразу команду [add item и [set skill 100 для удобства откроют.
Это сарказм?
:roll:

Author:  Zholud [ 2006-06-30 10:45:47 ]
Post subject: 

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

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

Author:  omi4 [ 2006-06-30 13:09:59 ]
Post subject: 

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


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

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

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

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

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


В хелпе по инже это описано

Author:  Zholud [ 2006-06-30 13:43:24 ]
Post subject: 

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

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

Page 1 of 1 All times are UTC+02:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/