Wenn ich in meine Ofensteuerung ein Lua-Interface einbaue, heißt das nicht das mein Ofen auf ein mal Ampeln triggern kann...
Lua ist immer gleich, sonst wäre es nicht mehr lua. Das ist logisch. Die Gleichheit bezieht sich aber ausschließlich auf die Sprache, also die Syntax und Grammatik. Welche Schnittstellen zwischen Lua und dem aufrufenden Programm (hier das Spiel) vorhanden sind liegt einzig und allein daran, wie die Entwickler die Schnittstelle definieren.
In Trainer Fever wird lua zu großen Teilen nur zum Einlesen der "data" Funktionen genutzt, die einfach nur eine Datenstruktur per return an die aufrufende C++ Funktion zuruckliefern.
So wird zB die Schrankenanimation oder Türanimationen von Zügen einfach eine Datenstruktur an das Spiel zurückgeschickt:
function data() {
return {
events = {
close = { {
forward = true,
name = "close",
} } } } }
Das Spiel erwartet hier also eine Struktu, in der "events" definiert sind für "open" und "close" (im Falle der Bahnschranken). LUA ist hier nur ein Mittel zum Zweck, diese Information könnte man genau so gut mit jedem anderen Textbasierten Format übertragen. Meiner Meinung nach ist LUA hier sowieso overklill, da die Möglichkeiten wie zB Klassen zu definieren etc nicht genutzt werden. Für das reine Übertragen von Daten würde ich statt einer Programmiersprache eher zu einer Datenaustauschformat greifen - aber ich weiche vom Thema ab 
In Deinem Beispielcode wird eine Ampelklasse definiert, die bestimmte Schnittstellen in Form von Methoden zur Verfügung stellt. Diese können im richtigen Moment vom Spiel aufgerufen werden. So funktioniert Train Fever aber einfach nicht. Train Fever ruft keine Methoden von in LUA definierten Klassen ab, sondern hat eigene, im (C++) Code verankerte Funktionen, die nur auf Daten aus den von LUA-Funktionen zurückgegeben "data" aufrufen basieren.
Es mag sicherlich Spiele geben, die solche Schnittstellen zur Verfügung stellen (Bestimme Trigger, die dann LUA-basierte Methoden aufrufen), bei TF ist das leider nicht so, jedenfalls nicht im Falle von .mdl Dateien.