素人Unity練習帳
Objectの非表示について 08
そのために
---------------------
Collider col = gameObject.GetComponent ();
col.enabled = false;
---------------------
を追加する。
mainContScr.csを以下のように修正
------mainContScr.cs---------------
using UnityEngine;
using System.Collections;
public class mainContScr : MonoBehaviour {
public Renderer rigthMisRen;
public Collider rightMisCol;//new
public Renderer leftMisRen;
public Collider leftMisCol;//new
public playerScr playerScr;
void Start () {
//RightMis Objectを探し設定
GameObject rightMisObj = GameObject.Find("RightMis");
rigthMisRen = rightMisObj.GetComponent();
rightMisCol = rightMisObj.GetComponent();//new
//LeftMis Objectを探して設定
GameObject leftMisObj = GameObject.Find("LeftMis");
leftMisRen = leftMisObj.GetComponent();
leftMisCol = leftMisObj.GetComponent();//new
//Player Objectを探して設定
GameObject PlayerObj = GameObject.Find("Player");
playerScr = PlayerObj.GetComponent();
}
void OnGUI()
{
if (GUI.Button(new Rect(300, 10, 100, 50), "RightMis"))
{
if (rigthMisRen.enabled) {
//表示してたら非表示
rigthMisRen.enabled = false; // 表示true 非表示false
rightMisCol.enabled = false;//new
}
else{
rigthMisRen.enabled = true; // 表示true 非表示false
rightMisCol.enabled = true;//new
}
}
if (GUI.Button(new Rect(10, 10, 100, 50), "LeftMis"))
{
if (leftMisRen.enabled){
//表示してたら非表示
leftMisRen.enabled = false; // 表示true 非表示false
leftMisCol.enabled = false;//new
} else{
leftMisRen.enabled = true; // 表示true 非表示false
leftMisCol.enabled = true;//new
}
}
if (GUI.Button(new Rect(100, 230, 100, 50), "PlayerMove"))
{
if (playerScr.PlayerMove == "off"){
playerScr.PlayerMove = "on";
}else{
playerScr.PlayerMove = "off";
}
}
}
}
------mainContScr.cs---------------
そうすると
----movie004----------
LeftMis,RightMisを消して
PlayerMoveを押すと、
壁と壁の間をぶつからないで通ることができる。
そのために
---------------------
Collider col = gameObject.GetComponent
col.enabled = false;
---------------------
を追加する。
mainContScr.csを以下のように修正
------mainContScr.cs---------------
using UnityEngine;
using System.Collections;
public class mainContScr : MonoBehaviour {
public Renderer rigthMisRen;
public Collider rightMisCol;//new
public Renderer leftMisRen;
public Collider leftMisCol;//new
public playerScr playerScr;
void Start () {
//RightMis Objectを探し設定
GameObject rightMisObj = GameObject.Find("RightMis");
rigthMisRen = rightMisObj.GetComponent
rightMisCol = rightMisObj.GetComponent
//LeftMis Objectを探して設定
GameObject leftMisObj = GameObject.Find("LeftMis");
leftMisRen = leftMisObj.GetComponent
leftMisCol = leftMisObj.GetComponent
//Player Objectを探して設定
GameObject PlayerObj = GameObject.Find("Player");
playerScr = PlayerObj.GetComponent
}
void OnGUI()
{
if (GUI.Button(new Rect(300, 10, 100, 50), "RightMis"))
{
if (rigthMisRen.enabled) {
//表示してたら非表示
rigthMisRen.enabled = false; // 表示true 非表示false
rightMisCol.enabled = false;//new
}
else{
rigthMisRen.enabled = true; // 表示true 非表示false
rightMisCol.enabled = true;//new
}
}
if (GUI.Button(new Rect(10, 10, 100, 50), "LeftMis"))
{
if (leftMisRen.enabled){
//表示してたら非表示
leftMisRen.enabled = false; // 表示true 非表示false
leftMisCol.enabled = false;//new
} else{
leftMisRen.enabled = true; // 表示true 非表示false
leftMisCol.enabled = true;//new
}
}
if (GUI.Button(new Rect(100, 230, 100, 50), "PlayerMove"))
{
if (playerScr.PlayerMove == "off"){
playerScr.PlayerMove = "on";
}else{
playerScr.PlayerMove = "off";
}
}
}
}
------mainContScr.cs---------------
そうすると
----movie004----------
LeftMis,RightMisを消して
PlayerMoveを押すと、
壁と壁の間をぶつからないで通ることができる。
Reon Viewin