summaryrefslogtreecommitdiff
path: root/Main.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Main.cs')
-rw-r--r--Main.cs57
1 files changed, 57 insertions, 0 deletions
diff --git a/Main.cs b/Main.cs
new file mode 100644
index 0000000..8b3e9be
--- /dev/null
+++ b/Main.cs
@@ -0,0 +1,57 @@
+using System.Numerics;
+using Raylib_cs;
+
+namespace OnekoOnline;
+
+static class OnekoOnline
+{
+ public static readonly ConfigFile Config = new("config.conf");
+
+ const ConfigFlags raylibConfFlags =
+ //ConfigFlags.FLAG_WINDOW_UNDECORATED |
+ //ConfigFlags.FLAG_WINDOW_TRANSPARENT |
+ //ConfigFlags.FLAG_WINDOW_MOUSE_PASSTHROUGH |
+ //ConfigFlags.FLAG_WINDOW_TOPMOST |
+ //ConfigFlags.FLAG_WINDOW_RESIZABLE |
+ ConfigFlags.FLAG_VSYNC_HINT;
+
+ public static void Main()
+ {
+ Raylib.SetConfigFlags(raylibConfFlags);
+ Raylib.InitWindow(640, 480, "OnekoOnline");
+ Raylib.SetTargetFPS(30);
+ //Raylib.MaximizeWindow();
+
+ Oneko LocalOneko = new();
+
+ RenderTexture2D RenderTexture = Raylib.LoadRenderTexture(320,240);
+
+ int port = Config.GetValue("ServerPort", 42069);
+ if (Config.GetValue("HostServer", false)) {
+ Net.Server.Init(port);
+ Net.Client.Init("127.0.0.1", port);
+ } else {
+ Net.Client.Init(Config.GetValue("ServerIP", "pond.sarahduck.ca"), port);
+ }
+
+ while (!Raylib.WindowShouldClose())
+ {
+ Raylib.BeginTextureMode(RenderTexture);
+
+ Raylib.ClearBackground(Color.GRAY);
+ Raylib.DrawText("Oneko Online",12, 12, 8, Color.WHITE);
+
+ Drawable.DrawAll();
+
+ Raylib.EndTextureMode();
+
+ Raylib.BeginDrawing();
+ Raylib.DrawTexturePro(RenderTexture.Texture, new Rectangle(0f,0f,320,-240), new Rectangle(0,0,640,480), Vector2.Zero,0f,Color.WHITE);
+ Raylib.EndDrawing();
+ }
+
+ Drawable.DisposeAll();
+ Raylib.CloseWindow();
+ Config.SaveFile();
+ }
+} \ No newline at end of file