Yoko

All sides of Injection
It is currently 2025-11-12 00:27:08

All times are UTC+02:00




Post new topic  Reply to topic  [ 24 posts ]  Go to page 1 2 Next
Author Message
PostPosted: 2006-11-08 23:19:06 
Offline

Joined: 2006-11-08 21:59:59
Posts: 8
Всем привет!
А найти я хочу скрипт такой чтоб чар кидал Протект и Блесс на персонажа написавшего например слово obkast , но чтоб не на каждого он кидал а на оределенных людей;) если вы видели подобный скрипт, скажите где. Буду очень признателен!!


Top
   
 Post subject:
PostPosted: 2006-11-09 01:59:23 
Offline
User avatar

Joined: 2006-08-05 14:09:06
Posts: 270
А что его искать? Написать не сложно.

_________________
ДРВ
Spoiler
_________________
Антарес
Spoiler|Gostrabaiter|Umhra|Slog


Top
   
 Post subject:
PostPosted: 2006-11-09 04:08:55 
Offline

Joined: 2005-04-19 18:00:29
Posts: 2259
Location: Московская область
slonopotam wrote:
А что его искать? Написать не сложно.


Напиши. Докажи что твои сообщения не пустой флуд


Top
   
 Post subject:
PostPosted: 2006-11-09 08:48:35 
Offline
Junior Expert
User avatar

Joined: 2004-06-24 22:08:56
Posts: 3220
You Must Die wrote:
slonopotam wrote:
А что его искать? Написать не сложно.


Напиши. Докажи что твои сообщения не пустой флуд

Дык ведь и правда не сложно.. -)

Скрипт НЕ тестировался, писался в форме ответа -)
Code:
sub obkast.daemon()
   var jrnl, i, p_len = 1 ; количество игроков, в списке
   var phrase = "obcast" ; фраза, на которую реагируем.
   DIM players[]
   ; Список ID игроков, на которых вешаем обкаст.
   players[0] = '0x0000000';
   repeat
      jrnl = uo.inJournal(phrase);
      if jrnl then
         for i=0 to p_len-1
            if uo.journalserial(jrn-1l) == players[i] then
               obkast.do( journalserial(jrnl-1) )
               break
            endif
         next
         uo.setjournalline(jrnl-1, '')
      endif
      wait(200)
   until false
endsub

Sub obkast.do(serial)
   var mana = uo.mana
   uo.cast('Protection', serial)
   while mana == uo.mana
      wait(50)
   wend
   mana = uo.mana
   uo.cast('Bless', serial)
   while mana == uo.mana
      wait(50)
   wend
endsub


О работе скрипта - скрипт работает по принципу демона, т.е. висит до поры до времени, а как понадобится - делает нужные операции. Соответсвенно нужно запустить демона -
Code:
,exec obkast.daemon
, предварительно настроив скрипт.


Top
   
 Post subject:
PostPosted: 2006-11-09 16:51:02 
Offline

Joined: 2006-11-08 21:59:59
Posts: 8
slonopotam wrote:
А что его искать? Написать не сложно.

Для меня это невыполнимая задача;)


Top
   
 Post subject:
PostPosted: 2006-11-09 16:55:11 
Offline

Joined: 2006-11-08 21:59:59
Posts: 8
To Destruction: Спасибо тебе за скриптец;) сейчас борюсь с ним не хочет пока работать пишет про ошибку в 11 line
А что значит по принципу демона?;)


Top
   
 Post subject:
PostPosted: 2006-11-09 17:06:37 
Offline

Joined: 2006-11-08 21:59:59
Posts: 8
You Must Die wrote:
slonopotam wrote:
А что его искать? Написать не сложно.


Напиши. Докажи что твои сообщения не пустой флуд

Дело говориш;)


Top
   
 Post subject:
PostPosted: 2006-11-09 18:29:37 
Offline
Expert!
User avatar

Joined: 2005-09-14 15:31:58
Posts: 2152
Location: Latvia
Code:
   while mana == uo.mana
      wait(50)
   wend


некоректно, мана поднимится на 1% и скрипт выходит из цыкла...

Code:
(jrn-1l)


здесь нету ошыбки ?

_________________
Уроки языка Injection
Основные команды языка Injection
Yoko Injection Code Sweeper
Drw (2009) скрипты
2017 Начал играть на Uorpg.net


Top
   
 Post subject:
PostPosted: 2006-11-09 19:33:26 
Offline

Joined: 2006-11-08 21:59:59
Posts: 8
NMY wrote:
Code:
   while mana == uo.mana
      wait(50)
   wend


некоректно, мана поднимится на 1% и скрипт выходит из цыкла...

Code:
(jrn-1l)


здесь нету ошыбки ?

Ага так и есть выодит из строя как будет корректно не подскажеш?;)
а (jrn-1l) я исправил;)


Top
   
 Post subject:
PostPosted: 2006-11-09 23:17:41 
Offline
Expert!
User avatar

