As you know me of my Basic Conquer Emulator project, this is a side-project which I thought of when going through the npc server. I decided it would be a fun experience to write a scripting language which is a modification of C#, therefore IG#. So far it only supports Console.WriteLine, but every unknown method or variable will be invoked to an event which you can eventually handle on your own. Also undefined variables must be registered before compiling the external code.
A little preview:
Little example code I wrote;
Have a good day.
A little preview:
Code:
static void Main(string[] args)
{
IGReader Reader = new IGReader();
Reader.Load(@"C:\Users\Admin\Documents\Test.txt");
IGCompiler Compiler = Reader.ToIGCompiler();
Compiler.Register("dialog", 3, IGVariableType.Integer);//Defining variables
Compiler.Compile();//Compile the code
Console.WriteLine("[IGSharp] Executed file!");
Reader.Dispose();
Compiler.Dispose();
GC.Collect();
while (true)
Console.ReadLine();
}
Code:
if (1 == 2)
{
Console.WriteLine(Member 1 executed!);
}
if (1 == 1)
{
Console.WriteLine(Member 2 executed!);
}
if (2 == 2)
{
Console.WriteLine(Member 3 executed!);
}
if(%dialog == 3)
{
Console.WriteLine(Member 4 executed!);
}