Page 1 of 1

Проблема с color (неполучаеться чето)

Posted: 01.03.2008 12:28
by muchacha
Тут такая проблема вот есть

FindTypeEx($1BEF,$0000,backpack,false);
while (FindCount > 0) do
begin
Drop(findtype,0,0,0,0);

Этоя вычитал в помощи по стелс клиенту,но проблема в том что я никогд не работал с цветами итема в стелсе ! На инже там

uo.exec("findtype 0x0e21 цвет 0x400124BA")

а в стелсе как зделать также? и нада ли ставить в константах чтото ? обьясниет пожалуйста и если можна пример такой как вот на инже ,токо на стелс .
Спс :D

Posted: 01.03.2008 15:07
by Edred
Шестнадцатиричные числа что в инжекте, что в стелсе одинаковые. Они и в Африке такие же. Это касается сериалов, типов, цветов. Просто форма записи разная: в инжекте это 0x1234, а в стелсе $1234. То есть 0x заменяем на $.

Posted: 01.03.2008 16:14
by muchacha
Не получаеться переместить итем по цвету.
Пример:

Code: Select all

const
MyColor = $005B;     // наш цвет

FindTypeEx($1BEF,MyColor,backpack,false);
        while (FindCount > 0) do 
        begin 
          Drop(findtype,0,0,0,0); 

end;
тоесть изделие зделалось! и его нада збросить и чето не фунцыклирует!!

Posted: 01.03.2008 17:16
by Edred
Для начала попробуй выяснить что не работает. То ли поиск, то ли перемещение. Как это определить? Проще всего такое сделать расстановкой вывода тестового сообщения. Добавь в цикл перед дропом команду

Code: Select all

AddToSystemJournal('тест 1 - вошли в цикл');
запусти скрипт и смотри. Если сообщение появилось - значит поиск успешен, не работает дроп. Если сообщения нет - значит не ищет, проверяй соответственно.

Posted: 01.03.2008 20:09
by CFA
мнится мне, что оно даже не компилится
Drop(findtype,0,0,0,0); - что за findtype? надо finditem писать

Posted: 02.03.2008 10:46
by muchacha
Исправил Drop(finditem,0,0,0,0); на MoveItem(FindItem,0,0,0,0,)
теперь запускаю все нормально

Code: Select all

AddToSystemJournal('тест 1 - вошли в цикл');
FindTypeEx($1BEF,MyColor,backpack,false); 
        while (FindCount > 0) do 
        begin 
    
 MoveItem(FindItem,MyColor,TrashID,0,0,0); 


end;
Добавил

Code: Select all

 AddToSystemJournal('тест 1 - вошли в цикл');
Он перелавляет изделие из одного вида ингот в ирон инги и скидывает ирон инги в другую сумку но потом пишет

Code: Select all

Drag error: Object not finded.
Еще одна деталь ! Скрипт на бс - Едреда,у мя инготы с которых кую лежат подомною (может это както играет роль ?)
Че это может быть я незнаю :(

Posted: 02.03.2008 11:19
by Edred
Логику скрипта проверь. Всегда, если что-то не работает, надо попробовать путем рассуждений просчитать что скрипт делает минимум 2 круга (для циклов).

Вот у тебя:
1) Поиск по цвету.
2) В цикле:
2) пока есть найденные объекты
3) переместить найденный объект
Второй круг:
2) Пока есть до цикла найденные объекты
3) переместить найденный до цикла объект

Ну как, сообразил? На втором круге у тебя предпринимается попытка переместить тот же самый объект, который ты уже переместил! Причем цикл у тебя вечный. Ведь поиск был всего один раз, количество найденных раз и навсегда определено как больше нуля - поиск будет крутиться вечно и вечно пытаться переместить один и тот же объект.

Решение смотри в любом моем скрипте на перемещение. Или в любом чужом. В том же бс-е моем сделано все правильно.