Yoko

All sides of Injection
It is currently 2025-12-22 23:45:29

All times are UTC+02:00




Post new topic  Reply to topic  [ 41 posts ]  Go to page 1 2 3 Next
Author Message
 Post subject: Вопросик
PostPosted: 2005-01-16 00:58:05 
Offline
User avatar

Joined: 2004-07-22 16:07:11
Posts: 260
Code:
sub Magery()
VAR NS='0x0F88'
VAR Sunduk='0x40629E13'
VAR Kolvo=10
While NOT UO.Dead()
UO.Cast('Poison', 'Self')
      wait(3000)
   If UO.InJournal('You lack sufficient') Then
      While UO.Mana<UO.Int
         Repeat
         wait(100)
         until UO.InJournal('You are') OR ('You lose')
      Wend
   Else
      If UO.InJournal('You lack Nightshade') Then
         UO.FindType('NS', -1, Sunduk)
         UO.Grab(str(Kolvo), 'NS')

endif
endif
Wend
end sub

Вот накарябал, для себя хорошенький скрипт на магию, но при запуске выдаёт: Invalid serial index. Причём выдаёт это, как через Uo.Print(). Сам разобраться не смог... Вот хочу узнатть у вас, к чему бы это?


Top
   
 Post subject:
PostPosted: 2005-01-16 01:58:38 
Offline
Expert!

Joined: 2004-04-03 17:36:29
Posts: 2544
Location: Saint-Petersburg
тупое предположение - в сериале русских букв нету? Ну и, как мне только что подсказал Йоко, '-1' - в кавычках пиши на всяк случай в финдтайпе.


Top
   
 Post subject:
PostPosted: 2005-01-16 02:10:44 
Offline
Junior Expert
User avatar

Joined: 2004-11-13 00:43:55
Posts: 474
Location: Киберзадроцк
UO.Grab(str(Kolvo), 'NS') замени на UO.Grab(str(Kolvo), 'finditem')


Top
   
 Post subject:
PostPosted: 2005-01-16 13:09:54 
Offline
User avatar

Joined: 2004-07-22 16:07:11
Posts: 260
Edred wrote:
тупое предположение - в сериале русских букв нету? Ну и, как мне только что подсказал Йоко, '-1' - в кавычках пиши на всяк случай в финдтайпе.

Русских букв нету, не в ручную сериал вводил. '-1'- Не помогло.
666Man666 wrote:
UO.Grab(str(Kolvo), 'NS') замени на UO.Grab(str(Kolvo), 'finditem')

Случайно описался, и даже не в этом дело.
--------------------------------------------------------------------------------------
Так и не нашёл ошибки... Ребят проверьте мой Grab(), а то в первый раз пишу со взятием предметов скрипт.


Top
   
 Post subject:
PostPosted: 2005-01-16 13:44:07 
Offline
Junior Expert
User avatar

Joined: 2004-11-13 00:43:55
Posts: 474
Location: Киберзадроцк
Во я дурик, не заметил :)
вот
Code:
UO.Cast('Poison', 'Self')
тут ошибка, иши :))))


Top
   
 Post subject:
PostPosted: 2005-01-16 14:01:59 
Offline
User avatar

Joined: 2004-07-22 16:07:11
Posts: 260
666Man666 wrote:
Во я дурик, не заметил :)
вот
Code:
UO.Cast('Poison', 'Self')
тут ошибка, иши :))))

Code:
 UO.Cast('Poison','self') 
- А вот так работает =).
Code:
UO.FindType('NS', '-1', Sunduk)
UO.Grab(str(Kolvo), 'finditem')
- Тут мне кажется есть ошибка, т.к. теперь пишет: NS=>0x019F -вот эту строчку я не понимаю.
Items Found: 0


Top
   
 Post subject:
PostPosted: 2005-01-16 14:13:55 
Offline
Junior Expert
User avatar

Joined: 2004-11-13 00:43:55
Posts: 474
Location: Киберзадроцк
Раз ноль фонд значит нету в яшике регов....


Top
   
 Post subject:
PostPosted: 2005-01-16 14:25:45 
Offline
User avatar

Joined: 2004-07-22 16:07:11
Posts: 260
666Man666 wrote:
Раз ноль фонд значит нету в яшике регов....

Я забыл написать, что они там точно есть и проблемма не в этом.


Top
   
 Post subject:
PostPosted: 2005-01-16 20:31:28 
Offline
Expert!

Joined: 2004-04-03 17:36:29
Posts: 2544
Location: Saint-Petersburg
а версия клиента какая?


Top
   
 Post subject:
PostPosted: 2005-01-16 23:57:53 
Offline
User avatar

