Forum.iFiction.Ru

iFiction.Ru · ifHub · FAQ · IFWiki · QSP · URQ · INSTEAD · AXMA

форум об interactive fiction, текстовых приключенческих играх и всём таком...

Вы не зашли.

0    0    #1
06.12.2007 18:00

Hind
Участник
Откуда: Балашиха
Зарегистрирован: 24.10.2007
Сообщений: 135
Вебсайт

Не нервируйте меня! Мне скоро негде будет прятать трупы!

Непонятки с наследованием

Разве noun не наследуется? Кажется, я это уже применял - и все работало.
Но вот сейчас, когда я писал код для goraph, появился тупой глюк.

Итак, код простейший:

Код:

#include <advr.t>
#include <stdr.t>
#include <errorru.t>

startroom: room
    sdesc = "Спальная комната"
    ldesc = "Единственная комната моей квартиры."
;

vial: item
    location = nil
    sdesc = "пузырёк"
    rdesc = "пузырька"
    ddesc = "пузырьку"
    vdesc = "пузырёк"
    tdesc = "пузырьком"
    pdesc = "пузырьке"
    noun = 'пузырек' 'пузырька' 'пузырьку' 'пузырьком' 'пузырьке' 'пузырьку#d' 'пузырьком#t'
    ldesc = "На свету небольшой пузырёк длиной с палец поблескивает гранями."
    isHim = true
;

vial1: vial
    location = startroom
;

Получаем:

>смотреть
Спальная комната
    Единственная комната моей квартиры.
    Ты видишь здесь пузырёк.

>взять пузырёк
Я не вижу здесь объект "пузырек".

>взять пузырек
Я не вижу здесь объект "пузырек".

>

Это что? roll
Пробовал с разными версиями русских библиотек.

Самое интересное, что если в наследнике явно прописать noun:

Код:

vial1: vial
    location = startroom
    noun = 'пузырек' 'пузырька' 'пузырьку' 'пузырьком' 'пузырьке' 'пузырьку#d' 'пузырьком#t'
;

то все прекрасно...

Неактивен

0    0    #2
06.12.2007 21:35

Hind
Участник
Откуда: Балашиха
Зарегистрирован: 24.10.2007
Сообщений: 135
Вебсайт

Не нервируйте меня! Мне скоро негде будет прятать трупы!

Re: Непонятки с наследованием

Спасибо )
Я понимаю разницу между классом и экземпляром класса - просто не знал, что в TADS существуют классы как таковые. Меня ввела в заблуждение фраза, которую я где-то прочел, что в TADS нет разницы между классами и объектами. Этого человека надо найти и покарать smile

Неактивен

0    0    #3
07.12.2007 10:43

Hind
Участник
Откуда: Балашиха
Зарегистрирован: 24.10.2007
Сообщений: 135
Вебсайт

Не нервируйте меня! Мне скоро негде будет прятать трупы!

Re: Непонятки с наследованием

uux написал:

Чего его искать? Это я (правда, вместе с Майклом Робертсом;).

Ну, ты же только переводил в этом предложении, так что вина целиком на Робертсе ) Но он непогрешим по определению - как создатель TADS smile

fireton написал:

Меня больше удивило, что TADS позволяет наследование от экземпляра класса... Бред полный с точки зрения ООП.

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

Неактивен

Powered by PunBB
© copyright 2001–2023 iFiction.Ru