private void setupGameOverText(LostSoulWorld world) { var center = new Vector2(world.PlayField.Center.X, world.PlayField.Center.Y); var label = new HudElementText(world.Game, "Game Over"); var position = center - label.RenderBehavior.Size / 2.0f; position.Y -= label.RenderBehavior.Size.Y; label.BodyBehavior.Position = position; label.Color = gameOverTextColor; gameOverTextBackground.AddChild(label); }
private void setupGameOverTextBackground(LostSoulWorld world) { gameOverTextBackground = new HudElement(world.Game); var center = gameOverHud.BodyBehavior.Size * 0.5f; var size = new Vector2(200.0f, 200.0f); gameOverTextBackground.BodyBehavior.Size = size; gameOverTextBackground.BodyBehavior.Position = new Vector2( center.X - size.X / 2.0f, center.Y - size.Y / 2.0f); var render = new PrimitiveRectangleRenderBehavior(gameOverTextBackground); var color = Color.Black; color.A = (int)(255.0 * 0.8); render.Color = color; gameOverTextBackground.RenderBehavior = render; gameOverHud.AddChild(gameOverTextBackground); }
void OnGameOverChangedHandler(object sender, EventArgs e) { var world = (LostSoulWorld)sender; gameHud.Visible = !world.IsGameOver(); gameOverHud.Visible = world.IsGameOver(); if (world.IsGameOver()) { scoreLabel.Color = gameOverTextColor; gameOverHud.AddChild(scoreLabel); } else { scoreLabel.Color = textColor; gameHud.AddChild(scoreLabel); } }