protected override void Processing() { foreach (var createVisualElementModel in Entity.Elements) { GameElementView elementObj = null; if (createVisualElementModel.Name != GameElementType.Empty) { elementObj = _elementsFacade.CreateVisualElement(createVisualElementModel.Name); elementObj.transform.localPosition = CoordinateConverter.FieldCoordsToPosition(createVisualElementModel.CellCoords); } Entity.GridEntity.Grid[createVisualElementModel.CellCoords.X, createVisualElementModel.CellCoords.Y] = new VisualElementModel(elementObj, createVisualElementModel.Name); } FinishStage(Entity.GridEntity); }
protected override void Processing() { foreach (var entityMoveElement in Entity.MoveElementCoords) { var startCoords = entityMoveElement.StartCoords; var endCoords = entityMoveElement.EndCoords; var startElement = Entity.GridEntity.Grid[startCoords.X, startCoords.Y]; var endElement = Entity.GridEntity.Grid[endCoords.X, endCoords.Y]; ; if (startElement.Name != GameElementType.Empty) { _startMoveElements++; startElement.View.Move(CoordinateConverter.FieldCoordsToPosition(endCoords), MoveEnd); } if (endElement.Name != GameElementType.Empty) { _startMoveElements++; endElement.View.Move(CoordinateConverter.FieldCoordsToPosition(startCoords), MoveEnd); } Entity.GridEntity.Grid[endCoords.X, endCoords.Y] = startElement; Entity.GridEntity.Grid[startCoords.X, startCoords.Y] = endElement; } }