Joined: 2004-07-22 16:07:11
Posts: 260
Edred wrote:
а версия клиента какая?

2.0.3.


Code:
sub Magery()
VAR NS='0x0F88'
VAR Sunduk='0x4021C658'
VAR Kolvo=10
VAR k = 0, j
VAR LastTimer
while NOT UO.Dead()
-----------------------Часть со взятием рега------------------------------------
While UO.NS<=1
UO.FindType(NS, -1, Sunduk)
If UO.FindCount()==0 Then
UO.Print("NS not found, script terminated")
else
j = UO.GetQuantity( 'finditem' )
If j > Kolvo Then
UO.Print("I can use" + str( j ) + "NS")
else
UO.Print("I can't use" + str( j ) + "NS")
Endif
If Kolvo == 1 Then
UO.FindType( NS )
UO.MoveItem( 'finditem', '2', Sunduk )
wait(500)
Else
UO.Grab( Str( Kolvo ), 'finditem' )
wait(500)
-------------------------------------------------------------------------------------
Endif
Endif
wend
while UO.Mana>=9
UO.Cast('Poison','self')
wait(3000)
wend
while UO.Mana<UO.Int
LastTimer=UO.Timer()
UO.UseSkill('Meditation')
repeat
wait(100)
until UO.InJournal("You are") OR UO.InJournal("You lose") OR UO.Timer()>LastTimer+200
UO.DeleteJournal()
wait(2000)
wend
Wend
end sub
- В этом скрипте берёт реги из сундука.
Code:
sub Magery()
VAR NS='0x0F88'
VAR Sunduk='0x400BFED4'
VAR Kolvo=10
While NOT UO.Dead()
While NOT UO.InJournal("You lack Nightshade") OR UO.InJournal("You lack sufficient")
UO.Cast('Poison', 'self')
wait(3000)
wend
   If UO.InJournal("You lack sufficient") Then
      While UO.Mana<UO.Int
         Repeat
         wait(100)
         until UO.InJournal("You are") OR UO.InJournal("You lose")
      Wend
   Else
      If UO.InJournal("You lack Nightshade") Then
-----------------------Часть со взятием рега------------------------------------
         UO.FindType('NS', '-1', Sunduk)
         UO.Grab(str(Kolvo), 'finditem')
-------------------------------------------------------------------------------------
Wend

end sub
- А в этом нет.


Top
   
 Post subject:
PostPosted: 2005-01-17 00:29:43 
Offline
Expert!

Joined: 2004-04-03 17:36:29
Posts: 2544
Location: Saint-Petersburg
А почему в Findtype ты NS в кавычках пишешь? Это же у тебя переменная. А так поиск пытается искать предопределенный объект NS которого у тебя, насколько я понимаю, нету. Убери кавычки.


Top
   
 Post subject:
PostPosted: 2005-01-17 00:47:20 
Offline
User avatar

Joined: 2004-07-22 16:07:11
Posts: 260
Edred wrote:
А почему в Findtype ты NS в кавычках пишешь? Это же у тебя переменная. А так поиск пытается искать предопределенный объект NS которого у тебя, насколько я понимаю, нету. Убери кавычки.

И впрямь помогло, большое человеческое тебе =). И новый вопрос:
Code:
While NOT UO.InJournal("You lack Nightshade") OR UO.InJournal("You lack sufficient")
UO.Cast('Poison', 'self')
wait(3000)
wend
- я писал это с уверенностью, что это означает:
Code:
Пока не найдёшь в журнале("You lack Nightshade") или ("You lack sufficient")
Кастовать пойзон на себя
ждать 3 секунды
конец цыкла
Оказывается это означает что-то другое. Если не трудно обьясните, где я накосячил.


Top
   
 Post subject:
PostPosted: 2005-01-17 06:05:19 
Offline
Junior Expert
User avatar

Joined: 2004-11-13 00:43:55
Posts: 474
Location: Киберзадроцк
Нот во втором инджорнале забыл


Top
   
 Post subject:
PostPosted: 2005-01-17 07:51:05 
Offline
Expert!

Joined: 2004-04-03 17:36:29
Posts: 2544
Location: Saint-Petersburg
И очистить журнал перед циклом забыл... Так что он может легко мессаги с предыдущего каста находить и не работать. Именно для таких целей и существует цикл repeat...until

Code:
repeat
   UO.DeleteJournal()
   UO.Cast(...)
   Wait(...)
until UO.InJournal(...) or UO.InJournal(...)


Top
   
 Post subject:
PostPosted: 2005-01-17 10:16:53 
Offline
Site Admin
User avatar

