Подкиньте идейку, у кого их много.

Ask for help

Moderators: Murderator+, Murderator

KrafteR
Posts: 260
Joined: 2004-07-22 16:07:11
Contact:

Подкиньте идейку, у кого их много.

Post by KrafteR »

Хочется написать скрипт, чтобы по нажатию кнопки всё с себя снимал, а при повторном нажатии снова одевал, и всё по нажатию одной кнопки! Думал-думал... ничего не пришло в голову, вотс хочу посоветоваться, может кто подкинет, что-нибудь любопытное.
Yoko
Site Admin
Posts: 1964
Joined: 2004-04-03 16:49:38
Contact:

Post by Yoko »

,setdress x;setarm y;undress;disarm

,dress x;arm y
KrafteR
Posts: 260
Joined: 2004-07-22 16:07:11
Contact:

Post by KrafteR »

Yoko wrote:,setdress x;setarm y;undress;disarm

,dress x;arm y

Эт я уже давно понял... Идея не в этом. Идея такая... Я жму кнопку, снимает всё, я жму эту же кнопку одевает, то что было. Как сделать так, чтобы инжект проверял If есть одежда на чаре Then снять одежду с чара Else Одеть одежду на чара. Но как эти проверки звучат на языке инжекта я не нашёл, прозьба подсказать, как решить данную проблему или предложить альтернативу этому способу.
Edred
Expert!
Posts: 2544
Joined: 2004-04-03 17:36:29
Location: Saint-Petersburg

Post by Edred »

KrafteR wrote:
Yoko wrote:,setdress x;setarm y;undress;disarm

,dress x;arm y

Эт я уже давно понял... Идея не в этом. Идея такая... Я жму кнопку, снимает всё, я жму эту же кнопку одевает, то что было. Как сделать так, чтобы инжект проверял If есть одежда на чаре Then снять одежду с чара Else Одеть одежду на чара. Но как эти проверки звучат на языке инжекта я не нашёл, прозьба подсказать, как решить данную проблему или предложить альтернативу этому способу.


Назначь какую-то вещь контрольной для проверки на арм. Например, кираса. Соответственно иди в хелп и смотри UO.ObjAtLayer()
KrafteR
Posts: 260
Joined: 2004-07-22 16:07:11
Contact:

Post by KrafteR »

Edred wrote:Назначь какую-то вещь контрольной для проверки на арм. Например, кираса. Соответственно иди в хелп и смотри UO.ObjAtLayer()

А в хелпе, есть какой-нибудь поиск или где это там искать, что-то не могу найти, намекни в каком разделе хоть.
Edred
Expert!
Posts: 2544
Joined: 2004-04-03 17:36:29
Location: Saint-Petersburg

Post by Edred »

KrafteR wrote:
Edred wrote:Назначь какую-то вещь контрольной для проверки на арм. Например, кираса. Соответственно иди в хелп и смотри UO.ObjAtLayer()

А в хелпе, есть какой-нибудь поиск или где это там искать, что-то не могу найти, намекни в каком разделе хоть.


Там в конце есть что-то типа "Все по алфавиту", вот туда и иди.
KrafteR
Posts: 260
Joined: 2004-07-22 16:07:11
Contact:

Post by KrafteR »

Edred wrote:Там в конце есть что-то типа "Все по алфавиту", вот туда и иди.

Не против если завалю вопросиками?
1.Как сделать проверку на кирассу?
2.Можно ли сделать много проверак, на много итемов через OR, тоесть

Code: Select all

If одета кираса OR шапка OR роба OR щит Then... 

3.
Help wrote:Синтакс: object uo.ObjAtLayer(layer)
Тема: Команды скриптов Ключевые слова: uoscript, objhandling, equipment
Возвращает обьект object находящийся на указаном слое layer, например в правой руке (layer="Rhand").
Выписка из хелпа, чем эта команда может помочь?
P.S Я тебя наверно достал, но хочется научится.
Edred
Expert!
Posts: 2544
Joined: 2004-04-03 17:36:29
Location: Saint-Petersburg

Post by Edred »

1. If UO.GetGraphic( UO.ObjAtLayer( 'Torso' ) ) == 'тип кирасы' Then

2. Ну ты уже понял как это сделать?

3. Кстати, на странице с командой есть ссылка на слои (layer), перейди и почитай.

ЗЫ: Я здесь бываю в основном чтобы помогать тем, кто хочет научиться. Так что не стесняйся.
KrafteR
Posts: 260
Joined: 2004-07-22 16:07:11
Contact:

Post by KrafteR »

Code: Select all

sub main()
UO.Setarm("1")
UO.Setdress("2")
If
UO.GetGraphic(UO.ObjAtLayer('Torso'))=='0x1415' or
UO.GetGraphic(UO.ObjAtLayer('Legs'))=='0x1411' or
UO.GetGraphic(UO.ObjAtLayer('Pants'))=='0x13BE' or
UO.GetGraphic(UO.ObjAtLayer('Cloak'))=='0x1515' or
UO.GetGraphic(UO.ObjAtLayer('Robe'))=='0x1F03' or
UO.GetGraphic(UO.ObjAtLayer('Robe'))=='0x204E' or
Then
UO.Disarm()
wait(100)
UO.Undress()
else
uo.setdressspeed(100)
UO.Arm("1")
UO.dress("2")
endif
end sub

Пишет ошибку в 4ой строчки, а там только If написано... ничего не понимаю :? .
AGRS
Expert!
Posts: 1007
Joined: 2004-04-04 21:40:09
Contact:

