using Coral.Managed.Interop; using System; using System.Collections.Generic; using System.Drawing; using System.Numerics; using System.Runtime.InteropServices; namespace Nuake.Net { /// /// This is the core Nuake.Net API. /// All internal call should happen in this file. /// public class Engine { internal static unsafe delegate* LoggerLogIcall; public Engine() { } /// /// Prints a message to the console log /// /// message to be printed public static void Log(string input) { unsafe { LoggerLogIcall(input); } } } [AttributeUsage(AttributeTargets.Field)] public sealed class ExposedAttribute : Attribute { } public class Debug { internal static unsafe delegate* DrawLineIcall; public Debug() { } public static void DrawLine(Vector3 start, Vector3 end, Vector4 color, float life = 0.0f) { unsafe { DrawLineIcall(start.X, start.Y, start.Z, end.X, end.Y, end.Z, color.X, color.Y, color.Z, color.W, life); } } } }