Exemple #1
0
 public AttitudeProduct(Attitude res, AttitudeType Id)
 {
     this._type       = Id;
     this._motivation = res;
     _values          = new Dictionary <int, float>();
     BaseValue        = res.BaseValue;
 }
Exemple #2
0
    /// <summary>
    /// 姿勢の変更
    /// </summary>
    private void ChangeAttitude()
    {
        switch (attitudeType)
        {
        case AttitudeType.Straight:
            if (isCharge == false)
            {
                return;
            }
            isCharge     = false;
            attitudeType = AttitudeType.Prone;
            transform.DORotate(proneRotation, 0.25f, RotateMode.WorldAxisAdd);
            rb.drag = 25.0f;
            btnChangeAttitude.transform.GetChild(0).DORotate(new Vector3(0, 0, 180), 0.25f);
            gameManager.sliderAltimeter.transform.GetChild(2).GetChild(0).DORotate(new Vector3(0, 0, 90), 0.25f);
            anim.SetBool("Prone", true);
            break;

        case AttitudeType.Prone:
            attitudeType = AttitudeType.Straight;
            transform.DORotate(straightRotation, 0.25f);
            rb.drag = 0f;
            btnChangeAttitude.transform.GetChild(0).DORotate(new Vector3(0, 0, 90), 0.25f);
            gameManager.sliderAltimeter.transform.GetChild(2).GetChild(0).DORotate(new Vector3(0, 0, 180), 0.25f);
            anim.SetBool("Prone", false);
            break;
        }
    }
Exemple #3
0
        private AttitudeProduct AddAttitude(Attitude res, AttitudeType id)
        {
            var at = new AttitudeProduct(res, id);

            _motivations.Add(id, at);
            return(at);
        }
    /// <summary>
    /// 姿勢の変更
    /// </summary>
    private void ChangeAttitude()
    {
        //現在の姿勢に応じて姿勢を変更する
        switch (attitudeType)
        {
        //現在の姿勢が「直滑空」だったら
        case AttitudeType.Straight:

            //未チャージ状態(チャージ中)なら
            if (charge_Completed == false)
            {
                //以降の処理を行わない=未チャージ状態なのでチャージ時の処理を行わないようにする
                return;
            }

            //チャージ状態を未チャージ状態にする
            charge_Completed = false;

            //現在の姿勢を「伏せ」に変更
            attitudeType = AttitudeType.Prone;

            //キャラを回転させて「伏せ」にする
            transform.DORotate(proneRotation, 0.25f, RotateMode.WorldAxisAdd);

            //空気抵抗値を上げて落下速度を遅くする
            rb.drag = 25.0f;

            //ボタンの子オブジェクト画像を回転させる
            btnChangeAttitude.transform.GetChild(0).DORotate(new Vector3(0, 0, 180), 0.25f);

            //伏せの状態に遷移するための条件を指定する(idle→stan)
            anim.SetBool("Prone", true);

            //処理を抜ける(次のcaseには処理がはいらない)
            break;

        //現在の姿勢が「伏せ」だったら
        case AttitudeType.Prone:

            //現在の姿勢を「直滑空」に変更
            attitudeType = AttitudeType.Straight;

            //キャラを回転させて「直滑空」にする
            transform.DORotate(straightRotation, 0.25f);

            //空気抵抗値を元に戻して落下速度を戻す
            rb.drag = 0f;

            //ボタンの子オブジェクトの画像を回転させる
            btnChangeAttitude.transform.GetChild(0).DORotate(new Vector3(0, 0, 90), 0.25f);

            //伏せの状態を止めるための遷移の条件を指定する(stan→idle)
            anim.SetBool("Prone", false);

            //処理を抜ける
            break;
        }
    }
Exemple #5
0
    //private FloatingJoystick joystick;

    // Start is called before the first frame update
    public void SetUpPlayer()
    {
        rb = GetComponent <Rigidbody>();
        transform.eulerAngles = straightRotation;
        attitudeType          = AttitudeType.Straight;
        btnChangeAttitude.onClick.AddListener(ChangeAttitude);
        btnChangeAttitude.interactable = false;
        anim = GetComponent <Animator>();
    }
Exemple #6
0
        // TODO: GetStat(StatType type)
        public AttitudeProduct GetAttitude(AttitudeType stat)
        {
            AttitudeProduct st;

            if (_motivations.TryGetValue(stat, out st))
            {
                return(st);
            }

            return(null);
        }
