Index: KX_KetsjiEngine.cpp =================================================================== --- KX_KetsjiEngine.cpp (revision 50242) +++ KX_KetsjiEngine.cpp (working copy) @@ -1498,56 +1498,71 @@ KX_Scene* scene = *sceneit; /* the 'normal' debug props */ vector& debugproplist = scene->GetDebugProperties(); - - for (vector::iterator it = debugproplist.begin(); - !(it==debugproplist.end());it++) + CListValue *obs = scene->GetObjectList(); + + for (int ob_idx = 0; ob_idx < obs->GetCount(); ob_idx++) { - CValue* propobj = (*it)->m_obj; - STR_String objname = propobj->GetName(); - STR_String propname = (*it)->m_name; - if (propname == "__state__") + KX_GameObject* gameobj = (KX_GameObject*)obs->GetValue(ob_idx); + STR_String objname = gameobj->GetName(); + + for (vector::iterator it = debugproplist.begin(); !(it==debugproplist.end());it++) { - // reserve name for object state - KX_GameObject* gameobj = static_cast(propobj); - unsigned int state = gameobj->GetState(); - debugtxt = objname + "." + propname + " = "; - bool first = true; - for (int statenum=1;state;state >>= 1, statenum++) + CValue* propobjdeb = (*it)->m_obj; + STR_String objnamedeb = propobjdeb->GetName(); + STR_String propnamedeb = (*it)->m_name; + + if (objname == objnamedeb) { - if (state & 1) + + if (propnamedeb == "__state__") { - if (!first) + // reserve name for object state + unsigned int state = gameobj-> GetState(); + debugtxt = objname + "." + propnamedeb + " = "; + + bool first = true; + for (int statenum=1;state;state >>= 1, statenum++) { - debugtxt += ","; + if (state & 1) + { + if (!first) + { + debugtxt += ","; + } + debugtxt += STR_String(statenum); + first = false; + } } - debugtxt += STR_String(statenum); - first = false; + m_rendertools->RenderText2D(RAS_IRenderTools::RAS_TEXT_PADDED, + debugtxt.Ptr(), + xcoord, + ycoord, + m_canvas->GetWidth(), + m_canvas->GetHeight()); + ycoord += 14; } + + vector m_propNames = gameobj->GetPropertyNames(); + for (int prop_idx = 0; prop_idx < gameobj->GetPropertyCount(); prop_idx++) + { + STR_String propname = m_propNames[prop_idx]; + + if (propname == propnamedeb) + { + STR_String text = gameobj->GetPropertyText(propname); + debugtxt = objname + "." + propname + " = " + text; + + m_rendertools->RenderText2D(RAS_IRenderTools::RAS_TEXT_PADDED, + debugtxt.Ptr(), + xcoord, + ycoord, + m_canvas->GetWidth(), + m_canvas->GetHeight()); + ycoord += 14; + } + } } - m_rendertools->RenderText2D(RAS_IRenderTools::RAS_TEXT_PADDED, - debugtxt.Ptr(), - xcoord, - ycoord, - m_canvas->GetWidth(), - m_canvas->GetHeight()); - ycoord += 14; } - else - { - CValue* propval = propobj->GetProperty(propname); - if (propval) - { - STR_String text = propval->GetText(); - debugtxt = objname + "." + propname + " = " + text; - m_rendertools->RenderText2D(RAS_IRenderTools::RAS_TEXT_PADDED, - debugtxt.Ptr(), - xcoord, - ycoord, - m_canvas->GetWidth(), - m_canvas->GetHeight()); - ycoord += 14; - } - } } } }