LuaPlus: eine Tabelle in einer Tabelle
-
Bin erst vor kurzen auf LuaPlus gestoßen und da es nur relativ wenig tut gib habe ich jezt schon ein kleines Problem.
Im Prinzib würde ich gerne in c++ eine Tabele erstellen die in sich noch eine Tabelle besitzt, also wie ein 2 dim Array.
Wenn ich z.B. Tabelle1 & Tabelle2 anlege und dann Tabelle2 in Tabelle1 einfüge(mit SetObject oder AssigneObject) stürzt das Prog ab.LuaState * pState = g_pApp->m_pLuaStateManager->GetGlobalState().Get(); Tabelle1.AssignNewTable( pState ); Tabelle2.AssignNewTable( pState ); Tabelle1.AssignObject((LuaObject&) Tabelle2);Im script sollte es dann so aussehen: Tabelle1.Tabelle2.valueA
Vielen dank fürs helfen

-
Du willst in einer Tabellenzelle eine Tabelle einfügen, oder wie ist das gemeint?
-
Ja eigentlich schon.
Etwas schwer zum erklären aber in etwa so:Haushalt A
{
Name = "Hannes"
Id = 10
Param:
Geld = 100
Frau = "Anna"
Kinder = 2
}A.Param.Geld = 20
-
#include <iostream> struct Haushalt { std::string name; unsigned char id; unsigned char geld; std::string frau; unsigned char kinder; } //... int main() { Haushalt *Liste; Liste=new Haushalt [1]; Liste[0].frau="Anne"; //... }Oder gleich mit Klasse.

-
Verfehlt leider das Ziel etwas.

Also versuch ich es noch einmal zu erklären.
Grundsätzlich soll ein Event System verwiklicht werden und ein script soll zugriff auf das EventData Objekt haben, welches in c++ ich mit hilfe von LuaPlus erstellen muss. Also muss ich die von dir oben gennante structur als ein LuaObject anlegen... sehr verwirrend gg
-
Und du kannst nicht einfach ein Array dieser Objekte erstellen?
-
Seit wann gibts Objekte in Lua?
-
Okey war eindeutig der falsche ausdruck.
Hier einmal das \1:
//////////////////////////////////////////////////////////////////////
--Define the listener function.
function Update( eventData )
print("New Actor Created:\n" )
print(" ID = ".. eventData.ActorId )
print(" Name = ".. eventData.Params.Name )
print(" Size = ".. eventData.Params.Size )
endEventManager:AddScriptListener( "new_actor", Update )
//////////////////////////////////////////////////////////////////////
Die eventData wird eben in c++ angelegt. ActorId ausgeben funktioniert aber wie das mit den Params funktioniert weiß ich nicht -.-
Weiters sind die Params für jeden Actor verschieden.