コード例 #1
0
 /// <summary>
 /// Al entrar en contacto con el jugador, le roba matRobados materiales (solo una vez) y procede a huir hacia el punto de salida.
 /// </summary>
 /// <param name="collision"></param>
 void OnCollisionEnter2D(Collision2D collision)
 {
     if (collision.gameObject.GetComponent <Materiales>() && robado == false)
     {
         Materiales mat           = collision.gameObject.GetComponent <Materiales>();
         int        numMateriales = mat.DecirMateriales();
         //Si el jugador no tiene suficientes materiales, el ladrón ataca
         //Debería rbar los que tiene el jugador aunque no sean suficientes
         if (numMateriales == 0)
         {
             if (collision.gameObject.GetComponent <VidaJugador>())
             {
                 collision.gameObject.GetComponent <VidaJugador>().RestaVida(daño);
             }
         }
         else //Si los tiene, le roba y emprende su huida
         {
             robado = true;
             if (numMateriales >= matRobados)
             {
                 mat.RestarMateriales(matRobados);
             }
             else
             {
                 matRobados = numMateriales;
                 mat.RestarMateriales(numMateriales);
             }
             volver = true;
         }
     }
 }
コード例 #2
0
    public void CraftearLanza()
    {
        if (scriptMateriales.DecirMateriales() >= CosteLanza)
        {
            scriptMateriales.RestarMateriales(CosteLanza);
            menuActivo = !menuActivo;
            menuArmas.SetActive(menuActivo);

            scriptArmas.CambioArma(1);

            Debug.Log("Crafteando Lanza");
        }
    }
コード例 #3
0
ファイル: Ladron.cs プロジェクト: Tai1Games/Blacksmithereens
    /// <summary>
    /// Al entrar en contacto con el jugador, le roba matRobados materiales (solo una vez) y procede a huir hacia el punto de salida.
    /// </summary>
    /// <param name="collision"></param>
    void OnCollisionEnter2D(Collision2D collision)
    {
        if (collision.gameObject.GetComponent <Materiales>() && robado == false)
        {
            Materiales mat           = collision.gameObject.GetComponent <Materiales>();
            int        numMateriales = mat.DecirMateriales();
            //Si el jugador no tiene suficientes materiales, el ladrón ataca
            //Debería rbar los que tiene el jugador aunque no sean suficientes
            if (numMateriales == 0)
            {
                if (collision.gameObject.GetComponent <VidaJugador>())
                {
                    collision.gameObject.GetComponent <VidaJugador>().RestaVida(daño);
                }
            }
            else //Si los tiene, le roba y emprende su huida
            {
                robado = true;
                if (numMateriales < matRobados)
                {
                    matRobados = numMateriales;
                }
                mat.RestarMateriales(matRobados);

                LevelManager.instance.MuestraPopUpMat("- " + matRobados, new Vector2(transform.position.x, transform.position.y), Color.yellow, new Vector3(1.5f, 1.5f, 0));

                volver = true;
            }
        }
    }