From dda22a8367c8f08a5227f3cda904c5d7c5510352 Mon Sep 17 00:00:00 2001 From: orosmatthew Date: Tue, 25 Jan 2022 23:06:48 -0500 Subject: [PATCH] various menu changes and fixes --- Main.cs | 13 ++- MainMenu/MainMenu.cs | 48 +++++++- MainMenu/MainMenu.tscn | 109 ++++++++++++++---- ParticleSimulation/ParticleSimulationScene.cs | 7 +- .../ParticleSimulationScene.tscn | 1 - ui/ui_theme.tres | 2 +- 6 files changed, 144 insertions(+), 36 deletions(-) diff --git a/Main.cs b/Main.cs index 465767c..203903c 100644 --- a/Main.cs +++ b/Main.cs @@ -6,8 +6,15 @@ public class Main : Node { public int Seed; - private int _nParticles; + public float Zoom; + private int _nParticles; + + public override void _Ready() + { + OS.MinWindowSize = new Vector2(1024, 600); + } + public void StartSimulation(int nParticles) { _nParticles = nParticles; @@ -15,7 +22,7 @@ public class Main : Node var particleSimulationScene = particleSimulationPackedScene.Instance(); particleSimulationScene.Name = Seed.ToString(); AddChild(particleSimulationScene); - particleSimulationScene.Initialize(nParticles); + particleSimulationScene.Initialize(Seed, nParticles, Zoom); GetNode("MainMenu").Hide(); } @@ -30,7 +37,7 @@ public class Main : Node { GetNode(Seed.ToString()).Hide(); GetNode(Seed.ToString()).QueueFree(); - Seed = (int) GD.Randi(); + Seed = Mathf.Abs((int)GD.Randi()); StartSimulation(_nParticles); } diff --git a/MainMenu/MainMenu.cs b/MainMenu/MainMenu.cs index fb72d83..aed85c2 100644 --- a/MainMenu/MainMenu.cs +++ b/MainMenu/MainMenu.cs @@ -1,3 +1,4 @@ +using System.Globalization; using Godot; public class MainMenu : Control @@ -10,6 +11,10 @@ public class MainMenu : Control private TextEdit _seedText; private TextEdit _particleCountText; private Button _randomizeButton; + private Label _zoomValue; + private HSlider _zoomSlider; + + private Label _invalidLabel; public override void _Ready() { @@ -20,17 +25,27 @@ public class MainMenu : Control _seedText = GetNode("MenuButtons").GetNode("Inputs").GetNode("Seed").GetNode("SeedText"); _particleCountText = GetNode("MenuButtons").GetNode("Inputs").GetNode("ParticleCount").GetNode("ParticleCountText"); _randomizeButton = GetNode("MenuButtons").GetNode("Inputs").GetNode("Seed").GetNode