Показать сообщение отдельно
Старый 23.08.2009, 22:26
Zhihar вне форума Посмотреть профиль Отправить личное сообщение для Zhihar Найти все сообщения от Zhihar
  № 3  
Ответить с цитированием
Zhihar

Регистрация: Sep 2002
Сообщений: 202
Код AS1/AS2:
var g_nStartTime:Number = getTimer();
var g_pElementsParameters:Array = Array(70);
 
var g_nLoading:Number = 0;
 
mcBranchMask1.m_nStartPos = mcBranchMask1._x;
mcBranchMask2.m_nStartPos = mcBranchMask2._x;
 
 
for (nIndex:Number = 1; nIndex < 69; ++ nIndex)
{
	g_pElementsParameters[nIndex] = 1;
	this["mcElement" + nIndex]._visible = false;
}
 
mcButterfly._visible = false;
 
this.onEnterFrame = function()
{	
	// вычислить максимальный номер видимого элемента
	var nMaxIndex:Number = Math.ceil(69 * g_nLoading / 100);
 
	// отрисовать видимые элементы
	for (nIndex:Number = 1; nIndex < nMaxIndex; ++ nIndex)
	{
		this["mcElement" + nIndex]._xscale = g_pElementsParameters[nIndex];
		this["mcElement" + nIndex]._yscale = g_pElementsParameters[nIndex];
 
		if (g_pElementsParameters[nIndex] < 100)
			g_pElementsParameters[nIndex] *= 1.2;
		else
			g_pElementsParameters[nIndex] = 100;
	}
 
	// вывести процент загрузки
	txtLoading = ((Math.ceil(g_nLoading) < 10) ? ("0") : ("")) + ((g_nLoading < 100) ? (Math.ceil(g_nLoading)) : ("100")) + "%";
 
	// вычислить текущею степень загрузки сайта
	var nTimeLoading:Number = (getTimer() - g_nStartTime) / 100;
	var nFramesLoading:Number = Math.ceil(100 * getBytesLoaded() / getBytesTotal());
 
	g_nLoading = nFramesLoading;//(nTimeLoading < nFramesLoading) ? (nTimeLoading) : (nFrameLoading);
 
	if (g_nLoading >= 100)
	{
		for (nIndex:Number = 1; nIndex < nMaxIndex; ++ nIndex)
		{
			if (g_pElementsParameters[nIndex] != 100)
				return;
		}
 
		mcButterfly._visible = true;
 
		delete onEnterFrame;	
		_root.gotoAndPlay(2);
	}
 
	// отрисовать ветки
	mcBranchMask1._x = mcBranchMask1.m_nStartPos + mcBranchMask1._width * g_nLoading / 100;
	mcBranchMask2._x = mcBranchMask2.m_nStartPos + mcBranchMask2._width * g_nLoading / 100;
 
	// отрисовать элементы веток
	for (nIndex:Number = 1; nIndex < nMaxIndex; ++ nIndex)
		this["mcElement" + nIndex]._visible = true;
}