Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Квесты, Помогите с оформлением.
Stave
сообщение 25.6.2013, 10:03
Сообщение #1


***

Novice
Сообщений: 81
Регистрация: 4.8.2007
Группа: Пользователи
Наличность: 0
Из: Челябинск
Пользователь №: 9.999
Возраст: 24



Здравствуйте!

Пишу квест, в основном пользуюсь tag.
Хочется сделать здравый качественный квест.
(IMG:http://monolit-russia.clan.su/UO/quest/1.jpg)

Создан уже сюжет, задействовано много квестеров, все работает, сделал ход выполнения квеста.
Все предельно по ламерски, но меня в принципе устраивает) Хочу сделать все грамотно.
(IMG:http://monolit-russia.clan.su/UO/quest/2.jpg)



но есть несколько проблем.

1 / существует проблема обнаружения квестера, хотя бы начального....
Можно ли сделать: когда на чаре висит любой таг, скажем src.tag0.quest_1

то при проверке на таг у квестера был соответствующий знак над головой:
(IMG:http://monolit-russia.clan.su/UO/quest/3.jpg)


Где-то была тема с добавлением значка гильдии в имя члена гильдии, но я так и не нашел....


2 / Предметы выдаются игроку в процессе квеста можно перекладывать или выбрасывать из сумки.
Как запретить перекладывание предмета из сумки в сумку, выброс на пол, передача другому игроку?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Sirocco
сообщение 25.6.2013, 10:10
Сообщение #2


******

Expert
Сообщений: 810
Регистрация: 2.2.2012
Группа: Пользователи
Наличность: 15489
Пользователь №: 14.566
Возраст: 30



1. On=@Click
if 0<tag.quest>
message @,,1 !Квест!

ну это если без добавления значков. Иначе:
@цвет,номер шрифта,1
значки нужно просто в шрифт залить.

2.
Код

[TYPEDEF t_quest_item]
On=@DropOn_Char
    if  (<src.account.plevel> > 2) //здесь нужно добавить метку, чтобы можно было кидать вещи на квестовых персонажей.
        return 0
    endif
    return 1

On=@DropOn_Item
    if (<argo.type> == t_eq_bank_box) || (<src.account.plevel> > 2) //можно класть в банк
        return 0
    endif
    return 1

On=@DropOn_Ground
    cont = <src.findlayer(21).uid>
    return 1
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Stave
сообщение 25.6.2013, 20:10
Сообщение #3


***

Novice
Сообщений: 81
Регистрация: 4.8.2007
Группа: Пользователи
Наличность: 0
Из: Челябинск
Пользователь №: 9.999
Возраст: 24



спасибо большое)
сделал под себя все пашет, только почему-то на одном итеме не работает....

вроде ничего лишнего нет

Цитата
[ITEMDEF i_magic_spider_silk]
Name=Magic Spider's Silk
TYPE=t_quest_item
id=0f8d
//VALUE=2500
WEIGHT=3

on=@Create
color=000f8



вот под себя заточенный скрипт
Цитата

[TYPEDEF t_quest_item]
On=@DropOn_Char
if (<src.account.plevel> > 2)
SRC.sysmessage @0c2,0,1 Этот предмет небходим для задания его нельзя передать другому игроку.
endif
return 1

On=@DropOn_Item
if (<argo.type> == t_eq_bank_box) || (<src.account.plevel> > 2)
SRC.sysmessage @0c2,0,1 Этот предмет небходим для задания его нельзя положить в банк.
endif
return 1

On=@DropOn_Ground
cont = <src.findlayer(21).uid>
SRC.sysmessage @0c2,0,1 Этот предмет небходим для задания его нельзя выбросить.
return 1


На скролле и на ящике работает

А на счет 1ого
я сделал иначе, у меня имя у квестеров русское и зеленым цветом выведено, но вот имя видно некоторое время, а хочу чтобы значок был постоянно, если квестер активен для игрока
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Stave
сообщение 25.6.2013, 20:44
Сообщение #4


***

Novice
Сообщений: 81
Регистрация: 4.8.2007
Группа: Пользователи
Наличность: 0
Из: Челябинск
Пользователь №: 9.999
Возраст: 24



во я болбес...

Проблему решил последовательностью скрипта
Цитата

[ITEMDEF i_magic_spider_silk]
id=0f8d
TYPE=t_quest_item
Name=Magic Spider's Silk
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Sirocco
сообщение 26.6.2013, 7:17
Сообщение #5


******

Expert
Сообщений: 810
Регистрация: 2.2.2012
Группа: Пользователи
Наличность: 15489
Пользователь №: 14.566
Возраст: 30



Код

On=@DropOn_Item
if (<argo.type> == t_eq_bank_box) || (<src.account.plevel> > 2)
SRC.sysmessage @0c2,0,1 Этот предмет небходим для задания его нельзя положить в банк.
endif
return 1


facepalm.jpg
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Stave
сообщение 26.6.2013, 7:59
Сообщение #6


***

Novice
Сообщений: 81
Регистрация: 4.8.2007
Группа: Пользователи
Наличность: 0
Из: Челябинск
Пользователь №: 9.999
Возраст: 24



Цитата(Sirocco @ 26.6.2013, 10:17) *

Код

On=@DropOn_Item
if (<argo.type> == t_eq_bank_box) || (<src.account.plevel> > 2)
SRC.sysmessage @0c2,0,1 Этот предмет небходим для задания его нельзя положить в банк.
endif
return 1


facepalm.jpg

мм?? что-то не так?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Sirocco
сообщение 26.6.2013, 8:35
Сообщение #7


******

Expert
Сообщений: 810
Регистрация: 2.2.2012
Группа: Пользователи
Наличность: 15489
Пользователь №: 14.566
Возраст: 30



Как правило на сервере проводятся какие-то турниры, и как правило на них нужно приходить с очищенным рюкзаком. Возможно конечно, у тебя и не так... Но иначе, убрать вещи в банк, это единственный адекватный вариант. И я не вижу никаких препятствий и противопоказаний для этого...
Так вот данная строчка была создана как раз для этого, а еще чтобы стафф мог производить манипуляции с данными предметами самостоятельно. Если этот фрагмент скрипта тебе не нужен, то его было достаточно закомментировать, а не городить какие-то несуразицы...
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Stave
сообщение 26.6.2013, 9:19
Сообщение #8


***

Novice
Сообщений: 81
Регистрация: 4.8.2007
Группа: Пользователи
Наличность: 0
Из: Челябинск
Пользователь №: 9.999
Возраст: 24



В диалогах есть кнопка отменить квест, на любой стадии его прохождения. при этом квестовые предметы нужно изъять с сумки, в противном случае они будут оставаться у игрока и лежать как баласт.


Возможно я более не знаю вариантов для решения этой задачи)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Nickname
сообщение 26.6.2013, 20:13
Сообщение #9


****

Группа: Пользователи
Наличность: 0
Пользователь №: 11.067



Как вариант, вешать на игрока TAG с UID предмета и при удалении задания не искать предмет по сумки а удалять при помощи UID. Только тут важный момент, чтобы игрок сам никак не мог избавиться от предмета.

При таком варианте можно класть предметы в банк.


--------------------
Промокод на 10% скидку Windows VDS: ODEI-XTPJ
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 25.4.2024, 2:57
Designed by Nickostyle