B>макрос на перенос вещей в телегу

Заказы сложных макросов, модификаций и прочих программых разработок. Однако торговля игровыми ценностями, а также вещами, не имещими отношения к РО здесь не разрешена.

Модератор: 4epT

Ответить
Alekseer
Грамотный
Сообщения: 164
Зарегистрирован: Сб июн 21, 2008 1:43 am

B>макрос на перенос вещей в телегу

Сообщение Alekseer »

куплю макрос на перенос вещей из инверторя в телегу при условии что инвертарь заполнен на 95% и более
предложения в личку
I hear Thunder but there is no rain. This kind of Thunder breaks walls and brings pain.
Alekseer
Грамотный
Сообщения: 164
Зарегистрирован: Сб июн 21, 2008 1:43 am

Сообщение Alekseer »

поправка: нужно чтобы бот переносил ВСЕ ВЕЩИ В ТЕЛЕГУ
I hear Thunder but there is no rain. This kind of Thunder breaks walls and brings pain.
Аватара пользователя
Jozo
Энтузиаст
Сообщения: 109
Зарегистрирован: Вс окт 26, 2008 6:20 pm
Сервер RO:: CoolRo
Контактная информация:

Сообщение Jozo »

поситай инструкцию к item_control

Добавлено спустя 43 секунды:

Код: Выделить всё

# In this file you can control which items to put in storage,
# to sell, or to leave in the inventory.
#
# Syntax:
# (item name) (minimum) (auto-store) (auto-sell) [put in cart] [get from cart]
# item name	: Name of the item.
# miminum	: The minimum amount of this item that you want to keep in inventory.
# autostore	: Set to 1 to walk back to a Kapra NPC to put in storage.
# autosell	: Set to 1 to sell item at a buy/sell NPC.
# put in cart	: Set to 1 to automatically put this item in cart.
# get from cart : Set to 1 to automatically get this item from cart.
#
Sm1Le
Энтузиаст
Сообщения: 134
Зарегистрирован: Вс сен 23, 2007 9:22 am

Сообщение Sm1Le »

Хуево он работает -_-
SmOOve
Грамотный
Сообщения: 213
Зарегистрирован: Сб окт 04, 2008 3:57 pm

Сообщение SmOOve »

завтра попробую написать если время будет
Alekseer
Грамотный
Сообщения: 164
Зарегистрирован: Сб июн 21, 2008 1:43 am

Сообщение Alekseer »

Sm1Le, действительно хуево.
бот складирует в телегу не все вещи и не всегда.
I hear Thunder but there is no rain. This kind of Thunder breaks walls and brings pain.
SmOOve
Грамотный
Сообщения: 213
Зарегистрирован: Сб окт 04, 2008 3:57 pm

Сообщение SmOOve »

сколько ты готов выложить за этот макрос?
vit
Бывалый
Сообщения: 624
Зарегистрирован: Вс мар 25, 2007 9:18 pm
Сервер RO:: localhost
Откуда: Санкт-Петербург

Сообщение vit »

Походу аффтору макрос больше не нужен. Вобщем если кому нужен такой макрос(при перевесе бот перекладывает все неэкипированные вещи в телегу), то обращайтесь.
Alekseer
Грамотный
Сообщения: 164
Зарегистрирован: Сб июн 21, 2008 1:43 am

Сообщение Alekseer »

он был нужен мне месяц назад, поздно вы написали)
I hear Thunder but there is no rain. This kind of Thunder breaks walls and brings pain.
vit
Бывалый
Сообщения: 624
Зарегистрирован: Вс мар 25, 2007 9:18 pm
Сервер RO:: localhost
Откуда: Санкт-Петербург

Сообщение vit »

Эх, вот апнули старую тему, а я на дату не посмотрел и написал макрос :D
Так как макрос такой никому оказался не нужен(и скорее всего не будет нужен из-за своей специфичности), то выложу ка я его, т. к. он весьма интересен(возможно кому-нибудь будет интересен использованный приём):

Код: Выделить всё

# Макрос, перекидывающий все неэкипированные вещи в телегу при перевесе
# © _vit 3.11.2008
# Тонкости:
#     - Следить, чтобы вес за 1 раз перекидываемой вещи(вещей одного наименования) был меньше свободного места в телеге, иначе зациклится
#     - Следить, чтобы в обоих автомакросах условие на вес было одинаковым - например "weight > 25%"
#     - Следить, чтобы число необходимого свободного места в телеге в условии второго автомакроса и в макросе были равны - например 1000

automacro movetocard {
    # При каком перевесе перекидывать
    weight > 50%
    call movetocardm
    macro_delay 0.3
    exclusive 1
    timeout 3
}
automacro movetocardrel {
    # При каком перевесе перекидывать
    weight > 50%
    eval ($::cart{'weight_max'} - $::cart{'weight'}) >= 1000
    call {
        release movetocard
    }
    exclusive 1
    timeout 5
}
macro movetocardm {
    do eval $::Macro::Data::varStack{testcart} = $::cart{exists}
    if ($testcart = "") goto error1
    
    do eval foreach my $_item(@{$::char->inventory->getItems}){if($_item->{equipped}==0){$::Macro::Data::varStack{itemstotr}.=', '.$_item->{name}}}
    $item = [$itemstotr]
    
    log Перекинем в телегу: $itemstotr
    :transfer
        $item = [$itemstotr]
        if ($item == "") goto end
        
        do eval $::Macro::Data::varStack{testcart} = $::cart{'weight_max'} - $::cart{'weight'}
        if ($testcart < 1000) goto error2
        
        do cart add $item @invamount($item)
    goto transfer
    
    :end
        log Вещей в телеге: @eval($::cart{'weight'}) / @eval($::cart{'weight_max'})
        lock movetocardrel
        stop
    
    :error1
        log Ошибко! У нас нету телеги...
        goto end2
    :error2
        log Ошибко! Телега забита: @eval($::cart{'weight'}) / @eval($::cart{'weight_max'})
        goto end2
    :end2
        lock movetocard
        release movetocardrel
}
P.S: Для тех кто не понял, макрос может зависнуть скажем если мы хотим кинуть 70 мяса(70*15 = 1050 веса) а телега заполнена на 6990/8000(6990 + 1050 = 8040 > 8000)(Это если в настройках макроса свободный вес стоит 1000(как здесь)). При желании это можно обойти(и довольно легко) :twisted: . Также можно добавить вещи-исключения(и их количество).
Ответить