kidaem exploishen

Anything and all.

Moderators: Murderator+, Murderator

Post Reply
Bangbuss
Posts: 228
Joined: 2005-07-06 18:17:24

kidaem exploishen

Post by Bangbuss »

pomogite sozdat' takoj skript:

v backpacke est exploushen butilki:
nazhimaem 2x na exploushen butilku, zhdom 2,9 sekundi, kidaem v lasttarget.

Spasib zaranee.
comatoza
Posts: 76
Joined: 2006-09-10 01:09:20
Location: Russia>>SPb>>Kolpino
Contact:

Re: kidaem exploishen

Post by comatoza »

Bangbuss wrote:pomogite sozdat' takoj skript:

v backpacke est exploushen butilki:
nazhimaem 2x na exploushen butilku, zhdom 2,9 sekundi, kidaem v lasttarget.

Spasib zaranee.


Code: Select all

sub throw()
 uo.usetype('explosion')
 while not uo.targeting()
  wait(100)
 wend
 uo.waittargetobject('laststatus;)
end sub


попробуй так
Твоими пастырями будем мы. Во имя Твоё Господи. Сила снизошла из Твоих рук, наши ноги быстро Твоё слово несут. И прямо к Тебе пусть потёчёт река, наполним душами её. Да будет так!
(с) "Святые из трущоб" перевод камрада Гоблина
Edred
Expert!
Posts: 2544
Joined: 2004-04-03 17:36:29
Location: Saint-Petersburg

Re: kidaem exploishen

Post by Edred »

comatoza wrote:попробуй так


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

Code: Select all

sub throw()
 uo.usetype('explosion')
 while not uo.targeting()
  wait(100)
 wend
 uo.waittargetobject('laststatus;)
end sub


Этот скрипт не будет работать по определению. Ловушку на прицел надо ставить перед тем, как юзать объект!!! RTFM.
Ни один скрипт не работает? Пора обновить Инжект...
Все работает, но хочется большего? Пора переходить на стелс...
Bangbuss
Posts: 228
Joined: 2005-07-06 18:17:24

Post by Bangbuss »

Da, ti prav, nerabotaet :wink:
comatoza
Posts: 76
Joined: 2006-09-10 01:09:20
Location: Russia>>SPb>>Kolpino
Contact:

Re: kidaem exploishen

Post by comatoza »

Edred wrote:
comatoza wrote:попробуй так


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

Code: Select all

sub throw()
 uo.usetype('explosion')
 while not uo.targeting()
  wait(100)
 wend
 uo.waittargetobject('laststatus;)
end sub


Этот скрипт не будет работать по определению. Ловушку на прицел надо ставить перед тем, как юзать объект!!! RTFM.


Эд :) ты, конечно, прав... по определению... но и тока... он не работает, но не поэтому... а имеено скорее всего из-за таргетинга - писал не проверяя, просто то что в балду пришло....
в обычном случае:
uo.usetype(xxxx)
uo.waittargettype(xxxx)
пока клиент отреагирует таргет успевает.... :)
Твоими пастырями будем мы. Во имя Твоё Господи. Сила снизошла из Твоих рук, наши ноги быстро Твоё слово несут. И прямо к Тебе пусть потёчёт река, наполним душами её. Да будет так!
(с) "Святые из трущоб" перевод камрада Гоблина
Edred
Expert!
Posts: 2544
Joined: 2004-04-03 17:36:29
Location: Saint-Petersburg

Re: kidaem exploishen

Post by Edred »

comatoza wrote:в обычном случае:
uo.usetype(xxxx)
uo.waittargettype(xxxx)
пока клиент отреагирует таргет успевает.... :)


Никуда клиент не успевает. Просто у тебя это хозяйство стоит в цикле, вот юзтайп и хавает ловушку, установленную в предыдущем круге исполнения цикла. Что не есть хорошо, точнее, есть весьма не хорошо. Так как у тебя постоянно висит на чаре лишний неиспользованный таргет, который еще и может накапливаться на лагах - вот тут креш клиенте или анхандлед еррор ин парсер практически гарантированы.

Правильная методика:

Code: Select all

if uo.waiting() then
   uo.canceltarget()
endif
uo.DeleteJournal()
uo.waittargetobject(объект)
uo.usetype(тип)
k = 0
repeat
   wait(100)
   k = k + 1
until uo.InJoutrnal(сообщение и физле) or uo.InJoutrnal(сообщение и успехе) or k > лимит_по_времени


Проверок сообщений может быть больше. Или это проверка расхода маны или еще чего. Лимит по времени считается в сотнях миллисекунд с запасом на сейв мира. Делитжурнал лучше заменить на функцию с аналогичным названием, удаляющую отдельную строку из журнала. Но это уже частности. Общий случай же выглядит именно так.
Ни один скрипт не работает? Пора обновить Инжект...
Все работает, но хочется большего? Пора переходить на стелс...
Scripts Writer
Posts: 2259
Joined: 2005-04-19 18:00:29
Location: Московская область
Contact:

