Page 1 of 2
Нужен скрипт на разведение животных.
Posted: 2010-02-11 16:19:19
by Jekaaa
Доброго времени суток! Нужен следующий скрипт перед чаром стоит живность (некуда ходить не надо) и каждый раз когда живность пишет -19food (прописывается в журнале) нужно что бы чар брал из мешка под ним еду и кормил того питомца который это написал, и так далее.
Желательно сделать что бы я сам мог ставить иади еды.
Заранее спасибо!
Re: Нужен скрипт на разведение животных.
Posted: 2010-02-16 00:13:37
by Jekaaa
Ребят поделитесь скриптом плиз. Я просто не фига в скриптах не секу а для вас это не сложно...
Re: Нужен скрипт на разведение животных.
Posted: 2010-02-16 10:19:05
by Mirage
както так:
Code: Select all
sub kormim()
VAR cont = 'ID' ; мешок с кормом
VAR target
VAR item = '0x0C72' ; тип еды
VAR INFO = 'что то там про food' ; что именно пишется в журнале
VAR coll = '10' ; количество еды которое берешь за 1 раз.
uo.deletejournal()
while 1
if uo.injournal( INFO ) then
terget=uo.JournalSerial(uo.InJournal( INFO )-1)
uo.deletejournal()
uo.findtype(item,'-1',cont)
uo.moveitem('finditem',coll,target)
wait(500)
endif
wait(500)
wend
end sub
Re: Нужен скрипт на разведение животных.
Posted: 2010-02-16 12:28:58
by Jekaaa
Спасибо! А как сделать что бы он брал разные типы еды? и что бы он кормил три типа животных?
Re: Нужен скрипт на разведение животных.
Posted: 2010-02-16 13:57:07
by Mirage
Правильно сформулировать просьбу.

Re: Нужен скрипт на разведение животных.
Posted: 2010-02-16 14:15:34
by Jekaaa
У меня 6 видов еды(яблоки, груши и тд.)
И три типа животных (орн, оклок, зострыч)
Как вписать все виды еды и все виды живности?
Re: Нужен скрипт на разведение животных.
Posted: 2010-02-16 20:50:49
by Андрюха из Одессы
Jekaaa wrote:Ребят поделитесь скриптом плиз. Я просто не фига в скриптах не секу а для вас это не сложно...
Мда...... видимо те кто умеют писать скрипты, уже родились с этими знаниями.
Учебники не пробовал читать???.........очень полезная вещь.
Re: Нужен скрипт на разведение животных.
Posted: 2010-02-16 21:20:25
by Jekaaa
Лучше бы помог а не умничал...
Re: Нужен скрипт на разведение животных.
Posted: 2010-02-16 21:22:46
by Mirage
я хз мне просто лень таким заниматься. Скрипт рабочий вроде выше. У меня есть скрипт чтобы кормил 25 видами жрачки. Но он не оптимизирован - хавка валяется в паке, какието условия левые.
Чтобы сделать то что ты просишь надо ввести 2 массива, сделать проверку по журналу на животное которое произнесло коронную фразу, искать тип еды по массиву, кормить до сытости... долго много геморно и лениво.
Re: Нужен скрипт на разведение животных.
Posted: 2010-02-17 09:55:10
by Jekaaa
Ясно, а можно сделать так что бы он брал любую вещь из этого пака? То есть я наложу туда жратвы а ему будет по фигу что там за ID он будет брать абсолютна любую вещь из этого пака по 19шт. и кормить животное? которое у меня будет прописано?
Re: Нужен скрипт на разведение животных.
Posted: 2010-02-17 11:36:45
by Beyonder
item=-1
Должно сработать.
Re: Нужен скрипт на разведение животных.
Posted: 2010-02-17 14:44:04
by Jekaaa
Спасибо все работает просто супер! Только одна проблема мне надо кормить именно по 19 а если у меня в этом мешке допусти 4 груши он принимает их как за 19 можно ли как нить сделать что бы он докармливал если мало?
Re: Нужен скрипт на разведение животных.
Posted: 2010-02-17 15:08:23
by Mirage
без переделки даст 4 при следующем кормлении даст 19 другого продукта.
Re: Нужен скрипт на разведение животных.
Posted: 2010-02-17 15:10:43
by Jekaaa
И еще если можно что бы он кидал еду на любого кто напишет -19 food =)
Re: Нужен скрипт на разведение животных.
Posted: 2010-02-17 15:31:09
by Mirage
Мне кажется или автор топика плавно подводит нас к тому что ему надо?