Exemple #7
0
    void Start()
    {
        rb = GetComponent <Rigidbody>();

        //初期の姿勢を設定(頭を水平方向に向ける
        transform.eulerAngles = straightRotation;

        attitudeType = AttitudeType.Straight;

        btnChangeAttitude.onClick.AddListener(ChangeAttitude);

        btnChangeAttitude.interactable = false;

        anim = GetComponent <Animator>();
    }
    // Start is called before the first frame update
    void Start()
    {
        //まずはじめにアタッチするオブジェクトの物理特性情報を取得し変数に格納
        rb = GetComponent <Rigidbody>();

        //初期の姿勢を設定(頭を水面方向に向ける)
        transform.eulerAngles = straightRotation;

        //現在の姿勢を「直滑空」に変更(今までの姿勢)
        attitudeType = AttitudeType.Straight;

        //ボタンのOnClickイベントにChangeAttitudeメソッドを追加する
        btnChangeAttitude.onClick.AddListener(ChangeAttitude);

        anim = GetComponent <Animator>();
    }
Exemple #9
0
    private Transform limitRightTop;          // 画面右上のゲームオブジェクトの位置情報

    public void SetUpPlayer()
    {
        rb = GetComponent <Rigidbody>();

        // 初期の姿勢を設定(頭を水面方向に向ける)
        transform.eulerAngles = straightRotation;

        // 現在の姿勢を「直滑降」に変更(いままでの姿勢)
        attitudeType = AttitudeType.Straight;

        // ボタンのOnClickイベントに ChangeAttitude メソッドを追加する
        btnChangeAttitude.onClick.AddListener(ChangeAttitude);

        // ボタンを非活性化(半透明で押せない状態)
        btnChangeAttitude.interactable = false;

        anim = GetComponent <Animator>();
    }
Exemple #10
0
    private void ChangeAttitude()
    {
        switch (attitudeType)
        {
        //現在の姿勢が直滑降だったら
        case AttitudeType.Straight:

            //未チャージ状態(チャージ中)なら
            if (isCharge == false)
            {
                return;
            }

            //チャージ状態を未チャージ状態にする
            isCharge = false;
            //姿勢を伏せに変更
            attitudeType = AttitudeType.Prone;
            //キャラクターを回転させて伏せ状態にする
            transform.DORotate(proneRotation, 0.25f, RotateMode.WorldAxisAdd);
            //空気抵抗値を上げて減速させる
            rb.drag = 25.0f;
            //ボタンの子オブジェクトの画像を回転させる
            btnChangeAttitude.transform.GetChild(0).DORotate(new Vector3(0, 0, 180), 0.25f);

            anim.SetBool("Prone", true);

            break;

        case AttitudeType.Prone:

            attitudeType = AttitudeType.Straight;

            transform.DORotate(straightRotation, 0.25f);

            rb.drag = 0f;

            btnChangeAttitude.transform.GetChild(0).DORotate(new Vector3(0, 0, 90), 0.25f);

            anim.SetBool("Prone", false);

            break;
        }
    }
Exemple #11
0
    /// <summary>
    /// 姿勢の変更
    /// </summary>
    private void ChangeAttitude()
    {
        // 現在の姿勢に応じて姿勢を変更する
        switch (attitudeType)
        {
        // 現在の姿勢が「直滑降」だったら
        case AttitudeType.Straight:

            // 未チャージ状態(チャージ中)なら
            if (isCharge == false)
            {
                // 以降の処理を行わない = 未チャージ状態なので、チャージ時の処理を行えないようにする
                return;
            }

            // チャージ状態を未チャージ状態にする
            isCharge = false;

            // 現在の姿勢を「伏せ」に変更
            attitudeType = AttitudeType.Prone;

            // キャラを回転させて「伏せ」にする
            transform.DORotate(proneRotation, 0.25f, RotateMode.WorldAxisAdd);

            // 空気抵抗の値を上げて落下速度を遅くする
            rb.drag = 25.0f;

            // ボタンの子オブジェクトの画像を回転させる
            btnChangeAttitude.transform.GetChild(0).DORotate(new Vector3(0, 0, 180), 0.25f);

            altimeterChangeAttitude.transform.GetChild(0).DORotate(new Vector3(0, 0, 90), 0.25f);

            // 伏せの状態に遷移するための条件を指定する  => idle から stan のアニメーションに遷移する
            anim.SetBool("Prone", true);

            // 処理を抜ける(次の case には処理が入らない)
            break;

        // 現在の姿勢が「伏せ」だったら
        case AttitudeType.Prone:

            // 現在の姿勢を「直滑降」に変更
            attitudeType = AttitudeType.Straight;

            // キャラを回転させて「直滑降」にする
            transform.DORotate(straightRotation, 0.25f);

            // 空気抵抗の値を元に戻して落下速度を戻す
            rb.drag = 0f;

            // ボタンの子オブジェクトの画像を回転させる
            btnChangeAttitude.transform.GetChild(0).DORotate(new Vector3(0, 0, 90), 0.25f);

            altimeterChangeAttitude.transform.GetChild(0).DORotate(new Vector3(0, 0, 180), 0.25f);

            // 伏せの状態を止めるための遷移の条件を指定する => stan から idle に遷移する
            anim.SetBool("Prone", false);

            // 処理を抜ける
            break;
        }
    }
 private AttitudeF(AttitudeType type, object attitude)
 {
     _underlyingType = type;
     _attitudeData   = attitude;
 }