コード例 #1
0
    /// <summary>
    /// プレイヤーがダメージを受けた時の処理
    /// </summary>
    /// <param name="damage">ダメージ量</param>
    public void Damage(int damage, int playerNum)
    {
        if (isDamage)
        {
            return;
        }
        int hp = 0;

        switch (own)
        {
        case PlayerKind.Player1:
            hp = MultiPlayerManager.instance.P1Dot -= damage;

            //Debug.Log(MultiPlayerManager.instance.P1Dot);
            break;

        case PlayerKind.Player2:
            hp = MultiPlayerManager.instance.P2Dot -= damage;

            //Debug.Log(MultiPlayerManager.instance.P2Dot);
            break;

        case PlayerKind.Player3:
            hp = MultiPlayerManager.instance.P3Dot -= damage;

            //Debug.Log(MultiPlayerManager.instance.P3Dot);
            break;

        case PlayerKind.Player4:
            hp = MultiPlayerManager.instance.P4Dot -= damage;

            //Debug.Log(MultiPlayerManager.instance.P4Dot);
            break;

        default:
            Debug.LogError("よばれちゃいけんのやぞ");
            break;
        }
        DotManager.instance.EnemyDeadDotPop(damage, transform.position, playerNum);
        Debug.Log(hp);
        if (hp <= 0)
        {
            //HPが0になったとき
            StartCoroutine(DownPlayer());

            //create.ResetWeapon();
            //StarManager.instance.DeadStarDrop(transform.position, own);
            //GameObject.Find("PlayerSetting").GetComponent<StartGame>().RespornPlayer(this.gameObject);
        }
        else
        {
            isDamage   = true;
            audio.clip = clips[0];
            audio.Play();
            Debug.Log(this.gameObject.name + "が" + damage + "ダメージ受けた\nのこり体力" + hp);
            StartCoroutine(DamegeWait());
            colorScript.DamagedOn();

            shieldCheck = false;
            //GetComponent<MoveController>().shieldStart(false);

            animator.SetTrigger("Hit");
            bool getWeapon = create.nowWeapon.name == "punch";
            animator.SetBool("HoldingWeapon", getWeapon); //武器を持っているか持っていないかの判定
            //animator.SetBool("Trigger" ,isAction);
            //shieldCheck = false;
        }
    }