![]() |
|
||||||||||
|
|||||
|
_xmouse - отследить Х мыши на ролике
onEnterFrame - реагировать на отловленно Х и действовать (двигать). Тут не панорама конечно, а просто с краев добавляется еще копия середины.
__________________
"We Are The Champions My Friends!" Queen |
|
|||||
|
...
модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
|
На сцене должен быть мувик "phon_mc". Код помести в первый кадр.
var moving:Boolean = false;
onMouseMove = function () {
if (Math.abs(Stage.width/2-_xmouse)>100 && !moving) {
moving = true;
phon_mc.onEnterFrame = function() {
velocity = (Stage.width/2-_xmouse)/50;
this._x += velocity;
};
} else if (Math.abs(Stage.width/2-_xmouse)<=100 && moving) {
moving = false;
delete phon_mc.onEnterFrame;
}
};
|
|
|||||
|
Регистрация: Sep 2005
Сообщений: 93
|
а какже сделать чтоб он показывал от начала мувика до конца???
|
|
|||||
|
...
модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
|
Не понял. Что не получилось?
P.S. Не заметил, что ты в личке уточнил. var moving:Boolean = false;
var velocity:Number;
var maxVel:Number;
var k:Number = 10;
//
onMouseMove = function () {
if (Math.abs(Stage.width/2-_xmouse)>100 && !moving) {
moving = true;
phon_mc.onEnterFrame = function() {
velocity = (Stage.width/2-_xmouse)/k;
//вычисляем максимальное значение скорости с учетом знака
maxVel = Math.abs((Stage.width/2-_xmouse))/(Stage.width/2-_xmouse)*Stage.width/2/k;
/*
Проверяем не выходил ли значение св-ва _x
из заданного диапазона. Если выходит, то
не прибавляем значение скорости.
*/
if (this._x+maxVel>=Stage.width-this._width && this._x+maxVel<=0) {
this._x += velocity;
}
};
} else if (Math.abs(Stage.width/2-_xmouse)<=100 && moving) {
moving = false;
delete phon_mc.onEnterFrame;
}
};
Последний раз редактировалось udaaff; 31.08.2007 в 21:37. |
![]() |
![]() |
Часовой пояс GMT +4, время: 19:04. |
|
|
« Предыдущая тема | Следующая тема » |
|
|