Yoko

All sides of Injection
It is currently 2025-11-12 06:52:00

All times are UTC+02:00




Post new topic  Reply to topic  [ 6 posts ] 
Author Message
PostPosted: 2006-04-01 00:08:10 
Offline
User avatar

Joined: 2005-07-17 15:30:52
Posts: 308
Location: www.drw.ru
Не получается использовать setglobal() и getglobal, мож я че неплаьно делаю:

sub Mining()
uo.setglobal('per1', '0')
uo.print('Укажите сундук с регами, кирками, инвизками, манками')
uo.exec('addobject Sunduk1')
while uo.targeting()
wait(100)
wend
..............
...............
DropOre()
end sub

sub DropOre()
if uo.getglobal('per1') == 1 then
DIM Ore[4]
Ore[0] = '0x19B9'
Ore[1] = '0x19B7'
Ore[2] = '0x19BA'
Ore[3] = '0x19B8'
for var a = 0 to 3
uo.findtype(Ore[a])
while uo.findcount() > 0
uo.moveitem('finditem', '-1', 'Sunduk2')
wait(1000)
uo.findtype(Ore[a])
wend
next
endif
uo.setglobal('per1', '1')
end sub

Задумка была такова, чтоыб при первом запуске скритп не срабатывал, а при последующем (не через саб minimg) срабатывал, вот только он ни так ни этак не работает.


Top
   
 Post subject:
PostPosted: 2006-04-01 01:03:52 
Offline
Expert!

Joined: 2004-04-03 17:36:29
Posts: 2544
Location: Saint-Petersburg
Все просто:

uo.setglobal('per1', '0') - этой командой ты запихиваешь в глобалку 0 строкой.

uo.getglobal('per1') == 1 - тут ты берешь строку из глобалки и пытаешься ее сравнивать с числом. Преобразование строки в число по умолчанию всегда 0, ноль всегда не равен единице...

Что надо поправить, догадаешься сам? :roll:


Top
   
 Post subject:
PostPosted: 2006-04-01 03:15:54 
Offline
Expert!
User avatar

Joined: 2005-05-04 14:05:19
Posts: 2580
Location: Москва
Эх санч... не ужто мой пост не вразумил?
Говорил же что принимает все что угоно
а возвращает только строчку...


Top
   
 Post subject:
PostPosted: 2006-04-01 06:12:16 
Offline
User avatar

Joined: 2005-07-17 15:30:52
Posts: 308
Location: www.drw.ru
Вы меня запутали, лан буд разбираться что она делает методом тыка, а вообще я не програмист и всего неделю от силы пытаюсь написать что нить стоящее, ничего в этом не шаря, должно быть так?

sub Mining()
uo.setglobal('per1', 'abd')
uo.print('Укажите сундук с регами, кирками, инвизками, манками')
uo.exec('addobject Sunduk1')
while uo.targeting()
wait(100)
wend
..............
...............
DropOre()
end sub

sub DropOre()
if uo.getglobal('per1') == 'abc' then
DIM Ore[4]
Ore[0] = '0x19B9'
Ore[1] = '0x19B7'
Ore[2] = '0x19BA'
Ore[3] = '0x19B8'
for var a = 0 to 3
uo.findtype(Ore[a])
while uo.findcount() > 0
uo.moveitem('finditem', '-1', 'Sunduk2')
wait(1000)
uo.findtype(Ore[a])
wend
next
endif
uo.setglobal('per1', 'abc')
end sub

Можно сделать как нить так чтобы она с числами работала, тк удобнее?


Top
   
 Post subject:
PostPosted: 2006-04-01 09:23:13 
Offline
Expert!

Joined: 2004-04-03 17:36:29
Posts: 2544
Location: Saint-Petersburg
Эх, ну тебе надо же всего лишь в первом скрипте подставить кавычки:

Code:
if uo.getglobal('per1') == '1' then


И всех делов-то... Ну а если тебе очень хочется именно числом, то тогда так:

Code:
if val(uo.getglobal('per1')) == 1 then


Вообще, когда пользуешься хелпом, весьма настойчиво рекомендую обращать внимание на обозначение перед именем функции:
Quote:
Синтакс: text uo.GetGlobal(name)

Тут написано 'text' - это то, в каком виде функция возвращает значение.


Top
   
 Post subject:
PostPosted: 2006-04-01 13:40:57 
Offline
User avatar

Joined: 2005-07-17 15:30:52
Posts: 308
Location: www.drw.ru
Преогромное спасибо...


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 6 posts ] 

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Limited