![]() |
Наследование, Error 5000
Привет!
Вопрос по наследованию возник. У меня в библиотеке есть символ Char, для него есть класс Char.as, наследуемый от MovieClip. В этом классе логика для персонажа, чтоб он падал и т.п. В библиотеке также символы Enemy0, Enemy1, Enemy2. Мне нужно, чтобы экземпляры этих классов вели себя как персонаж, но управлялись с помощью AI. Я пишу класс Enemy.as со всем AI внутри него, наследую его от Char.as. А в библиотеке указываю для символа Enemy0 Base Class: Enemy.as (класс Enemy0 пустой, сам файл не создаю). И получаю ошибку: 5000: The class 'Enemy' must subclass 'flash.display.MovieClip' since it is linked to a library symbol of that type. |
Напишите один класс с логикой, а второй класс с графикой (то есть что-то в библиотеке).
Потом внутри третьего класса создайте экземпляры первого и второго классов. Такой подход называется композиция. Третий класс должен быть унаследован от Sprite или MovieClip (Я бы выбрал Sprite). ЗЫ Вообще не очень правильно включать логику и графику в один класс. Это просто неудобно. |
Если Base class не MovieClip / Sprite и им подобные - ничего там не указывайте, это только путает его :)
|
| Часовой пояс GMT +4, время: 14:00. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.