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

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

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

Регистрация: Aug 2005
Сообщений: 785
По умолчанию Отмена всего

как при переходе в следующий кадр отменить все запущенные в предыдущем кадре функции....
тоесть в первом кадре у меня запускается функция F, и припереходе в сдедующий кадр её надо удалить, пытался с помощю delete, но не полоучается
помогите пожалуйста
__________________
Нано-флешер (в отставке)

Старый 20.05.2007, 10:16
marat_sa вне форума Посмотреть профиль Отправить личное сообщение для marat_sa Посетить домашнюю страницу marat_sa Найти все сообщения от marat_sa
  № 2  
Ответить с цитированием
marat_sa
 
Аватар для marat_sa

Регистрация: Nov 2006
Сообщений: 487
Отправить сообщение для marat_sa с помощью ICQ Отправить сообщение для marat_sa с помощью Skype™
Попробуй удалять delet'om не функцию, а обработчик событий onEnterFrame или onLoad.

Старый 20.05.2007, 10:23
screamge вне форума Посмотреть профиль Отправить личное сообщение для screamge Посетить домашнюю страницу screamge Найти все сообщения от screamge
  № 3  
Ответить с цитированием
screamge
Ветеран форума
 
Аватар для screamge

Регистрация: Jul 2006
Адрес: Грузия, Тбилиси
Сообщений: 2,675
Незнаю насколько это удобно в твоём случае но можно ставить флаги, т.е:
Код:
if (!flag)
__________________
Free-lance | Twitter | Me

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

Регистрация: Oct 2006
Адрес: spb.ru
Сообщений: 3,221
Функция отрабатывает один раз, код покажите.

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

Регистрация: Aug 2005
Сообщений: 785
ок
задача меняется...теперь надо просто вырубить запущенную функцию grav()....при нажатии на кнопку reset
по странной причине исходник прикрепить не могу.....
напишу код здесь:
Код:
clear();
Play.enabled = true;
function drag(obj4) {
	for (i=0; i<obj4.length; i++) {
		obj4[i].onPress = function() {
			this.startDrag();
		};
		obj4[i].onRelease = function() {
			this.stopDrag();
		};
	}
}
function grav(obj1, obj2, obj3, XXX, YYY) {
	var Vx = XXX;
	var G = 1;
	var Vy = YYY;
	var Nx = 0;
	var Ny = 0;
	moveTo(obj1._x, obj1._y);
	lineStyle(1, 0x00FF00, 70);
	obj1.onEnterFrame = function() {
		lineTo(this._x, this._y);
		if (this.hitTest(target)) {
			unloadMovie(this);
		}
		for (i=0; i<obj2.length; i++) {
			var X = this._x-obj2[i]._x;
			var Y = this._y-obj2[i]._y;
			var D = Math.sqrt(X*X+Y*Y);
			if (D>10) {
				F = 400/D;
				R = Math.atan2(Y, X);
				VFx = -Math.cos(R)*F;
				VFy = -Math.sin(R)*F;
				Vx = (VFx+Vx*G+Nx);
				Vy = (VFy+Vy*G+Ny);
			} else {
				Vx = -Vx;
				Vy = -Vy;
			}
		}
		if (obj3.length>0) {
			for (f=0; f<obj3.length; f++) {
				XX = this._x-obj3[f]._x;
				YY = this._y-obj3[f]._y;
				Dn = Math.sqrt(XX*XX+YY*YY);
				if (Dn>10) {
					Fn = -400/Dn;
					Rn = Math.atan2(YY, XX);
					Nx = -Math.cos(Rn)*Fn;
					Ny = -Math.sin(Rn)*Fn;
				} else {
					Vx = -Vx*0.9;
					Vy = -Vy*0.9;
				}
			}
		}
		this._x += Vx/5;
		this._y += Vy/5;
	};
}
Play.onPress = function() {
	obj5 = [P1, N1];
	for (i=0; i<obj5.length; i++) {
		obj5[i].enabled = false;
	}
	Play.enabled = false;
	grav(P1, [N1], [], 0, 0);
};
drag([P1, N1]);
stop();
reset.onPress = function() {
	for (i=0; i<obj5.length; i++) {
		obj5[i].enabled = true;
	}
	
	delete grav(P1, [N1], [], 0, 0);////вот тут пытаюсь  выключить функцию, она выключается и опять включается :(
};
помагите плиз
__________________
Нано-флешер (в отставке)


Последний раз редактировалось Therion; 21.05.2007 в 00:33.
Старый 21.05.2007, 00:48
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 6  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Код:
delete obj1.onEnterFrame
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 21.05.2007, 00:58
Therion вне форума Посмотреть профиль Отправить личное сообщение для Therion Найти все сообщения от Therion
  № 7  
Ответить с цитированием
Therion
 
Аватар для Therion

Регистрация: Aug 2005
Сообщений: 785
Цитата:
Сообщение от iNils
Код:
delete obj1.onEnterFrame
Гениально
спасибо!!!
__________________
Нано-флешер (в отставке)

Старый 21.05.2007, 01:18
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 8  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Об этом во втором посте написали.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

Регистрация: Aug 2005
Сообщений: 785
я уже понял, просто я такого ещё не разу не использовал(delete obj.onEnterFrame), поэтому и не совсем понял что именно Marat_sa имел введу
__________________
Нано-флешер (в отставке)

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

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

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


 


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


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