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

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

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

Регистрация: Dec 2010
Сообщений: 129
По умолчанию Классы и глобальная переменная... помогите настроить...

Доброе...
Суть такая, есть 9 элементов, которые можно таскать, и есть 9 ячеек по три группы.
Есть класс для перетаскивания:
Код AS3:
package net {
	import flash.display.MovieClip;
	import flash.events.MouseEvent;
	import flash.geom.Point;
 
	public class drag extends MovieClip {
 
		protected var originalPosition:Point;
		public var i,a,b:int;
 
		public function drag() {
 
			m = new myVariable();
			originalPosition = new Point(x,y);
			buttonMode = true;
			addEventListener(MouseEvent.MOUSE_DOWN, down);
		}
 
		protected function down(event:MouseEvent):void{
			parent.addChild(this);
			startDrag();
 
			stage.addEventListener(MouseEvent.MOUSE_UP, stageUp);
 
		}
 
		protected function stageUp (event:MouseEvent):void{
			stage.removeEventListener(MouseEvent.MOUSE_UP, stageUp);
			stopDrag();
 
			if(dropTarget){
 
				if(dropTarget.parent.name == "cel"){
					trace(event.target.name);
					//scaleX = scaleY = 0.2;
					alpha = 0.5;
					//y = stage.stageHeight - height - 10;
					y=dropTarget.parent.y + 5;
					x=dropTarget.parent.x + 5;
 
					buttonMode = false;
					removeEventListener(MouseEvent.MOUSE_DOWN, down);
 
 
				}else if(dropTarget.parent.name == "cel2"){
					trace(event.target.name);
					//scaleX = scaleY = 0.2;
					alpha = 0.5;
					//y = stage.stageHeight - height - 10;
					y=dropTarget.parent.y + 5;
					x=dropTarget.parent.x + 5;
 
					buttonMode = false;
					removeEventListener(MouseEvent.MOUSE_DOWN, down);
 
 
				} else if(dropTarget.parent.name == "cel3"){
					trace(event.target.name);
					if (event.target.name == "dnd"){
						trace("i = "+i);
						i++;
						trace("i = "+i);
					} else if(event.target.name == "dnd2"){
						a++;
						trace("a = "+a);
					}else if(event.target.name == "dnd3"){
						b=b+6;
						trace("b = "+b);
					}
					//scaleX = scaleY = 0.2;
					alpha = 0.5;
					//y = stage.stageHeight - height - 10;
					y=dropTarget.parent.y + 5;
					x=dropTarget.parent.x + 5;
 
					buttonMode = false;
					removeEventListener(MouseEvent.MOUSE_DOWN, down);
 
 
				}
 
			}else{
				returnToOriginalPosition();
			}
		}
 
		protected function returnToOriginalPosition():void{
			x = originalPosition.x;
			y = originalPosition.y;
		}
 
	}
 
}
Проблема в том. что хочу при перетаскивании, хочу чтобы значение переменной увеличивалось на единицу, но из-за того, что при каждом клике класс перезапускается и переменная не увеличивается.
Подскажите, как сделать переменную глобальней, чтобы она один раз объявилась и дальше только считалась.
Спасибо.
__________________
--
Какой бы путь ты не выбрал, лягушка прыгнет врятли

Старый 21.11.2013, 13:36
alexandrratush вне форума Посмотреть профиль Отправить личное сообщение для alexandrratush Найти все сообщения от alexandrratush
  № 2  
Ответить с цитированием
alexandrratush
 
Аватар для alexandrratush

Регистрация: Jul 2013
Адрес: Днепр
Сообщений: 529
Отправить сообщение для alexandrratush с помощью ICQ Отправить сообщение для alexandrratush с помощью Skype™
Создайте статическое свойство в классе "drag" и в него добавляйте что нужно.

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

Регистрация: Dec 2010
Сообщений: 129
Спасибо.
типа такого ?
Код AS3:
public static var i:int =0;
Спасибо, помогло.
__________________
--
Какой бы путь ты не выбрал, лягушка прыгнет врятли

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

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

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


 


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


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