Post by Scripts Writer »

Моё мнение:

Надо забить ловушку на тайл на котором будет стоять цель по ластстатусу в последнюю 0.1 секунды, и держать прицел до этого времени.
Возможно через инфотайл клик в последнюю секунду отсчёта таймера.
Chico
Posts: 46
Joined: 2005-05-02 17:37:12
Contact:

Post by Chico »

Я так юзаю

Code: Select all

 sub BombDrop() 
uo.waittargetobject("Enemy")
var bomb='0x0f0d'
UO.FindType(bomb,'backpack')
UO.UseObject('finditem')
end sub
[/code]
comatoza
Posts: 76
Joined: 2006-09-10 01:09:20
Location: Russia>>SPb>>Kolpino
Contact:

Re: kidaem exploishen

Post by comatoza »

Edred wrote:
comatoza wrote:в обычном случае:
uo.usetype(xxxx)
uo.waittargettype(xxxx)
пока клиент отреагирует таргет успевает.... :)


Никуда клиент не успевает. Просто у тебя это хозяйство стоит в цикле, вот юзтайп и хавает ловушку, установленную в предыдущем круге исполнения цикла. Что не есть хорошо, точнее, есть весьма не хорошо. Так как у тебя постоянно висит на чаре лишний неиспользованный таргет, который еще и может накапливаться на лагах - вот тут креш клиенте или анхандлед еррор ин парсер практически гарантированы.

Правильная методика:

Code: Select all

if uo.waiting() then
   uo.canceltarget()
endif
uo.DeleteJournal()
uo.waittargetobject(объект)
uo.usetype(тип)
k = 0
repeat
   wait(100)
   k = k + 1
until uo.InJoutrnal(сообщение и физле) or uo.InJoutrnal(сообщение и успехе) or k > лимит_по_времени


Проверок сообщений может быть больше. Или это проверка расхода маны или еще чего. Лимит по времени считается в сотнях миллисекунд с запасом на сейв мира. Делитжурнал лучше заменить на функцию с аналогичным названием, удаляющую отдельную строку из журнала. Но это уже частности. Общий случай же выглядит именно так.


пасиба... принял к сведению...
Твоими пастырями будем мы. Во имя Твоё Господи. Сила снизошла из Твоих рук, наши ноги быстро Твоё слово несут. И прямо к Тебе пусть потёчёт река, наполним душами её. Да будет так!
(с) "Святые из трущоб" перевод камрада Гоблина
Nmy
Expert!
Posts: 2152
Joined: 2005-09-14 15:31:58
Location: Latvia

Post by Nmy »

Code: Select all

var bomb='0x0f0d'
UO.FindType(bomb,'backpack')
UO.UseObject('finditem')

зачем так если можно:

Code: Select all

UO.UseType('0x0f0d')
Scripts Writer
Posts: 2259
Joined: 2005-04-19 18:00:29
Location: Московская область
Contact:

Post by Scripts Writer »

NMY wrote:

Code: Select all

var bomb='0x0f0d'
UO.FindType(bomb,'backpack')
UO.UseObject('finditem')

зачем так если можно:

Code: Select all

UO.UseType('0x0f0d')


И та , и та конструкции не совершенны.
Дело в том, что не на всех шардах, но возможно такое что типы бутылок могут совпадать. К тому же, еще лучше было бы добавить цвет -а поиск первоначальный в бекпеке оправдывает себя, т.к. No item found не лучшее завершение боя.
Don SpiL
Posts: 108
Joined: 2005-05-03 11:51:04
Location: KDK Elite Group (c)
Contact:

Post by Don SpiL »

Code: Select all

sub explo()
var batla="0x0F0D"
uo.findtype(batla,-1,"my")
uo.setreceivingcontainer("MMM")
uo.grab("1","finditem")
wait(600)
uo.waittargetobject("lastattack")
uo.useobject("finditem")
uo.setreceivingcontainer("backpack")
end sub

Работает кароче так..банки лежат в паке или в сумке,пачькой или по одной разницы нет! Кидает банку на последний атакуемый обьект.
uo.setreceivingcontainer("MMM") - контейнер прописывать НЕ нада...суть как раз в том что этот контейнер не существует. Для чего? для того что на моем шарде www.nova-uo.com кидать банку можно только если она еденичная т.е. из стопки нельзя,нужно сначала разложить а потом кидать. А если uo.grab юзать то он сначала берет банку из стопки как бы в руку и из руки ее юзает!
Post Reply