Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 19.09.2017, 23:53
undefined вне форума Посмотреть профиль Отправить личное сообщение для undefined Найти все сообщения от undefined
  № 21  
Ответить с цитированием
undefined

Регистрация: Oct 2006
Сообщений: 2,281
DOC - display object container. Он может быть как корневым, так и не корневым.
В любом случае добавлять/отцеплять display object'ы от дисплей-листа должен родительский для этих объектов контейнер.

Старый 20.09.2017, 01:51
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 22  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Ты бы на пару дней отбросил амбиции сходу написать игру, которая покорит весь мир, и попробовал силы в написании банальной кнопки, а затем менюшки с тремя-четырьмя этими кнопками.
У меня ученики начинают с CheckBox и RadioButton, затем RadioBar — о каком бы Варкрафте ни мечтали)). И на таких простейших компонентах прекрасно осознают львиную долю концепций ООП.
Скучно, стыдно, но начинать надо с малого — оно в мозгу целиком помещается.
__________________
Reality.getBounds(this);

Старый 20.09.2017, 10:20
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 23  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Цитата:
В любом случае добавлять/отцеплять display object'ы от дисплей-листа должен родительский для этих объектов контейнер.
Это ошибочное суждение. Не знаю почему многим так вбилось это в голову. Объекты могут и сами себя удалять из дисплей листа. Ничего плохого в этом нет, если на них нет каких-то дополнительных внешних ссылок. Часто вот такие "правильные" подходы приводят к дико нечитаемому и трудноподдерживаемому коду.
Взять какого-нибудь персонажа в игре. Врага. Игрок убивает этого врага, и вот тут возникает вопрос, а как его удалить? Если пользоваться подходом, что только родитель должен удалять дочерние объекты, то этот враг должен (согласно парадигме флеша) послать событие о том, что он дожен удалиться. Это событие должен слушать родитель. По событию родитель находит целевой объект, отписывается от его событий и удаляет объект.
Хотя все можно было сделать гораздо проще. Не оставлять никаких внешних ссылок на врага, а просто создать в нем метод destroy / dispose, в котором он может сам удалиться из дисплей листа. Никаких ненужных событий и лишних зависимостей.
__________________
Ко мне можно и нужно обращаться на ты)

Старый 20.09.2017, 11:15
Zebestov вне форума Посмотреть профиль Отправить личное сообщение для Zebestov Посетить домашнюю страницу Zebestov Найти все сообщения от Zebestov
  № 24  
Ответить с цитированием
Zebestov
Lorem ipsum
 
Аватар для Zebestov

модератор форума
Регистрация: May 2001
Адрес: Одесса
Сообщений: 4,869
Записей в блоге: 4
Цитата:
Сообщение от caseyryan Посмотреть сообщение
Это ошибочное суждение.
Ну не знаю. Мне кажется дикой идея, когда мой мусорный пакет сам выбрасывает себя в мусорный бак.
__________________
Поймай яблоко 2!

Старый 20.09.2017, 11:46
Appleman вне форума Посмотреть профиль Отправить личное сообщение для Appleman Найти все сообщения от Appleman
  № 25  
Ответить с цитированием
Appleman
 
Аватар для Appleman

Регистрация: Dec 2014
Адрес: Санкт-Петербург
Сообщений: 479
Цитата:
Сообщение от Wolsh Посмотреть сообщение
Ты бы на пару дней отбросил амбиции сходу написать игру, которая покорит весь мир, и попробовал силы в написании банальной кнопки, а затем менюшки с тремя-четырьмя этими кнопками. У меня ученики начинают с CheckBox и RadioButton, затем RadioBar — о каком бы Варкрафте ни мечтали)). И на таких простейших компонентах прекрасно осознают львиную долю концепций ООП. Скучно, стыдно, но начинать надо с малого — оно в мозгу целиком помещается.
Да, согласен полностью. Только с одним не соглашусь. Возможно я не прав, но мне представляется, что наличие некой более крупной цели (игра, которая покорит мир и его окрестности) лучше мотивирует на изучение. А по сути так и получается. Всё равно скатываешься к тому, что нужно меню, в котором нужны кнопки и чекбоксы, и что начинать приходится снизу вверх.

Я с ходу догадался, что ты преподаёшь Чувствуется стиль языка и манера изложения: последовательно, доходчиво и метафорично. У тебя книжек или туториалов нет?

Старый 20.09.2017, 11:50
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 26  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
Wolsh,
Мне бы такого учителя в своё время.. Знания моего преподавателя ограничивались кодом на кнопке для перехода в нужный кадр.

Цитата:
Сообщение от Zebestov Посмотреть сообщение
Ну не знаю. Мне кажется дикой идея, когда мой мусорный пакет сам выбрасывает себя в мусорный бак.
Предприниматель, сумевший реализовать эту идею станет миллионером!

