敵を刺すことができるゲームを作ろうとしています。敵は約 1 秒間もがき、死んでしまいます。(ラグドール);
私のスクリプトを表示するのが最善だと思います。あなたは私が何を意味するか知っています:
オン トリガーで、スクリプトを入力します。
if(other.tag == "enemy"){
other.transform.parent.gameObject.name = ("enemy" + currentEnemy);
print(other.name);
gameObject.Find("enemy" + currentEnemy).GetComponent("RagdollOrNot").MakeKinematicFalse();
BloodParticle.emit = true;
Stabbed = true;
Character.GetComponent("MouseLook").enabled = false;
Character.GetComponent("CharacterMotor").enabled = false;
}
そして更新機能で:
if(Stabbed == true){
StopBleeding ++;
}
if(StopBleeding > 50){
Stabbed = false;
StopBleeding = 0;
currentEnemy ++;
Character.GetComponent("MouseLook").enabled = true;
Character.GetComponent("CharacterMotor").enabled = true;
BloodParticle.emit = false;
}
今、私のナイフが敵の衝突に入ると、敵はすぐに床に落ちます. 私は入れてみました:
gameObject.Find("enemy" + currentEnemy).GetComponent("RagdollOrNot").MakeKinematicFalse();
の更新機能でif(StopBleeding > 50)
。
これを行うと、スクリプトが敵を見つけることができるため、Null reverance exception のエラーが発生します。それができる間、私は引き金に入ることができます。
基本的に私の質問は次のとおりです。このエラーを修正して 50 フレームの遅延を与える方法はありますか (残りはすべてStopBleeding
動作します)。
または、ラグドールがアクティブになる前に簡単な遅延を入れる方法はありますか?
前もって感謝します