проверь - я скрипт поправил как ты хотел.
Re: Нужен скрипт на разведение животных.
Posted: 2010-02-17 17:42:20
by Beyonder
Jekaaa wrote:Спасибо все работает просто супер! Только одна проблема мне надо кормить именно по 19 а если у меня в этом мешке допусти 4 груши он принимает их как за 19 можно ли как нить сделать что бы он докармливал если мало?
Думаю что-то вроде такого:
Code: Select all
sub kormim()
VAR cont = 'ID' ; мешок с кормом
VAR target
VAR item = -1 ; тип еды
VAR INFO = 'что то там про food' ; что именно пишется в журнале
VAR coll = 10 ; количество еды которое берешь за 1 раз.
VAR collLeft
VAR toMove
uo.deletejournal()
while 1
if uo.injournal( INFO ) then
collLeft = coll ;Reset counter
target=uo.JournalSerial(uo.InJournal( INFO )-1)
uo.deletejournal()
while (collLeft > 0)
uo.findtype(item,'-1',cont)
toMove = min(collLeft,UO.GetQuantity('finditem')) ;Amount we can move from found stack
collLeft = collLeft - toMove ;Amount left to be moved
uo.moveitem('finditem',toMove,target)
wait(500)
wend
endif
wait(500)
wend
end sub
Sub min(a,b)
if (a > b) then
return b
else
return a
endif
endsub
Re: Нужен скрипт на разведение животных.
Posted: 2010-02-17 19:16:09
by Mirage
зачем условия типо
двигаем (19, 8 )
если еды 8
двинет 8
если и так двинет 8 одной строкой?
конечно грамотнее но помоему и так сойдет

Re: Нужен скрипт на разведение животных.
Posted: 2010-02-17 20:05:12
by Beyonder
Для того чтобы не превысить максимум.
К примеру если у нас в стопке будет 40, а двинуть осталось 2 - он двинет 2.
А если у нас в стопке 2, а двинуть нужно 40, то он двинет тоже 2.
Попробуй другим способом захватить оба условия в понятном виде одной строкой кода.
Re: Нужен скрипт на разведение животных.
Posted: 2010-02-17 21:15:33
by Mirage
Code: Select all
uo.findtype(item,'-1',cont)
uo.moveitem('finditem',coll,target)
куча в 30 груш. Разовый кормеж 14
1 шаг есть 30 - берем 14
2 шаг есть 16 - берем 14
3 шаг есть 2 - берем 2
4 шаг переходим к яблокам.
или я ошибаюсь?

Re: Нужен скрипт на разведение животных.
Posted: 2010-02-18 02:12:35
by Beyonder
Mirage wrote:Code: Select all
uo.findtype(item,'-1',cont)
uo.moveitem('finditem',coll,target)
куча в 30 груш. Разовый кормеж 14
1 шаг есть 30 - берем 14
2 шаг есть 16 - берем 14
3 шаг есть 2 - берем 2
4 шаг переходим к яблокам.
или я ошибаюсь?

Ошибаешся, т.к. автор топика попросил чтобы каждый раз обязательно кормить по 19 едениц продукта. В твоём варианте под это условие не проходит шаг 3.
В моём варианте будет так:
1 шаг есть 30 - берём например 14
2 шаг есть 16 - берём 14
3 шаг есть 2 - берём 2, находим сразу-же яблоки (60 штук) и сразу даём 12 яблок в добавок
4 шаг есть 48 яблок - берём 14
...
Кроме того мой скрипт успешно справится даже с такой задачей:
Есть 4 яблока, 4 груши, 4 соломы, 4 капусты, 4 морковки. Разовый кормёж 19.
1 шаг - даём 4 яблока, даём 4 груши, даём 4 соломы, даём 4 капусты, даём
3 морковки. В сумме ровно 19.