Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите создать C# скрипт в Unity 2D Либо же скиньте гайды, пожалуйста

Андрей Зарецкий Ученик (60), на голосовании 3 месяца назад
Скрипт: при нажатии левой кнопки мыши на объект он удаляется. Перерыл весь интернет, но не смог найти, буду благодарен за помощь.
Голосование за лучший ответ
Татьяна Просветленный (36197) 4 месяца назад
 using UnityEngine; 

public class DestroyOnClick : MonoBehaviour
{
private void Update()
{
// Проверяем, была ли нажата левая кнопка мыши
if (Input.GetMouseButtonDown(0))
{
// Создаем луч из камеры через позицию курсора мыши
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hit;

// Проверяем, попал ли луч в какой-либо коллайдер
if (Physics.Raycast(ray, out hit))
{
// Проверяем, является ли объект, в который попал луч, тем объектом, который мы хотим удалить
if (hit.collider.gameObject == gameObject)
{
// Удаляем объект
Destroy(gameObject);
}
}
}
}
}
Этот скрипт нужно добавить к объекту, который вы хотите удалять при нажатии. Убедитесь, что у вашего объекта есть Collider, иначе луч, создаваемый из камеры, не сможет обнаружить объект.
Обратите внимание, что в этом примере используется Physics.Raycast для определения объекта под курсором мыши. Это означает, что ваш объект должен иметь Collider, чтобы быть обнаруженным. Если вы работаете с 2D, вам, возможно, потребуется использовать Physics2D.Raycast вместо Physics.Raycast и убедиться, что у объекта есть 2D Collider.
Похожие вопросы