0

この記事をオンラインでフォローしていて、いくつかの名前とタグを交換しましたが、画面にテキストが表示されないようです...

これが私のPlayerCollisionスクリプトです:

#pragma strict

function Update () {

}

function OnControllerColliderHit(hit : ControllerColliderHit){
    if(hit.gameObject.tag == "Collider"){
        ShowMessage.message = "HELLO WORLD";
        ShowMessage.turnTextOn = true;
    }
}

これは私のShowMessageスクリプトです:

#pragma strict

static var turnTextOn : boolean = false;
static var message : String;
private var timer : float = 0.0;

function Start(){
    timer = 0.0;
    turnTextOn = false;
    guiText.text = "";
}

function Update () {
    if(turnTextOn){
        guiText.enabled = true;
        guiText.text = message;
        timer += Time.deltaTime;
    }
    if(timer >= 5){
        turnTextOn = false;
        guiText.enabled = false;
        timer = 0.0;
    }
}

ShowMessage スクリプトを GUIText オブジェクトにリンクし、PlayerCollisionスクリプトをCharacterController. タグ付きのボックスコライダーオブジェクトもありますCollisionI also Have the GUIText in view それを除外するためだけに。

何が間違っているのか誰にもわかりませんか?ありがとう

4

2 に答える 2

0

問題が解決しました。isTrigger衝突が検出されないようにチェックしたことがわかりました。これにより、キャラクターがオブジェクトを通り抜けることができないという問題が生じます。私がしたことは、isTriggerオプションにチェックを入れて変更OnControllerColliderHit(hit : ControllerColliderHit)することでしたOnTriggerEnter (obj : Collider)

于 2013-10-11T21:42:57.600 に答える
0

タグは次の理由であってはなりませ"Collider""Collision"if(hit.gameObject.tag == "Collider")

于 2013-10-11T20:34:40.990 に答える