Просмотр полной версии : Анимация
Люди добрые помогите с советом.
Хочу сделать например барабан как в игровых автоматах, что бы крутился барабан и случайно выпадал рисунок с нужной переменной во фрейме. Сама загвостка в том, что у меня не получается перейти плавно к нужному элементу в барабане. Т.е. барабан представим ввиде ленты с диапазоном в 25 кадров(), эту ленту прокручиваем как обычную анимацию с первого по 25 кадр, а вот как например мне плавно перейти к 10 кадру(на котором в данный момент например апельсин нарисован), если на данный момент проигрывается 15 кадр???
Хотя бы как плавно проиграть 20,25 и 5 кадры.
У меня все рывками происходит, то бишь сразу же резко переходит например с 20 кадра на 10.
Если что то не понятно в вопросе,напишу более подробно!!!
За ранее спасибо
чистая математика.
допустим у тебя эта лента вертикальная, то есть по _y двигается.
Тогда нужно либо прибалять к текущему положению (+=) или убавлять (-=) с понижением типа этого прибавляемого или вычитаемого.
короче, смотри здесь (http://flasher.ru/forum/showthread.php?t=73784) исходник. там вродь работает, токо по _x и надо две строчки c "var" кода, присвоенного кнопкам , поставить в начало кода...
Да на счет того что это можно сделать по скрипту я знаю.
то бишь
onClipEvent (enterFrame) {
_y+=5;
}
все это понятно, но мне не получается по условию (if) его остановить, этот клип.
Как например _y проверять на условиях. C hitTest не выходит(даже и не пытался).
как сделать скриптом так, что бы остановить нужный мне кадр без рывков.
???
исходник не запускается, так как сейчас я пока что учусь на пятом флэше.
попробуй сделать типа цикл ! ну тоесть создай условие где будет определяться на каком кадре остановиться и расчёт где чичас этот кадр находится и за счёт этого задать скорость торможения . ну вот тебе к примеру к примеру у тебя 9ть кадров рандомиш 8ку получается 4 вот и задавай расчёт от того кадра который у тебя чичас виден и до того кадра который нужен =) только как это реализовать кодом не думал ) некогда
Делаем мувик с 10 кадрами вытаскиваем на сцену и обзываем spin , достаём две кнопки stop_btn и play_btn и в первый кадр рута пихаем код
F_moveSpin = function () {
spin.onEnterFrame = function() {
if (_root.detect == this._currentframe) {
this.stop();
_root.detect = 0;
delete this.onEnterFrame;
}
};
};
play_btn.onPress = function() {
spin.play();
};
stop_btn.onPress = function() {
detect = random(9)+1;
F_moveSpin();
};
Всем спасибо за советы, но я все сделал по своему:)))
Реализовал покадровую проверку, конечно все это сыро еще, но хоть какой то результат есть, который можно доработать. Дальше только фантазия и художества остаются.
Кого заинтересовала такая тема, можете взглянуть результат.
В скоро сделаю игровой автомат на флэше. Как сделаю, так сразу же покажу:)))))
Какой кошмар ))) зачем так заморачиваться и писать в каждом кадре код ?
что то я не заметил плавности (
кстати привыкай называть слой англ. буковками - может выйдешь на международный уровень, будешь буржуям исходники штамповать под заказ))
В скоро сделаю игровой автомат на флэше. Как сделаю, так сразу же покажу))))
просто ГОРЮ желанием посмотреть. удачи.
Вот еще один исходник, я переписал весь код.
Он стал более компактней.
Оцените вот такой вот код.
Всё равно не рационально ... а что бы с нулём работало нужно писать не так
a=random(10); а вот так a=random(9)+1;
да знаю как решить проблему на счет нуля, просто там надо было сразу по другому делать.
насчет рациональности, тоя я еще учусь.
думаю загвостка еще больше бует когда я столкнусь с друмя такими линиями.
Как вы думаете, если с двумя линиями работать, то лучше всего это делать с помощью функций???
Как вы думаете, если с двумя линиями работать, то лучше всего это делать с помощью функций???
Ознакомься (http://www.novemberain.com/blog/?p=93)
Вот еще один вариант кода, только уже с тремя барабанами.
Оцените, критикуйте!!!
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.