minetest/minetest — pull request #575 by sapier (2013-03-28 22:58:16+00:00)
Title: Scriptapi separation (Interface cleanup)

Changes:
Modders:
-declare minetest.env:XXX deprecated use minetest.XXX (old style will work too but give a warning in logfile!)

Developers:
What is done with this commit:
separate Lua from core to prepare improved locking and multithreading

How? -> split scriptapi into two parts
Internal sriptapi*
This files contain interface to be called from within core to do something within scriptapi. All direct references to lua have been removed. DO NOT try to access lua_State from core!

External modapi*
Files containing interface functions to be called from lua. Put all your additional functions into classes derived from ModApiBase to be initialized by Scriptapi. If you Create a Ref object use REGISTER_LUA_REF(RefClass) to register this to Scriptapi

scriptapi_content/scriptapi_converter
this files are somehow special. Content contains all c<-> lua translation functions for minetest data types while converter is for generic datatypes.