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

Подскажите как правильно сделать проверку на колличество !
http://forum.yoko.com.ua/viewtopic.php?f=20&t=8242
Page 1 of 2

Author:  derevo [ 2006-07-15 22:29:25 ]
Post subject:  Подскажите как правильно сделать проверку на колличество !

допустим я хочу класть в каждый мешок именно по 100 итемов! +- несколько штук. предметы однотипные ! тоесть мне нужно именно определения количества итемов в сумке.
Благодарю

Author:  Savage [ 2006-07-15 22:31:31 ]
Post subject: 

,massmove 1000 100
1000 - задержка
100 - количество

запускаешь команду и из ящика с предметами перетаскиваешь в мешок 1 штуку.

Author:  derevo [ 2006-07-15 22:37:05 ]
Post subject: 

Не то вот смотри

UO.DeleteJournal()
UO.Click(MeshSer)
wait(500)
if UO.InJournal('100') then
goto ff
end if

repeat
UO.FindType(Map, -1, 1 )
If UO.GetQuantity('finditem')> 0 then
UO.MoveItem( 'finditem', 0, MeshSer )
wait( 2000 )
UO.Print( ' perelozhena' )
End if
UO.FindType(Map,'0x0000','my')
If UO.GetQuantity('finditem')>0 then
UO.MoveItem( 'finditem', 0, MeshSer )
wait( 2000 )
UO.Print( ' perelozhena' )
goto task
Else
goto dal
end if
dal:



Нарезка из одно из скриптов мной порезанного под чистое перетаскивание! В этой части я сделал проверку от болды
UO.DeleteJournal()
UO.Click(MeshSer)
wait(500)
if UO.InJournal('100') then
goto ff
end if
Тоесть кликает на мешочек куда кладёт! если в журнале видит "100" то прыгаем на новый мешочек!... но это не стабильно! может повиснуть там на курсоре или ещё что ! будет 101 и уже не сработает. Как быть? спасибо

