Sboku/UI/PauseMenu.razor


@using SWB.Demo
@using Sandbox;
@using Sandbox.Sboku.Arena
@using Sandbox.UI;
@inherits PanelComponent
@namespace Sandbox.Sboku.UI

<root>
	<div class="menu">
		<p class="title">Menu</p>
		<div class="divider" />
		<div class="list">
			<div onclick=@Resume class="but">Close</div>
			<div onclick=@NewGame class="but">New world</div>
			<div onclick=@Exit class="but">Disconnect</div>
		</div>
	</div>
</root>

@code
{
	private DemoPlayer player;
	private RoundManager manager;
	protected override void OnAwake()
	{
		manager = Scene.GetComponentInChildren<RoundManager>();

		player = Scene.GetComponentInChildren<DemoPlayer>();

		if ( player == null )
			Log.Error( "[PauseMenu] DemoPlayer not found in Scene!" );
	}

	protected override void OnStart()
	{
		GameObject?.Enabled = false; // aluksi piilossa
	}

	public void Show()
	{
		GameObject?.Enabled = true;
	}

	public void Hide()
	{
		GameObject?.Enabled = false;
	}

	void Resume()
	{
		player?.ResumeGame();
		Hide();
	}

	private void NewGame()
	{
		manager.RoundNumber = 1;
		Hide();
		this.GameObject.Parent.GetComponent<DemoPlayer>().Respawn();

	}

	void Exit()
	{
		// Palaa s&boxin p��valikkoon
		Game.Disconnect();
	}
}