Beispiel #1
0
    public void SetUnit(PlayerShadowUnit unit)
    {
        if (unit == null)
        {
            return;
        }

        _unit = unit;
    }
Beispiel #2
0
    public void Init(Transform playerTr, float dir, PlayerShadowUnit playerShadow)
    {
        _rigid2D  = GetComponent <Rigidbody2D>();
        _animator = GetComponentInChildren <Animator>();
        bBoxCollider2D.enabled = false;
        _playerTr      = playerTr;
        spawnPlayerPos = _playerTr.position;
        spawnPos       = transform.position;
        this.dir       = dir;
        Debug.Log("dir : " + dir);
        if (dir <= 0)
        {
            transform.Rotate(0.0f, 180.0f, 0.0f);
        }

        this.playerShadow = playerShadow;
        isInit            = true;
    }
Beispiel #3
0
    private void Update()
    {
        if (transform.rotation.z >= 0)
        {
            hit = Physics2D.Raycast(transform.position, Vector3.left, 5.0f, layerMask);
        }
        else
        {
            hit = Physics2D.Raycast(transform.position, Vector3.right, 5.0f, layerMask);
        }


        if (hit.collider != null)
        {
            if (hit.collider.tag == "Shadow")
            {
                isHit = true;
                Debug.Log(hit.collider.name);
                if (isFrist)
                {
                    shadowUnit = hit.collider.GetComponent <PlayerShadowUnit>();
                    shadowUnit.LightDetection();
                    isFrist = false;
                }
                //if(InLight(hit.collider.GetComponent<Transform>().position))
                //{
                //}
            }
        }

        if (hit.collider == null)
        {
            if (shadowUnit == null)
            {
                return;
            }

            isFrist = true;
            shadowUnit.Skill1End();
            shadowUnit = null;
        }
    }