void DebugLayout() { float y_offset = 100; CPlayer* LocalPlayer; if (NetworkManager) { LocalPlayer = NetworkManager->GetLocalPlayer(); Render::DrawText(20, y_offset, color_white, DT_LEFT, "R3DNetwork: %x", NetworkManager); y_offset += 15; } CObjectManager* ObjectManager = CObjectManager::Get(); if (ObjectManager) { Render::DrawText(20, y_offset, color_white, DT_LEFT, "ObjectManager: %x", ObjectManager); y_offset += 15; //Finds LocalPlayer in the main menu (For the shooting range) if (!LocalPlayer) { CGameObject* Object = ObjectManager->GetFirst(); for (CGameObject* Object = ObjectManager->GetFirst(); Object && Object->GetNext(); Object = Object->GetNext()) { if (Object->GetObjectInfo()->m_id == OBJECT_AI_PLAYER) { LocalPlayer = (CPlayer*)Object; break; } } } } if (LocalPlayer) { Render::DrawText(20, y_offset, color_white, DT_LEFT, "LocalPlayer: %x [0x%x]", LocalPlayer, LocalPlayer->GetObjectInfo()); y_offset += 15; for (int slot = 0; slot < SLOT_MAX; slot++) { Weapon* pWeapon = LocalPlayer->m_weaponSlots[slot]; if (!pWeapon) continue; Render::DrawText(40, y_offset, color_white, DT_LEFT, "Slot Weapon %i: %x (CWeaponConfig: %x)", slot, pWeapon, pWeapon->GetWeaponConfig()); y_offset += 15; } Render::DrawTextA(20, y_offset, color_white, DT_LEFT, "Health: %f", LocalPlayer->GetHealth()); } }