Как сделать?

Re: Как сделать?

к сожалению, Цветохимия запаролена - а то я бы давно посмотрел)))

ща попытаемся узнать то или нет)

Dark[Ol(U23)leneri]
useravatar
Offline
985 Сообщений
Информация о пользователе в сообщениях
Администратор отключил публичную отправку сообщений

Re: Как сделать?

Стоп... а как добавить действия к предмету?)
Ну там... "осмотреть, взять и т.д." ?

п.с. *добавлено минут тридцать спустя*
Разобрался)))) Менюшка уже вылазит... хДДД
Осталось добиться работы действий хД

п.с. *два часа тридцать хДДДД*

Dark[Ol(U23)leneri]
useravatar
Offline
985 Сообщений
Информация о пользователе в сообщениях
Администратор отключил публичную отправку сообщений

Re: Как сделать?

Ничего подобного, цветохимия не запаролена, неправда. Я специально открытым код оставила.

Ajenta
демиург
useravatar
Offline
1364 Сообщений
Информация о пользователе в сообщениях
Администратор отключил публичную отправку сообщений

Re: Как сделать?

О-б-а-л-д-е-т-ь... а раньше не открывалась...)

Dark[Ol(U23)leneri]
useravatar
Offline
985 Сообщений
Информация о пользователе в сообщениях
Администратор отключил публичную отправку сообщений

Re: Как сделать?

блин)) так с ума сойти можно)))

Dark[Ol(U23)leneri]
useravatar
Offline
985 Сообщений
Информация о пользователе в сообщениях
Администратор отключил публичную отправку сообщений

Re: Как сделать?

Извините за такое количество сообщений подряд...
у меня такая проблема:
Взял за основу пример с объектами. Кое-как добавил запись в html. При нажатии на текст появляется необходимое меню.
Но, при этом, кнопки не работают.

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

Dark[Ol(U23)leneri]
useravatar
Offline
985 Сообщений
Информация о пользователе в сообщениях
Администратор отключил публичную отправку сообщений

Re: Как сделать?

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

Потратив 2 дня, а может даже намного больше на попытки хоть как-то организовать предметы, я пришел к следующему:

Начало написал(а):

usehtml=1

$действие_дождь[0]='open:open'
$действие_дождь[1]='pick:pick'

$действие_ветер[0]='open:open1'
$действие_ветер[1]='pick:pick1'

$предмет[0]='Дождь'
$предмет[1]='Ветер'

$описание[0]='Дождик продолжает капать. Обычный летний дождь.'
$описание[1]='Ветерок приятно освежает'

if no obj 'Дождь': '<a class = ''plain'' href="EXEC: menu ''$действие_дождь'' "><<$предмет[0]>></a>'

if no obj 'Ветер': '<a class = ''plain'' href="EXEC: menu ''$действие_ветер'' "><<$предмет[1]>></a>'

pick написал(а):

add obj 'Дождь'
goto 'Начало'

pick1 написал(а):

add obj 'Ветер'
goto 'Начало'

open написал(а):

'<<$описание[0]>>'

open1 написал(а):

'<<$описание[1]>>'

И это только, чтобы предметы работали в основном окне... Для инвентаря можно взять пример...
А надо ли? я тут подумал... выходит, что add obj добавляет не obj, а всего-лишь строку в инвентаре. Бессмысленную бесполезную строку...
Не лучше ли сделать например так:
Добавить оператор create obj со следующим синтексом
create obj ($Название_объекта:локация_обработчик, число=кол-во_действий, перечисление_действий_через_запятую )
А после этого создавалась бы локация_обработчик, где шаблоном бы вставлялись например:
if seloption (забыл сказать... пусть это будет функция выбранного действия) ='название_действия': ну и соответственно что происходит. end

А еще желательно добавление библеотек шаблонов, а не отдельных примеров...
И все-таки сделайте меню быстрого вызова команд... чтобы нажимаешь и он тебе сам выводит arros(число, $массив, $значение)

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

Dark[Ol(U23)leneri]
useravatar
Offline
985 Сообщений
Информация о пользователе в сообщениях
Администратор отключил публичную отправку сообщений

Re: Как сделать?

Dark,
"строка в инвентаре" нужна, в первую очередь, для того, чтобы игрок видел, какие предметы у него с собой;
во вторую очередь, для упрощенного "учета" игровых предметов - спец. операторы ADDOBJ, DELOBJ и функция проверки наличия предмета OBJ не только экономят код, но и делают его более понятным, читаемым.

OBJ - не "объект" в программерском понимании этого слова, а просто "предмет", вещь в заплечном мешке, единица игрового мира.

Ты не с того конца взялся за использование предметов. HTML, exec и прочие технические ухищрения тебе поначалу не нужны, делай как проще.

Обычная игровая логика, поясню на примере:

Есть игровая локация "Комната". Будем считать, что эту локацию можно посетить многократно(распространенная ситуация).
На локации есть предмет "ключ". Наличие предмета на локации хранится в переменной "комната_ключ".

#Комната
! описание локации:
*PL 'В комнате пусто.'
! часть описания локации, которая зависит от наличия предмета:
IF комната_ключ=0:
  *PL 'На полу лежит ключ.'
END

! действия:

! переход на соседнюю локацию
ACT 'Подойти к двери': GOTO 'Дверь'

! если ключ находится на локации, игрок может его подобрать:
IF комната_ключ=0:
  ACT 'Взять ключ':
    ! добавляем предмет в инвентарь
    ADDOBJ 'ключ'
    ! не забываем установить переменную
    комната_ключ=1
    ! делаем переход на эту же локацию, чтобы обновилось описание и список действий
    GOTO $CURLOC
  END
END
-

#Дверь
*PL 'Вы подошли к двери. Дверь заперта.'

ACT 'Вернуться': GOTO 'Комната'

! если у игрока есть с собой ключ, можно открыть дверь и выйти
IF OBJ 'ключ':
  ACT 'Открыть дверь и выйти': GOTO 'коридор'
END

Nex
useravatar
Offline
4277 Сообщений
Информация о пользователе в сообщениях
Администратор отключил публичную отправку сообщений

Re: Как сделать?

Это я уже умею. Спасибо игре 7.40. Речь-то сейчас о другом... речь именно о том, чтобы было одинаково просто сделать игру без использования ACT и с использованием данного оператора... надеюсь это оператор.
Ну просто реально... я тут подумал, что так было бы намного удобнее... я понимаю, что на данный момент obj является скорее визуальной составляющей, чем информационной) Но мне хочется именно понавешать действий на объекты в локации... как-то так...

Dark[Ol(U23)leneri]
useravatar
Offline
985 Сообщений
Информация о пользователе в сообщениях
Администратор отключил публичную отправку сообщений

Re: Как сделать?

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

Попробуй сначала сделать игру попроще, со стандартными действиями (ACT), получишь базовые навыки, тогда и за технические ухищрения можно будет браться.

Пока что, из твоих сообщений я даже не понимаю, в чем именно проблема.

Nex
useravatar
Offline
4277 Сообщений
Информация о пользователе в сообщениях
Администратор отключил публичную отправку сообщений

Информация

Статистика форума:
 
Всего тем:
974
Всего опросов:
14
Всего сообщений:
16790588
Сообщений на этой неделе:
4
Пользователи форума:
 
Всего пользователей:
2371
Последним зарегистрировался:
Artog