Joined: 2004-04-03 16:49:38
Posts: 1964
KrafteR wrote:
Code:
While NOT UO.InJournal("You lack Nightshade") OR UO.InJournal("You lack sufficient")
UO.Cast('Poison', 'self')
wait(3000)
wend
- я писал это с уверенностью, что это означает:
Code:
Пока не найдёшь в журнале("You lack Nightshade") или ("You lack sufficient")
Кастовать пойзон на себя
ждать 3 секунды
конец цыкла
Оказывается это означает что-то другое. Если не трудно обьясните, где я накосячил.


обычная булева алгебра.
NOT A OR B это не то же самое что NOT (A or B) потому что NOT действует с высшим приоритетом на ближайший операнд


Top
   
 Post subject:
PostPosted: 2005-01-17 23:56:05 
Offline
User avatar

Joined: 2004-07-22 16:07:11
Posts: 260
Спасибо всем, кто помагал, но у меня ещё куча проблем с этим скриптом, если у кого-то есть свободное время, то можно было бы обменяться ICQ, дабы меня взяли в учиники.


Top
   
 Post subject:
PostPosted: 2005-01-18 00:13:34 
Offline
Expert!

Joined: 2004-04-03 17:36:29
Posts: 2544
Location: Saint-Petersburg
KrafteR wrote:
Спасибо всем, кто помагал, но у меня ещё куча проблем с этим скриптом, если у кого-то есть свободное время, то можно было бы обменяться ICQ, дабы меня взяли в учиники.


Лучше здесь. Один устанет - другой поможет, да и может еще кому пригодится. Не стесняйся. У меня, например, вызывают раздражение только требования выдать кому-то готовый рабочий скрипт, настроенный уже под этого кого-то, причем аргументом является то, что этот кто-то в скриптах ничего не понимает и понимать не хочет. А если кто-то хочет учиться - завсегда пожалуйста.


Top
   
 Post subject:
PostPosted: 2005-01-18 00:35:19 
Offline
User avatar

Joined: 2004-07-22 16:07:11
Posts: 260
Edred wrote:
Лучше здесь. Один устанет - другой поможет, да и может еще кому пригодится. Не стесняйся. У меня, например, вызывают раздражение только требования выдать кому-то готовый рабочий скрипт, настроенный уже под этого кого-то, причем аргументом является то, что этот кто-то в скриптах ничего не понимает и понимать не хочет. А если кто-то хочет учиться - завсегда пожалуйста.

Ну пасиб, а то я уж было подумал, что я всех достал со своими вопросами =). Сам скрипты только брал, а тут решил сесть и написать, и затянуло, вот уже третью неделю мастерю и постоянно куча вопросов, вобщем щас пару новых идей появилась, как их опробую задам новые вопросы.


Top
   
 Post subject:
PostPosted: 2005-01-18 01:15:52 
Offline
User avatar

Joined: 2004-07-22 16:07:11
Posts: 260
Code:
If UO.Mana<9 Then<--------------------------------------------------- Если мана меньше 9 тогда
    While UO.Mana<UO.Int<-------------------------------------------- Пока маны меньше интелекта
    UO.Useskill('Meditation')<--------------------------------------- Использовать скил медитацию
        Repeat
        wait(100)<--------------------------------------------------- Ждать
        until UO.InJournal("You are") OR UO.InJournal("You lose")<--- Пока не появятся надписи в журнале
    Wend

Вот что хотел, а строку "Ждать" не получается сделать, почему-то скрипт постоянно юзает медитацию. Если можно, хочется услышать альтернативные примеры медитации в ваших скриптах.


Top
   
 Post subject:
PostPosted: 2005-01-18 02:45:22 
Offline
Expert!

Joined: 2004-04-03 17:36:29
Posts: 2544
Location: Saint-Petersburg
KrafteR wrote:
Code:
If UO.Mana<9 Then<--------------------------------------------------- Если мана меньше 9 тогда
    While UO.Mana<UO.Int<-------------------------------------------- Пока маны меньше интелекта
    UO.Useskill('Meditation')<--------------------------------------- Использовать скил медитацию
        Repeat
        wait(100)<--------------------------------------------------- Ждать
        until UO.InJournal("You are") OR UO.InJournal("You lose")<--- Пока не появятся надписи в журнале
    Wend

Вот что хотел, а строку "Ждать" не получается сделать, почему-то скрипт постоянно юзает медитацию. Если можно, хочется услышать альтернативные примеры медитации в ваших скриптах.


Та же проблема. Не забывай в начале вайла очистить журнал. То есть после While UO.Mana<UO.Int поставь UO.DeleteJournal()


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 41 posts ]  Go to page 1 2 3 Next

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 5 guests


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:  
Powered by phpBB® Forum Software © phpBB Limited