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

Anything and all.

Moderators: Murderator+, Murderator

Post Reply
Denton
Posts: 82
Joined: 2004-07-14 22:56:46
Location: Украина, Одесса
Contact:

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

Post by Denton »

Можно ли составить скрипт о быстром получении имени предмета? Я сам понимаю, что можно по нему просто щелкнуть. Но на лагах, или при некоторых обстоятельствах, нужно иногда быстро узнать название итема и впихнуть его в скрипт.
Помогите, а?
ХХДЕНТОНХХ: Холодостойкий Хронометрирующий Дроид с Единым Наступательным Трансмутатором для Ограниченного Нападения и Хронометрированного Хищения
http://uokings.ru/news.php
Sfagnum
Expert!
Posts: 1284
Joined: 2004-07-04 00:14:58
Contact:

Re: Помогите со скриптом на быстрое получение названия предм

Post by Sfagnum »

Denton wrote:Можно ли составить скрипт о быстром получении имени предмета? Я сам понимаю, что можно по нему просто щелкнуть. Но на лагах, или при некоторых обстоятельствах, нужно иногда быстро узнать название итема и впихнуть его в скрипт.
Помогите, а?
мдямс... не совсем понял... но думаю так
UO.GetName(idItem)
Denton
Posts: 82
Joined: 2004-07-14 22:56:46
Location: Украина, Одесса
Contact:

Post by Denton »

Пасибо, сейчас проверю...
ХХДЕНТОНХХ: Холодостойкий Хронометрирующий Дроид с Единым Наступательным Трансмутатором для Ограниченного Нападения и Хронометрированного Хищения
http://uokings.ru/news.php
Denton
Posts: 82
Joined: 2004-07-14 22:56:46
Location: Украина, Одесса
Contact:

Post by Denton »

Ну вот допустим, я стою кую бронь, плейт нагрудник. Мне нужно по инени отсортировать эксепт или нет.

uo.finditem() // ищем вещь
uo.getname // проверяем ее имя
if uo.getname == *нужное имя* then
uo.grab('item',-1,'container') // кидаем в один контейнер
else
uo.grab('item',-1,'othercontainer') // в другой

НО в документации к uo.getname пишется следующее:
Если сервер никогда не выводил имя на экран (как это делается например после одиночного щелчка click на обьекте или использования All Names в клиенте), то имя неизвестно.

Может есть какой способ это обойти?
ХХДЕНТОНХХ: Холодостойкий Хронометрирующий Дроид с Единым Наступательным Трансмутатором для Ограниченного Нападения и Хронометрированного Хищения
http://uokings.ru/news.php
666Man666
Junior Expert
Posts: 474
Joined: 2004-11-13 00:43:55
Location: Киберзадроцк
Contact:

Post by 666Man666 »

uo.click('finditem')
Sfagnum
Expert!
Posts: 1284
Joined: 2004-07-04 00:14:58
Contact:

Post by Sfagnum »

Denton wrote:НО в документации к uo.getname пишется следующее:
Если сервер никогда не выводил имя на экран (как это делается например после одиночного щелчка click на обьекте или использования All Names в клиенте), то имя неизвестно.

Может есть какой способ это обойти?
поидее как только ты скрафтил вещь её имя отсвечивает в журнале... так что поидее должно имя браться без проблем... и применительно к скрафченым вещам... разве в названии вещи видно качество? или ты имеешь ввиду крафтовую приписку?

определение качества я бы делал это дело через журнал...
если есть нужное слово в журнале значит то... если нет ну чтож... селяви... ток одна проблема... там вроде мессага может чуть пойзже приходить... но это решается чеклагом без удаления журнала...
Denton
Posts: 82
Joined: 2004-07-14 22:56:46
Location: Украина, Одесса
Contact:

Post by Denton »

Тут такая штука на моем шарде.
Во первых тут непрерывно шмотки крафтятся
Во-вторых, в журнале видно следующее: "success", т.е. имя шмотки не высвечивается.
Во-третьих, обычная шмотка имеет обычное название (a plate helm)
А эксептовая - an exceptional plate helm
Айди этих шмоток разные и, как я понял, рендомные, а типы просто одинаковые... тоесть их единственное скриптовое различие - имя.
Моя мысль такая: крафчу шлём; идет проверка finditem; до того как скрафтится следующий шлём, текущий кидается в мешок в зависимости от своего имени, и так циклично.

Но тут проблема, которую я описал выше...

2Ман666: uo.click('finditem') я думаю подошло бы, но при хорошем коннекте, на лагах скрипт не будет успевать за крафтом вещей. Или же придется крафтить не автоматом шарда, а вручную этим скриптом по одной шмотке с проверками, но это уйма времени при лагах.
ХХДЕНТОНХХ: Холодостойкий Хронометрирующий Дроид с Единым Наступательным Трансмутатором для Ограниченного Нападения и Хронометрированного Хищения
http://uokings.ru/news.php
Sfagnum
Expert!
Posts: 1284
Joined: 2004-07-04 00:14:58
Contact:

Post by Sfagnum »

Denton wrote:Но тут проблема, которую я описал выше...

2Ман666: uo.click('finditem') я думаю подошло бы, но при хорошем коннекте, на лагах скрипт не будет успевать за крафтом вещей. Или же придется крафтить не автоматом шарда, а вручную этим скриптом по одной шмотке с проверками, но это уйма времени при лагах.
проверка на лаг после клика без удаление журнала.
Denton
Posts: 82
Joined: 2004-07-14 22:56:46
Location: Украина, Одесса
Contact:

Post by Denton »

Denton wrote:по одной шмотке с проверками, но это уйма времени при лагах.


Хотя, даже если так, то как сделать проверку по имени. Если можно, то помогите составить всю красную часть:

Начало крафта->Вещь попала в бекпак->
проверка по имени и расфасовка в 2 мешка
->крафт дальнейший
ХХДЕНТОНХХ: Холодостойкий Хронометрирующий Дроид с Единым Наступательным Трансмутатором для Ограниченного Нападения и Хронометрированного Хищения
http://uokings.ru/news.php
Denton
Posts: 82
Joined: 2004-07-14 22:56:46
Location: Украина, Одесса
Contact:

Post by Denton »

ап
Sfagnum
Expert!
Posts: 1284
Joined: 2004-07-04 00:14:58
Contact:

Post by Sfagnum »

Code: Select all

var t
UO.FindType(...,...,'backpack')
if UO.FindCount()>0 then
UO.Click('finditem')
checklag()
if UO.GetName('finditem') == 'bla... bla...' then
UO.MoveItem('finditem','1',cont1)
else
UO.MoveItem('finditem','1',cont2)
end if
end if

1. checklag() - без удаления журнала... поищи, на форуме есть его.
2. cont2, cont1 - куда раскладываем.
Denton
Posts: 82
Joined: 2004-07-14 22:56:46
Location: Украина, Одесса
Contact:

Post by Denton »

благодарю, будем тестить как доступ в уо откроют
Post Reply