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

Помогите, с Unity

Фёдор Zetkov Ла Ученик (225), на голосовании 9 месяцев назад
Как сделать дверь для Unity, если будешь гдето 0,5 метров к ней тогда появиться на экране кнопка открытия или закрытия двери, анимацию и пустышку Я знаю как сделать, но скрипт хз
Голосование за лучший ответ
♡$ⴎG@r₱u₷sყ♡ Искусственный Интеллект (157223) 10 месяцев назад
Для создания такой интерактивной двери в Unity тебе нужно будет использовать коллайдер и скрипт, который будет отслеживать расстояние между игроком и дверью. Когда игрок подойдёт на нужное расстояние, активируется UI элемент с кнопкой.

Вот примерный скрипт на C#:

```csharp
 using UnityEngine; 
using UnityEngine.UI; // не забудь добавить этот namespace для работы с UI

public class DoorController : MonoBehaviour
{
public GameObject buttonPrompt; // UI элемент с кнопкой
public float triggerDistance = 0.5f; // дистанция активации кнопки
private GameObject player; // игрок

private void Start()
{
buttonPrompt.SetActive(false); // скрыть кнопку при старте
player = GameObject.FindWithTag("Player"); // найти игрока по тегу
}

private void Update()
{
if (Vector3.Distance(player.transform.position, transform.position) <= triggerDistance)
{
buttonPrompt.SetActive(true); // показать кнопку, если игрок рядом
}
else
{
buttonPrompt.SetActive(false); // скрыть кнопку, если игрок далеко
}
}

// Метод для вызова при нажатии на кнопку
public void ToggleDoor()
{
// Здесь логика открытия или закрытия двери
}
}

```

Этот скрипт нужно прикрепить к объекту двери. Объект `buttonPrompt` должен быть UI элементом с кнопкой, который ты можешь создать в Canvas. Важно, чтобы у игрока был тег "Player", чтобы скрипт мог его корректно найти. Метод `ToggleDoor()` ты потом дополнишь логикой анимации двери.
Фёдор Zetkov ЛаУченик (225) 10 месяцев назад
Благодарю за скрипт
Похожие вопросы