public void ResetRoad() { QuadPresenter firstQuad = _quads.Peek(); Vector2 newQuadPos = GetRandomDirection(); firstQuad.QuadModel.Position.Value = newQuadPos; firstQuad.gameObject.SetActive(true); RearrangeQuad(firstQuad); if (!CanSpawnDiamond()) { return; } DiamondPresenter diamond = ResetDiamondPosition(); if (diamond != null) { diamond.DiamondModel.Position.Value = newQuadPos; diamond.gameObject.SetActive(true); diamond.transform.SetParent(firstQuad.transform); } else { DiamondPresenter diamondPresenter = _factory.Create(newQuadPos); diamondPresenter.transform.SetParent(firstQuad.transform); AddDiamond(diamondPresenter); } }
private void GenerateRoad() { for (int i = 0; i < _visibleQuads; i++) { Vector2 quadPos = _roadModel.GetRandomDirection(); QuadPresenter quadPresenter = _quadFactory.Create(quadPos); _roadModel.AddQuad(quadPresenter); quadPresenter.transform.SetParent(transform); GenerateDiamonds(quadPos, quadPresenter.transform); } }
private void GenerateStartPlatform() { for (int i = 0; i < _startQuadSize; i++) { for (int j = 0; j < _startQuadSize; j++) { QuadPresenter quadPresenter = _quadFactory.Create(new Vector2(i, j)); _roadModel.AddStartPanelQuad(quadPresenter); quadPresenter.transform.SetParent(startPanelParent); } } }
public bool IsQuadStartPanel(QuadPresenter quad) { if (_startPanelQuads.Count == 0) { return(false); } if (_startPanelQuads.Contains(quad)) { return(true); } else { foreach (var quadPanel in _startPanelQuads) { quadPanel.gameObject.SetActive(false); } _startPanelQuads.Clear(); return(false); } }
public void RearrangeQuad(QuadPresenter quad) { AddQuad(_quads.Dequeue()); }
public void AddStartPanelQuad(QuadPresenter quad) { _startPanelQuads.Add(quad); _lastQuad = quad; }
public void AddQuad(QuadPresenter quad) { _quads.Enqueue(quad); _lastQuad = quad; }