Esempio n. 1
0
    void UnPossess()
    {
        possessedItem.onBreak.RemoveListener(UnPossess);
        ghostObject.transform.position = possessedItem.transform.position;
        possessedItem      = null;
        targetObject       = null;
        moveComponent      = ghostObject.GetComponent <MovementComponent>();
        canPickupNewTarget = combo;

        EnableCollisionAndRender(true);
    }
Esempio n. 2
0
    void Possess(GameObject otherObj)
    {
        //SoundManager.PlayGhostSound();

        targetObject  = otherObj;
        possessedItem = otherObj.GetComponent <BreakableItem>();
        moveComponent = otherObj.GetComponent <MovementComponent>();
        possessedItem.onBreak.AddListener(UnPossess);

        EnableCollisionAndRender(false);
    }
Esempio n. 3
0
    private void OnTriggerEnter2D(Collider2D collision)
    {
        if (collision.CompareTag("Breakable"))
        {
            BreakableItem breakableItem = collision.GetComponent <BreakableItem>();

            if (breakableItem != null)
            {
                breakableItem.BreakIt();
            }
        }
    }
Esempio n. 4
0
    private void OnTriggerEnter(Collider other)
    {
        //Debug.Log(other.name + " - " + LayerMask.LayerToName(other.gameObject.layer));

        if (other.gameObject.layer == LayerMask.NameToLayer("Breakable"))
        {
            BreakableItem breakable = other.gameObject.GetComponent <BreakableItem>();

            if (breakable != null && PlayerStateMachine.Instance.isAttacking)
            {
                breakable.Break();
            }
        }
    }