前提・実現したいこと
unityでクイズゲームを作っています。
正誤判別をさせてボタンをクリックして正解だったら◯を、不正解だったら✖の表示を一定時間だけ表示させたい。
(不正解だった場合、ハートのGameObjectの×3を減らす処理をさせたいと思っています。)
ここに質問の内容を詳しく書いてください。
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class Judgde : MonoBehaviour{
public GameObject maru; public GameObject batsu; //選択したボタンのテキストラベルと正解のテキストを比較して正誤を判定 public void JudgeAnswer(){ // 正解のデータをテキストでセットする string answerText = "10万km"; // 選択したボタンのテキストラベルを取得する Text selectedBtn = this.GetComponentInChildren<Text>(); if (selectedBtn.text == "10万km"){ // 正解のボタンを押した時の○の表示 if(Input.GetMouseButtonDown(0){ Debug.Log("正解"); maru.SetActive(true); }else{ // 不正解のボタンを押した時の✖の表示 if(Input.GetMouseButtonDown(0)){ Debug.Log("不正解"); batsu.SetActive(true); } } } }
}
上記のようにスクリプトを書いたのですが、ボタンにアタッチしても何も起きません。
スクリプトがおかしいとは思うのですがどう修正してよいか分からないので教えてもらいたいです。
発生している問題・エラーメッセージ
ボタンにアタッチしても何も起きない。
エラーメッセージ
### 該当のソースコード ```ここに言語名を入力 ソースコード using UnityEngine; using System.Collections; using UnityEngine.UI; public class Judgde : MonoBehaviour{ public GameObject maru; public GameObject batsu; //選択したボタンのテキストラベルと正解のテキストを比較して正誤を判定 public void JudgeAnswer(){ // 正解のデータをテキストでセットする string answerText = "10万km"; // 選択したボタンのテキストラベルを取得する Text selectedBtn = this.GetComponentInChildren<Text>(); if (selectedBtn.text == "10万km"){ // 正解のボタンを押した時の○の表示 if(Input.GetMouseButtonDown(0){ Debug.Log("正解"); maru.SetActive(true); }else{ // 不正解のボタンを押した時の✖の表示 if(Input.GetMouseButtonDown(0)){ Debug.Log("不正解"); batsu.SetActive(true); } } } } } ### 試したこと if(Input.GetMouseButtonDown(0)){ のところがおかしいと思い、public void OnClickにかえたりしてみた。 ### 補足情報(FW/ツールのバージョンなど) Unity 2018.2.14f1

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/05/08 05:07
2019/05/09 02:40