Просмотр полной версии : Количество снежинок
Котяра2006
13.11.2006, 14:28
Приветствую!
Смотрю исходник и не могу понять как там кол-во снежинок то можно изменить, подскажите пожалуйста
Заранее благодарен!
По-моему, в коде количество снежинок равно количеству fps. Можно изменить, но надо модифицировать код.
Спросите у автора, а то не знаю даже... :boredom:
ps. Просто код написан классно, не знаю могу ли я в него лезть...
Котяра2006
13.11.2006, 15:16
Хорошо, спасибо я понял, может кто-то ещё сможет посмотреть?
var counter:Number = 0;
var maxNum = 100;
var snowClipBaseName:String = "snow";
function randRange(min:Number, max:Number):Number {
var randomNum:Number = Math.round(Math.random()*(max-min))+min;
return randomNum;
}
this.onEnterFrame = function() {
if (counter<=maxNum) {
var newSnowClipName:String = snowClipBaseName+counter;
var newSnowClipX:Number = randRange(0, Stage.width);
var newSnowClipScale:Number = randRange(20, 100);
var newSnowClipAlpha:Number = randRange(30, 100);
var newSnowClip:MovieClip = this.attachMovie("snow", newSnowClipName, this.getNextHighestDepth(), {_x:newSnowClipX, _y:0, _xscale:((randRange(1, 2) == 1 ? 1 : -1)*newSnowClipScale), _yscale:newSnowClipScale, _alpha:newSnowClipAlpha});
newSnowClip.onEnterFrame = function() {
if (this._currentframe == this._totalframes) {
_root.counter--;
this.removeMovieClip();
}
};
counter++;
if (counter>1000) {
counter = 0;
}
}
};
+24 кадра в секунду.
var counter:Number = 0;
var snowClipBaseName:String = "snow";
function randRange(min:Number, max:Number):Number
{
var randomNum:Number = Math.round(Math.random() * (max - min)) + min;
return randomNum;
}
generate = function()
{
var newSnowClipName:String = snowClipBaseName + counter;
var newSnowClipX:Number = randRange(0, Stage.width);
var newSnowClipScale:Number = randRange(20, 100);
var newSnowClipAlpha:Number = randRange(30, 100);
var newSnowClip:MovieClip = _root.attachMovie("snow", newSnowClipName, this.getNextHighestDepth(), {_x:newSnowClipX, _y:0, _xscale:((randRange(1, 2) == 1 ? 1 : -1) * newSnowClipScale), _yscale:newSnowClipScale, _alpha:newSnowClipAlpha});
newSnowClip.onEnterFrame = function()
{
if (this._currentframe == this._totalframes)
{
this.removeMovieClip();
}
}
counter++;
if (counter > 1000)
{
counter = 0;
}
}
setInterval(this,'generate',500); // чем меньше параметр, тем больше снежинок
AlexSol
Круто! Жаль только, что работает не очень равномерно. :away:
__etc
У меня был тот же вариант. :D
Котяра2006
Только учтите, если будете использовать этот код в составе другого кода, что у вас запущен интервал и возможно его придется останавливать. Вы так же можете увеличить количество( в коде __etc это возможно), но увеличится и нагрузка на систему.
Котяра2006
13.11.2006, 22:06
Ок, всем большое спасибо! Думаю хозяину этого исходника будет тоже приятно)
ЗЫ
Ещё вопрос, а как остановить в мувике этот скрипт? И как его можно положить на нижний уровень чтобы снежинки не перекрывали всё?
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.