и ещё одно!
UO.FindType(Map, -1, 1 )
If UO.GetQuantity('finditem')> 0 then
UO.MoveItem( 'finditem', 0, MeshSer )
wait( 2000 )
UO.Print( ' perelozhena' )
Не видит итемы на земле((( что я не так сделал?

Author:  derevo [ 2006-07-15 22:39:53 ]
Post subject: 

А да чар второй в перегрузе продолжает в это время делать итемы! так что мас мув не прёть(

Author:  Savage [ 2006-07-15 22:41:55 ]
Post subject: 

1. если ты перекладываешь скриптом то достаточно организовать счетчик перекладываний - очень стабильно.

2. -1 - типа пофиг где искать (не прверял).

Author:  Savage [ 2006-07-15 22:43:27 ]
Post subject: 

И наверное полезно будет заигнорить мешок в который перекладываешь а то он вечно их перекладывать будет.

Author:  Grin [ 2006-07-15 22:45:38 ]
Post subject: 

Много чего не правельно делаешь;)
На сортировку такого рода была куча скриптов.
И колво итемов в сумке лутше не через журнал смотреть
Code:
uo.FindType(-1, -1, container)
uo.FindCount()

Файнд коунт дас колво итемов в сумке.
Дальше ... Не у спел Саваж уже написал;)

Author:  derevo [ 2006-07-15 22:46:35 ]
Post subject: 

Savage wrote:
И наверное полезно будет заигнорить мешок в который перекладываешь а то он вечно их перекладывать будет.


проблема в том что на оскоме фри котором я играю имеется проблема ! итемы при перекладке часто зависают на курсоре! просто зависают и всё. что бы скинуть проверка на итемы у меня даже дёргает левые в паке)
в общем я к тому что счёткик не получится(

Author:  derevo [ 2006-07-15 22:47:48 ]
Post subject: 

можно сделать с опен контейнером ... тоесть дабл кликал что бы на этот мешок! тогда будет в журнале запись типа Contains: 121 items
но как это правильно использовать,,,

Author:  Savage [ 2006-07-15 22:49:20 ]
Post subject: 

Я играл на оскоме, все там нормально перекладывается, паузы не забывай ставить.
У меня чар делал робы и прыгал их продавал, потом в банк выкладывал деньги м все поновой. Или когда продавать не надо было скидывал их в мешки.

Author:  derevo [ 2006-07-15 22:55:26 ]
Post subject: 

Grin wrote:
И колво итемов в сумке лутше не через журнал смотреть
Code:
uo.FindType(-1, -1, container)
uo.FindCount()

Файнд коунт дас колво итемов в сумке.
;)

брр не совсем понял! вот отрезок крипта у мну. ищет на земле робу(Map) и в паке у себя( на случай завиания на курсоре ) На земле кстать совсем не ищет((( или просто не перекладывает сразу с земли в сумку (в контейнере)
Тоесть логически может кинуть он за раз и два итема( за цикл) как я по твоему примеру могу реализовать проверку?
Парни вы ток не серчайте что может простого не понимаю . Я на инже скриптом занимаюсь пару дней)

Author:  Savage [ 2006-07-15 22:57:56 ]
Post subject: 

Объясни в деталях, что ты делаешь скриптом. Типа шаг первый ищем то-то, там то, шаг второй...

Author:  derevo [ 2006-07-15 22:58:03 ]
Post subject: 

Savage wrote:
Я играл на оскоме, все там нормально перекладывается, паузы не забывай ставить.
У меня чар делал робы и прыгал их продавал, потом в банк выкладывал деньги м все поновой. Или когда продавать не надо было скидывал их в мешки.

Раньше у мну тоже перекладывал отлично. А теперь зависает на курсоре часто. Паузу если имееш ввиду простой вейт так он там везде стоит 2000 . ещё и чек лаг есть.

А вот кстать можно сделать в самой команде UO.MoveItem Задержку на перетаскивание? у мен подозрение что просто унсп (или что там) блокирует моментальный дроп

Author:  Grin [ 2006-07-15 22:59:27 ]
Post subject: 

Дерево мой пост прочти;)
ставь вейты перед использованием дропов...

Author:  derevo [ 2006-07-15 22:59:43 ]
Post subject: 

sub teilorperekladka()

wait(1000)

VAR Sunduk1 = '0x4093C6A4' ; Ñåðèàë ñóíäóêà ñ ïóñòûìè ìåøêàìè
VAR Sunduk2 = '0x4151EBC1' ; Ñåðèàë ïóñòîãî ñóíäóêà
VAR Meshok = '0x0E76' ; Òèï ìåøêà

VAR Map = '0x1EFF' ; Òèï êàðòû
VAR MeshSer, j,ShkurSer
var LastTimer=0
var Exit=0


ff:



UO.DeleteJournal()
UO.FindType( Meshok, -1,Sunduk1) ; ???? ????? ? ??????? 1
MeshSer = UO.GetSerial('finditem')
UO.Grab( '1', 'finditem' )
UO.FindType('0x0F09',-1,'backpack') ; shit

UO.Grab('1','finditem')

prov:
wait( 2000 )
UO.MoveItem( MeshSer, 0,Sunduk2)
wait( 2000 )
wait (1000)

UO.FindType('0x0F09',-1,'backpack') ; shit

UO.Grab('1','finditem')

wait (2000)
wait (1000)
UO.FindType(Meshok,'0x0000','backpack') ;
if UO.GetQuantity('finditem')> 0 then
wait (1000)
goto prov
end if
dro:
wait (1000)


task:
UO.DeleteJournal()
UO.Click(MeshSer)
wait(500)
if UO.InJournal('100') then
goto ff
end if

repeat
UO.FindType(Map,'Ground', 1 )
If UO.GetQuantity('finditem')> 0 then
UO.MoveItem( 'finditem', 0, MeshSer )
wait( 2000 )
UO.Print( 'Udochka perelozhena' )
End if
UO.FindType(Map,'0x0000','my')
If UO.GetQuantity('finditem')>0 then
UO.MoveItem( 'finditem', 0, MeshSer )
wait( 2000 )
UO.Print( 'Udochka perelozhena' )
goto task
Else
goto dal
end if
dal:





goto task

wend
end sub



sub CheckLag()
UO.DeleteJournal()
UO.Click('backpack')
repeat
wait(50)
until UO.InJournal('backpack')
end sub

sub ToEat()

wait(500)
repeat
uo.UseType('0x097B')
wait(1000)
until uo.InJournal('You are simply too full to eat any more!')
end sub



Чар номер один щьёт! отллично щьёт.(но из за зависаний на курсоре производительность его падает! как выход крафт в перегрузе. А вот хватает итемы как раз второй чар с земли выше указанным макромсом!

В паке робы видит ,,,, на земле нет... плюс проверку на колличество немогу сообразить

Author:  derevo [ 2006-07-15 23:01:25 ]
Post subject: 

UO.FindType('0x0F09',-1,'backpack') ; shit

UO.Grab('1','finditem')

wait (2000)

Вот это как раз моя защита от зависаний на курсоре! в бекпаке лежат несколько бутылок стилок он их дёргает из бекпака обратно в бекпак после каждого действий) соответственно нужная вещ падает так же в пак .


Весь скрипт! стандартная часть ищет мешок берёт мешок дропает мешок в другой сундук, запоменает сериал. Дальше перекладывание с земли однотипов в этот мешок .. там же с бекпака на случай зависания на курсоре...

Вопрос проверка бага на кол во итемов. и собственно ЧЁ ОН У МЕНЯ С ЗЕМЛИ НЕ БЕРЁТ )))))

Author:  Savage [ 2006-07-15 23:07:48 ]
Post subject: 

Можно ничего никуда не перекладывать просто вначале скрипта даешь команду uo.setreceivingcontainer('meshok-serial') и чар сам кидает туда крафт если не в перегрузе.

Author:  derevo [ 2006-07-15 23:12:43 ]
Post subject: 

Savage wrote:
Можно ничего никуда не перекладывать просто вначале скрипта даешь команду uo.setreceivingcontainer('meshok-serial') и чар сам кидает туда крафт если не в перегрузе.

Пробовал! тоже самое! так же виснет на курсоре. почему без понятия!
Причём самое интересное на оскоме 1 виснет! на оскоме 2 всё путём)

Author:  derevo [ 2006-07-15 23:13:43 ]
Post subject: 

Скажите мне лучше как правильно написать кусок с поиском на земле
UO.FindTyp('0x1EFF','0x0000', 'Ground' )
If UO.GetQuantity('finditem')> 0 then
UO.MoveItem( 'finditem', 0, MeshSer )
wait( 2000 )

Author:  Grin [ 2006-07-15 23:19:25 ]
Post subject: 

ground - с маленкой буквы...
Скрипт похорошему надо переписать... всякие лишни репиты и венды весячие...

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