CyberBits/CyberBitsOld/Program.cs

45 lines
1.5 KiB
C#

using Cyberbits;
using var engine = new Engine("Cyberbits", Engine.ResolveProjectDir());
using var godot = engine.Start();
// Load a scene
var scene = GD.Load<PackedScene>("res://main.tscn");
engine.Tree.Root.AddChild(scene.Instantiate());
var load = engine.Tree.CurrentScene;
var bitsImage = load.GetNode<TextureRect>("BitsImage");
// var bitsSelection = curScene.GetNode<OptionButton>("BitsSelection");
var unlockedFeatLbl = load.GetNode<Label>("UnlockedFeatLbl");
var cyberwareList = load.GetNode<ItemList>("CyberwareList");
var genitalList = load.GetNode<ItemList>("GenitalList");
var baseContents = FileFetcher.LoadTextFile(ResourceFiles.COCK_JSON);
var addonContents = FileFetcher.LoadTextFile(ResourceFiles.ADDONS_JSON);
var screenSize = DisplayServer.ScreenGetSize();
var window = load.GetWindow();
window.Size = new Vector2I(screenSize.X - 66, screenSize.Y - 1);
if (!FileAccess.FileExists(baseContents)
|| !FileAccess.FileExists(addonContents))
sys.Environment.Exit(sys.Environment.ExitCode);
var bits = JsonSerializer.Deserialize<Bits>(baseContents);
var addon = JsonSerializer.Deserialize<Addon>(addonContents);
bitsImage.Texture.ResourcePath = bits.Image;
unlockedFeatLbl.Text = $"Feat: {bits?.Feat}";
foreach (var selection in bits.Base)
genitalList.AddItem(selection);
foreach (var cyberware in addon.Cyberware)
cyberwareList.AddItem(cyberware);
// Run the main loop
while (!godot.Iteration())
{
if (Console.KeyAvailable && Console.ReadKey(true).Key == ConsoleKey.Q)
sys.Environment.Exit(sys.Environment.ExitCode);
}