Yoko
http://forum.yoko.com.ua/

розкладка итемов из кучки по одному
http://forum.yoko.com.ua/viewtopic.php?f=3&t=7012
Page 1 of 1

Author:  lefty [ 2006-03-17 15:52:44 ]
Post subject:  розкладка итемов из кучки по одному

мне для скрипта нада что бы итемы (в моем случае перья) были в сумке не в куче, а по одной штучке, вруную розкидывать парит. можно ли как то через инжу это проделать ? подскажите плз

Author:  Scripts Writer [ 2006-03-18 06:25:16 ]
Post subject: 

Ну типо в инже есть команда
Code:
uo.moveitem
и ею можно задавать координаты по бекпеку( синтаксис посмотри в топике Раскладка по бекпеку ) . ну и в твоём случае можно через переменные и циклы(
Code:
for 0 to 100 
) попробовать.

Author:  Destruction [ 2006-03-18 18:07:01 ]
Post subject: 

Основная проблема скрипта - то, что ID начальной кучки будет постоянно меняться. Но впринципе, это даже не проблема.

Скрипт раскидает все кучки этого типа в сумке. Я полагаю, это нужно для раскладки руды? -) Проще сразу брать скрипт на плавку.

Code:
sub ToShareItemByOne()
var x = 100 ; координата по x, куда класть.
var y = 100 ; координата по y, куда класть.
var delay = 500 ; пауза на раскладку.
uo.print("Укажи предмет, который следует разложить по 1шт.")
uo.addObject("item to share")
while uo.targeting()
wait(100)
wend
var item = uo.getGraphic("item to share")
var cnt = uo.containerOf("item for share")
repeat
uo.findtype(item,"-1",cnt)
if uo.findcount() then
if uo.getQuantity("finditem") then
uo.moveitem("finditem", "1", cnt, str(x), str(y), "0")
checklag()
wait(delay)
else
uo.ignore("finditem")
endif
endif
until not uo.findcount()
endsub

Author:  Grin [ 2006-03-18 19:37:21 ]
Post subject: 

много ошибок + все на много проще;)
поповоду ида кучи точно не помню

Author:  Destruction [ 2006-03-18 23:18:36 ]
Post subject: 

Grin wrote:
много ошибок + все на много проще;)
поповоду ида кучи точно не помню

Не понял... Мне говорят, что работает !!!

А я по-поводу ID кучки отлично помню - берём кучку, пусть у неё ID = id1, муваем из кучки итем - у мувнотого будет ID = id1, а для старой будет сгенерирован новый ID.

Не совсем логично, но вполне практично, вплане тинкера :wink:

2Grin, ты хороший спец, я верю, что ты без причины не пишешь, но сам я причину не вижу - конкретизируй свои, гмм, ну пусть будет "обвинения".

Author:  agem [ 2006-03-19 01:50:41 ]
Post subject: 

Дарю гениальную идею - двигать не по одному айтему, а по (n-1), где n - число айтемов в кучке. Тогда проблемы с меняющимся id не будет. :D

Author:  Destruction [ 2006-03-19 01:58:50 ]
Post subject: 

agem wrote:
Дарю гениальную идею - двигать не по одному айтему, а по (n-1), где n - число айтемов в кучке. Тогда проблемы с меняющимся id не будет. :D

Интересная идея :-)

Ща воплощу.

Code:
sub ItemSharing()
var delay = 500 ; пауза
uo.print("Укажи объект для раскладки по 1шт.")
uo.addObject("item to share")
while uo.targeting()
wait(100)
wend
while uo.getQuantity("item to share") > 1
uo.moveitem("item to share", uo.getQuantity("item to share")-1, uo.containerOf("item to share"), uo.getX("item to share"), uo.getY("item to share"), uo.getZ("item to share"))
wait(delay)
wend
endsub

Author:  lefty [ 2006-03-19 02:49:07 ]
Post subject: 

мне это для бовкрафта надо, что бы по одной стреле делал
а еще можно использовать для прокачки стилинга, что бы по одной копейке красть 8)

спасиба за скрипт, ща попробую

Author:  lefty [ 2006-03-19 02:51:36 ]
Post subject: 

Работает, пасиба :D

Author:  DerMeister =) [ 2006-03-21 17:50:03 ]
Post subject: 

Destruction wrote:
agem wrote:
Дарю гениальную идею - двигать не по одному айтему, а по (n-1), где n - число айтемов в кучке. Тогда проблемы с меняющимся id не будет. :D

Интересная идея :-)

Ща воплощу.

Code:
sub ItemSharing()
var delay = 500 ; пауза
uo.print("Укажи объект для раскладки по 1шт.")
uo.addObject("item to share")
while uo.targeting()
wait(100)
wend
while uo.getQuantity("item to share") > 1
uo.moveitem("item to share", uo.getQuantity("item to share")-1, uo.containerOf("item to share"), uo.getX("item to share"), uo.getY("item to share"), uo.getZ("item to share"))
wait(delay)
wend
endsub


А у меня не работает. Почему-то кладёт в ту же кучку из которой брал, причём кучка почемуто кладётся в левый верхний угол пака...
Получается замкнутый круг. :(

Author:  DerMeister =) [ 2006-03-21 19:25:59 ]
Post subject: 

А вот так работает:

Code:
sub ItemSharing() 
var delay = 250 ; пауза
uo.print("Укажи объект для раскладки по 1шт.")
uo.addObject("item to share")
while uo.targeting()
wait(100)
wend
while uo.getQuantity("item to share") > 1
uo.moveitem("item to share", str(uo.getQuantity("item to share")-1), uo.containerOf("item to share"), str(uo.getX("item to share")), str(uo.getY("item to share")), str(uo.getZ("item to share")))
wait(delay)
wend
endsub


Но всё равно спасибо за идею...

Author:  Destruction [ 2006-03-23 12:34:38 ]
Post subject: 

Чёрт, забыл к стрингам привести :(

Page 1 of 1 All times are UTC+02:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/