-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathProgram.cs
More file actions
103 lines (90 loc) · 3.89 KB
/
Copy pathProgram.cs
File metadata and controls
103 lines (90 loc) · 3.89 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
using System.Security.Principal;
internal class Program
{
public static Action<BattleState> LevelHasFinished;
private static async Task Main()
{
try
{
WindowSettings.Initialize();
Logger.enabled = true;
//var startup = new StartupScene();
//await startup.Play();
bool isMenuConfirmed = false;
do
{
var menu = new MainMenu();
if (menu.GetSelectedIndex() == 0)
{
Console.Write("Введите название сохранения (или q, чтобы выйти): ");
string name = "";
PlayerSave playerSave = new PlayerSave("");
do
{
name = Console.ReadLine();
if (name == "q")
{
isMenuConfirmed = false;
break;
}
playerSave = new PlayerSave(name);
if (name.Length < 3)
{
Console.Write($"Введите название с 3 символами или больше (или q, чтобы выйти): ");
continue;
}
if (SaveLoad<PlayerSave>.CheckOnExist(playerSave, name))
{
Console.Write($"Сохранение {name} уже существует. Введите другое название (или q, чтобы выйти): ");
}
else
{
isMenuConfirmed = true;
}
} while (SaveLoad<PlayerSave>.CheckOnExist(playerSave, name) || name.Length < 3);
if (isMenuConfirmed)
{
SaveLoad<PlayerSave>.Save(playerSave, name);
}
}
if (menu.GetSelectedIndex() == 1)
{
Console.WriteLine();
LoadMenu loadMenu = new LoadMenu(SaveLoad<PlayerSave>.GetAllSaves());
isMenuConfirmed = false;
if (loadMenu.TryGetSelectedLoad(out string saveName))
{
Console.WriteLine($"Сохранение {saveName} готовится к загрузке!");
isMenuConfirmed = true;
}
}
if (menu.GetSelectedIndex() == 2)
{
isMenuConfirmed = true;
return;
}
}
while (!isMenuConfirmed);
//GameplayLogPrinter gameplayLogPrinter = new GameplayLogPrinter();
//UnitsPrinter unitsPrinter = new UnitsPrinter();
//StatsPrinter statsPrinter = new StatsPrinter();
//VitalsPrinter vitalsPrinter = new VitalsPrinter();
//SkillsPrinter skillsPrinter = new SkillsPrinter();
//TurnPrinter turnPrinter = new TurnPrinter();
//SkillMenu skillMenu = new SkillMenu();
//Task.Run(() =>
//{
// Thread.Sleep(1500);
// Arena arena = new Arena(gameplayLogPrinter, unitsPrinter, statsPrinter, vitalsPrinter, turnPrinter, skillsPrinter, SaveLoad<ArenaModel>.Load("Title"), skillMenu);
// arena.Start();
// LevelHasFinished?.Invoke(arena.State);
//});
//GameplayRender render = new GameplayRender(gameplayLogPrinter, unitsPrinter, statsPrinter, vitalsPrinter, skillsPrinter, turnPrinter, skillMenu);
}
catch (Exception ex)
{
Logger.LogError(ex.ToString());
return;
}
}
}