Всё-таки я тоже малась поддержу caseyryan, ну не всегда на практике получается строго придерживаться концепции Родитель -> Ребёнок. Это как с оператором goto в c++, его нужно стараться избегать всегда. Но где-то, единичное и умелое его применение может облегчить, упростить или ускорить выполнение кода.
__________________
Дети не должны знать о своих родителях


Последний раз редактировалось Tails; 20.09.2017 в 12:05.
Старый 20.09.2017, 12:19
undefined вне форума Посмотреть профиль Отправить личное сообщение для undefined Найти все сообщения от undefined
  № 27  
Ответить с цитированием
undefined

Регистрация: Oct 2006
Сообщений: 2,281
Цитата:
Это ошибочное суждение.
Правило не строгое.Главное чтоб исключение не стало доминирующим паттерном в проекте.Сам часто для хинтов создаю MC с анимацией появления/исчезновения и в последнем кадре:
Код AS3:
if(parent)
   parent.removeChild(this);
и в любом месте:
Код AS3:
var hint:MyHint=new MyHint();
addChild(hint);

Старый 21.09.2017, 05:44
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 28  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Цитата:
и в любом месте:
Код AS3:
var hint:MyHint=new MyHint();
addChild(hint);
А лучше через статический метод из пула их брать (знаю, что я сейчас сКЭПил))
Цитата:
Главное чтоб исключение не стало доминирующим паттерном в проекте
Я даже в этом ничего страшного не вижу. Если это удобнее, чем использовать классический подход, то почему бы и нет.
Цитата:
Мне кажется дикой идея, когда мой мусорный пакет сам выбрасывает себя в мусорный бак.
А мне она кажется великолепной
Цитата:
Возможно я не прав, но мне представляется, что наличие некой более крупной цели (игра, которая покорит мир и его окрестности) лучше мотивирует на изучение.
Всё верно. Идея нужна, иначе не будет стимула. Я когда начинал изучение, я тоже сразу начал с большой онлайновой игры. И я, таки, сделал её и даже запустил в ВК. Там только с монетизацией получилась беда, в силу недостаточного опыта. Но игра, сама по себе, получилась довольно неплохо. Вот с неё некоторые скрины. А главное, я на ней очень многому научился, как по клиентской части, так и по серверной. Я по ней не только AS3 но и Java изучал. Так что поддержу, наличие такой цели - это очень хорошо. Главное, чтобы руки не опустились после множества неудач, которые обязательно будут на этом нелегком пути
Миниатюры
Нажмите на изображение для увеличения
Название: 2012-03-22_184321.jpg
Просмотров: 28
Размер:	641.9 Кб
ID:	33012   Нажмите на изображение для увеличения
Название: 2012-06-16_110416.jpg
Просмотров: 26
Размер:	677.9 Кб
ID:	33013   Нажмите на изображение для увеличения
Название: 2012-03-22_184254.jpg
Просмотров: 25
Размер:	661.5 Кб
ID:	33014   Нажмите на изображение для увеличения
Название: 2012-06-17_132314.jpg
Просмотров: 23
Размер:	740.3 Кб
ID:	33015  
__________________
Ко мне можно и нужно обращаться на ты)

Старый 21.09.2017, 11:01
undefined вне форума Посмотреть профиль Отправить личное сообщение для undefined Найти все сообщения от undefined
  № 29  
Ответить с цитированием
undefined

Регистрация: Oct 2006
Сообщений: 2,281
Цитата:
Я даже в этом ничего страшного не вижу. Если это удобнее, чем использовать классический подход, то почему бы и нет.
Удобнее всего чтоб данные писались в модель прямо в хэндлере кнопки.ТС - новичок,сначала надо научиться как правильно, а как легче само придет.

Старый 21.09.2017, 16:26
Appleman вне форума Посмотреть профиль Отправить личное сообщение для Appleman Найти все сообщения от Appleman
  № 30  
Ответить с цитированием
Appleman
 
Аватар для Appleman

Регистрация: Dec 2014
Адрес: Санкт-Петербург
Сообщений: 479
Цитата:
Сообщение от caseyryan Посмотреть сообщение
Я когда начинал изучение, я тоже сразу начал с большой онлайновой игры. И я, таки, сделал её и даже запустил в ВК. Там только с монетизацией получилась беда, в силу недостаточного опыта. Но игра, сама по себе, получилась довольно неплохо. Вот с неё некоторые скрины.
Симпатично. На Desert/Jungle Strike чем-то похоже. А ссылку в студию?

Создать новую тему Ответ Часовой пояс GMT +4, время: 17:32.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 17:32.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.