Page 1 of 1

Проблема с одеванием талисманов

Posted: 2008-09-13 09:13:21
by Eventualis
Талисманы не запоминаются и не одеваются командой
uo.setdress или uo.arm
и не одеваются.
Кто нибудь знает выход из ситуации?

Posted: 2008-09-18 16:48:53
by Eventualis
up, ну не ужели никого это не волнует?

Posted: 2008-09-18 17:46:04
by Destruction
,info на одетый талисман, смотреть что написано напротив "C=" или даже глянуть, что там в Layer..

Подсказки достаточно ?)

Ещё есть вариант рассмотреть несколько более детально все способы одевания талисмана.

Вы могли бы сами хоть что-то проанализировать, выложить информацию - а потом спрашивать.

Posted: 2008-09-19 22:22:57
by Eventualis
в этой записи есть лаер
ID=0x401502DD Type=0x2F5B FJSRMMD Name=
Quantity: 0 Colour: 0x02D0 Layer: 9 Has: 1
X=65535 Y=65535 Z=0 C=0x00005BC0 F=0x00

В Хелпе написано что: Текущие одетые вещи можно посмотреть нажав кнопку Layers в закладке Objects, что очень упрощает задачу.
По Ид находим название слоя 0x09, то есть это не Neck который в списке слоев девятый а особый слой.
Neck в списке слоев в Хелпе 9 тый, но это горгетка, горгетки теперь в 10-том слое.

Для теста написал скрипт

Code: Select all

sub talisman ()
var talisman='0x2F5B'
 if UO.GetGraphic( UO.ObjAtLayer( '0x09' ) ) == talisman Then
    UO.Print('Nadeto')
    uo.unequip('0x09')
    return
 else
    UO.Print('Ne nadeto')
    uo.equipt('0x09',talisman)
    wait(100)
 endif
end sub


Когда талисман одет скрипт его видит и орет "надето" и не хочет снимать, пишет "Dangerous action", а когда не надет, скрит не одевает, а орет "Dangerous action" :?

Posted: 2008-09-19 22:57:02
by Destruction
ну так - должно банально работать:

uo.moveitem( "item", "1", "self" );

Posted: 2008-09-20 00:43:25
by Eventualis
с uo.moveitem перекладывает в бакпаке с места на место :D
Нашел в интернете что 0x09 является пакетом сингл клика.
http://kec.cz/tartaros/steamengine/uplo ... style=gold
Когда скрипт просто проверяет нет ли в слое талисмана - видит есть он там или нет.
А вот когда хочет снять или одеть наверно шлет серверу код 0x09 и тут наверно возникает ошибка.

Posted: 2008-09-20 09:49:06
by Grin
пипец фантазия...

со времен когда был баг при раздевании выкинуть свой банк, был сделан защитный механизм что бы люди перестали вайпить свои банки:)

set

Code: Select all

safeequip - включает/отключает проверки безопасности при одевании


поповоду не разници в 1 между леерами, все зависет откуда осчет идет от 0 или от 1...

Posted: 2008-09-20 12:16:24
by Eventualis
спасибо за помощь :D
ну кто мог подумать что талисман который на щите считается в слое Ring
Странно еще то что при одевании талисмана если одето кольцо он его снимает и только потом одевает талисман, если талисман одет а кольцо нет, то кольцо одевается не снимая талисман.
Значит после реса нужно сперва одеть талисман а уже потом весь остальной армор.
Сейчас макрос на одевание набора армора выглядит так:

Code: Select all

sub armor() 
   var talisman='0x2F5B'
   VAR t=800
   uo.setdressspeed(t)
   uo.equipt('Ring',talisman)
   wait(t)
   uo.dress('pvparmor')
   wait(t)
   uo.arm('pvpweapon')
   wait(t)
end sub

Posted: 2008-09-20 12:49:27
by Eventualis
Grin wrote:пипец фантазия...

со времен когда был баг при раздевании выкинуть свой банк, был сделан защитный механизм что бы люди перестали вайпить свои банки:)

set

Code: Select all

safeequip - включает/отключает проверки безопасности при одевании


поповоду не разници в 1 между леерами, все зависет откуда осчет идет от 0 или от 1...


а отключив safeequip не рискую потерять арм где нить?
я разобрался, вырубая safeequip он не снимает кольцо одевая талисман, но опция unset before set все равно работает при одевании армора если что то одето - снимает.
Талисман одевать лучше уже после всего армора.
Сейчас выглядит так:

Code: Select all

sub armor()
var talisman='0x2F5B'
VAR t=700
    uo.set ('safeequip','0')
    uo.setdressspeed(t)
    uo.dress('pvparmor')
    wait(t)
    uo.arm('pvpweapon')
    wait(t)
    uo.equipt('Ring',talisman)
    wait(t)
    uo.set ('safeequip','1')
end sub

Posted: 2008-09-20 14:48:54
by Grin
:) сделай эптиконтейнер на самого чара и посмотришь:) баг старый

Posted: 2008-09-20 15:04:00
by Eventualis
хз че то с тотемом, инквами неохота проверять :D а за баги банят у нас, вы меня пугаете, добавил в конце строчку uo.set ('safeequip','1')

Posted: 2008-09-20 15:11:21
by Grin
Ну если бы от этого бага была бы польза:) а так вайп бегпека и банка:)

Posted: 2008-10-12 18:05:14
by Jaraa
Странно как то, вроде стандартно талисманы в лэйер Ear должны быть на АОС серваках.

var amulet='0x1111'
UO.equipt("Ear",amulet)

Posted: 2008-10-12 20:04:14
by Eventualis
ну у меня одевает и не на еар а на ринг слой

Posted: 2008-10-13 14:11:59
by Jaraa
А кольцо и браслет в какой лейер тогда? о.О

Posted: 2008-10-13 14:54:14
by Destruction
Откройте меню Layers в закладке Display, там всё написано.

Posted: 2008-10-13 17:20:58
by Eventualis
В закладке Objects кнопка Layers
В строке с типом талисмана с ячейке слоя написано не имя слоя а "0x09"
Ну да че спорить если уже проверено что в слое Ring.
,info тоже показывает 9 слой.
ID=0x401502DD Type=0x2F5B FJSRMMD Name=
Quantity: 0 Colour: 0x02D0 Layer: 9 Has: 1
X=65535 Y=65535 Z=0 C=0x00005BC0 F=0x00

Posted: 2008-10-13 17:48:25
by Destruction
Хмм, а у меня там названия слоёв написаны..

Интересно, а оно по цифре одевать случаем не умеет ?)