Page 1 of 1
теряется finditem после мувайтема
Posted: 08.07.2005 4:08
by Vizit0r
Code: Select all
.................................
findtype(-1,source_container);
IF FindFullQuantity < 1 then
a := True
else
begin
MoveItem(finditem,0,backpack, 0,0,0);
wait(200);
stime := Now;
WaitTargetObject(finditem);
UseSkill('Item Identification');
.................................
кусок кода. находит айтем. таки-да находит. Перемещает его. действительно переносит. Зато когда я на этот же айтем (ведь ID его не меняется) кинуть таргет - то этот таргет летит куда угодно - на РБ, на ключи, на что угодно вобщем.
Что я делаю не так

Posted: 08.07.2005 4:32
by Miralex
Странно ... MoveItem никак не должен влиять на finditem.
Может твой айтим при попадании в бекпак стыковываеться с другими и принимает их ид?
Posted: 09.07.2005 14:46
by Vizit0r
топоры и шлемы гарантированно ни с чем не стекируются

))
может этот самый finditem еще не успел в результате мувайтема переехать в БП?
хотя я проверял раза 4 - то же самое.
Posted: 09.07.2005 15:07
by Miralex
может этот самый finditem еще не успел в результате мувайтема переехать в БП?
Возможно.
Попробуй временно увеличить задержку
wait(200); до wait(1000);
Также можешь потом это проверить примерно так:
Code: Select all
if (GetParent(finditem) <> backpack) then AddToSystemJournal('Item is not at backpack');
В случае если имеет место неопределенные задержки при передвижении айтимов - советую использовать динамическую задержку.