Joined: 2005-09-14 15:31:58
Posts: 2152
Location: Latvia
Code:
Sub obkast.do(serial)
   var m = uo.mana
   uo.cast('Protection', serial)
   repeat
      wait(50)
   until uo.mana<m
   m = uo.mana
   uo.cast('Bless', serial)
   repeat
      wait(50)
   until uo.mana<m
endsub


последний цыкл можно убрать, но если быстро опять иго ктото запустит, сфизлит :roll:

ищо медитацыя непомешает гдето :roll:

_________________
Уроки языка Injection
Основные команды языка Injection
Yoko Injection Code Sweeper
Drw (2009) скрипты
2017 Начал играть на Uorpg.net


Top
   
 Post subject:
PostPosted: 2006-11-10 00:30:30 
Offline
Expert!
User avatar

Joined: 2004-04-04 11:13:54
Posts: 1205
Location: Балаково, Саратовская обл.
ла - отстой, зачем переносить ее в уо?


Top
   
 Post subject:
PostPosted: 2006-11-10 02:09:22 
Offline
User avatar

Joined: 2006-08-05 14:09:06
Posts: 270
You Must Die wrote:
slonopotam wrote:
А что его искать? Написать не сложно.


Напиши. Докажи что твои сообщения не пустой флуд


Я не волшебник, я только учусь. Но вот наваял :) :
Code:
VAR One='0x99999999' ; чар № 1
VAR Two='0x99999999' ; ИД чара № 2
VAR Three='0x99999999' ; ИД чара № 3
VAR Four='0x99999999' ; ИД чара № 4
VAR Five='0x99999999' ; ИД чара № 5
VAR goblin=1
sub Start()
repeat
Ojidanie()
   wait(100)
      until goblin>2
end sub

Sub Ojidanie()
   If UO.InJournal('obkast') Then
Protection()
UO.DeleteJournal()
wait(100)
Else
Meditation()
      Endif
end sub

Sub Protection()
   DIM Chars[5]
Chars[0] = One
Chars[1] = Two
Chars[2] = Three
Chars[3] = Four
Chars[4] = Five
   VAR i
   For i = 0 To 5
      If UO.Count(Chars[ i ]) == 0 Then
UO.Cast('Protection',Chars[ i ])
      wait(2500)
Else
      wait(100)
      Endif
   Next
end sub

Sub Meditation()
If UO.mana<=10 Then
UO.useskill('Meditation')
Else
wait(100)
EndIf
end sub


Проверено на птичках !!! 8)

_________________
ДРВ

Spoiler

_________________

Антарес

Spoiler|Gostrabaiter|Umhra|Slog


Top
   
 Post subject:
PostPosted: 2006-11-10 02:55:57 
Offline

Joined: 2005-04-19 18:00:29
Posts: 2259
Location: Московская область
У тебя 5 элементов массива, а ты ищешь до 6ого

Что касается
Code:
if uo.COunt(chars)
-не уверен что будет работать т.к. думаю она проводит поиск в сумках и подсумках :\ Тогда
Code:
uo.FindCount() 
уж если что, но в любом случае надо предварительно найти то,что ты принял за "chars". Если ты принял типы-тогда почему так много?
Если ID -то Count([object]) ошибка синтаксиса.

И не совсем понял принцип работы ожидания и медитации.

Code:
Ждём 100 сек
Сообщения нет => Идём медитировать
Используем скил медитации
Ждём 100 сек
Возврат к первой строке.


Не корректная запись :\


Top
   
 Post subject:
PostPosted: 2006-11-10 03:58:08 
Offline
User avatar

Joined: 2006-08-05 14:09:06
Posts: 270
5 элементов . С 0 до 4 =5 и ищу вроде только 5

if uo.COunt(chars) ищет не только в паке и подсумках, по крайней мере находило птичек.

uo.FindCount() может ощибся, всяко бывает, но работает же :roll:

Принцип медитации простой, пока нет сообщений (тоесть его не вызывают) он медитирует.


Если подольше посидеть с этим скриптом, то можно и добор регов и чеклаг и реконект добавить. Да и напихать еще кастов можно. Тоесть при сообщении "блесс" чтоб кастовал только блесс, при сообщении "протекшен", только протекшен. А при сообщении "обкаст", все сразу.

_________________
ДРВ

Spoiler

_________________

Антарес

Spoiler|Gostrabaiter|Umhra|Slog


Top
   
 Post subject:
PostPosted: 2006-11-10 04:02:11 
Offline
Expert!

Joined: 2004-04-03 17:36:29
Posts: 2544
Location: Saint-Petersburg
Code:
   For i = 0 To 5


здесь шесть шагов. 0,1,2,3,4,5.

_________________
Ни один скрипт не работает? Пора обновить Инжект...
Все работает, но хочется большего? Пора переходить на стелс...


Top
   
 Post subject:
PostPosted: 2006-11-10 04:13:37 
Offline
User avatar