Post by AGRS »

KrafteR wrote:Пишет ошибку в 4ой строчки, а там только If написано... ничего не понимаю :? .


1 оператор - 1 строка. Но никак не 8 строк.
KrafteR
Posts: 260
Joined: 2004-07-22 16:07:11
Contact:

Post by KrafteR »

Code: Select all

sub main()
UO.Setarm("1")
UO.Setdress("2")
If UO.GetGraphic(UO.ObjAtLayer('Torso'))=='0x1415'
Then
UO.Disarm()
wait(100)
UO.Undress()
else
uo.setdressspeed(100)
UO.Arm("1")
UO.dress("2")
endif
end sub

И всё равно ошибка в 4ой строке. Как с этим бороться?
Ugrum.
Posts: 69
Joined: 2004-04-05 11:59:21
Location: RunUO

Post by Ugrum. »

не 8 строк,и скажу больше-даже не 2 :)
Sfagnum
Expert!
Posts: 1284
Joined: 2004-07-04 00:14:58
Contact:

Post by Sfagnum »

KrafteR wrote:

Code: Select all

sub main()
UO.Setarm("1")
UO.Setdress("2")
If UO.GetGraphic(UO.ObjAtLayer('Torso'))=='0x1415' or UO.GetGraphic(UO.ObjAtLayer('Legs'))=='0x1411' or UO.GetGraphic(UO.ObjAtLayer('Pants'))=='0x13BE' or UO.GetGraphic(UO.ObjAtLayer('Cloak'))=='0x1515' or UO.GetGraphic(UO.ObjAtLayer('Robe'))=='0x1F03' or UO.GetGraphic(UO.ObjAtLayer('Robe'))=='0x204E' Then
UO.Disarm()
wait(100)
UO.Undress()
else
uo.setdressspeed(100)
UO.Arm("1")
UO.dress("2")
endif
end sub

Пишет ошибку в 4ой строчки, а там только If написано... ничего не понимаю :? .
;)
ЗЫ ток копируй из цитаты, т.е. нажми цитировать и копируй нужное
Last edited by Sfagnum on 2005-01-07 10:31:07, edited 1 time in total.
KrafteR
Posts: 260
Joined: 2004-07-22 16:07:11
Contact:

Post by KrafteR »

Sfagnum wrote:
KrafteR wrote:

Code: Select all

sub main()
UO.Setarm("1")
UO.Setdress("2")
If UO.GetGraphic(UO.ObjAtLayer('Torso'))=='0x1415' or UO.GetGraphic(UO.ObjAtLayer('Legs'))=='0x1411' or UO.GetGraphic(UO.ObjAtLayer('Pants'))=='0x13BE' or UO.GetGraphic(UO.ObjAtLayer('Cloak'))=='0x1515' or UO.GetGraphic(UO.ObjAtLayer('Robe'))=='0x1F03' or
UO.GetGraphic(UO.ObjAtLayer('Robe'))=='0x204E' Then
UO.Disarm()
wait(100)
UO.Undress()
else
uo.setdressspeed(100)
UO.Arm("1")
UO.dress("2")
endif
end sub

Пишет ошибку в 4ой строчки, а там только If написано... ничего не понимаю :? .
;)
ЗЫ ток копируй из цитаты, т.е. нажми цитировать и копируй нужное

И всё таже ошибка, и всё там же.
Sfagnum
Expert!
Posts: 1284
Joined: 2004-07-04 00:14:58
Contact:

Post by Sfagnum »

не все переносы строк удалил ;) пофиксил. копируй заново

ЗЫ Инжа не поддерживает перенос на другую строку.
KrafteR
Posts: 260
Joined: 2004-07-22 16:07:11
Contact:

Post by KrafteR »

Sfagnum wrote:не все переносы строк удалил ;) пофиксил. копируй заново

ЗЫ Инжа не поддерживает перенос на другую строку.

Тоесть, все эти 8 строк надо напмсать в строчку?
KrafteR
Posts: 260
Joined: 2004-07-22 16:07:11
Contact:

Post by KrafteR »

Всё скрипт работает... Ура товарисчи, всем спасибо за помощь.
Теперь новые вопросы :oops: .
Проблемма в том, что унсп блокирует снимание, одевание вещей с такой скоростью.
1. uo.setdressspeed()- команда только для одевания одежды, или для снимания тоже.
2.uo.setdressspeed()- не работает, скорее всего потому, что я её не туда вставил, хотя пробовал везде.
P.S. А что самое странное, он не одевает или не снимает из-за унеспе только 2 вещи, причём всегда только 2.
Sfagnum
Expert!
Posts: 1284
Joined: 2004-07-04 00:14:58
Contact:

Post by Sfagnum »

KrafteR wrote:
Sfagnum wrote:не все переносы строк удалил ;) пофиксил. копируй заново

ЗЫ Инжа не поддерживает перенос на другую строку.

Тоесть, все эти 8 строк надо напмсать в строчку?
ну надо же... ;)
Yoko
Site Admin
Posts: 1964
Joined: 2004-04-03 16:49:38
Contact:

Post by Yoko »

я гдето в доке видел что есть символ переноса на другую строку, подчёркивание вроде, или дробь... кому интересно поворошите документацию
KrafteR
Posts: 260
Joined: 2004-07-22 16:07:11
Contact:

Post by KrafteR »

Yoko wrote:я гдето в доке видел что есть символ переноса на другую строку, подчёркивание вроде, или дробь... кому интересно поворошите документацию

Где можно взять документацию на данный продукт?
Post Reply