![]() |
Не могу воспроизвести обект на дисплей
Я полний Нуб, начал читать книжку Колина Мука, решил сразу начать писать програми в класах, но когда решил написать свой первий код столкнулся с проблемой(указана в теме).Не игнорьте, могу помочь нарисовать 2д пиксель арт для вашего личного проекта.
Код AS3:
|
Сразу бросилось в глаза - пропущено function в обработчике события
|
где-то я этот акцент уже слышал :)
|
Что это? Экземпляр Bird в классе Bird?)
Ві явно не с того места читать книжку начали. |
Код AS3:
Добавлено через 26 минут Классы нужны для того, чтобы выделить каждый объект программы в отдельную сущность. Это вот — Птица. Написав ее класс, можно будет создавать много однотипных экземпляров этой самой Птицы, которые будут вести себя одинаково. Создавать где? В других классах, в их экземплярах. И есть один класс, типа самый главный, называется Класс Документа, или Документ-класс, обычно его именуют Main. Когда вы запускаете свой ролик в флэш-плеере, первым делом создается и размещается на сцене экземпляр этого Документ-класса. То есть с него все начинается. Поэтому сначала надо написать этот класс Мейн и указать его в редакторе как Документ-класс (там есть соответствующая форма). И вот в этом Мейне вы уже начинаете что-то лепить из других классов. Например, создаете экземпляр Птицы, добавляете его в отображение и начинаете двигать. Если эта Птица сама по себе ничего не делает, не расчитывает и ничем не управляет, а представляет из себя просто муви-клип с анимацией махания крыльями, то по-сути писать то ничего и не надо в ее классе, достаточно указать класс для ролика в библиотеке. Вам стоило начать с этого — просто написать класс Мейн, по-сути тот же код, что Вы писали в кадре, с небольшими особенностями оформления его как Класса. А потом уже думать, какой бы ОСМЫСЛЕННЫЙ класс написать еще. То есть такой, чтобы было о чем писать))))) Чтобы он что-то делал, а не просто "был", добавлялся на сцену и там красовался. Добавлено через 45 минут В каком случае был бы смысл писать класс Bird? Если бы у птицы были параметры. Например, можно было бы создавать птиц разного цвета. Или создавать разных птиц, указывая их название в параметре конструктора. То есть, использование класса выглядело бы так (код в Мейне): Код AS3:
Код AS3:
У вас будет два экземпляра класса Bird, выглядящие по-разному, но абсолютно одинаковые для программы. Этот прием называется Композиция (или агрегация) — когда экземпляр одного класса добавляет в себя экземпляр другого. Противоположный композиции прием называется Наследование — это если бы классы Орел и Сова наследовали (расширяли, extends) класс Птица. Для роликов, нарисованных в графическом редакторе Adobe Flash, такое невозможно — они могут расширять только МувиКлип, поэтому два ролика с разными изображениями птиц не могут расширять один класс Птица. Тогда есть смысл использовать Композицию. |
Может, дойдёт так
Код AS3:
Для этого в конструктор передаются аргументы. https://pp.userapi.com/c637425/v6374...VIxBUreo0U.jpg Что это даёт? А вот, что: Код AS3:
Но опять же, это пока вы не дочитаете до наследования. Затем код придётся переписывать. |
| Часовой пояс GMT +4, время: 14:33. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.