void OnTriggerEnter2D(Collider2D coll)
    {
        GameObject  collidedObj = coll.gameObject;
        OnWhipEvent whipScript  = collidedObj.GetComponent <OnWhipEvent>();

        if (whipScript != null)
        {
            whipScript.onWhipEnter();
        }
    }
    void OnTriggerEnter2D(Collider2D coll)
    {
        GameObject  collidedObj = coll.gameObject;
        OnWhipEvent whipScript  = collidedObj.GetComponent <OnWhipEvent>();

        if (whipScript != null)
        {
            whipScript.onWhipEnter();
            GameObject deathEffect = Resources.Load("Prefab/death") as GameObject;
            Instantiate(deathEffect, transform.position, Quaternion.identity);
        }
    }
Ejemplo n.º 3
0
 void genRayHit(Vector3 From, Vector3 To)
 {
     RaycastHit2D[] hits = Physics2D.RaycastAll(From, (To - From).normalized, (To - From).magnitude, collideLayer);
     Debug.Log("number of hits: " + hits.Length);
     // Boardcast to all objects that has a WhipEventhandler
     foreach (RaycastHit2D hit in hits)
     {
         GameObject  gb = hit.transform.gameObject;
         OnWhipEvent CC = gb.GetComponent <OnWhipEvent>();
         if (CC)
         {
             CC.onWhipEnter();
         }
     }
     Debug.DrawLine(From, To, Color.blue, 1.0f);
 }
Ejemplo n.º 4
0
    void genRayHit(Vector3 From, Vector3 To)
    {
        RaycastHit2D[] hits = Physics2D.RaycastAll(From, (To - From).normalized, (To - From).magnitude);

        foreach (RaycastHit2D hit in hits)
        {
            GameObject  gb = hit.transform.gameObject;
            OnWhipEvent CC = gb.GetComponent <OnWhipEvent>();

            if (CC)
            {
                CC.onWhipEnter();
            }
        }
        Debug.DrawLine(From, To, Color.blue, 1.0f);
    }
Ejemplo n.º 5
0
    void OnTriggerEnter2D(Collider2D coll)
    {
        GameObject  collidedObj = coll.gameObject;
        OnWhipEvent whipScript  = collidedObj.GetComponent <OnWhipEvent>();

        if (whipScript != null)
        {
            whipScript.onWhipEnter();

            GameObject deathEffect = Resources.Load("Prefab/holyFire") as GameObject;
            Instantiate(deathEffect, collider2D.bounds.center, Quaternion.identity);
            Destroy(this.gameObject);
        }
        else if (collidedObj.tag == Globals.groundTag)
        {
            GameObject deathEffect = Resources.Load("Prefab/holyFire") as GameObject;
            Instantiate(deathEffect, collider2D.bounds.center, Quaternion.identity);
            Destroy(this.gameObject);
        }
    }
    void itemPickedUp(GameObject plObj)
    {
        smScript   = plObj.GetComponent <StatusManager> ();
        attManager = plObj.GetComponent <WhipAttackManager> ();
        wepManager = plObj.GetComponent <SubWeaponManager> ();

        switch (itemName)
        {
        case Globals.ItemName.Money_S:
        case Globals.ItemName.Money_M:
        case Globals.ItemName.Money_L:
            GameObject moneySE = Resources.Load(Globals.SEdir + "moneySE") as GameObject;
            Instantiate(moneySE, transform.position, Quaternion.identity);
            break;

        case Globals.ItemName.SmallHeart:
        case Globals.ItemName.LargeHeart:
            GameObject heartSE = Resources.Load(Globals.SEdir + "heartSE") as GameObject;
            Instantiate(heartSE, transform.position, Quaternion.identity);
            break;

        case Globals.ItemName.WhipUp:

        case Globals.ItemName.Dagger:

        case Globals.ItemName.Axe:

        case Globals.ItemName.HolyWater:

        case Globals.ItemName.StopWatch:
            GameObject upgradeSE = Resources.Load(Globals.SEdir + "upgradeSE") as GameObject;
            Instantiate(upgradeSE, transform.position, Quaternion.identity);
            break;


        case Globals.ItemName.Rosary:
            GameObject rosarySE = Resources.Load(Globals.SEdir + "rosarySE") as GameObject;
            Instantiate(rosarySE, transform.position, Quaternion.identity);
            break;

        case Globals.ItemName.BossHeart:

            GameObject deathSE = Resources.Load(Globals.SEdir + "WinMusic") as GameObject;
            Instantiate(deathSE, transform.position, Quaternion.identity);

            break;

        default:
            GameObject defaultSE = Resources.Load(Globals.SEdir + "heartSE") as GameObject;
            Instantiate(defaultSE, transform.position, Quaternion.identity);
            break;
        }

        switch (itemName)
        {
        case Globals.ItemName.Money_S:
            smScript.score += 100;
            Debug.Log("fetched small money");
            break;

        case Globals.ItemName.Money_M:
            smScript.score += 400;
            Debug.Log("fetched medium money");
            break;

        case Globals.ItemName.Money_L:
            smScript.score += 700;
            Debug.Log("fetched large money");
            break;

        case Globals.ItemName.SmallHeart:
            smScript.heartNum += 1;
            Debug.Log("fetched heart");
            break;

        case Globals.ItemName.LargeHeart:
            smScript.heartNum += 5;
            Debug.Log("fetched heart");
            break;

        case Globals.ItemName.WhipUp:
            if (attManager.whipLevel < 3)
            {
                attManager.UpgradWhip();
            }
            Debug.Log("fetched Morning Star, whip powered up");
            break;

        case Globals.ItemName.Rosary:

            Debug.Log("fetched Rosery, clear stage");


            GameObject[] allEnemy = GameObject.FindGameObjectsWithTag(Globals.EnemyTag);
            foreach (GameObject enemy in allEnemy)
            {
                OnWhipEvent whipScript = enemy.GetComponent <OnWhipEvent>();

                if (whipScript != null)
                {
                    whipScript.onWhipEnter();
                }
            }
            break;

        case Globals.ItemName.Dagger:
            wepManager.weaponPickedUp(Globals.SubWeapon.Dagger);
            break;

        case Globals.ItemName.Axe:
            wepManager.weaponPickedUp(Globals.SubWeapon.Axe);
            break;

        case Globals.ItemName.HolyWater:
            wepManager.weaponPickedUp(Globals.SubWeapon.HolyWater);
            break;

        case Globals.ItemName.StopWatch:
            wepManager.weaponPickedUp(Globals.SubWeapon.StopWatch);
            break;

        case Globals.ItemName.BossHeart:
            getBossHeart();
            break;

        case Globals.ItemName.ChickenLeg:
            smScript.playerHealth += 6;
            Mathf.Clamp(smScript.playerHealth, 0, Globals.maxBossHealth);
            break;

        default:
            break;
        }

        Debug.Log("Player picked Up");
        if (audio)
        {
            audio.Play();
        }
        Destroy(this.gameObject);
    }