[請益] Unity 播放時 同時暫停詳細原因

看板GameDesign (遊戲設計)作者 (justatree)時間5年前 (2019/08/10 19:40), 5年前編輯推噓3(305)
留言8則, 4人參與, 5年前最新討論串1/2 (看更多)
https://imgur.com/Z2O6Gqj
我的hp C#程式碼原本是掛到生命數值的text UI上 我以為要修改怪物血量 即遊戲畫面右邊的生命數值 也得把程式碼掛到生命數值怪物text UI上 條件與數值都選擇好後 按撥放發現這樣會發生標題所述的問題 後來嘗試了一翻 原來不用把程式碼掛到生命數值怪物text UI上 只要把生命數值怪物text UI 放入"生命數值"裡面的C#就好 這樣就能正常運作 也就是在物件中相同的C#只要有一個就好 但我還是不明白 兩個物件有相同的C#程式碼 裡面的東西選擇也相同 為什麼有些東西要消失才能運作 我的程式碼如下 using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class HP : MonoBehaviour { public Text HPtext; public float hp; public float mixhp; public Image bar; public Text HPmtext; public Text lvtext; //public float atkm; //暫時用不到 public float atk; public float hpm; public float lv; public float exp; void Start() { hp = 10; mixhp = 100; lv = 1; //atkm = 15; atk = 10; hpm = 100; Dispmhp(); //這個消失才能運作 displayhp(); } public void Sleep() { if (hp < mixhp) { hp += 10; displayhp(); } } void Update() { bar.transform.localPosition = new Vector3(-129 + 129 * (hp / mixhp), 0f, 0f); } public void displayhp() { HPtext.text = hp.ToString(); } public void Attack() { hpm -= atk; if (hpm <= 0) { exp += 2; Exp(); hpm = 100; Dispmhp(); } Dispmhp(); } public void Exp() { if (exp >= 10) { exp = -10; lv += 1; lvtext.text = lv.ToString(); } } public void Dispmhp() { HPmtext.text = hpm.ToString(); } } -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 119.77.135.69 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/GameDesign/M.1565437204.A.58B.html ※ 編輯: justatree (119.77.135.69 臺灣), 08/10/2019 19:47:56

08/10 20:28, 5年前 , 1F
暫停是有錯嗎? 有錯就看錯誤訊息吧
08/10 20:28, 1F
我點錯誤訊息 就是跳到void star()中的Dispmhp(); 我要把它註解掉 遊戲才能運作 但我還是搞不懂哪裡錯了 C#程式碼裡面也沒有說它有錯誤QQ ※ 編輯: justatree (119.77.135.69 臺灣), 08/10/2019 20:41:18

08/10 20:53, 5年前 , 2F
丟專案出來看比較快
08/10 20:53, 2F
我剛想重現那個錯誤 但很尷尬 我重做一遍遊戲居然運作成功...... 下次我會先把錯誤訊息和專案複製下來

08/10 20:59, 5年前 , 3F
錯誤訊息就會說它哪裡錯了 程式碼當然不會寫
08/10 20:59, 3F
恩.....我當時沒很仔細看錯誤訊息 很直覺的想說他會連結到程式碼就點進去看什麼問題 ※ 編輯: justatree (119.77.135.69 臺灣), 08/10/2019 21:15:39

08/10 21:14, 5年前 , 4F
我猜你的GameObject上的HPmtext是空的 沒掛東西進去
08/10 21:14, 4F
大大 你應該是對的 我當時應該是其中一個物件上的HPmtext是空的才會產生這樣的錯誤 非常感謝 答案出來啦!

08/10 21:16, 5年前 , 5F
我試試看 這樣錯誤會不會出來
08/10 21:16, 5F
※ 編輯: justatree (119.77.135.69 臺灣), 08/10/2019 21:18:35

08/10 21:23, 5年前 , 6F
Window->General->Console 視窗建議隨時開著,寫遊戲過
08/10 21:23, 6F

08/10 21:23, 5年前 , 7F
程學怎麼除錯很重要。有錯會暫停也是這邊可以設定
08/10 21:23, 7F

08/10 21:29, 5年前 , 8F
OK 感謝建議 我會再試試看
08/10 21:29, 8F
文章代碼(AID): #1TJgqKMB (GameDesign)
文章代碼(AID): #1TJgqKMB (GameDesign)