使用带有npc方法的类编写要由c#执行的npc脚本

时间:2012-07-21 03:47:30

标签: c# scripting

我有一个类(NpcCommands.cs),它包含GetPlayer(),SendMessage()等常规方法。

有没有办法在javascript,lua,python,ruby等中编写脚本,我的程序可以加载和执行以某种方式连接到我的类。 我的意思是,如果在脚本中我打电话

NC.GetPlayer().SetHealth(15);

如果NC是我的NpcCommands类的引用,它将运行GetPlayer()方法,该方法返回我的播放器对象,然后能够从该对象运行方法,如SetHealth();

我希望它被编写脚本的原因是因为每个Npc都会有各自的条件和响应,例如

if (NC.GetPlayer().HasItem(cookie)) {
    NC.GetPlayer().SetHealth(15);
} else {
    NC.SendMessage("No cookies :c");
}

1 个答案:

答案 0 :(得分:0)

你提到过的所有内容都有很多样本。以下是一些链接:

Python(IronPython版)是一种可能的选择 - Integrating IronPython into your Applications

LUA也有.Net绑定 - 即从Channel9开始链接。

C#从一开始就用于编写脚本,因为你可以在运行时编译。

JavaScript.Net(.Net Framework的一部分)可能是另一种选择。以及.Net的其他JavaScript实现。