This commit is contained in:
Persephone 2025-02-22 18:50:09 -07:00
parent f199ab47dc
commit a7f966376d
4 changed files with 46 additions and 14 deletions

View file

@ -0,0 +1,12 @@
using System;
namespace NetClassic
{
public class InputHandler
{
public static void HandleKeyboardInputs(object e)
{
}
}
}

View file

@ -9,7 +9,7 @@ namespace NetClassic
{
LoggerName = loggerName;
}
public void logInfo(string logData)
public void LogInfo(string logData)
{
ConsoleColor old = Console.ForegroundColor;
Console.ForegroundColor = ConsoleColor.Gray;
@ -17,7 +17,7 @@ namespace NetClassic
Console.ForegroundColor = old;
}
public void logWarning(string logData)
public void LogWarning(string logData)
{
ConsoleColor old = Console.ForegroundColor;
Console.ForegroundColor = ConsoleColor.Yellow;
@ -25,7 +25,7 @@ namespace NetClassic
Console.ForegroundColor = old;
}
public void logError(string logData)
public void LogError(string logData)
{
ConsoleColor old = Console.ForegroundColor;
Console.ForegroundColor = ConsoleColor.Red;
@ -33,7 +33,7 @@ namespace NetClassic
Console.ForegroundColor = old;
}
public void logFatal(string logData)
public void LogFatal(string logData)
{
ConsoleColor old = Console.ForegroundColor;
Console.ForegroundColor = ConsoleColor.DarkRed;

0
NetClassic/Player.cs Normal file
View file

View file

@ -1,4 +1,4 @@
using SDL2;
using static SDL2.SDL;
using System;
using System.Timers;
@ -8,24 +8,44 @@ namespace NetClassic
{
static bool gameRunning = true;
static Logger logger = new Logger("NetClassic.Program");
static long frameTime = 0;
static void Main(string[] args)
{
logger.logInfo("Initializing SDL Video and Events...");
SDL.SDL_Init(SDL.SDL_INIT_VIDEO | SDL.SDL_INIT_EVENTS);
logger.logInfo("Creating Window...");
IntPtr window = SDL.SDL_CreateWindow("NetClassic", SDL.SDL_WINDOWPOS_CENTERED, SDL.SDL_WINDOWPOS_CENTERED, 1024, 768, SDL.SDL_WindowFlags.SDL_WINDOW_OPENGL);
logger.logInfo("Creating Renderer...");
IntPtr renderer = SDL.SDL_CreateRenderer(window, -1, SDL.SDL_RendererFlags.SDL_RENDERER_ACCELERATED);
logger.LogInfo($"NetClassic vPreDev on {Environment.OSVersion.VersionString}");
logger.LogInfo("Initializing SDL Video and Events...");
SDL_Init(SDL_INIT_VIDEO | SDL_INIT_EVENTS);
logger.LogInfo("Creating Window...");
IntPtr window = SDL_CreateWindow("NetClassic", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, 854, 480, SDL_WindowFlags.SDL_WINDOW_OPENGL);
logger.LogInfo("Creating Renderer...");
IntPtr renderer = SDL_CreateRenderer(window, -1, SDL_RendererFlags.SDL_RENDERER_ACCELERATED);
while(gameRunning)
{
SDL.SDL_Event e;
if (SDL.SDL_WaitEvent(out e) != 0)
// log last frame Timers
if (frameTime != 0)
{
if (e.type == SDL.SDL_EventType.SDL_QUIT)
logger.LogInfo($"Last frame took {DateTimeOffset.Now.ToUnixTimeMilliseconds() - frameTime}ms");
}
frameTime = DateTimeOffset.Now.ToUnixTimeMilliseconds();
// handle input
SDL_Event e;
if (SDL_WaitEvent(out e) != 0)
{
if (e.type == SDL_EventType.SDL_QUIT)
{
gameRunning = false;
}
else if (e.type == SDL_EventType.SDL_KEYDOWN)
{
InputHandler.HandleKeyboardInputs(e);
}
}
// draw
SDL_SetRenderDrawColor(renderer, 255, 0, 255, 255);
SDL_RenderClear(renderer);
SDL_RenderPresent(renderer);
}
}
}