#pragma once #include "ComponentPanel.h" #include "Nuake/FileSystem/FileSystem.h" #include #include #include class BoxColliderPanel : ComponentPanel { public: BoxColliderPanel() {} void Draw(Nuake::Entity entity) override { if (!entity.HasComponent()) return; auto& component = entity.GetComponent(); BeginComponentTable(BOX COLLIDER, Nuake::BoxColliderComponent); { { ImGui::Text("Size"); ImGui::TableNextColumn(); ImGuiHelper::DrawVec3("BoxSize", &component.Size, 0.5f, 100.0, 0.01f); component.Size = glm::abs(component.Size); component.Size.x = std::max(component.Size.x, 0.0001f); component.Size.y = std::max(component.Size.y, 0.0001f); component.Size.z = std::max(component.Size.z, 0.0001f); ImGui::TableNextColumn(); ComponentTableReset(component.Size, Nuake::Vector3(0.5f, 0.5f, 0.5f)); } ImGui::TableNextColumn(); { ImGui::Text("Is Trigger"); ImGui::TableNextColumn(); ImGui::Checkbox("##isTrigger", &component.IsTrigger); ImGui::TableNextColumn(); ComponentTableReset(component.IsTrigger, false); } } EndComponentTable(); } };