ディレクタータイプ
cc.directorは、ゲームのロジックフローを管理するシングルトンオブジェクトです。
cc.directorはシングルトンであるため、コンストラクターを呼び出したり、関数を作成したりする必要はありません。
これを使用する標準的な方法は、次のように呼び出すことです。
-cc.director.methodName();
メインウィンドウを作成および処理し、タイミングを管理します。シーンが実行されます。
スケジューラタイプ
スケジューラは、コールバック関数のトリガーを担当するクラスです。
通常、システムタイマーを取得するには、cc.director.getScheduler()を使用することをお勧めします。
タイマーには2つの異なるタイプがあります。
- update 定时器:每一帧都会触发。您可以自定义优先级。<br/>
- 自定义定时器:自定义定时器可以每一帧或者自定义的时间间隔触发。<br/>
スケジュール
コールバック関数を指定し、オブジェクトおよびその他の情報を呼び出して、新しいタイマーを追加します。
一時停止値がtrueの場合、resumeが呼び出されるまでタイミングは開始されません。
時間間隔が指定された値に達すると、setコールバック関数が呼び出されます。
間隔値が0の場合、コールバック関数はフレームごとに呼び出されますが、その場合は、代わりにscheduleUpdateForTargetを使用することをお勧めします。
コールバック関数がすでにタイマーによって使用されている場合、前のタイマーの時間間隔パラメーターのみが更新され、新しいタイマーは設定されません。
繰り返し値を使用すると、タイマートリガーを+ 1回繰り返し、cc.macro.REPEAT_FOREVERを使用してタイマートリガーをループで作成できます。
遅延値は遅延時間を指定し、タイマーは指定された時間遅延の後に計時を開始します。
BlockInputEventsコンポーネントリファレンス
BlockInputEventsコンポーネントは、それが属するノードのバウンディングボックス内のすべての入力イベント(マウスとタッチ)をインターセプトして、入力が下位ノードに浸透するのを防ぎます。これは通常、上位UIの背景として使用されます。
ノードのアクティブ化/非アクティブ化
ノードはデフォルトで有効になっています。ノードのactive
プロパティを設定することで、コードでアクティブ状態を設定できます。
this.node.active = false;
active
属性を設定し、エディターでアクティブノードを切り替えると、閉じた状態になりますが、効果は同じです。ノードがダウンすると、そのすべてのコンポーネントが無効になります。同時に、そのすべての子ノードと子ノード上のコンポーネントも無効になります。子ノードが無効になっていて、そのactive
プロパティが変更されない場合、親ノードが再びアクティブになると、元の状態に戻ることに注意してください。
つまり、active
ノード自体がアクティブであり、このノードが現在アクティブにできるかどうかは、その親によって異なります。また、現在のシーンにない場合はアクティブにできません。ノードの読み取り専用属性を使用して、ノードactiveInHierarchy
が現在アクティブであるかどうかを判断できます。
this.node.active = true;
ノードが元のアクティブ化可能な状態にある場合、変更active
がtrueの場合、すぐにアクティブ化がトリガーされます。
- シーンでアクティブがtrueであるノードとノードの下のすべての子ノードを再アクティブ化します
- ノードはすべてのコンポーネント上にあり、すべての子ノードが有効になります。これらは
update
、メソッドが各フレームを実行した後です。 - これらのコンポーネント
onEnable
に実行されるメソッドがある場合
this.node.active = false;
ノードが最初にアクティブ化されていた場合、active
falseに変更すると、すぐにシャットダウンがトリガーされます。
- このノードと、シーン内のノードの下にあるすべての子ノードを非表示にします
- すべてのコンポーネントのノードとすべての子ノードが無効になっています。つまり、これらのコンポーネント
update
コードを実行していません。 - これらのコンポーネント
onDisable
に実行されるメソッドがある場合