Und C rutinen hab ich auch nicht. Also wenn es nicht irgendwie "heuristisch" geht dann mach ich es vermutlich so wie im 1. Post angedeutet.
Das kann ich nicht nachvollziehen. Was ist hiermit?:
Code:
lua_register(L, 'getPlayerPos', lua_getPlayerPos);
... lua_getPlayerPos ist ganz offensichtlich eine C-Routine. Und für den Fall daß sie in Delphi implementiert ist, nennt man das (wg. der Schnittstelle) trotzdem noch C-Routine.
Ich hab schon daran gedacht es so zu machen das das Script ohne While Schleife aufgebaut werden muss und dann jeden Tick (100ms oder so) neu ausgeführt werden soll.
Kannst du, außer auf einem Echtzeitsystem, nicht garantieren. Über welche Form von Daten reden wir denn bei der Position? Integer? 32 oder 64bit, bspw.? Dann kannste auf Windows die atomischen Interlocked*-Funktionen benutzen. Sowohl zum schreiben wie auch zum Lesen. Da muß man keine großartige Synchronisation einbauen. Deswegen ist es sinnvoll in einer Frage immer auch das Einsatzszenario zu beschreiben und nicht nur das aktuell (angenommene) Problem lösen zu wollen. Wenn man sich schon ans Hive-Mind wendet kann man ja auch gucken ob es nicht noch einen besseren Lösungsansatz gibt