Я бы хотел войти в триггер, который включит «StarPlatforms» в инспекторе.Я попытался поменять .SetActives слишком ложным, чем true
Вы, кажется, догадались, какой из них работает.Вот как работает SetActive
:
Чтобы включить или активировать объект, передайте true
в SetActive
.Чтобы выключить или деактивировать его, передайте ему false
.Кроме того, это должно быть сделано в функции OnTriggerEnter2D
, а не OnTriggerStay2D
.
Функция OnTriggerStay2D
вызывается, когда столкновение при каждом столкновении кадров все еще касается.Функция OnTriggerEnter2D
вызывается при столкновении.OnTriggerExit2D вызывается, когда нет больше столкновения.
void OnTriggerEnter2D (Collider2D col)
{
if (col.CompareTag("Player"))
{
StarPlatforms.gameObject.SetActive (true);
}
}
Если вы также хотите включить или отключить его, когда они больше не касаются, передайте false
в функцию SetActive
в функции OnTriggerExit
.
void OnTriggerExit2D(Collider2D col)
{
if (col.CompareTag("Player"))
{
StarPlatforms.gameObject.SetActive (false);
}
}
Не относится к вашей проблеме, но рекомендуется использовать CompareTag
вместо gameObject.tag
.