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

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

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

Регистрация: Feb 2013
Сообщений: 51
По умолчанию Изменение значения (код есть)

Есть класс который содержит параметры персонажа ,
Код AS1/AS2:
class Hero{	
 
 var speed = 7;
 var maxJump = -17;
 
}

эти параметры используются в других классах. Так вот мне нужно, чтоб к примеру когда персонаж соприкасается с обьектом, через hitTest, то значение параметра временно изменяется. К примеру на 5 секунд увеличивается скорость и через 5 секунд снова становится прежней. Вот класс в котором все это происходит:
Код AS1/AS2:
class motion
{
function back() 
{
	var Catdata:Hero = new Hero(); 
 
	Catdata.speed -=3;
	trace(Catdata.speed);
}
	public function motion1()
	{
		var Catdata:Hero = new Hero();
                trace(Catdata.speed);
		if (_root.lilo.hitTest(_root.cat))
		{
			Catdata.speed +=3;
			trace(Catdata.speed);
			setTimeout( back,   10000)
			unloadMovie("lilo");
 
		}
	}
}
}
При отслеживании изменения скорости происходит такое:
Сначала выводит постоянно 7, при соприкосновении с обьектом 1 раз выводит 10, потом опять сразу 7, через время заданное в setTimeout выводит 1 раз 4 и потом опять 7, как это исправить?

Добавлено через 41 минуту
Ребят ну как это понять блин!? Взял вот этот же код перенес просто в кадр. Параметр speed обьявил и добавил в onClipEvent (load), а другой код в onClipEvent (enterFrame) и все изменяется, при соприкосновении с обьектом, значение меняется на 10 и через 10 секунд меняется обратно на исходное, как блин?! почему в классе это не получается, я уже сума схожу, помогите, я что то упустил и из-за этого ничего не выходит.

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

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
dimaMJ, очевидно, что есть логическая ошибка в коде, из-за которой значения так меняются.

Относительно помощи — реально сложно что-то посоветовать, учитывая, что классы вы используете ради классов, а не для того, чтобы использовать принципы ООП.

Как вариант — попробуйте сначала игру написать в кадрах, потом уже переносите ее в классы. Может быть в таком случае вы получите работающие классы ради классов. Только не используйте обработчики "on(...)" в коде на клипах.
__________________
hauts.ru

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

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

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


 


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


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