Add EditorApp::TilePickAction

This commit is contained in:
2025-06-23 21:11:51 -05:00
parent b73aa4e4dd
commit 8f3cce41b6
2 changed files with 11 additions and 5 deletions

View File

@@ -240,6 +240,8 @@ public:
enum JUI::MouseButton ToJUIEnum(const MouseButton& btn);
void TilePickAction();
void OnMouseButtonDown(const MouseButtonDownEvent &e) override;
void OnMouseButtonUp(const MouseButtonUpEvent &e) override;

View File

@@ -776,8 +776,7 @@ void EditorApp::Update(float elapsed) {
// mouse_hovering_ui_element = true;
if (!mouse_hovering_ui_element)
{
if (!mouse_hovering_ui_element) {
if (data_ready) {
if (IsMouseButtonDown(MouseButtons::Left))
PlaceTileBrush(GetGridCellFromMouse());
@@ -983,17 +982,22 @@ JUI::MouseButton EditorApp::ToJUIEnum(const MouseButton& btn)
return JUI::MouseButton::Left;
}
void EditorApp::TilePickAction() {
Vector2i cell = GetGridCellFromMouse();
selected_quad = GetFocusLayer()->cells[cell.x][cell.y];
}
void EditorApp::OnMouseButtonDown(const MouseButtonDownEvent& e)
{
auto btn = ToJUIEnum(e.Button);
if (scene->ObserveMouseInput(btn, true)) return;
// Tile-pick - Middle Click
// Tile Pick - Middle Click
if (btn == JUI::MouseButton::Middle)
{
Vector2i cell = GetGridCellFromMouse();
selected_quad = loaded_level->layers[0]->cells[cell.x][cell.y];
return TilePickAction();
}
}