public override void BuildLevel(int height, int width) { char sign = ' '; board_builder = new MagmaLevelBuilder(this.content); if (pick == 1) { board_builder = new IceLevelBuilder(this.content); } if (pick == 2) { board_builder = new JungleLevelBuilder(this.content); } board_builder.GenerateBackground(); for (int i = 0; i < height; i++) { for (int j = 0; j < width; j++) { sign = this.level_array[i, j]; if (sign == 'b') { board_builder.GenerateBorder(); } else if (sign == '\u2588') { board_builder.GenerateBlock(); } else if (sign == '$') { board_builder.GenerateCoin(); } else if (sign == '/') { board_builder.GenerateLeftThorn(); } else if (sign == '?') { board_builder.GenerateRightThorn(); } else if (sign == '#') { board_builder.GenerateThorn(); } board_builder.GenerateDoors(height, width); board_builder.x += 16; } board_builder.x = 0; board_builder.y += 16; } sprite_collection = board_builder.GetLevel(); Champion.GetInstance().SetCollection(sprite_collection); }
void Start() { levelDirector = new LevelDirector(); LevelBuilder simpleIceLevelBuilder = new IceLevelBuilder(); LevelBuilder complexFireLevelBuilder = new FireLevelBuilder(); levelDirector.ConstructSimpleLevel(simpleIceLevelBuilder); levelDirector.ConstructComplexLevel(complexFireLevelBuilder); Level simpleIceLevel = simpleIceLevelBuilder.GetLevel(); Level complexFireLevel = complexFireLevelBuilder.GetLevel(); simpleIceLevel.PrintLevel(); complexFireLevel.PrintLevel(); }