Jurijus Zaksas
Искусственный Интеллект
(445791)
5 месяцев назад
Оператору if требуется булевское значение. В отличие от многих С-подобных языков, C# требует его очень строго - никакких там компромиссов с нулями, нулевыми указателями и всем прочим. А сдаеццо мне, что TryGetComponent либо возвращает не булевское значение, либо ты потерял переменную, в которую какое-то значение должно возвращаться еще.
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SocialPlatforms.Impl;
public class Pipe : MonoBehaviour
{
public float speed;
private void Update()
{
transform.Translate(Vector2.left * speed * Time.deltaTime);
}
private void OnTriggerEnter2D(Collider2D other)
{
if (other.TryGetComponent<Player>(out ))
{
ScoreManager.Instance.SetScore(1);
}
}
вот мой код
ошибку выдает на этом месте
if (other.TryGetComponent<Player>(out ))