38 lines
1015 B
C#
38 lines
1015 B
C#
using Godot;
|
|
using System;
|
|
using SessionZeroClient.API;
|
|
|
|
namespace SessionZeroClient;
|
|
|
|
public partial class Main : Node
|
|
{
|
|
[Export] public CanvasLayer MainCanvasLayer { get; set; }
|
|
[Export] public PackedScene AccountScreenScene { get; set; }
|
|
|
|
private IApiHandler _apiHandler;
|
|
private AccountScreenLogic _accountScreenLogic;
|
|
private AccountManager _accountManager;
|
|
|
|
public override void _Ready()
|
|
{
|
|
_apiHandler = new ApiHandler();
|
|
_accountManager = new AccountManager(_apiHandler);
|
|
SetupAccountScreen();
|
|
}
|
|
|
|
private void SetupAccountScreen()
|
|
{
|
|
try
|
|
{
|
|
_accountScreenLogic = AccountScreenScene.Instantiate() as AccountScreenLogic;
|
|
_accountScreenLogic.Init(_apiHandler, _accountManager);
|
|
MainCanvasLayer.AddChild(_accountScreenLogic);
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
throw new Exception($"Error instantiating AccountScreenLogic: {e.Message}");
|
|
}
|
|
}
|
|
|
|
}
|