public GameLevel(LevelDef _def) { characterSpawners = new CharacterSpawners(_def.characterSpawners); Global.Server().postConnected += ListenConnectedToServer; Global.Server().postDisconnected += ListenDisconnectedFromServer; }
private void RaiseOnLevelLoaded(LevelDef level) { if (OnLevelLoaded != null) { OnLevelLoaded(level); } }
public GameLevel(LevelDef _def) { characterSpawners = new CharacterSpawners(_def.characterSpawners); Global.Server().postConnected += ListenConnectedToServer; Global.Server().postDisconnected += ListenDisconnectedFromServer; }
public static LevelDef FromDictionary(Dictionary <string, object> dictionary, int index) { LevelDef levelDef = new LevelDef(); levelDef.index = index; levelDef.title = dictionary["title"] as string; levelDef.fen = dictionary["fen"] as string; levelDef.board = new BoardDef(levelDef.fen); return(levelDef); }
public Level Init(LevelDef def, Block blockPrefab, Exit exitPrefab, Coin coinPrefab, Gem gemPrefab, int seed, Color[] colors) { Def = def; PRNG = new PRNG(); BlockPrefab = blockPrefab; ExitPrefab = exitPrefab; CoinPrefab = coinPrefab; GemPrefab = gemPrefab; Colors = PRNG.Shuffle(colors, Def.ColorCount); Blocks = new Block[def.Width, def.Depth + 2]; Blocks.Fill((x, y) => CreateBlock(x, y)); Blocks.GetRow(0).ToList() .FindAll(block => block != null) .ForEach(block => { DestroyBlock(block, false); }); CreateBottom(); Exit = CreateExit(); BlockGroupSystem = GetComponent <BlockGroupSystem>().Init(this); AddGemRandomlyInRows(); Coins = new Coin[def.Width, def.Depth + 2]; Coins.Fill(CreateCoin); Coins.ForEach(item => { if (!item) { return; } DestroyBlock(item.Cell, false); }); return(this); }
// Loads LevelDefs from a JSON file private void Load() { TextAsset levelFile = Resources.Load <TextAsset>(GameConstants.LEVELS_JSON_PATH); if (levelFile != null) { Dictionary <string, object> levelData = MiniJSON.Json.Deserialize(levelFile.text) as Dictionary <string, object>; List <object> levelList = levelData[GameConstants.LEVELS_JSON_PAYLOAD_KEY] as List <object>; int index = 0; foreach (Dictionary <string, object> obj in levelList) { LevelDef levelDef = LevelDef.FromDictionary(obj, index++); levels.Add(levelDef); //Debug.Log(levelDef.board.ToString()); } // Notify the rest of the game LoadLevelByIndex(currentLevelIndex); } else { Debug.LogError("[LevelManager] Couldn't load resource: levels.json"); } }
Level CreateLevel(int index) { var entity = new GameObject($"Level-{index}"); entity.transform.SetParent(transform); var level = entity.AddComponent <Level>() .Init( LevelDef.CreateLevelDef(index, CoinDensity, Colors), BlockPrefab, ExitPrefab, CoinPrefab, GemPrefab, Seed, Colors ); level.OnGroupDestroyed += blockCount => { PRNG.Shuffle(DigSounds, blockCount).ToList().ForEach(PlaySound); int sum = blockCount; for (int i = 0; i < blockCount; i++) { sum += i; } Purse.Increment(sum); }; return(level); }
static LevelDefs() { Defs = new Dictionary <string, LevelDef>(); Defs["Castle Exterior"] = new LevelDef() { Index = 26, CameraStart = new Vector3(17.5f, 2.7f, 39.1f), RemoveMats = new string[] { "2", "5", "18", "23-34", "36-43", } }; Defs["Bob-omb Battlefield"] = new LevelDef() { Index = 14, CameraStart = new Vector3(45.04f, 0.24f, 59.77f), RemoveMats = new string[] { "13", "23-29", "31-40", "42-51", "54-56", "59-73", } }; Defs["Whomp's Fortress"] = new LevelDef() { Index = 36, CameraStart = new Vector3(-39.57f, 5.12f, 40.06f), RemoveMats = new string[] { "14", "18", "22-34", "38-46", "48-62", } }; Defs["Cool, Cool Mountain"] = new LevelDef() { Index = 5, CameraStart = new Vector3(13.32f, 25.608f, -24.71f), RemoveMats = new string[] { "16-43", "45-48", "50-59", } }; Defs["Tiny-Huge Island (Huge)"] = new LevelDef() { Index = 21, CameraStart = new Vector3(72.03f, -29.69f, 72.42f), RemoveMats = new string[] { "12", "15-35", "37-42", "44-62", "65", } }; Defs["Tiny-Huge Island (Tiny)"] = new LevelDef() { Index = 22, CameraStart = new Vector3(16.58f, -7.42f, 18.45f), Scale = 0.25f, RemoveMats = new string[] { "12", "15-20", "23-54", } }; /*Defs["Hazy Maze Cave"] = new LevelDef() { * Index = 10, * CameraStart = new Vector3(73.27f, 21.61f, 74.48f), * Indoor = true, * RemoveMats = new string[] { * "38-62" * } * };*/ Defs["Snowman's Land"] = new LevelDef() { Index = 15, CameraStart = new Vector3(-58.0f, 10.24f, 6.08f), RemoveMats = new string[] { "12-13", "17-37", "39-57", } }; Defs["Wet-Dry World"] = new LevelDef() { Index = 17, CameraStart = new Vector3(-34.08f, 0.64f, 2.94f), Indoor = true, LinkIndex = 18, RemoveMats = new string[] { "15-16", "21-28", "31-52", "55-59", "62-63", }, LinkMats = new string[] { "17-18", "20-24", "27-40", }, }; /*Defs["Tall, Tall Mountain"] = new LevelDef() { * Index = 46, * Indoor = false, * RemoveMats = new string[] { * "6-11", * "13-17", * "20-23", * "25-30", * "32-41", * "46-53", * } * };*/ Defs["Tick Tock Clock"] = new LevelDef() { Index = 24, CameraStart = new Vector3(-13.78f, -48.22f, -0.13f), Indoor = true, RemoveMats = new string[] { "16-17", "20-21", "24-42", "44-53" } }; }
private Material[] LoadLevel(Mesh mesh, LevelDef def) { int num = def.Index; if (linked) { num = def.LinkIndex; } List <Vector3> vertices = new List <Vector3>(); List <Vector2> uv = new List <Vector2>(); List <List <int> > triangles = new List <List <int> >(); Dictionary <int, Material> materialdict = new Dictionary <int, Material>(); List <Material> materials = new List <Material>(); var path = Application.dataPath + @"\..\M64_Levels"; var transpath = Application.dataPath + @"\..\transparent.txt"; var transparent = new HashSet <string>(); using (StreamReader sr = new StreamReader(transpath, Encoding.ASCII)) { string line; while ((line = sr.ReadLine()) != null) { var c = line.Split(','); transparent.Add(c[0]); } } var removemats = new HashSet <int>(); var mats = def.RemoveMats; if (linked) { mats = def.LinkMats; } foreach (var m in mats) { if (m.IndexOf('-') > -1) { var c = m.Split('-'); var end = int.Parse(c[1]); for (var start = int.Parse(c[0]); start <= end; start++) { removemats.Add(start); } } else { removemats.Add(int.Parse(m)); } } using (StreamReader sr = new StreamReader(string.Format(@"{0}\{1}\model.obj", path, num))) { string line; List <int> currentTris = null; while ((line = sr.ReadLine()) != null) { line = line.Trim(); if (line.StartsWith("usemtl mat")) { if (triangles.Count > 0 && triangles[triangles.Count - 1].Count == 0) { triangles.RemoveAt(triangles.Count - 1); materials.RemoveAt(materials.Count - 1); } currentTris = new List <int>(); int matnum = int.Parse(line.Substring("usemtl mat".Length)); if (!removemats.Contains(matnum)) { Material mat; if (materialdict.ContainsKey(matnum)) { mat = materialdict[matnum]; } else { var tex = new Texture2D(0, 0, TextureFormat.ARGB32, false); byte[] pngdata; using (FileStream p = File.OpenRead(string.Format(@"{0}\{1}\{2}.png", path, num, matnum))) { pngdata = new byte[p.Length]; p.Read(pngdata, 0, pngdata.Length); } tex.LoadImage(pngdata); mat = new Material(baseMaterial); if (transparent.Contains(string.Format(@"{0}\{1}.bmp", num, matnum))) { mat.shader = Shader.Find("Unlit/Transparent"); } mat.mainTexture = tex; mat.name = matnum.ToString(); } materials.Add(mat); triangles.Add(currentTris); } } else if (line.StartsWith("v ")) { var c = line.Substring("v ".Length).Split(' '); vertices.Add(new Vector3(float.Parse(c[0]) * def.Scale, float.Parse(c[1]) * def.Scale, float.Parse(c[2]) * def.Scale)); } else if (line.StartsWith("vt ")) { var c = line.Substring("vt ".Length).Split(' '); uv.Add(new Vector2(float.Parse(c[0]), float.Parse(c[1]))); } else if (line.StartsWith("f ")) { foreach (var t in line.Substring("f ".Length).Split(' ')) { currentTris.Add(int.Parse(t.Split('/')[0]) - 1); } } } } // now duplicate everything with reverse winding order, so we always show back faces var origlen = vertices.Count; for (var i = 0; i < origlen; i++) { vertices.Add(vertices[i]); } for (var i = 0; i < origlen; i++) { uv.Add(uv[i]); } foreach (var tris in triangles) { var trilen = tris.Count; for (var i = 0; i < trilen; i += 3) { tris.Add(tris[i] + origlen); tris.Add(tris[i + 2] + origlen); tris.Add(tris[i + 1] + origlen); } } mesh.subMeshCount = triangles.Count; mesh.vertices = vertices.ToArray(); mesh.uv = uv.ToArray(); for (var i = 0; i < triangles.Count; i++) { mesh.SetTriangles(triangles[i].ToArray(), i); } return(materials.ToArray()); }
void OnLevelLoaded(LevelDef level) { _boardDef = level.board; // Raise an event for the board inside this level. This is a useful indirection because the undo system will use boards. RaiseOnBoardLoaded(level.board); }
private void LoadLevel() { LevelDef level = Levels[CurrentLevelIndex]; LevelText.text = $"{level.Number}/{Levels.Length}"; DescriptionText.text = level.DescriptionText; Lovables = 0; string layout = level.LevelLayout; int row = 0; foreach (var line in layout.Split(new string[] { System.Environment.NewLine }, System.StringSplitOptions.None)) { int col = 0; foreach (var letter in line) { switch (letter) { case 'W': Instantiate(WallPrefab, new Vector3(col, -row, 0), Quaternion.identity, transform); break; case 'F': Instantiate(FloorPrefab, new Vector3(col, -row, 0), Quaternion.identity, transform); break; case 'U': Instantiate(FloorPrefab, new Vector3(col, -row, 0), Quaternion.identity, transform); Lovable upLovable = Instantiate(LovablePrefab, new Vector3(col, -row, 0), Quaternion.identity, transform); upLovable.SetRotation(Lovable.UpRotation); Lovables++; break; case 'R': Instantiate(FloorPrefab, new Vector3(col, -row, 0), Quaternion.identity, transform); Lovable rightLovable = Instantiate(LovablePrefab, new Vector3(col, -row, 0), Quaternion.identity, transform); rightLovable.SetRotation(Lovable.RightRotation); Lovables++; break; case 'D': Instantiate(FloorPrefab, new Vector3(col, -row, 0), Quaternion.identity, transform); Lovable downLovable = Instantiate(LovablePrefab, new Vector3(col, -row, 0), Quaternion.identity, transform); downLovable.SetRotation(Lovable.DownRotation); Lovables++; break; case 'L': Instantiate(FloorPrefab, new Vector3(col, -row, 0), Quaternion.identity, transform); Lovable leftLovable = Instantiate(LovablePrefab, new Vector3(col, -row, 0), Quaternion.identity, transform); leftLovable.SetRotation(Lovable.LeftRotation); Lovables++; break; default: break; } col++; } row++; } }
public void LoadLevel(LevelDef level) { if (level.sceneName != "") { Application.LoadLevel(level.sceneName); } }
protected override void OnPaint(PaintEventArgs e) { int iM = lstLD.Count - 1, i; string s = ""; LevelDef //ld, l = lstLD[iM]; base.OnPaint(e); //foreach (LevelDef ld in lstLD) //{ // if (nSigPrc <= ld.LVal) // { // l = ld; // break; // } //} for (i = 0; i < iM; i++) { if (nSigPrc <= lstLD[i].LVal) { l = lstLD[i]; break; } } // фон, соответствующий уровню заряда Color cB = l.LColB, cF = l.LColF; if (tmBlink.Enabled == true) { if (m_CurrBlinkCol != colP) {// переключаемся на фон cB = colP; cF = colP; } m_CurrBlinkCol = cB; } e.Graphics.FillRectangle(new SolidBrush(cB), 0, 0, this.Width, this.Height); if (m_TitleMode != BITEXT.None) { if (m_TitleMode == BITEXT.Percent) { s = nSigPrc.ToString() + "%"; } else if (m_TitleMode == BITEXT.UserDef) { s = m_BIText; } e.Graphics.DrawString(s, this.Font, new SolidBrush(cF), (this.Width / 2 - (e.Graphics.MeasureString(s, Font).Width / 2.0F)), this.Height / 2 - (e.Graphics.MeasureString(s, Font).Height / 2.0F)); } }
public static void InitLevel(LevelDef _def) { Instance.level = new GameLevel(_def); }
public CreateLevels() { _localLevels = new List <LevelDef> (); LevelDef levelDef; LevelSegment segment; LevelElementQuestion elementQuestion; LevelElementPillar elementPillar; LevelElementCoinArrow elementCoinArrow; LevelElementStop elementStop; LevelElementEnemyMushroon enemyMushroom; // ************* 创建第一关 ************************************************************** levelDef = new LevelDef(); // ************* 第一段 ******************************** segment = new LevelSegment(); string[] segametData01 = { // 0 //0 10 20 30 40 50 60 "0000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000", //0 10 20 30 40 50 60 // 5 //0 10 20 30 40 50 60 "0000000000000000000000000000000000000000000000000000000000000", "0000010011001101100110000001000000000000000000000000000000000", "0111011011011101110110111011000000000000000000000000000000000", "0110011001000000000100011011000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000000000", //0 10 20 30 40 50 60 // 10 //0 10 20 30 40 50 60 "0110011000110000001010001000000000000000000000000000000000001", "0111011101110111011011011100000000000000000000000000000000001", "0110001101100010001010000000000000000000000000000000000000001", "0000000000000000000000000000000000000000000000000000000000001", "0010001101110010001000110000000000000000000000000000000000001", //0 10 20 30 40 50 60 // 15 //0 10 20 30 40 50 60 "0111011101110111011101110000000000000000000000000000000000001", "0111001100100110001100100000000000000000000000000000000000001", "0000000000000000000000000001111111000000000000000000000000001", "0011011001110111000000000001000000000000000000000000000000001", "0111011101110111001001100001099999990000000000000000000000001", //0 10 20 30 40 50 60 // 20 //0 10 20 30 40 50 60 "0111011101100011011101110001000000000000000000000000000000001", "0000000000000000001000100001000000000000000000000000000000001", "0000000000000000000000000001009000000000000000000000000000001", "1111111111111111111111111HI1111111111111111111111111111111111", "1111111111111111111111111001111111111111111111111111111111111", //0 10 20 30 40 50 60 // 25 //0 10 20 30 40 50 60 "11111111111111111111111111111111110001111111111111G1111111111", "1111111111111111111111111111111111000111111111111111110000111" }; segment.data = segametData01; segment.width = segment.data[0].Length; segment.height = segment.data.Length; segment.segmentStartPos = new MapPoint(0, 0); segment.startPoint = new MapPoint(4, 22); segment.endPoint = new MapPoint(60, 22); segment.lockScreenLeft = true; segment.lockScreenRight = false; segment.lockScreenTop = true; segment.lockScreenBottom = true; segment.CalculateBorder(); elementQuestion = new LevelElementQuestion(10, 17, LevelElementQuestion.Type_AwardStar, LevelElementQuestion.Sprite_Question); segment.elements.Add(elementQuestion); elementQuestion = new LevelElementQuestion(18, 17, LevelElementQuestion.Type_AwardLife, LevelElementQuestion.Sprite_Question); segment.elements.Add(elementQuestion); LevelElementEnemyPiranha elementPiranha = new LevelElementEnemyPiranha(20, 21, MapElement.Dir_Up, 0.5f, 3.0f, 4.0f); segment.elements.Add(elementPiranha); elementPiranha = new LevelElementEnemyPiranha(16, 17, MapElement.Dir_Right, 1.0f, 3.0f, 4.0f); segment.elements.Add(elementPiranha); elementPiranha = new LevelElementEnemyPiranha(24, 17, MapElement.Dir_Left, 1.5f, 4.0f, 3.0f); segment.elements.Add(elementPiranha); elementPiranha = new LevelElementEnemyPiranha(20, 13, MapElement.Dir_Down, 2.0f, 4.0f, 3.0f); segment.elements.Add(elementPiranha); elementCoinArrow = new LevelElementCoinArrow(24, 21, MapElement.Dir_Right); segment.elements.Add(elementCoinArrow); elementPillar = new LevelElementPillar(54, 19, MapElement.Dir_Up, 8); //segment.elements.Add (elementPillar); enemyMushroom = new LevelElementEnemyMushroon(23, 20, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(25, 20, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(27, 20, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(29, 20, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(31, 20, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(33, 20, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(35, 20, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); levelDef.segments.Add(segment); // ************* 第一段 ******************************** /* segment = new LevelSegment(); * string[] segametData01 = { * // 0 * //0 10 20 30 40 50 60 * "00000000000000000000000000000000000000000000000000000000000000000", * "00000000000000000000000000000000000000000000000000000000000000000", * "00000000000000000000000000000000000000000000000000000000000000000", * "00000000000000000000000000000000000000000000000000000000000000000", * "00000000000000000000000000000000000000000000000000000000000000000", * //0 10 20 30 40 50 60 * // 5 * //0 10 20 30 40 50 60 * "00000000000000000000000000000000000000000000000000000000000000000", * "00000000000000000000000000000000000000000000000000000000000000000", * "00000000000000000000000000000000000000000000000000000000000000000", * "00000000000000000000000000000000000000000000000000000000000000000", * "00000000000000000000000000000000000900000000000000000000000000000", * //0 10 20 30 40 50 60 * // 10 * //0 10 20 30 40 50 60 * "00000000000000000000000000000000000090000000000000000000000000000", * "00000000000000000000000000000000000009000000000000000000000000000", * "00000000000000000000000000000000000000010000000000000000000000000", * "00000000000000000000000000000000000000010000000000000000000000000", * "00000000000000000000000000000000000000010000000000000000000000000", * * //0 10 20 30 40 50 60 * // 15 * //0 10 20 30 40 50 60 * "00000000000000000000000000000000000000000000000000000000000000000", * "00000000000000000000000000000000000009000000000000000000000000000", * "00000000000000000000000000000000000090000000000000000000000000000", * "00000000000000000000000000000000000090000000000000000000000000000", * "00000000000000000000000000000000000900000000000000000000000000000", * //0 10 20 30 40 50 60 * // 20 * //0 10 20 30 40 50 60 * //"0000000666676666600000000000000900000000000000060000000000000", * "00000000000000000000009900000000000111111111100000000000000000000", * "00000000000000000000099111111111111111111111100000000000000000000", * "11111111111111111111111111111111111111111111111111111111110000111", * "11111111111111111111111111111111111111111111111111111111110000111", * "11111111111111111111111111111111111111111111111111111111110000111", * //0 10 20 30 40 50 60 * // 25 * //0 10 20 30 40 50 60 * "11111111111111111111111111111111111111111111111111111111110000111", * "11111111111111111111111111111111111111111111111111111111110000111" * }; * segment.data = segametData01; * * segment.width = segment.data[0].Length; * segment.height = segment.data.Length; * * segment.segmentStartPos = new MapPoint (0, 0); * segment.startPoint = new MapPoint (2, 21); * segment.endPoint = new MapPoint (60, 22); * * segment.lockScreenLeft = true; * segment.lockScreenRight = false; * segment.lockScreenTop = true; * segment.lockScreenBottom = true; * segment.CalculateBorder (); * * elementQuestion = new LevelElementQuestion ( 11, 19, LevelElementQuestion.Type_CoinOne, LevelElementQuestion.Sprite_Question ); * segment.elements.Add (elementQuestion); * * elementQuestion = new LevelElementQuestion ( 12, 19, LevelElementQuestion.Type_CoinOne, LevelElementQuestion.Sprite_Question ); * segment.elements.Add (elementQuestion); * * elementPillar = new LevelElementPillar ( 58, 20, MapElement.Dir_Up, 7 ); * segment.elements.Add (elementPillar); * * /* * elementCoinArrow = new LevelElementCoinArrow ( 24, 21, MapElement.Dir_LeftUp ); * segment.elements.Add (elementCoinArrow); * * * * * elementStop = new LevelElementStop ( 35, 21, MapElementStop.StopType_Direct ); * segment.elements.Add (elementStop); * * * * enemyMushroom = new LevelElementEnemyMushroon (33, 18, MapElement.Dir_Left, MapElement.Dir_Left, 0); * segment.elements.Add (enemyMushroom); * * levelDef.segments.Add (segment); */ // ************* 第二段 ******************************** segment = new LevelSegment(); string[] segametData02 = { // 0 //0 10 20 30 40 50 60 "00000000000000000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000000000000000", //0 10 20 30 40 50 60 // 5 //0 10 20 30 40 50 60 "00000000000000000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000000009990000", //0 10 20 30 40 50 60 // 10 //0 10 20 30 40 50 60 "0000000000000000000000000000000000000000000000000000000000AAA0000", "00000000000000000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000000000000000", //0 10 20 30 40 50 60 // 15 //0 10 20 30 40 50 60 "00000000000000000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000068600000000111111114E00000000000", //0 10 20 30 40 50 60 // 20 //0 10 20 30 40 50 60 "0000000000000000000000000000000000000000000011111111114E000000000", "000000000000990000009900000000000000000000001111111111114E0000000", "0000000003111111111111111014E000000000000011111111111111114E00000", "11111111111111111111111111111111111111110011111111111111111111111", "11111111111111111111111111111111111111110011111111111111111111111", //0 10 20 30 40 50 60 // 25 //0 10 20 30 40 50 60 "11111111111111111111111111111111111111110011111111111100001111111", "11111111111111111111111111111111111111110011111111111100001111111" }; segment.data = segametData02; segment.width = segment.data[0].Length; segment.height = segment.data.Length; segment.segmentStartPos = new MapPoint(64, 0); segment.startPoint = new MapPoint(2, 22); segment.endPoint = new MapPoint(63, 22); segment.lockScreenLeft = false; segment.lockScreenRight = false; segment.lockScreenTop = true; segment.lockScreenBottom = true; segment.CalculateBorder(); elementQuestion = new LevelElementQuestion(7, 19, LevelElementQuestion.Type_CoinFive, LevelElementQuestion.Sprite_Brick); segment.elements.Add(elementQuestion); elementStop = new LevelElementStop(25, 22, MapElementStop.StopType_Tilted); segment.elements.Add(elementStop); elementQuestion = new LevelElementQuestion(32, 19, LevelElementQuestion.Type_CoinOne, LevelElementQuestion.Sprite_Brick); segment.elements.Add(elementQuestion); elementQuestion = new LevelElementQuestion(34, 19, LevelElementQuestion.Type_CoinOne, LevelElementQuestion.Sprite_Brick); segment.elements.Add(elementQuestion); elementQuestion = new LevelElementQuestion(36, 19, LevelElementQuestion.Type_CoinOne, LevelElementQuestion.Sprite_Brick); segment.elements.Add(elementQuestion); elementQuestion = new LevelElementQuestion(33, 15, LevelElementQuestion.Type_CoinOne, LevelElementQuestion.Sprite_Question); segment.elements.Add(elementQuestion); elementQuestion = new LevelElementQuestion(34, 15, LevelElementQuestion.Type_AwardLife, LevelElementQuestion.Sprite_Question); segment.elements.Add(elementQuestion); elementQuestion = new LevelElementQuestion(35, 15, LevelElementQuestion.Type_CoinFive, LevelElementQuestion.Sprite_Question); segment.elements.Add(elementQuestion); elementQuestion = new LevelElementQuestion(52, 15, LevelElementQuestion.Type_CoinFive, LevelElementQuestion.Sprite_Question); segment.elements.Add(elementQuestion); enemyMushroom = new LevelElementEnemyMushroon(18, 21, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(26, 21, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); levelDef.segments.Add(segment); // ************* 第三段 ******************************** segment = new LevelSegment(); string[] segametData03 = { // 0 //0 10 20 30 40 50 60 "00000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000", //0 10 20 30 40 50 60 // 5 //0 10 20 30 40 50 60 "00000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000", //0 10 20 30 40 50 60 // 10 //0 10 20 30 40 50 60 "00000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000006666666600000000000", "00000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000", //0 10 20 30 40 50 60 // 15 //0 10 20 30 40 50 60 "00000000000000000000000000000000000000000000000000000", "00000000000000000000077777077770000000000000000000000", "00000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000", "00000000000090909090900000000000000000000011111100000", //0 10 20 30 40 50 60 // 20 //0 10 20 30 40 50 60 "00000000000777777777777700000000000000010011111100000", "000000000000000000000000000000002D1111110011111100000", "0000000000000000000000000000002D111111110011111100000", "11111111111111100111111111111111111111110011111111111", "11111111111111100111111111111111111111110011111111111", //0 10 20 30 40 50 60 // 25 //0 10 20 30 40 50 60 "11111111111111100111111111111111111111110011111111111", "11111111111111100111111111111111111111110011111111111" }; segment.data = segametData03; segment.width = segment.data[0].Length; segment.height = segment.data.Length; segment.segmentStartPos = new MapPoint(128, 0); segment.startPoint = new MapPoint(2, 22); segment.endPoint = new MapPoint(51, 22); segment.lockScreenLeft = false; segment.lockScreenRight = false; segment.lockScreenTop = true; segment.lockScreenBottom = true; segment.CalculateBorder(); elementQuestion = new LevelElementQuestion(38, 8, LevelElementQuestion.Type_AwardLife, LevelElementQuestion.Sprite_Brick); segment.elements.Add(elementQuestion); elementStop = new LevelElementStop(26, 16, MapElementStop.StopType_Tilted); segment.elements.Add(elementStop); elementQuestion = new LevelElementQuestion(45, 15, LevelElementQuestion.Type_CoinFive, LevelElementQuestion.Sprite_Brick); segment.elements.Add(elementQuestion); elementCoinArrow = new LevelElementCoinArrow(13, 22, MapElement.Dir_RightUp); segment.elements.Add(elementCoinArrow); elementCoinArrow = new LevelElementCoinArrow(22, 19, MapElement.Dir_RightUp); segment.elements.Add(elementCoinArrow); elementCoinArrow = new LevelElementCoinArrow(30, 15, MapElement.Dir_RightDown); segment.elements.Add(elementCoinArrow); enemyMushroom = new LevelElementEnemyMushroon(9, 22, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(15, 19, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(22, 19, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(29, 15, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(34, 20, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(39, 19, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(41, 10, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(48, 12, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); levelDef.segments.Add(segment); // ************* 第四段 ******************************** segment = new LevelSegment(); string[] segametData04 = { // 0 //0 10 20 30 40 50 60 "00000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000", //0 10 20 30 40 50 60 // 5 //0 10 20 30 40 50 60 "00000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000009990000000000", "00000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000009900009900000000", "00000000000000000000000000000006000006AAA0AAA00000000", //0 10 20 30 40 50 60 // 10 //0 10 20 30 40 50 60 "00000000000000000000000000000006000000000000000000000", "00000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000006000000000000000", "00000000000000000000000000000000000000000000000000000", //0 10 20 30 40 50 60 // 15 //0 10 20 30 40 50 60 "00000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000", "00000000000000000000000000000000000000000000000000000", "00000000000000000000000077770777777777700000000000000", //0 10 20 30 40 50 60 // 20 //0 10 20 30 40 50 60 "00000000000000000000000000000000000000000000000000000", "00000000990000990000090000000000000000000000000000000", "00000009009009009009009000000000000000000000000000000", "11111111001111001111001111111111111111111111001111111", "11111111001111001111001111111111111111111111001111111", //0 10 20 30 40 50 60 // 25 //0 10 20 30 40 50 60 "11111111001111001111001111111111111111111111001111111", "11111111001111001111001111111111111111111111001111111" }; segment.data = segametData04; segment.width = segment.data[0].Length; segment.height = segment.data.Length; segment.segmentStartPos = new MapPoint(180, 0); segment.startPoint = new MapPoint(2, 22); segment.endPoint = new MapPoint(51, 22); segment.lockScreenLeft = false; segment.lockScreenRight = false; segment.lockScreenTop = true; segment.lockScreenBottom = true; segment.CalculateBorder(); elementPillar = new LevelElementPillar(8, 22, MapElement.Dir_Up, 5); segment.elements.Add(elementPillar); elementPillar = new LevelElementPillar(14, 22, MapElement.Dir_Up, 5); segment.elements.Add(elementPillar); elementPillar = new LevelElementPillar(20, 22, MapElement.Dir_Up, 5); segment.elements.Add(elementPillar); elementCoinArrow = new LevelElementCoinArrow(20, 21, MapElement.Dir_RightUp); segment.elements.Add(elementCoinArrow); elementStop = new LevelElementStop(28, 19, MapElementStop.StopType_Direct); segment.elements.Add(elementStop); elementQuestion = new LevelElementQuestion(25, 16, LevelElementQuestion.Type_CoinOne, LevelElementQuestion.Sprite_Question); segment.elements.Add(elementQuestion); elementQuestion = new LevelElementQuestion(41, 4, LevelElementQuestion.Type_AwardStar, LevelElementQuestion.Sprite_Question); segment.elements.Add(elementQuestion); elementCoinArrow = new LevelElementCoinArrow(32, 10, MapElement.Dir_RightUp); segment.elements.Add(elementCoinArrow); enemyMushroom = new LevelElementEnemyMushroon(28, 22, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(34, 22, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); levelDef.segments.Add(segment); // ************* 第五段 ******************************** segment = new LevelSegment(); string[] segametData05 = { // 0 //0 10 20 30 40 50 60 "0000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000", //0 10 20 30 40 50 60 // 5 //0 10 20 30 40 50 60 "0000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000", //0 10 20 30 40 50 60 // 10 //0 10 20 30 40 50 60 "0000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000", //0 10 20 30 40 50 60 // 15 //0 10 20 30 40 50 60 "0000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000", "0000000000000000000000999990000000000000000999000000000", "0000000000009999000000000000000000000000009000900000000", "0000000000000000000777777777777770000000000000000000000", //0 10 20 30 40 50 60 // 20 //0 10 20 30 40 50 60 "0000990000000000000000999990000000000007777777777700000", "00000000002D11111114E0000000000000000000000000000000000", "000000002D11111111111111111114E000000000000000000000000", "1111111111111111111111111111111111111111111111111111111", "1111111111111111111111111111111111111111111111111111111", //0 10 20 30 40 50 60 // 25 //0 10 20 30 40 50 60 "1111111111111111111111111111111111111111111111111111111", "1111111111111111111111111111111111111111111111111111111" }; segment.data = segametData05; segment.width = segment.data[0].Length; segment.height = segment.data.Length; segment.segmentStartPos = new MapPoint(233, 0); segment.startPoint = new MapPoint(2, 22); segment.endPoint = new MapPoint(54, 22); segment.lockScreenLeft = false; segment.lockScreenRight = false; segment.lockScreenTop = true; segment.lockScreenBottom = true; segment.CalculateBorder(); elementCoinArrow = new LevelElementCoinArrow(20, 21, MapElement.Dir_RightDown); segment.elements.Add(elementCoinArrow); enemyMushroom = new LevelElementEnemyMushroon(12, 20, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(18, 20, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(23, 18, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(29, 18, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(33, 22, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(39, 22, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(45, 19, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(51, 22, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); levelDef.segments.Add(segment); // ************* 第六段 ******************************** segment = new LevelSegment(); string[] segametData06 = { // 0 //0 10 20 30 40 50 60 "0000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000", //0 10 20 30 40 50 60 // 5 //0 10 20 30 40 50 60 "0000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000", "0000000000000000000000000000000000000000000000000000000", //0 10 20 30 40 50 60 // 10 //0 10 20 30 40 50 60 "0000000000000000000000000000000000099000000000000000000", "0000000000000000000000000000000000900000000000000000000", "0000000000000000000000000000000009000000000000000000000", "0000000000000000000000000000000090000000000000000000000", "0000000000000000000000000000000900000000000000000000000", //0 10 20 30 40 50 60 // 15 //0 10 20 30 40 50 60 "0000000000000000000000900000009000000000000000000000000", "0000000000000099000009000777777000000000000000000000000", "0000000000000900900090000000000000000000000000000000000", "0000000000009000900900000000000000000000000000000000000", "0000000000090000099000000000000000000000000000000000000", //0 10 20 30 40 50 60 // 20 //0 10 20 30 40 50 60 "0000000000900077777777700000000000000000000000000000000", "0000000009000000000000000000000000000000000000000000000", "0000009090000000000000000000000000000000000000000000000", "1111111111111111111111111111111111111111111111111111111", "1111111111111111111111111111111111111111111111111111111", //0 10 20 30 40 50 60 // 25 //0 10 20 30 40 50 60 "1111111111111111111111111111111111111111111111111111111", "1111111111111111111111111111111111111111111111111111111" }; segment.data = segametData06; segment.width = segment.data[0].Length; segment.height = segment.data.Length; segment.segmentStartPos = new MapPoint(288, 0); segment.startPoint = new MapPoint(2, 22); segment.endPoint = new MapPoint(42, 22); segment.lockScreenLeft = false; segment.lockScreenRight = false; segment.lockScreenTop = true; segment.lockScreenBottom = true; segment.CalculateBorder(); enemyMushroom = new LevelElementEnemyMushroon(10, 22, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(16, 19, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(22, 19, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(27, 15, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(34, 22, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(40, 22, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); levelDef.segments.Add(segment); _localLevels.Add(levelDef); // ************* 创建第二关 ************************************************************** levelDef = new LevelDef(); // ************* 第一段 ******************************** segment = new LevelSegment(); string[] segametData11 = { // 0 //0 10 20 30 40 50 60 "11111111111111111111111111111111111111111", "11111111111111111111111111111111111111111", "11111111111111110009000000000000000111111", "11111111111111110090000000000000000111111", "11111111111111110900000000000000000111111", //0 10 20 30 40 50 60 // 5 //0 10 20 30 40 50 60 "11111111111111119000000000000000000111111", "11111111111111110000000000000000009111111", "11111111111111110000000000000000009111111", "11111111111111110000000000000000009111111", "11111111111111110000000000000000009111111", //0 10 20 30 40 50 60 // 10 //0 10 20 30 40 50 60 "11111111111111110000111111111100009111111", "11111111111111110000111111111100009111111", "11111111111111119999111111111100009111111", "11111111111111119999111111111100009111111", "11111111111111119999111111111100000111111", //0 10 20 30 40 50 60 // 15 //0 10 20 30 40 50 60 "11111111111111119999111111111100000000000", "11111111111111119999111111111100000000000", "11111111111111119999111111111100000000000", "11111111111111119999111111111100000000000", "11111111111111119999111111111100000000000", //0 10 20 30 40 50 60 // 20 //0 10 20 30 40 50 60 "11111111111111119999111111111100000000000", "11111111111111119999111111111100001111111", "11111111111111110000111111111100001111111", "11111111111111110000111111111100001111111", "11111110000000000000111111111100001111111", //0 10 20 30 40 50 60 // 25 //0 10 20 30 40 50 60 "11111110000000000000111111111100001111111", "11111110009000000000000000000000001111111", "11111110090000000000000000000000001111111", "11111110900000000000000000000000001111111", "11111119000111111111111111111111111111111", //0 10 20 30 40 50 60 // 30 //0 10 20 30 40 50 60 "11111110900111111111111111111111111111111", "11111110090111111111111111111111111111111", "11111110009111111111111111111111111111111", "11111110000111111111111111111111111111111", "00000000000111111111111111111111111111111", //0 10 20 30 40 50 60 // 35 //0 10 20 30 40 50 60 "00000000000111111111111111111111111111111", "00000000000111111111111111111111111111111", "11111111111111111111111111111111111111111", "11111111111111111111111111111111111111111", "11111111111111111111111111111111111111111", //0 10 20 30 40 50 60 // 35 //0 10 20 30 40 50 60 "11111111111111111111111111111111111111111" }; segment.data = segametData11; segment.width = segment.data[0].Length; segment.height = segment.data.Length; segment.segmentStartPos = new MapPoint(0, 22); segment.startPoint = new MapPoint(2, 36); segment.endPoint = new MapPoint(39, 20); segment.lockScreenLeft = true; segment.lockScreenRight = false; segment.lockScreenTop = true; segment.lockScreenBottom = true; segment.CalculateBorder(); elementCoinArrow = new LevelElementCoinArrow(29, 28, MapElement.Dir_RightUp); segment.elements.Add(elementCoinArrow); elementCoinArrow = new LevelElementCoinArrow(30, 21, MapElement.Dir_RightUp); segment.elements.Add(elementCoinArrow); enemyMushroom = new LevelElementEnemyMushroon(17, 28, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(23, 28, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); enemyMushroom = new LevelElementEnemyMushroon(29, 28, MapElement.Dir_Left, MapElement.Dir_Left, 0); segment.elements.Add(enemyMushroom); /* * elementQuestion = new LevelElementQuestion ( 11, 19, LevelElementQuestion.Type_CoinOne, LevelElementQuestion.Sprite_Question ); * segment.elements.Add (elementQuestion); * * elementQuestion = new LevelElementQuestion ( 12, 19, LevelElementQuestion.Type_CoinOne, LevelElementQuestion.Sprite_Question ); * segment.elements.Add (elementQuestion); * * elementPillar = new LevelElementPillar ( 58, 20, MapElement.Dir_Up, 7 ); * segment.elements.Add (elementPillar); * * /* * elementCoinArrow = new LevelElementCoinArrow ( 24, 21, MapElement.Dir_LeftUp ); * segment.elements.Add (elementCoinArrow); * * * * * elementStop = new LevelElementStop ( 35, 21, MapElementStop.StopType_Direct ); * segment.elements.Add (elementStop); * * * * enemyMushroom = new LevelElementEnemyMushroon (33, 18, MapElement.Dir_Left, MapElement.Dir_Left, 0); * segment.elements.Add (enemyMushroom); */ levelDef.segments.Add(segment); // ************* 第二段 ******************************** segment = new LevelSegment(); string[] segametData12 = { // 0 //0 10 20 30 40 50 60 "11111111111111111111111111111111111100000000000000000000000000111", "11111111111111111111111111111111111100000000000000000000000000111", "11111111111111111111111111111111111100000000000000000000000000111", "11111111111111111111111111111111111100000000000000000000000000111", "11111111111111111111111111111111111100000000000000000000000000111", //0 10 20 30 40 50 60 // 5 //0 10 20 30 40 50 60 "11111111111111111111111111111111111100000000111111111110000000111", "11111111111111111111111111111111111100000000111111111110000000111", "11111111111111111111111111111111111100000000111111111110000000111", "11111111111111111111111111111111111100000000111111111110000000000", "11111111111111111111111111111111111100000000111111111110000000000", //0 10 20 30 40 50 60 // 10 //0 10 20 30 40 50 60 "11111111111111111111111111111111111111110000111111111110000000000", "11111111111111111111111111111111111111110000111111111110000000000", "11111111111111111111111111111111111111110000111111111110001111111", "11111111111111111111111111111111111111110000111111111110001111111", "11111111111111111111111111111111111111110000111111111110001111111", //0 10 20 30 40 50 60 // 15 //0 10 20 30 40 50 60 "11111111111111111111111111111111111111110000111111111110001111111", "11111111111111111111111111111111111111110000000000000000001111111", "11111111111111111111111111111111111111110000000000000000001111111", "11111111111111111111111111111111111111110000000000000000001111111", "11111111111111111111111111111111111111110000111111111111HI1111111", //0 10 20 30 40 50 60 // 20 //0 10 20 30 40 50 60 "11111111111111111111111111111111111111110000111111111111II1111111", "11111111111111111111111111111111111111110000111111111111111111111", "11111111111111111111111111111111111111110000111111111111111111111", "11111111111111111111000000000000011111110000111111111111111111111", "11111111111111111111000000000000000011110000111111111111111111111", //0 10 20 30 40 50 60 // 25 //0 10 20 30 40 50 60 "11111111111111100000000000000000000000000000111111111111111111111", "11111111111111100000000000000000000000000000111111111111111111111", "11111111111111100000000000000000000000000000111111111111111111111", "11111111111111100000000000000000000000000000111111111111111111111", "11111111100000000000000000000000000000000000111111111111111111111", //0 10 20 30 40 50 60 // 30 //0 10 20 30 40 50 60 "11111111100000000000000000000000000000000000111111111111111111111", "11111111100000000000000000000000000000000000111111111111111111111", "111111110000000000011111111111111111111111HI111111111111111111111", "111111110000000000011111111111111111111111II111111111111111111111", "11111111000000000001111111111111111111111111111111111111111111111", //0 10 20 30 40 50 60 // 35 //0 10 20 30 40 50 60 "11111000000000000001111111111111111111111111111111111111111111111", "11111000000000000001111111111111111111111111111111111111111111111", "11111000000000000001111111111111111111111111111111111111111111111", "11111000000000000001111111111111111111111111111111111111111111111", "00000000000000000001111111111111111111111111111111111111111111111", //0 10 20 30 40 50 60 // 35 //0 10 20 30 40 50 60 "00000000000000000001111111111111111111111111111111111111111111111", "11111111111111111HI1111111111111111111111111111111111111111111111", "11111111111111111II1111111111111111111111111111111111111111111111", "11111111111111111111111111111111111111111111111111111111111111111", "11111111111111111111111111111111111111111111111111111111111111111", //0 10 20 30 40 50 60 // 35 //0 10 20 30 40 50 60 "11111111111111111111111111111111111111111111111111111111111111111", "11111111111111111111111111111111111111111111111111111111111111111", "11111111111111111111111111111111111111111111111111111111111111111", "11111111111111111111111111111111111111111111111111111111111111111", "11111111111111111111111111111111111111111111111111111111111111111" }; segment.data = segametData12; segment.width = segment.data[0].Length; segment.height = segment.data.Length; segment.segmentStartPos = new MapPoint(41, 2); segment.startPoint = new MapPoint(2, 36); segment.endPoint = new MapPoint(39, 20); segment.lockScreenLeft = false; segment.lockScreenRight = false; segment.lockScreenTop = true; segment.lockScreenBottom = true; segment.CalculateBorder(); /* * elementQuestion = new LevelElementQuestion ( 11, 19, LevelElementQuestion.Type_CoinOne, LevelElementQuestion.Sprite_Question ); * segment.elements.Add (elementQuestion); * * elementQuestion = new LevelElementQuestion ( 12, 19, LevelElementQuestion.Type_CoinOne, LevelElementQuestion.Sprite_Question ); * segment.elements.Add (elementQuestion); * * elementPillar = new LevelElementPillar ( 58, 20, MapElement.Dir_Up, 7 ); * segment.elements.Add (elementPillar); * * /* * elementCoinArrow = new LevelElementCoinArrow ( 24, 21, MapElement.Dir_LeftUp ); * segment.elements.Add (elementCoinArrow); * * * * * elementStop = new LevelElementStop ( 35, 21, MapElementStop.StopType_Direct ); * segment.elements.Add (elementStop); * * * * enemyMushroom = new LevelElementEnemyMushroon (33, 18, MapElement.Dir_Left, MapElement.Dir_Left, 0); * segment.elements.Add (enemyMushroom); */ levelDef.segments.Add(segment); _localLevels.Add(levelDef); }