Hey guys!

Just started a new project today:
AckNET

AckNET is my try to create another C# wrapper for Gamestudio.

I don't want to create a 1:1 wrapper but a logical wrapper that allows you programming in the normal C# style.

You can get the current version of the wrapper at GitHub:
https://github.com/MasterQ32/AckNET/

Please note that the wrapper is in a very early stage (Just started this afternoon) but has already most of the types (Entity, Material, View, Event and Bitmap) wrapped.

Functions are currently missing as well as some global variables.

The wrapper will be developed on feature request or if I am missing features myself.

As the wrapper is a base for another project, it will get most of the common functions in early time but the lesser common functions will stay untouched.

"var" is wrapped with a custom struct named ackvar. It has an implicit operator casting it to and from double, but casting it to bool or int works with explicit casts (this allows better usage in conditionals)

Here is a small example using C# vNext:
Code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using AckNET.EngineVars;

namespace AckNET.Test
{
	class Program
	{
		static void Main(string[] args)
		{
			Acknex.Open("-nx 200");
			Console.WriteLine("Using version {0}", EngineVars.Version);

			OnTab = (x) => { Console.WriteLine("Pressed [TAB]"); return 0; };
			MouseMode = 3;

			Level.Load("");

			var ent = new Entity("cargo.mdl", new Vector(550.0, 0.0, 0.0));

			var snd = new Sound("beep.wav");

			OnSpace = (x) => { snd.Play(100, 0); return 0; };

			while (Acknex.Frame())
			{
				if (ent == EngineVars.MouseEnt)
				{
					ent.Pan += 1.5 * TimeStep;
				}

				Camera.Pan += (KeyCul - KeyCur) * TimeStep;

				Console.WriteLine("{0} - {1} -> {2}", KeyCul, KeyCur, (KeyCul - KeyCur));

				if ((bool)MouseLeft)
				{
					Console.WriteLine("{0}:{1}:{2}", (int)SysHours, (int)SysMinutes, (int)SysSeconds);
				}

				if ((bool)KeyEsc)
				{
					break;
				}
			}

			Acknex.Close();
		}
	}
}



Regards
Felix


Visit my site: www.masterq32.de