Forum in READ ONLY mode! All questions and discussions on Discord official server, invite link: https://discord.gg/VxsGzJ7

теряется finditem после мувайтема

тут можно задать вопрос по скриптингу
Post Reply
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

теряется finditem после мувайтема

Post 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 его не меняется) кинуть таргет - то этот таргет летит куда угодно - на РБ, на ключи, на что угодно вобщем.

Что я делаю не так :?:
Miralex
Developer
Developer
Posts: 656
Joined: 11.03.2005 19:12
Contact:

Post by Miralex »

Странно ... MoveItem никак не должен влиять на finditem.

Может твой айтим при попадании в бекпак стыковываеться с другими и принимает их ид?
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Post by Vizit0r »

топоры и шлемы гарантированно ни с чем не стекируются :)))
может этот самый finditem еще не успел в результате мувайтема переехать в БП?
хотя я проверял раза 4 - то же самое.
Miralex
Developer
Developer
Posts: 656
Joined: 11.03.2005 19:12
Contact:

Post by Miralex »

может этот самый finditem еще не успел в результате мувайтема переехать в БП?
Возможно.

Попробуй временно увеличить задержку wait(200); до wait(1000);
Также можешь потом это проверить примерно так:

Code: Select all

if (GetParent(finditem) <> backpack) then AddToSystemJournal('Item is not at backpack');
В случае если имеет место неопределенные задержки при передвижении айтимов - советую использовать динамическую задержку.
Post Reply