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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 22.01.2014, 18:05
Astarta вне форума Посмотреть профиль Отправить личное сообщение для Astarta Найти все сообщения от Astarta
  № 1  
Ответить с цитированием
Astarta

Регистрация: Nov 2013
Сообщений: 13
По умолчанию Счётчик

Привет всем! Люди, подскажите, пожалуйста, где можно найти урок по созданию счётчика кликов мыши. Дело вот в чём: есть игрушка по типу "Поиск предметов". Необходимо, чтобы при нажатии на каждую вещь, счётчик (его видно на экране), уменьшался на единицу.

Старый 22.01.2014, 18:18
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 2  
Ответить с цитированием
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
Код AS3:
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;
		}
	}
 
}

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

блогер
Регистрация: Oct 2010
Адрес: Киев
Сообщений: 1,678
Записей в блоге: 12
Отправить сообщение для Dukobpa3 с помощью Skype™
Цитата:
Код AS3:
stage.addEventListener(MouseEvent.MOUSE_UP, stage_mouseUp);
Ап - это не клик. Надо на клик подписываться.
__________________
Кто к нам с чем для чего - тот у нас того от того.

Старый 22.01.2014, 18:24
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 4  
Ответить с цитированием
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
Исправил.

Старый 22.01.2014, 18:31
Astarta вне форума Посмотреть профиль Отправить личное сообщение для Astarta Найти все сообщения от Astarta
  № 5  
Ответить с цитированием
Astarta

Регистрация: Nov 2013
Сообщений: 13
Вот это оперативность!!! Спасибо вам, конечно, а можно ну очень начинающему чайнику объяснить, что с этим кодом делать, в смысле, на сцене что для него должно быть (кроме моих предметов). Я в пустой кадр вбила, выдал ошибку - Пакеты не могут быть вложенными.

Старый 22.01.2014, 18:33
Digital вне форума Посмотреть профиль Отправить личное сообщение для Digital Найти все сообщения от Digital
  № 6  
Ответить с цитированием
Digital

Регистрация: Apr 2012
Сообщений: 213
Это код не для кадров, а для класса, советую либо видеоуроки посмотреть, либо Мука почитать. В программировании так с наскока не получится

Старый 22.01.2014, 18:36
Astarta вне форума Посмотреть профиль Отправить личное сообщение для Astarta Найти все сообщения от Astarta
  № 7  
Ответить с цитированием
Astarta

Регистрация: Nov 2013
Сообщений: 13
Ёшкин кот...А без классов никак? Я до них не доползла пока((

Старый 22.01.2014, 18:37
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 8  
Ответить с цитированием
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
А я просто не знаю, как это будет в кадрах, сорри
Но это легко перевести в кадры, Вы же понимаете смысл моего кода. Вот где-то в главном коде кадров, создаете переменную текстового поля и переменную с максимум кликов. Все Ваши объекты подписываете на клик и в обработчеке событий клика, каждое событие вычитаете из переменной "максимум кликов" один "максимумКликов--" и отображаете это значение в текстовом поле. И проверку сделать на "максимумКликов==0".

Старый 22.01.2014, 18:37
Digital вне форума Посмотреть профиль Отправить личное сообщение для Digital Найти все сообщения от Digital
  № 9  
Ответить с цитированием
Digital

Регистрация: Apr 2012
Сообщений: 213
Без них можно, но не нужно. Поверьте, лучше сразу учиться правильно


Последний раз редактировалось Digital; 22.01.2014 в 18:59.
Старый 22.01.2014, 18:50
Astarta вне форума Посмотреть профиль Отправить личное сообщение для Astarta Найти все сообщения от Astarta
  № 10  
Ответить с цитированием
Astarta

Регистрация: Nov 2013
Сообщений: 13
Буду мучиться с классами.
Создала файл AS, назвала CounterClicks, скопировала туда код. Поместила в ту же папку, что и сам файл. Вроде всё правильно... На временной шкале прописала
Код AS3:
var ec: CounterClicks = new CounterClicks();
. Выдал Не удается вызвать свойство или метод со ссылкой на объект "null".
at CounterClicks()
at _fla::MainTimeline/frame1().
Что не так?

Добавлено через 3 часа 19 минут
Как привязать текстовое поле к этому классу??


Последний раз редактировалось Astarta; 22.01.2014 в 21:40.
Создать новую тему Ответ Часовой пояс GMT +4, время: 07:46.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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