public void HighlightGroundAhead()
    {
        GroundComponent groundAhead = GetGroundAhead();

        if (currentHighlighted == groundAhead)
        {
            return;
        }
        if (currentHighlighted != null)
        {
            currentHighlighted.SetHighlight(false);
        }
        if (groundAhead == null)
        {
            return;
        }
        currentHighlighted = groundAhead;
        Color color = Color.white;

        if (currentHighlighted.IsOccupied())
        {
            color = Color.red;
        }
        lineRenderer.material.color = color;
        lineRenderer.enabled        = true;
    }
Esempio n. 2
0
    private void Start()
    {
        _ground                  = GameObject.FindGameObjectWithTag("Ground").GetComponent <GroundComponent>();
        _groundMeshBuilder       = _ground.transform.Find("Ground_Sprite").GetComponent <ColliderToMesh>();
        _groundCollider          = _groundMeshBuilder.GetComponent <EllipseCollider2D>();
        _groundShadowMeshBuilder = _ground.transform.Find("GroundShadow_Sprite").GetComponent <ColliderToMesh>();
        _groundShadowCollider    = _groundShadowMeshBuilder.GetComponent <EllipseCollider2D>();

        DOTween.To(() => _ground.Size, x => _ground.Size = x, 0.1f, _ground.Duration);
    }
    private void OnCollisionEnter(Collision collision)
    {
        GroundComponent ground = collision.transform.GetComponent <GroundComponent>();

        if (ground == null)
        {
            return;
        }
        ground.groundType = overwriteType;
    }
 public void UnhighlightGroundAhead()
 {
     if (currentHighlighted == null)
     {
         return;
     }
     currentHighlighted.SetHighlight(false);
     currentHighlighted   = null;
     lineRenderer.enabled = false;
 }
 public GroundComponent GetGroundAhead()
 {
     Collider[] colliders = Physics.OverlapBox(MoveDetector.position, MoveDetector.localScale);
     foreach (Collider c in colliders)
     {
         GroundComponent groundComponent = c.GetComponent <GroundComponent>();
         if (groundComponent != null)
         {
             return(groundComponent);
         }
     }
     return(null);
 }