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

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

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

Регистрация: Aug 2008
Сообщений: 52
По умолчанию Переименование 2ух символов

Доброго времени суток. Прошу помощи т.к. воопще 2 ночи не сплю - решаю проблему и никак не могу уловить даже зависимость в глюках.

Вопщем суть такая - на стадии есть 8 клипов (включающих в себя множество вложений, но как факт - одинаковых) просто инстанции одного клипа.
Необхо реализовать "обмен" двух клипов с обменом свойств расположения (_X, _Y) и параметра _name.

Вот мой код:

Код AS1/AS2:
tX = _parent._x;
tY = _parent._y;
tN = _parent._name;
tN2 = _root.game[_global.telpath1]._name;
_root.game[tN]._x = _root.game[_global.telpath1]._x;
_root.game[tN]._y = _root.game[_global.telpath1]._y;
_root.game[tN]._name = tN2;
trace("новое имя: " + _parent._name);
_root.game[_global.telpath1]._name = tN;
trace("новое имя2: " + _root.game[tN]._name);
_root.game[tN]._x = tX;
_root.game[tN]._y = tY;
_root.game[tN].swapDepths(_parent);
Исходник приложить не могу, по некоторым причинам.
Ошибки выглядят как вообще нелогичные действия. Иногда работает нормально. иногда вовсе отказывается даже перемещаться.

Старый 20.03.2010, 17:05
fessor вне форума Посмотреть профиль Отправить личное сообщение для fessor Найти все сообщения от fessor
  № 2  
Ответить с цитированием
fessor

Регистрация: Oct 2009
Сообщений: 101
1. Используйте либо абсолютную (через _root.) либо относительную (через _parent.) адресации. Лучше конечно относительную, хоть и прийдется иногда _parent._parent. писать, но так будет правильно.
2. Не совсем понимаю зачем менять имя _name вы же потом к нему и обращаетесь? имя которое отображается в игре лучше хранить в отдельной переменной, не служебной, а имя которое не отображается и менять не зачем.
3. возможно объекты достаточно поменять местами/координатами и глубиной?

Старый 20.03.2010, 17:19
darkvam вне форума Посмотреть профиль Отправить личное сообщение для darkvam Найти все сообщения от darkvam
  № 3  
Ответить с цитированием
darkvam

Регистрация: Aug 2008
Сообщений: 52
1.Делал и абсолютную и относительную адресацию - разницы нет.
2. ну например, каждый из восьми клипов уже проименован (например м1,м2...), и они составляют точную структуру - первый ряд - м1, м2, м3, м4, второй ряд, м5, м6, м7, м8, и мне просто необходимо чтобы эта структура постоянно сохранялась. А если передвигать и менять глубину - структура разрушиться.
Дело в том, что потом, все расчёты будут идти относительно правильной структуры клипов, где известно, какой клип на каом ряду или месте стоит.

Возможно, быть может, есть путь легче?

_global.telpath1 = эта переменная содержит адрес другого мувика (путём _global.telpath1 = _parent._name при нажатии на один из муви клипов который хотим переместить).
Приведённый выше код находится в другом мувике (на место которого хотим переместить клип _global.telpath1), срабатывает при нажатии.


Последний раз редактировалось darkvam; 20.03.2010 в 17:23.
Старый 20.03.2010, 18:54
fessor вне форума Посмотреть профиль Отправить личное сообщение для fessor Найти все сообщения от fessor
  № 4  
Ответить с цитированием
fessor

Регистрация: Oct 2009
Сообщений: 101
стоп, стоп, стоп
прекращаем писать код в мувиках пишем его в кадрах, точнее в первом кадре сцены
как-то так
Код AS1/AS2:
function swapClips(amov:MovieClip;bmov:MovieClip){
var tmp_x = amov._x;
amov._x = bmov._x;
bmov._x = tmp_x;
}
просьба поподробнее описать "обмен клипов" что у них должно меняться а что нет?
всмысле если поменять копии одного клипа местами, переименовать их друг в друга и, допустим остановить их на одном и том-же кадре, то зачем тогда их вообще менять?!?

Старый 21.03.2010, 05:29
darkvam вне форума Посмотреть профиль Отправить личное сообщение для darkvam Найти все сообщения от darkvam
  № 5  
Ответить с цитированием
darkvam

Регистрация: Aug 2008
Сообщений: 52
Код в первом кадре - я к этому стремлюсь, но до этого пока далеко. Да и не так важно - это не физика где требуется наивысшая производительность. То что не удабно - знаю, но приходится мирится.

Вопщем по обмену клипами: в каждом из таких клипов есть ещё клип наделённый некоторыми свойствами. Вот эти свойства мне и надо перенести. Сейчас есть мысль сделать чуть посложнее - не перемещая клипы, просто обменивать свойства клипов внутри них. Получиться больше переменных, но ведь это ничего правдо?)
Я понимаю, что выложенный код без исходника невозможно понять нормально.

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

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

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


 


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


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