PDA

Просмотр полной версии : Туториал по тетрису


Keeper
11.06.2012, 20:25
И снова тетрис))) Нашёл туториал (http://www.emanueleferonato.com/2011/05/02/creation-of-a-complete-flash-tetris-game/) по созданию тетриса в АС3. Так как это первое, что я пытаюсь сделать на третьем скрипте, то для меня непонятным осталось только куда нужно вписывать части кода. Я сделал всё до слов "Test the movie and you will see", но ничего не выходит - при тестировании тупо отображается серый прямоугольник. Если нужно, выложу исходник.

silin
11.06.2012, 23:26
>> куда нужно вписывать части кода
в отдельном файле Main.as, он же Document Class tetris.fla
там же написано вроде..

Keeper
12.06.2012, 16:38
С этим тоже разобрался. Меня путает то, что там код разбит на части, и я не понимаю, куда их вставлять в файле Main.as.

silin
12.06.2012, 17:28
package
{
import flash.display.Sprite;
import flash.events.Event;

public class Main extends Sprite
{
private const TS:uint = 24;
private var fieldArray:Array;
private var fieldSprite:Sprite;
public function Main():void
{
generateField();
}

private function generateField():void
{
var colors:Array = new Array("0x444444", "0x555555");
fieldArray = new Array();
var fieldSprite:Sprite = new Sprite();
addChild(fieldSprite);
fieldSprite.graphics.lineStyle(0, 0x000000);
for (var i:uint = 0; i < 20; i++)
{
fieldArray[i] = new Array;
for (var j:uint = 0; j < 10; j++)
{
fieldArray[i][j] = 0;
fieldSprite.graphics.beginFill(colors[j % 2 + i % 2 % 2]);
fieldSprite.graphics.drawRect(TS * j, TS * i, TS, TS);
fieldSprite.graphics.endFill();
}
}
}
}
}

Keeper
13.06.2012, 18:20
Всё равно что-то не то: Main.as, Line 1 5007: An ActionScript file must have at least one externally visible definition.

Кстати, каким образом в АС3 происходит нумерация строк?

silin
13.06.2012, 19:45
Keeper, а взять какой-нибудь работающий пример и посмотреть как там сделано не пробовали? или доки почитать.., тыкать наугад и спрашивать почему не срослось - не очень эффективно, вряд ли такого уровня проблемы кому-то здесь интересны, чтобы отвечать..

текст класса должен быть в файле Main.as
в качестве документ-класса во fla должно быть прописано Main