1
プレッシャープレートに移動したときにボックスがゲートを開くパズルを作成しようとしました。私がプレッシャープレートの上にボックスを置くと、私はゲートにブールを渡そうとしていました。これは私の目標を達成する正しい方法ですか?オブジェクト共有の間のブーリアンブール
私は統一バージョン3.4を持っています。それはプロではなく、私はC#でコーディングしています。
私は単調さを学び始めたばかりなので、助けてください。
プレッシャープレートに移動したときにボックスがゲートを開くパズルを作成しようとしました。私がプレッシャープレートの上にボックスを置くと、私はゲートにブールを渡そうとしていました。これは私の目標を達成する正しい方法ですか?オブジェクト共有の間のブーリアンブール
私は統一バージョン3.4を持っています。それはプロではなく、私はC#でコーディングしています。
私は単調さを学び始めたばかりなので、助けてください。
のは、あなたのゲートゲームオブジェクトは、階層ビューでマジックゲート名前を持っており、次のコードを含むGateControllerタイプの割り当てスクリプトコンポーネントがあるとしましょう:他のクラス多分GameStatusControllerがあり
public class GateController : MonoBehaviour {
// Awake(), Update(), ...
public void OpenGate();
public void OpenGate() {
// code for opening the gate
}
をあなたはボックスが魔法のプレッシャープレートにあることを検出します(このためのコライダーは便利です)。あなたはそうです:
GameObject player = GameObject.Find ("MagicGate");
GateController gateController = player.GetComponent<GateController>();
gateController.OpenGate();
ありがとうございます。 GameStatusControllerを階層内の何かに割り当てることができますか、スクリプトを何も割り当てずに実行できますか? – Dave
ゲームのオブジェクト階層へのフルアクセスが必要で、適切なタイミングに頼らなければならない場合は、それらを割り当てる必要があります。他のすべては私が外に置いておく。 Non-MonoBehaviourクラスを持っていて、それをUnityコントロールの下で他の人が呼び出せるようにしてもよいでしょう。 – Kay