private static void CreateStoun(Map map, int mod, List <int> unitIndex1) { foreach (var item in unitIndex1) { Unit unit = new Unit() { PositionX = map.Calls[item].IndexLeft, PositionY = map.Calls[item].IndexTop }; UC_Block uc_Block = new UC_Block() { Width = 50, Height = 50 }; Canvas.SetLeft(uc_Block, map.Calls[item].IndexLeft * 50); Canvas.SetTop(uc_Block, map.Calls[item].IndexTop * 50); ///Непроходимый блок Game_Object_In_Call block = new Game_Object_In_Call() { EnumCallType = EnumCallType.Block, View = uc_Block }; unit.GameObject = block; map.Calls[item].Block = true; ///В этой ячейке находится непроходимый блок map.Calls[item].IUnits.Add(unit); ///И его же добавим в масив всех объектов map.GameObjectInCall.Add(block); ///Отображение map.MapCanvas.Children.Add(block.View); } }
public void CreateRandomMap(bool noBlock) { Calls = new List <Map_Cell>(); MapCanvas.Children.Clear(); _players = new List <Player>(); _deadPlayers = new List <Player>(); _killsDeath = new List <Point>(); _gameObjectInCall = new List <Game_Object_In_Call>(); for (int i = 0; i < Width / 50; i++) { for (int j = 0; j < Height / 50; j++) { Map_Cell map_Call = new Map_Cell() { IndexLeft = i, IndexTop = j }; ///Это для размещения блока стены(не пробиваймые блоки) if (i % 2 != 0 && j % 2 != 0) { if (!noBlock) { Unit unit = new Unit() { PositionX = i, PositionY = j }; UC_Block uc_Block = new UC_Block() { Width = 50, Height = 50 }; Canvas.SetLeft(uc_Block, i * 50); Canvas.SetTop(uc_Block, j * 50); ///Непроходимый блок Game_Object_In_Call block = new Game_Object_In_Call() { EnumCallType = EnumCallType.Block, View = uc_Block }; unit.GameObject = block; map_Call.Block = true; ///В этой ячейке находится непроходимый блок map_Call.IUnits.Add(unit); ///И его же добавим в масив всех объектов GameObjectInCall.Add(block); ///Отображение MapCanvas.Children.Add(block.View); } } Calls.Add(map_Call); } } }