using System;
using System.IO;
using System.Text;
using ColdMint.scripts.camp;
using ColdMint.scripts.debug;
using Godot;
namespace ColdMint.scripts.loader.uiLoader;
///
/// UI loader for the main menu
/// 主菜单的UI加载器
///
public partial class MainMenuLoader : UiLoaderTemplate
{
private Button _startGameButton;
private Label _copyrightLabel;
private StringBuilder _copyrightBuilder;
private PackedScene _gameScene;
private Label _sloganLabel;
private Label _versionLabel;
public override async void InitializeData()
{
//Register the corresponding encoding provider to solve the problem of garbled Chinese path of the compressed package
//注册对应的编码提供程序,解决压缩包中文路径乱码问题
Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
//创建游戏数据文件夹
var dataPath = Config.GetGameDataDirectory();
if (dataPath != null && !Directory.Exists(dataPath))
{
Directory.CreateDirectory(dataPath);
}
//Registered camp
//注册阵营
var defaultCamp = new Camp(Config.CampId.Default);
defaultCamp.FriendInjury = true;
CampManager.SetDefaultCamp(defaultCamp);
var mazoku = new Camp(Config.CampId.Mazoku);
CampManager.AddCamp(mazoku);
var aborigines = new Camp(Config.CampId.Aborigines);
CampManager.AddCamp(aborigines);
_gameScene = (PackedScene)GD.Load("res://scenes/game.tscn");
}
public override void InitializeUI()
{
_startGameButton = GetNode