ТОМ2 - платформа для парсерных игр

Объявление

Платформа ТОМ предназначена для создания текстовых игр на русском языке и имеет развитый парсер, позволяющий взаимодействовать с играми с помощью команд на близком к естественному языке. В данный момент активно разрабатывается версия ТОМ 2.
Последнюю версию платформы можно скачать здесь.

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.



Кросс-классы

Сообщений 1 страница 5 из 5

1

Опять таки на примере:

Есть класс "рыцарь" и есть класс "священник", у каждого свои свойства и методы. Если оба класса присвоить одному персонажу, то мы получим паладина, т.е. нечто большее чем сумма рыцаря и священника.
В данном случае "Паладин" это кросс-класс.

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

2

:surprise:
Неожиданно. Плакала моя задумка сделать список классов в виде дерева по наследованию. И что же теперь делать в среде разработки? Простой список классов из стандартной библиотеки будет не удобен (не видно что от чего наследуется) и огромен (кто знает чего мы понапихаем в StdLib).

3

Множественное наследование это отличие 2го ТОМа, без него ни как...
Дерево наследование в ст.библиотеке уже огромно, и не дерево оно. Я вышел из положения ограничив показ - 3 родителя вверх и 3 потомка вниз. Элементы с несколькими родителями показываю во всех ветках.

4

http://s7.uploads.ru/ZUYwi.png
Что-то я не нашёл в БД поддержку множественного наследования кросс-классов. Только один родительский класс для каждого класса.

Отредактировано Alexandr (2014-01-18 13:49:10)

5

А у тебя база старая =)