void Update() { //キーの押下判定 //上矢印 if (Input.GetKeyDown(KeyCode.UpArrow)) { MoveUp(); } //下矢印 else if (Input.GetKeyDown(KeyCode.DownArrow)) { MoveDonw(); } //右矢印 if (Input.GetKeyDown(KeyCode.RightArrow)) { MoveRight(); } //左矢印 else if (Input.GetKeyDown(KeyCode.LeftArrow)) { MoveLeft(); } Vector3 rot = this.transform.localEulerAngles; Debug.Log(m_Dir); //回転させる(+180.0fはモデルが反対向いてるからその調整) this.transform.localEulerAngles = new Vector3(0.0f, ((int)m_Dir * 45.0f) - 180.0f, 0.0f); //移動可能なら移動 if (CheckMove()) { Move(); //体力を減らすテスト m_State.hp--; } //攻撃 if (Input.GetKeyDown(KeyCode.Z)) { Attack(); } //レベルアップ if (Input.GetKeyDown(KeyCode.C)) { m_SelectJob.JobLevelUp(); m_State.maxHp += (int)m_SelectJob.ProfessionParam.HPExt; //体力の最大値と同じに m_State.hp += m_State.maxHp / 10; OutPutLog(m_SelectJob.ProfessionParam.Name + "のLevelが上がった!"); GameObject.Find("levelup").GetComponent <levelup>().feedout(); } //プレイヤーの仕事ではない? { //体力テキストの更新 Hptext.GetComponent <UnityEngine.UI.Text>().text = m_State.hp.ToString() + '/' + m_State.maxHp.ToString(); //体力の比率 float Hpratio = (float)m_State.hp / (float)m_State.maxHp; if (Hpbar.transform.localScale.x > 0) { Hpbar.transform.localScale = new Vector3(Hpratio, Hpbar.transform.localScale.y, Hpbar.transform.localScale.z); } //0以下 else { Hpbar.transform.localScale = new Vector3(0.0f, Hpbar.transform.localScale.y, Hpbar.transform.localScale.z); } } if (isDeath()) { //ログ出力 OutPutLog("あなたは死んでしまった!"); //マップ上から消す m_CharaMap[this.PosX, this.PosZ] = null; //アクティブじゃなくなる this.gameObject.SetActive(false); } ; //向きの移動量を初期化 DirX = DirZ = 0; }