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

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

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

Регистрация: Dec 2006
Сообщений: 60
Question проблемы с SharedObject

Вот написал такой вот код:
Код AS1/AS2:
var my_so:SharedObject = SharedObject.getLocal("frame");
my_so.data.frame=_root.carbig._currentframe;
my_so.flush();
tellTarget("_root.carbig") {
    gotoAndPlay(my_so.data.frame);
}
По идее _root.carbig - мувик должен отдавать свой _currentframe в my_so.data.frame,
после чего при закрытии должен приогрываться my_so.data.frame , соотвественно перебрасывая мувик в то место, с какого он был закрыт. Но что-то не выходит помогите пожалуйста!

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

Регистрация: Aug 2005
Адрес: я из Ленинграда
Сообщений: 1,082
Отправить сообщение для Mnilionic с помощью ICQ
где находится этот код?
из того что я вмжу:
код срабатывает при в первом кадре.
в куку сохраняется первый кадр кдипа.
целевой мувик перебрасывается в первый кадр.

Что написали то и получили.

Нужно разделить логику чтения и сохранения куки.
1. Читаем только при загрузке: если есть кука отправляем на нужный кадр, если нет на первый.
2. по ходу проигрывания клипа обновляем my_so.data.frame (flush не нужен, он сам сохранится при выгрузки флеша.)

Старый 31.05.2009, 23:42
Green DeviL вне форума Посмотреть профиль Отправить личное сообщение для Green DeviL Найти все сообщения от Green DeviL
  № 3  
Ответить с цитированием
Green DeviL
 
Аватар для Green DeviL

Регистрация: Dec 2006
Сообщений: 60
Попытался исправить но всеравно не вышло:
Код AS1/AS2:
var my_so:SharedObject = SharedObject.getLocal(frame);
my_so.data.frame==0;
function savecucis(){
	if(_root.carbig._currentframe==0){
	}else{
my_so.data.frame==_root.carbig._currentframe
	};};
_root.savecucis();
function loadcucis(){
	if(my_so.data.frame>=1){
		tellTarget(_root.carbig){gotoAndPlay(my_so.data.frame);};
	}else{
	};};
_root.loadcucis();

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

Регистрация: Aug 2005
Адрес: я из Ленинграда
Сообщений: 1,082
Отправить сообщение для Mnilionic с помощью ICQ
Код AS1/AS2:
var my_so:SharedObject = SharedObject.getLocal(frame);
var target_clip = _root.carbig;
// читаем куку
if( !isNaN(Number(my_so.data.frame)) ){
// если есть - отправляем на нужный кадр
	target_clip.gotoAndPlay(my_so.data.frame);
}
// записываем куку при каждом изменении кадра клипа
target_clip.onEnterFrame = function(){
	my_so.data.frame = target_clip._currentframe;
}

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

Регистрация: Dec 2006
Сообщений: 60
спасибо Mnilionic за код! Все работает, блин я бы в жизнь не додумался до такого !

Добавлено через 12 минут
При повторном использовании кода
Код AS1/AS2:
// up1
var my_so1:SharedObject = SharedObject.getLocal(frame);
var target_clip1 = _root.goup1;
// читаем куку
if( !isNaN(Number(my_so1.data.frame)) ){
// если есть - отправляем на нужный кадр
	target_clip1.gotoAndPlay(my_so1.data.frame);
}
// записываем куку при каждом изменении кадра клипа
target_clip1.onEnterFrame = function(){
	my_so1.data.frame = target_clip1._currentframe;
}
- не сохраняет в куку или что-то не так ?


Последний раз редактировалось Green DeviL; 01.06.2009 в 11:56.
Старый 01.06.2009, 12:09
alexcon314 вне форума Посмотреть профиль Отправить личное сообщение для alexcon314 Найти все сообщения от alexcon314
  № 6  
Ответить с цитированием
alexcon314
listener

модератор форума
Регистрация: Jun 2006
Сообщений: 3,260
Записей в блоге: 28
Отправить сообщение для alexcon314 с помощью ICQ
Нужно где-нибудь вставить my_so1.flush(), например, вызывать этот метод по событию "пользователь остановил воспроизведение".
Код:
stop_button.onRelease = function(){
      my_so1.data.frame = target_clip1._currentframe;
      my_so1.flush();
}


Последний раз редактировалось alexcon314; 01.06.2009 в 12:17.
Старый 01.06.2009, 12:29
Green DeviL вне форума Посмотреть профиль Отправить личное сообщение для Green DeviL Найти все сообщения от Green DeviL
  № 7  
Ответить с цитированием
Green DeviL
 
Аватар для Green DeviL

Регистрация: Dec 2006
Сообщений: 60
alexcon314, там не кнопкой остановилось а просто закрытием брузера. нужно просто из куки запись\чтение

Добавлено через 3 минуты
еще такая трабла: этот код както-то влияет на прозрачность alpha! как от такого еефекта избавиться? у меня в другом мувиклипе прозрачность от 17% изменяется до 100% , так пока она не станет 100% проигрывается с эти кодом как 0%

Старый 01.06.2009, 12:51
alexcon314 вне форума Посмотреть профиль Отправить личное сообщение для alexcon314 Найти все сообщения от alexcon314
  № 8  
Ответить с цитированием
alexcon314
listener

модератор форума
Регистрация: Jun 2006
Сообщений: 3,260
Записей в блоге: 28
Отправить сообщение для alexcon314 с помощью ICQ
Ну, тогда вставьте этот код в энтерфрейм. ))
В принципе, код Mnilionic'a тоже рабочий, в смысле и без принудительного флуша.
Проверяйте.

Старый 01.06.2009, 13:07
Green DeviL вне форума Посмотреть профиль Отправить личное сообщение для Green DeviL Найти все сообщения от Green DeviL
  № 9  
Ответить с цитированием
Green DeviL
 
Аватар для Green DeviL

Регистрация: Dec 2006
Сообщений: 60
вставка кода в onEnterFrame не помогла, муви клипы только начали бесконечно проигрываться

Добавлено через 3 минуты
Код рабочий но только почему-то 1 раз %), я этого слегка недопонимаю, просто таких мувиклипов как _root.carbig у меня на сцене штук 6 еще, надобы сделать чтоб все сохранялись в кукис. может в массиве както-то их загнать если не получается второй раз код пихать?


Последний раз редактировалось Green DeviL; 01.06.2009 в 13:12.
Старый 01.06.2009, 13:35
alexcon314 вне форума Посмотреть профиль Отправить личное сообщение для alexcon314 Найти все сообщения от alexcon314
  № 10  
Ответить с цитированием
alexcon314
listener

модератор форума
Регистрация: Jun 2006
Сообщений: 3,260
Записей в блоге: 28
Отправить сообщение для alexcon314 с помощью ICQ
Вот-вот. Думается,что при такой нагрузке на кадр (вычисления, графика, перерисовка) глюки при сбросе данных на винт в шаредобжект вполне возможны. Сделайте все-таки сброс данных вне энтерфрейма. Попробуйте использовать setInterval. Или сбрасывайте не в каждом кадре.

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

Теги
sharedobject

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

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


 


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


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