Hex2Int

Anything and all.

Moderators: Murderator+, Murderator

Post Reply
Fon Gewisson
Posts: 12
Joined: 2004-11-15 10:33:20

Hex2Int

Post by Fon Gewisson »

Тащим деньги из сумки на полу в свой бакпэк.
Потом начинаем их считать.

Code: Select all

var i ='0', w='0'   
UO.FindType(0x0EED, 0x0000, 0x4028B5A8)
  while UO.FindCount('finditem')>0
        UO.MoveItem('finditem','-1', 'backpack')
    wait(1000)
    UO.FindType(0x0EED,'-1',0x4028B5A8)
  wend
w=  UO.Count(0x0EED)
i=  uo.Hex2Int(w)
uo.textprint(w)
uo.textprint(i)


Вроде все правильно и должно переводить. Ан нет. пишет 0х0 и хоть ты тресни. Ну а в хексах все замечательно выходит. Что не так?
Кстати...еще вопрос на засыпку. UO.Count работает только в багпэке? В других контейнерах это как реализовать?
Sfagnum
Expert!
Posts: 1284
Joined: 2004-07-04 00:14:58
Contact:

Re: Hex2Int

Post by Sfagnum »

мляяя.... робяты не забываем про кавычки/аппострофы
AGRS
Expert!
Posts: 1007
Joined: 2004-04-04 21:40:09
Contact:

Post by AGRS »

i= uo.Hex2Int(w)
следует заменить на
i= STR(w)

Разумеется после того как кавычки проставишь :)
AlexeyVorotnikov
Junior Expert
Posts: 138
Joined: 2004-09-18 15:12:06

Re: Hex2Int

Post by AlexeyVorotnikov »

Fon Gewisson wrote:Тащим деньги из сумки на полу в свой бакпэк.
Потом начинаем их считать.

Code: Select all

var i ='0', w='0'   
UO.FindType(0x0EED, 0x0000, 0x4028B5A8)
  while UO.FindCount('finditem')>0
        UO.MoveItem('finditem','-1', 'backpack')
    wait(1000)
    UO.FindType(0x0EED,'-1',0x4028B5A8)
  wend
w=  UO.Count(0x0EED)
i=  uo.Hex2Int(w)
uo.textprint(w)
uo.textprint(i)


Вроде все правильно и должно переводить. Ан нет. пишет 0х0 и хоть ты тресни. Ну а в хексах все замечательно выходит. Что не так?
Кстати...еще вопрос на засыпку. UO.Count работает только в багпэке? В других контейнерах это как реализовать?

IMHO, правильнее так:

Code: Select all

var i ='0', w=0   
UO.FindType('0x0EED', '0x0000', '0x4028B5A8')
  while UO.FindCount('finditem')>0
        UO.MoveItem('finditem','-1', 'backpack')
    wait(1000)
    UO.FindType('0x0EED','-1','0x4028B5A8')
  wend
w =  UO.Count('0x0EED')
i =  uo.Int2Hex(w)
uo.textprint(STR(w))
uo.textprint(i)

Правда я не понял, зачем нужен был [yhlp_Hex2Int]. Эта функция нужна для распарсивания текстовой строчки, содержащей число в 16-ричной системе счисления, в число. [yhlp_Count] сразу возвращает число. Если ты хочешь увидеть это число 16-ричной системе счисления, надо использовать [yhlp_Int2Hex].

По второму вопросу: [yhlp_Count] считает предметы в рюкзаке и подсумках. Чтобы подсчитать количество предметов в произвольном контейнере надо использовать комбинацию [yhlp_findtype] и [yhlp_FindCount].
Yoko
Site Admin
Posts: 1964
Joined: 2004-04-03 16:49:38
Contact:

Re: Hex2Int

Post by Yoko »

AlexeyVorotnikov wrote:Чтобы подсчитать количество предметов в произвольном контейнере надо использовать комбинацию [yhlp_findtype] и [yhlp_FindCount].

а ещё [yhlp_ignore], [yhlp_ignorereset], [yhlp_GetQuantity]
Fon Gewisson
Posts: 12
Joined: 2004-11-15 10:33:20

Post by Fon Gewisson »

Все это здорово...
только вот непонятно как подсчитать общее количество денег находящихся вне собственного пэка, а с контейнере находящемся на полу. Count тут не поможет. GetQuantity требует конкретный объект а не тип объекта. Как быть?
Fon Gewisson
Posts: 12
Joined: 2004-11-15 10:33:20

Post by Fon Gewisson »

чтобы было понятнее чего я добиваюсь:
цель -
1.подщет денег в одном контейнере вне пэка.
2.из другого контейнера перетаскиваем в первый. без перекладывания в свой пэк.
3.Подсчет сколько стало в первом.
Fon Gewisson
Posts: 12
Joined: 2004-11-15 10:33:20

Post by Fon Gewisson »

Прошу прощения за панику.
Нашел способ реализации
http://yoko.netroof.net/forum/viewtopic ... F%EA%E0%F5
Edred
Expert!
Posts: 2544
Joined: 2004-04-03 17:36:29
Location: Saint-Petersburg

Post by Edred »

Когда-то Саваж, кажись еще на старом форуме, публиковал именно такой скрипт. Подсчет денег в контейнере со всеми вложениями.
AGRS
Expert!
Posts: 1007
Joined: 2004-04-04 21:40:09
Contact:

Post by AGRS »

Он наверняка есть в его последнем автолоаде.
Post Reply