简单的配置,先将就用吧,luaplus那由于别人的教材在表循环那里没写清楚,导致浪费了很多时间,最后还是看src才知道。
------------------------------------------------------------------------------------------------------
tabObjectData = {
[0x00001000] = {
MeshName = "00040_lian.mesh",
MeshDIR = "/models/Player/female/",
ShowName = "女主角1",
Scale = 0.01,
Image = "ptgw.tga",
ImageIndex = 0,
EffectList = {
[0x00000001] = {
BindBone = "",
OffestPos = { x = 0.0, y = 0.0, z= 0.0 },
Direction = { x = 0.0, y = 0.0, z= 0.0 }
}
}
},
[0x00002000] = {
MeshName = "男衣服30.mesh",
MeshDIR = "/models/Player/male/",
ShowName = "女主角1",
Scale = 0.01,
Image = "ptgw.tga",
ImageIndex = 0,
EffectList = {
[0x00000001] = {
BindBone = "",
OffestPos = { x = 0.0, y = 0.0, z= 0.0 },
Direction = { x = 0.0, y = 0.0, z= 0.0 }
}
}
},
[0x00000007] = {
MeshName = "ninja.mesh",
MeshDIR = "/models/Player/ninja/s",
ShowName = "女主角1",
Scale = 0.01,
Image = "ptgw.tga",
ImageIndex = 0,
EffectList = {
[0x00000001] = {
BindBone = "",
OffestPos = { x = 0.0, y = 0.0, z= 0.0 },
Direction = { x = 0.0, y = 0.0, z= 0.0 }
}
}
}
}
--------------------------------------------------------------------------------------
LuaPlus::LuaObject ObjectData = GameGlobalManager::GetSingletonPtr()->getLuaState().Get()->GetGlobal( "tabObjectData" );
for ( LuaTableIterator it( ObjectData ); it; it++ )
{
LuaPlus::LuaObject gameObj = it.GetValue();
if ( gameObj.IsTable() )
{
//每个对象的表了
printf( "对象:%08x\n", it.GetKey().ToInteger() );
LuaPlus::LuaObject EffectObj = gameObj.GetByName( "EffectList" );
if ( EffectObj.IsTable() )
{
for ( LuaTableIterator itr( EffectObj ); itr; itr++ )
{
if ( itr.GetValue().IsTable() )
{
printf( "对象:%08x的特效:%08x\n", it.GetKey().ToInteger(), itr.GetKey().ToInteger() );
}
}
}
}
}