![]() |
|
||||||||||
|
|||||
|
Регистрация: Nov 2013
Сообщений: 13
|
Привет всем! Люди, подскажите, пожалуйста, где можно найти урок по созданию счётчика кликов мыши. Дело вот в чём: есть игрушка по типу "Поиск предметов". Необходимо, чтобы при нажатии на каждую вещь, счётчик (его видно на экране), уменьшался на единицу.
|
|
|||||
|
Banned
[+4 24.02.14]
[+4 07.11.13] [+ 13.03.14] Регистрация: Mar 2013
Сообщений: 1,864
|
package { import flash.display.Sprite; import flash.events.MouseEvent; import flash.text.TextField; import flash.text.TextFormat; public class CounterClicks extends Sprite { private var _allClicks:uint; private var _textField:TextField; public function CounterClicks() { _allClicks = 20; _textField = new TextField(); _textField.defaultTextFormat = this.textFormat(0xA9AC22); _textField.text = _allClicks.toString(); super.addChild(_textField); stage.addEventListener(MouseEvent.CLICK, stage_mouseClick); } private function stage_mouseClick(event:MouseEvent):void { _allClicks--; _textField.text = _allClicks.toString(); if (_allClicks == 0) { _textField.text = 'Конец'; stage.removeEventListener(MouseEvent.CLICK, stage_mouseClick); } } private function textFormat(color:uint):TextFormat { var tFormat:TextFormat = new TextFormat(); tFormat.size = 50; tFormat.color = color; return tFormat; } } } |
|
|||||
|
Banned
[+4 24.02.14]
[+4 07.11.13] [+ 13.03.14] Регистрация: Mar 2013
Сообщений: 1,864
|
Исправил.
|
|
|||||
|
Регистрация: Nov 2013
Сообщений: 13
|
Вот это оперативность!!! Спасибо вам, конечно, а можно ну очень начинающему чайнику объяснить, что с этим кодом делать, в смысле, на сцене что для него должно быть (кроме моих предметов). Я в пустой кадр вбила, выдал ошибку - Пакеты не могут быть вложенными.
|
|
|||||
|
Регистрация: Apr 2012
Сообщений: 213
|
Это код не для кадров, а для класса, советую либо видеоуроки посмотреть, либо Мука почитать. В программировании так с наскока не получится
|
|
|||||
|
Регистрация: Nov 2013
Сообщений: 13
|
Ёшкин кот...А без классов никак? Я до них не доползла пока((
|
|
|||||
|
Banned
[+4 24.02.14]
[+4 07.11.13] [+ 13.03.14] Регистрация: Mar 2013
Сообщений: 1,864
|
А я просто не знаю, как это будет в кадрах, сорри
![]() Но это легко перевести в кадры, Вы же понимаете смысл моего кода. Вот где-то в главном коде кадров, создаете переменную текстового поля и переменную с максимум кликов. Все Ваши объекты подписываете на клик и в обработчеке событий клика, каждое событие вычитаете из переменной "максимум кликов" один "максимумКликов--" и отображаете это значение в текстовом поле. И проверку сделать на "максимумКликов==0". |
|
|||||
|
Регистрация: Apr 2012
Сообщений: 213
|
Без них можно, но не нужно. Поверьте, лучше сразу учиться правильно
Последний раз редактировалось Digital; 22.01.2014 в 18:59. |
|
|||||
|
Регистрация: Nov 2013
Сообщений: 13
|
Буду мучиться с классами.
Создала файл AS, назвала CounterClicks, скопировала туда код. Поместила в ту же папку, что и сам файл. Вроде всё правильно... На временной шкале прописала . Выдал Не удается вызвать свойство или метод со ссылкой на объект "null". at CounterClicks() at _fla::MainTimeline/frame1(). Что не так? Добавлено через 3 часа 19 минут Как привязать текстовое поле к этому классу?? Последний раз редактировалось Astarta; 22.01.2014 в 21:40. |
![]() |
![]() |
Часовой пояс GMT +4, время: 07:46. |
|
|
« Предыдущая тема | Следующая тема » |
|
|