![]() |
|
||||||||||
|
|||||
|
[+ 1.10 09.01.2006]
|
Решил я, понимаете ли, сделать игрульку...
А банальных вещей не знаю... Специально качал книги с нета по AS но там полезного не нашёл... А вопрос у меня следующий. Есть прямоугольник(условно) при глике мышкой надо чтоб нос этого самого прямоугольника повернулся в том направлении где, собтвенно говоря, кликнули... ![]() Если не трудно подскажите кде можно почитать про основы создания Flash игр.... Help NeWbie?!
__________________
ICQ-Rus.com - Всё самое интересное из мира ICQ |
|
|||||
|
Ветеран форума
|
здесь на форуме выкладывали исходники стратегии , там всё это было ... да и поворот дело не сложное нужно просто расчитать угол и повернуть мувик
__________________
BestMasterиZация |
|
|||||
|
"Специально качал книги с нета по AS но там полезного не нашёл... "
не нашел ничего полезного в книгах по АС? не верю |
|
|||||
|
[+ 1.10 09.01.2006]
|
А каким образом его вообще рассчитывать? Я просто вообще представления не имею...
2 Король Просто ты меня не прально понял... Книга 1 была весом в 20 мб... Но в ней просто тупое описание команд без "особеннстей приминения"... Очень поверхностная книга попалась...
__________________
ICQ-Rus.com - Всё самое интересное из мира ICQ |
|
|||||
|
Ветеран форума
|
Всё просто
в первый кадр и тестим _root.createEmptyMovieClip("mc", 1);
mc._x = 250;
mc._y = 200;
with (mc) {
lineStyle(2, 0x333333, 100);
moveTo(0, 0);
lineTo(0, 0);
lineTo(100, 0);
}
onMouseDown = function () {
yoffs = _ymouse-_root.mc._y;
xoffs = _xmouse-_root.mc._x;
_root.mc._rotation = (Math.atan2(yoffs, xoffs)*180)/Math.PI;
};
__________________
BestMasterиZация |
|
|||||
|
[+ 1.10 09.01.2006]
|
C линией всё пашет на ура, а с прямоугольником глючит... Нашел скриптик, прямоугольник крутиться! Но я хочу чтоб он не сразу а постепенно "крутился"! Делаю такую штуку:
onMouseDown = function () {
xgll = getProperty("_root.x", _x);
ygll = getProperty("_root.x", _y);
xtt = getProperty("_root.x.targ", _x);
ytt = getProperty("_root.x.targ", _y);
qqy = xgll-xtt;
qqx = ygll-ytt;
ulg = Math.atan2 ( qqy, qqx )*180/3.14+90;
while(_root.x._rotation < ulg){
_root.x._rotation = _root.x._rotation + 1
}
while(_root.x._rotation > ulg){
_root.x._rotation = _root.x._rotation - 1
}
}
__________________
ICQ-Rus.com - Всё самое интересное из мира ICQ |
|
|||||
|
Banned
[+1 16.05.2006]
[++1 16.05.2006] [+ 1 21.05.06] [++ за хамство] [+1 21.05.2006] Регистрация: Dec 2003
Сообщений: 3,925
|
Для начала, прекратить пользоваться черверочным синтаксисом вперемешку с точечной нотацией. Потом -- научиться осмысленно называть переменные. Затем -- подумать, как это поворот "постепенно" будет совершаться в цикле? Нужен последовательный вызов через промежуток времени.
Весьма удивительно, что люди, адрес которых не много, ни мало -- Hell, не знают таких дьявольски простых вещей. ![]() |
|
|||||
|
Ветеран форума
|
Цитата:
убираешь этот код на сцене делаешь мувик с именем mc и всё ...
__________________
BestMasterиZация |
|
|||||
|
[+ 1.10 09.01.2006]
|
Прямоугольник колбАсить начинает....
Переменные-переменные... Ну вот прижилося так! А с Hell... Просто когда регался на форуме маленький был и считал что ето круто! Ж) А как это запузырить через промежуток времени если у нас функция MouseDown?
__________________
ICQ-Rus.com - Всё самое интересное из мира ICQ |
|
|||||
|
onMouseDown = function () {
yoffs = _ymouse-_root.mc._y; xoffs = _xmouse-_root.mc._x; _root.mc.ENDrotation = (Math.atan2(yoffs, xoffs)*180)/Math.PI; }; После этого ты имеешь начальную ротацию(_rotation) и желаемую(ENDrotation), затем тебе надо посчитать, в какую сторону надо крутить клип(по часовой или против) и дальше в функции mc.onEnterFrame = function(){ mc._rotation+=mc.AngleMov }, пока клип не установится на нужный поворот. А дальше удаляешь mc.onEnterFrame (это, по-моему, mc.onEnterFrame = null)
__________________
(А) |
![]() |
![]() |
Часовой пояс GMT +4, время: 15:44. |
|
|
« Предыдущая тема | Следующая тема » |
|
|