Использование Lua с C # / Mono - PullRequest
2 голосов
/ 21 января 2012

Я программирую компьютерную игру на C # / Mono, используя библиотеку OpenTK. Я хочу использовать Lua для написания сценариев для игры, поэтому те, кто ничего не знает о C #, могут редактировать сценарии, уровни и т. Д. Однако проблема в том, что я не могу найти способ использовать Lua с C # / Mono , Я нашел удивительный LuaInterface , однако он не работает на Mono . Я пробовал, и это работает на Windows, но это не на Linux (Ubuntu). Замена lua51.dll альтернативами linux не просто работает.

Я хотел бы спросить, есть ли какой-либо подходящий способ использования LuaInterface с Mono (я не нашел никаких исходных кодов LuaInterface для его редактирования и перестройки; я также слышал, что старые версии LuaInterface работают на Mono, однако Я не нашел их нигде для загрузки), или есть ли какая-либо другая подходящая библиотека для C # / Mono, которую вы использовали ранее, и вы знаете, что она работает. Я долго искал, но ничего не нашел и не хочу потратить недели на программирование сам.

Полагаю, что можно было бы использовать C # для сценариев, а не Lua, но мне эта идея не очень нравится, хотя я и не знаю почему.

Ответы [ 2 ]

2 голосов
/ 21 января 2012

В .Net есть функция (которая также включена в Mono), которая называется Dynamic Language Runtime .

.

Я не знаю, поддерживается ли Lua, но есть реализации DLR Python и Ruby - оба они работают как в Mono, так и в Microsoft CLR.

Проверьте этот вопрос для получения информации об использовании C # в качестве языка сценариев.

РЕДАКТИРОВАТЬ : На самом деле, существует проект IronLua , но я не знаю, насколько он завершен.

1 голос
/ 21 января 2012

Вы можете использовать грамматику lua и этот ответ как способ найти генератор компилятора, который создает код на c #. Как мне кажется, это лучший и самый простой способ сделать поддержку внешней языковой поддержки. Зачем? Вы можете быстро добавлять любые события для грамматических конструкций и добавлять любые языковые расширения по вашему желанию.

...