| Yoko http://forum.yoko.com.ua/ |
|
| памагите со скриптом ктонить http://forum.yoko.com.ua/viewtopic.php?f=3&t=2038 |
Page 1 of 1 |
| Author: | D [ 2004-11-22 17:09:32 ] |
| Post subject: | памагите со скриптом ктонить |
реконектор , когда изпитал у меня поевилос праблема такая што после дисконекта скрипт боукрафтинга заканчиваетса сам , я паставил в autostart() строики Wait (10000) bowcraft() он типо после реконеткта должен заново начать скрипт на бовкрафт не так ли ? так вот скрипт наченаетса заново но всегда он сразу заканчиваетса патамушто типо не может наити логи в сундучке хатье ани там , если я пашевелюс и тогда скрипт запушу тогда он поидот нормально . может инэкт надо както абнавить после реконетка? памагите ктонить я сам не чиво в етом не сображаю и времини тоже много нету . каму лень ити смотреть скрипт на боукрафт : ##################################################################### ; Bowcraft. v.1.03b (c) Edred ; ; Чар берет из сундука логи, крафтит из них шафты ; и складывает эти шафты в этот же сундук. ; Если логи закончились - выход. ; Если даггер (или что вы там используете) сломался - ; скрипт найдет аналогичный по типу в бэкпаке и возьмет ; в руки. ; ; 1.03b: Проверка, если Kolvo = 1, то берем три и кладем обратно два ; лога. ; sub bowcraft() VAR Sunduk = '0x4000F564' ; Сериал сундука VAR Logi = '0x1BDD' ; Тип логов VAR Shafts = '0x1BD4' ; Тип шафтов VAR Kolvo = 10 ; Брать логов для одного крафта VAR k = 0, j, dagger dagger = UO.ObjAtLayer( 'Rhand' ) UO.SetGlobal( 'instrtype', UO.GetGraphic( dagger ) ) While TRUE UO.FindType( Logi, -1, Sunduk ) ; Ищем логи в сундуке If UO.FindCount() == 0 Then UO.Print("Logs not found, script terminated") return else j = UO.GetQuantity( 'finditem' ) If j > Kolvo Then UO.Print( 'I can use ' + str( j ) + ' logs' ) else UO.Print( "I can't use " + str( j ) + " logs" ) return Endif Endif If Kolvo == 1 Then ; v. 1.03 UO.Grab( '3', 'finditem' ) wait(500) UO.FindType( Logi ) UO.MoveItem( 'finditem', '2', Sunduk ) wait(500) Else UO.Grab( Str( Kolvo ), 'finditem' ) wait(500) Endif ; А это - динамическая пауза на мув while UO.Count( Logi ) < Kolvo wait(100) wend ; проверка на то, что в руках по-прежнему даггер If CheckInstr() == 0 Then UO.Print("You don't have daggers!" ) return Endif UO.DeleteJournal() UO.CancelMenu() UO.WaitMenu ('What do you want to carve', 'shaft' ) UO.WaitTargetType( Logi ) UO.UseObject( dagger ) k = 0 while NOT UO.InJournal('You put') AND NOT UO.InJournal('fail') AND ( k < 50 ) k = k + 1 wait(300) wend If UO.Count( Shafts ) > 0 then UO.FindType( Shafts, -1, -1 ) UO.MoveItem( 'finditem', 0, Sunduk ) wait(500) while UO.Count( Shafts ) > 0 wait(100) wend UO.Print( 'Shafts moved' ) Endif Wend end sub Sub CheckInstr() ; проверим, есть ли в правой руке инструмент того же ; типа, что и в глобальной переменной instrtype ; если нет - найдем в бэкпаке такой инструмент и ; возьмем в правую руку. VAR typ = UO.GetGlobal( 'instrtype' ) VAR cur = UO.GetGraphic( UO.ObjAtLayer( 'Rhand' ) ) If typ == cur Then return 1 Endif UO.FindType( typ ) If UO.FindCount() == 0 Then return 0 Endif UO.Equip( 'RHand' , 'finditem' ) wait(1000) return 1 endsub скрипт на реконект : sub Reconnector() var ReconnectTime, RFlag ReconnectTime = '0' RFlag = 1 Repeat While (UO.ObjAtLayer('Bpack') == '') if RFlag Then ReconnectTime = MakeTime() RFlag = 0 endif Wait(20000) # WorldSave Protection UO.Say('') Wait(3000) UO.Say('') Wait(3000) UO.Say('') Wait(3000) UO.LDblClick(357,164) UO.LClick(616,459) Wait(3000) WEnd Wait(3000) if (RFlag == 0) and (ReconnectTime <> '0') Then ;UO.Exec('terminate all') ;UO.Exec('exec autoload') UO.TextOpen() UO.TextPrint('Disconnected & Reconnected @ '+ReconnectTime) RFlag = 1 ReconnectTime = '0' endif Until false end sub sub MakeTime() VAR D, T, Ret, i Ret = STR(UO.Time()) T = "" For i = 0 To Len(Ret) T = Ret[Len(Ret)-i] + T If (I == 2) OR (I == 4) Then T = ":" + T EndIf Next Ret = STR(UO.Date()) D = "" For i = 0 To Len(Ret) D = Ret[Len(Ret)-i] + D If (I == 2) OR (I == 4) Then D = "." + D EndIf Next Ret = T + " @ " + D RETURN Ret end sub бутье дабри памагитье и есть у каво скрипт штоби чар сам кушал от сундычка или проста с бекпака когда голодний ? |
|
| Author: | SpiritFC [ 2004-11-23 00:18:30 ] |
| Post subject: | |
Может я чтонить не так скажу так ака начинающий но ттрабла помоему это в сериале сундука так как он всегда помоему если я неичего не путаю разны после каждого захода в игру мне кажется лучше если в обжектах пробьёшь его и будешь перекладывать в обжект а не в сериал хотя может непомочь а ещё есть безумная идея это добавить поиск сундука и в него уже складывать впринципе ничего сложного в теории =)) но на практике........... честно скажу непробовал |
|
| Author: | Edred [ 2004-11-23 17:37:05 ] |
| Post subject: | Re: памагите со скриптом ктонить |
D wrote: реконектор , когда изпитал у меня поевилос праблема такая што после дисконекта скрипт боукрафтинга заканчиваетса сам , я паставил в autostart() строики
Wait (10000) bowcraft() он типо после реконеткта должен заново начать скрипт на бовкрафт не так ли ? так вот скрипт наченаетса заново но всегда он сразу заканчиваетса патамушто типо не может наити логи в сундучке хатье ани там , если я пашевелюс и тогда скрипт запушу тогда он поидот нормально . может инэкт надо както абнавить после реконетка? памагите ктонить я сам не чиво в етом не сображаю и времини тоже много нету . Честно говоря, ни слова не понял в твоем письме, поэтому и помочь не смогу. Попытайся написать все то же самое, но немного более грамотно. |
|
| Author: | NetAndrey [ 2004-11-23 20:08:28 ] |
| Post subject: | |
Если я правильно тебя понял, для того чтобы логи находилися, надо после входа в УО хоть раз открыть ентот сундук, как ты это сделаешь сам или в скрипте не важно. Можешь, например, прописать две строки в скрипте Вставь: VAR k = 0, j, dagger ; под этой строчкой вставь uo.useobject(Sunduk) ;эти две строки ты должен прописать wait(1000) ;эти две строки ты должен прописать dagger = UO.ObjAtLayer( 'Rhand' ) Надеюсь поможет и выражайся набудущее яснее. |
|
| Author: | D [ 2004-11-24 04:43:49 ] |
| Post subject: | |
спассибо агромное |
|
| Author: | D [ 2004-11-24 04:44:56 ] |
| Post subject: | |
спасибо агромное , праститье за ашибки я через транслит пишу нету рускои клавиши |
|
| Page 1 of 1 | All times are UTC+02:00 |
| Powered by phpBB® Forum Software © phpBB Limited https://www.phpbb.com/ |
|