public void Start() { _renderer = new LevelSelectorStateRenderer(this); float offset = _manager.Game.Witdh / 2.0f - 4 * 300 / 2.0f + 50.0f; float x = offset; float y = 25.0f; for (int i = 0; i < _levelCount; i++) { _selectButtons.Add(new LevelSelectButton(x, y, new System.Numerics.Vector3(0.2f, 0.6f, 0.6f), _levelMetas[i], this)); x += 300.0f; if ((x - offset) / 300.0f == 4.0f) { x = offset; y += 300.0f; } } _star = ResourceManager.LoadTexture("Sun"); }
public void Render(LevelSelectorStateRenderer renderer, Fontstash fons) { renderer.RenderQuad(_button.X, _button.Y, _button.Width, _button.Height, new Vector4(_colour, Hovering ? 1.0f : 0.75f)); float size = 32; float x = _button.X + size / 1.5f; float y = _button.Y + size * 1.5f; for (int i = 0; i < _data.bestRating; i++) { renderer.RenderTexturedQuad(_state.Star, x + i * size, y, size, -size); } renderer.PrepareLegacy(); fons.SetColour(0xFFFFFFFF); fons.SetFont(fons.GetFontByName("stdfont")); fons.SetSize(24.0f); fons.SetAlign((int)FonsAlign.Center | (int)FonsAlign.Middle); fons.DrawText(_button.X + _button.Width / 2.0f, _button.Y + _button.Height / 2.0f, _data.name); fons.SetSize(16.0f); fons.DrawText(_button.X + _button.Width / 2.0f, _button.Y + _button.Height / 2.0f + 35.0f, "Last Time: " + _data.bestTime.ToString()); renderer.EndLegacy(); }