Level Editor
I got this idea from Microsoft’s game development tool XNA samples.
How do you turn a text file into a level. For instance, the following:
var level1layer001:String = “_______”;
var level1layer002:String = “_ _____”;
var level1layer003:String = “_ _ __”;
var level1layer004:String = “…____”;
var level1layer005:String = “_.. ______”;
var level1layer006:String = “_ ________”;
var level1layer007:String = “_ ___”;
var level1layer008:String = “…_______”;
var level1layer009:String = “_..___”;
var level1layer010:String = “_ “;
var level1layer011:String = “_ ”;
var level1layer012:String = “. . D”;
var level1layer013:String = “_XX___. .”;
var level1layer014:String = “_ . . . ”;
var level1layer015:String = “_ . . “;
var level1layer016:String = “..H__S..________”;
into this:

It’s fairly simple. Here is the code for you actionscripters out there.
var level1SetupArray:Array = new Array (level1layer016, level1layer015, level1layer014, level1layer013,level1layer012, level1layer011, level1layer010, level1layer009,level1layer008, level1layer007, level1layer006, level1layer005,level1layer004, level1layer003, level1layer002, level1layer001);
var level2SetupArray:Array = new Array (level2layer016, level2layer015, level2layer014, level2layer013,level2layer012, level2layer011, level2layer010, level2layer009,level2layer008, level2layer007, level2layer006, level2layer005,level2layer004, level2layer003, level2layer002, level2layer001);
var levelsArray:Array = new Array (level1SetupArray, level2SetupArray)
for (var ii:int = 0; ii < levelsArray[level-1].length;ii++) {
for (var i:int = 0; i < levelsArray[level-1][ii].length;i++) {
if (levelsArray[level-1][ii].charAt(i) == “_”) { //Floor Block 1
addFloorBlockFromTextInput(i*40,400-ii*40,1);
}
else if (levelsArray[level-1][ii].charAt(i) == “.”) { //Floor Block 2
addFloorBlockFromTextInput(i*40,400-ii*40,2);
}
else if (levelsArray[level-1][ii].charAt(i) == “X”) { //X = enemy
addFloorBlockFromTextInput(i*40,400-ii*40,3);
createSingleEnemy(i * 40, 400-ii*40,i);
}
else if (levelsArray[level-1][ii].charAt(i) == “H”) { //H = set hero x and y to here
addFloorBlockFromTextInput(i*40,400-ii*40,2);
hero.mc.x = i * 40;
hero.mc.y = 400 - ii * 40;
}
else if (levelsArray[level-1][ii].charAt(i) == “D”) { //D = Door
addFloorBlockFromTextInput(i*40,400-ii*40,2);
var newDoor:Door = new Door();
newDoor.x = i * 40;
newDoor.y = 400 - ii * 40;
gamelevel.addChild(newDoor);
}
else if (levelsArray[level-1][ii].charAt(i) == “S”) { //S = Sample with block (SAMPLES ARE NOW FILM REELS)
addFloorBlockFromTextInput(i*40,400-ii*40,2);
var newSample:Key = new Key();
newSample.x = i * 40;
newSample.y = (400 - ii * 40)-40;
gamelevel.addChild(newSample);
}
}
}
}