Joined: 2006-08-05 14:09:06
Posts: 270
:D Теперь увидел, осознал.

_________________
ДРВ

Spoiler

_________________

Антарес

Spoiler|Gostrabaiter|Umhra|Slog


Top
   
 Post subject:
PostPosted: 2006-11-10 16:36:25 
Offline

Joined: 2005-04-19 18:00:29
Posts: 2259
Location: Московская область
slonopotam wrote:
5 элементов . С 0 до 4 =5 и ищу вроде только 5

if uo.COunt(chars) ищет не только в паке и подсумках, по крайней мере находило птичек.

uo.FindCount() может ощибся, всяко бывает, но работает же :roll:

Принцип медитации простой, пока нет сообщений (тоесть его не вызывают) он медитирует.


Если подольше посидеть с этим скриптом, то можно и добор регов и чеклаг и реконект добавить. Да и напихать еще кастов можно. Тоесть при сообщении "блесс" чтоб кастовал только блесс, при сообщении "протекшен", только протекшен. А при сообщении "обкаст", все сразу.


У тебя нерациональное решение. Не пробовал забивать в массив название кастов?

Code:
элемент 1 = Блесс

если в журнале(месага с содержанием элемент1) тогда
  кастуй элемент 1 на того кто произнёс.


Вот и всё.
Что касается обкаста то и вовсе-если в журнале обкаст, тогда кастуй цикл. Скрипт на самом деле минутный.


2А если тебе нужна проверка на ИД то также забиваешь в том же скрипте второй массив и конструкция примерно следующая:

Code:
цикл перебора сообщений кастов
если в журнале(месага элемент1) тогда
  взять ИД объекта который произнёс строку журнала
  цикл перебора ИД на кого кастовать
    сравнить это значение с теми что в массиве. если == , тогда кастуй


Top
   
 Post subject:
PostPosted: 2006-11-10 21:05:44 
Offline
Expert!
User avatar

Joined: 2005-05-20 20:30:10
Posts: 548
вариант 1.
через серийники

Code:
sub obkast()
###############
var keyword = 'обкаст' ; слово на которое реагировать
var refreshtime = 0.5  ; время проверки сообщений в журнале в сек
##############
var i, t, reg
Dim a[5]
# серийники
a[0]='0x0000000'
a[1]='0x0000000'
a[2]='0x0000000'
a[3]='0x0000000'
a[4]='0x0000000'
repeat
if uo.injournal(keyword) then
for i=0 to 4
if uo.journalserial(uo.injournal(keyword))==a[i] then
uo.cast('Bless',a[i])
uo.deletejournal()
t=0
reg= uo.ns  # Название рега присуствующего в касте
repeat
t=t+1
wait(500)
until uo.injournal('spell|mana') or t==15  or tmp<uo.ns #опять название рега
####
uo.cast('Protection',a[i])
uo.deletejournal()
t=0
reg=uo.ns  # Название рега присуствующего в касте
repeat
t=t+1
wait(500)
until uo.injournal('spell|mana') or t==15  or tmp<uo.ns #опять название рега
end if
next
end if
wait(refreshtime*1000)
until uo.dead()
end sub


варинт 2
те, на кого кастуешь каст должны говорить слово "каст" определенным цветом (можно сделать в инжекте), тогда:

Code:
sub obkast()
###############
var keyword = 'обкаст' ; слово на которое реагировать
var refreshtime = 0.5  ; время проверки сообщений в журнале в сек
##############
var t, reg
repeat
if uo.injournal(keyword) then
if uo.journalcolor(uo.injournal(keyworde))=='0x0000' then #цвет сообщений
uo.cast('Bless',uo.journalserial(uo.injournal(keyworde)))
uo.deletejournal()
t=0
reg= uo.ns  # Название рега присуствующего в касте
repeat
t=t+1
wait(500)
until uo.injournal('spell|mana') or t==15  or tmp<uo.ns #опять название рега
####
uo.cast('Protection',uo.journalserial(uo.injournal(keyworde)))
uo.deletejournal()
t=0
reg=uo.ns  # Название рега присуствующего в касте
repeat
t=t+1
wait(500)
until uo.injournal('spell|mana') or t==15  or tmp<uo.ns #опять название рега
end if
end if
wait(refreshtime*1000)
until uo.dead()
end sub


не тестил возможны ошибки


Top
   
 Post subject:
PostPosted: 2006-11-11 02:24:34 
Offline

Joined: 2006-11-08 21:59:59
Posts: 8
Слушайте а как вставлять такое поле в форум Code: ????


Top
   
 Post subject:
PostPosted: 2006-11-11 02:43:46 
Offline

Joined: 2006-11-08 21:59:59
Posts: 8
А медитация не нужна у меня на шарде металлы есть ману восстанавливающие;)


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 24 posts ]  Go to page 1 2 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:  
cron
Powered by phpBB® Forum Software © phpBB Limited