unity3Dで鬼ごっこのゲームを作成しております。
その際に鬼がプレイヤーに触れたい際に捕まえるボタンを実装したのですがうまく反映がされません。
コンソール内にはboolの値は反映がされているのですが捕獲のボタンをsetactive(true)にできません。
捕獲ボタン(active(false)でインスペクター内に存在)はGameController内にアタッチ済みです。
アドバイスをいただけますと幸いです。
C#
1using System.Collections; 2using System.Collections.Generic; 3using UnityEngine; 4using UnityEngine.UI; 5 6public class OniController : MonoBehaviour 7{ 8 9 10 public bool canhokaku; 11 public bool CANHOKAKU 12 { 13 get { return this.canhokaku; } //取得用 14 private set { this.canhokaku = value; } //値入力用 15 } 16 17 18 19 void Start() 20 { 21 22 23 24 public void OnCollisionEnter(Collision hit) 25 { 26 // 接触対象はPlayerタグですか? 27 if (hit.gameObject.tag == "Player") 28 { 29 30 canhokaku = true; 31 Debug.Log(canhokaku); 32 33 34 } 35 36 } 37 38 public void OnCollisionExit(Collision hit) 39 { 40 41 42 // 接触対象はPlayerタグですか? 43 if (hit.gameObject.tag == "Player") 44 { 45 canhokaku = false; 46 Debug.Log(canhokaku); 47 } 48 49 } 50 51 52 53} 54
GameController
C#
1using System.Collections; 2using System.Collections.Generic; 3using UnityEngine; 4using UnityEngine.UI; 5 6public class GameController : MonoBehaviour 7{ 8 public GameObject ButtonHokaku; 9 10 public bool canhokaku; 11 12 13 14 public OniController OniControllerScript; 15 16 17 18 19 void Start() 20 { 21 //プレイヤーの取得 22 Oni.AddRange(GameObject.FindGameObjectsWithTag("Oni")) 23 24 canhokaku = PoliceControllerScript.HOKAKU; 25 26 } 27 28 29 void Update() 30 { 31 if (canhokaku) 32 { 33 ButtonHokaku.SetActive(true); 34 35 } 36 } 37 38 39 40 } 41 42 43 44 45 46 47 48 49 50 51 52 53} 54 55
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/04/28 07:38
2020/04/28 07:40
2020/04/28 09:00
退会済みユーザー
2020/04/28 09:32