Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Табличка! (http://www.flasher.ru/forum/showthread.php?t=87456)

Olmer 05.11.2006 22:25

Табличка!
 
Лююди помогите плиз!
Есть мувиклип допустим "sm" (квадратик 90 на 120)
Нужно этот квадратик отдублировать N раз
и выстроить все эти квадратики табличкой по 6 кадратиков строке.

Помогите плиз! Скрипт простейший но башка у меня не варит =(

Хемуль 05.11.2006 22:51

Вложений: 1
Ну, вот пример для создания матрицы из 36 квадратиков. По 6 квадратиков в строке. Я думаю, вы достаточно просто можете переделать это для дублирования мувиклипа. Я писал именно такой пример, потому что точно не знаю, является ли ваш оригинальный мувиклип первым мувиклипом в матрице...
Код:

var clipsNumber:Number = 36;
var clipsInRow:Number = 6;
var clipBaseName:String = "rectangle";
var left:Number = 100;
var top:Number = 100;
var clipWidth:Number = 20;
var clipHeight:Number = 20;
var rowsInterval:Number = 10;
var columnsInterval:Number = 10;
var clipsColor:Number = 0xff0000;

for (var index:Number = 1; index <= clipsNumber; index++)
{
        var newClipName:String = clipBaseName + index;
        var newClip:MovieClip = createRectangleMovieClip(newClipName, this, this.getNextHighestDepth(), left + ((index - 1) % clipsInRow) * (clipWidth + columnsInterval) + columnsInterval, top + Math.floor((index - 1) / clipsInRow) * (clipHeight + rowsInterval) + rowsInterval, clipWidth, clipHeight, clipsColor, 100);
}

function createRectangleMovieClip(newName:String, parentClip:MovieClip, parentClipDepth:Number, newX:Number, newY:Number, newWidth:Number, newHeight:Number, newColor:Number, newAlpha:Number):MovieClip
{
        var newClip:MovieClip = parentClip.createEmptyMovieClip(newName, parentClipDepth);
        newClip.beginFill(newColor);
        newClip.moveTo(0, 0);
        newClip.lineTo(newWidth, 0);
        newClip.lineTo(newWidth, newHeight);
        newClip.lineTo(0, newHeight);
        newClip.lineTo(0, 0);
        newClip.endFill();
        newClip._x = newX;
        newClip._y = newY;
        newClip._alpha = newAlpha;
        return newClip;
}

Исходник прикрепляю...

Olmer 06.11.2006 01:11

Хемуль! Тебе респект огромный! Спасибо!
Выручил! А то я уже отчаялся!


Часовой пояс GMT +4, время: 15:05.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.