取消禁止图标的显示

This commit is contained in:
mnjnhuang 2025-10-09 22:47:37 +08:00
parent 5c40be0620
commit 596fa8e91d

View File

@ -12,7 +12,7 @@ public class MapBuildPlacer : MonoBehaviour
private Color sprite_render_color; private Color sprite_render_color;
private SpriteRenderer sprite_render_children; private SpriteRenderer sprite_render_children;
private MapBuildableCell adsorb_component; private MapBuildableCell snap_component;
private bool is_trigger_with_has_build = false; private bool is_trigger_with_has_build = false;
private SpriteRenderer stopUI_sprite_render; private SpriteRenderer stopUI_sprite_render;
private bool isSnap = false; private bool isSnap = false;
@ -50,26 +50,27 @@ public class MapBuildPlacer : MonoBehaviour
if (hit.collider) if (hit.collider)
{ {
// 吸附到格子坐标 // 吸附到格子坐标
adsorb_component = hit.collider.GetComponent<MapBuildableCell>(); snap_component = hit.collider.GetComponent<MapBuildableCell>();
Vector3 adsorb_position = startPositionObject.transform.position + 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; transform.position = adsorb_position;
isSnap = true; isSnap = true;
// 判断是否与以建造的建筑物触发器接触 if (is_trigger_with_has_build) return;
if (is_trigger_with_has_build == false) // 没有与已存在的建筑物接触
{ sprite_render_children.color = sprite_render_color;
sprite_render_children.color = sprite_render_color; stopUI_sprite_render.enabled = false;
stopUI_sprite_render.enabled = false;
}
} }
else else
{ {
// 鼠标不在格子上时触发, 还原默认状态 // 鼠标不在格子上时触发, 还原默认状态
if (adsorb_component) // if (snap_component)
{ // {
stopUI_sprite_render.enabled = true; // snap_component = null;
adsorb_component = null; // // if (isSnap)
} // // {
// // stopUI_sprite_render.enabled = true;
// // }
// }
isSnap = false; isSnap = false;
transform.position = mouse_world_position; transform.position = mouse_world_position;
@ -95,11 +96,6 @@ public class MapBuildPlacer : MonoBehaviour
self_on_trigger_event(other, true); self_on_trigger_event(other, true);
} }
private void OnTriggerEnter2D(Collider2D other)
{
self_on_trigger_event(other, true);
}
private void OnTriggerExit2D(Collider2D other) private void OnTriggerExit2D(Collider2D other)
{ {
self_on_trigger_event(other, false); self_on_trigger_event(other, false);