From 596fa8e91d05b1ebe6fc8453ca315c7e58e462cc Mon Sep 17 00:00:00 2001 From: mnjnhuang <1090031856@qq.com> Date: Thu, 9 Oct 2025 22:47:37 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=96=E6=B6=88=E7=A6=81=E6=AD=A2=E5=9B=BE?= =?UTF-8?q?=E6=A0=87=E7=9A=84=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../00_scripts/MapScripts/MapBuildPlacer.cs | 34 ++++++++----------- 1 file changed, 15 insertions(+), 19 deletions(-) diff --git a/Assets/00_scripts/MapScripts/MapBuildPlacer.cs b/Assets/00_scripts/MapScripts/MapBuildPlacer.cs index d01b7a0..9870bd0 100644 --- a/Assets/00_scripts/MapScripts/MapBuildPlacer.cs +++ b/Assets/00_scripts/MapScripts/MapBuildPlacer.cs @@ -12,7 +12,7 @@ public class MapBuildPlacer : MonoBehaviour private Color sprite_render_color; private SpriteRenderer sprite_render_children; - private MapBuildableCell adsorb_component; + private MapBuildableCell snap_component; private bool is_trigger_with_has_build = false; private SpriteRenderer stopUI_sprite_render; private bool isSnap = false; @@ -50,26 +50,27 @@ public class MapBuildPlacer : MonoBehaviour if (hit.collider) { // 吸附到格子坐标 - adsorb_component = hit.collider.GetComponent(); + snap_component = hit.collider.GetComponent(); Vector3 adsorb_position = startPositionObject.transform.position + - adsorb_component.m_get_grid_position_with_vector3() * cellSize; + snap_component.m_get_grid_position_with_vector3() * cellSize; transform.position = adsorb_position; isSnap = true; - // 判断是否与以建造的建筑物触发器接触 - if (is_trigger_with_has_build == false) - { - sprite_render_children.color = sprite_render_color; - stopUI_sprite_render.enabled = false; - } + if (is_trigger_with_has_build) return; + // 没有与已存在的建筑物接触 + sprite_render_children.color = sprite_render_color; + stopUI_sprite_render.enabled = false; } else { // 鼠标不在格子上时触发, 还原默认状态 - if (adsorb_component) - { - stopUI_sprite_render.enabled = true; - adsorb_component = null; - } + // if (snap_component) + // { + // snap_component = null; + // // if (isSnap) + // // { + // // stopUI_sprite_render.enabled = true; + // // } + // } isSnap = false; transform.position = mouse_world_position; @@ -95,11 +96,6 @@ public class MapBuildPlacer : MonoBehaviour self_on_trigger_event(other, true); } - private void OnTriggerEnter2D(Collider2D other) - { - self_on_trigger_event(other, true); - } - private void OnTriggerExit2D(Collider2D other) { self_on_trigger_event(other, false);