##### Ninja Library - モーション関数

# njChangeMotionObject

イベントモーションの結果でオブジェクトの変更

### 書式

> `void njChangeMotionObject( cnkobj )
> NJS_CNK_OBJECT *cnkobj
> `

### 引数

> cnkobj | カレントノードに対応したチャンクオブジェクト構造体へのポインタ

### 戻り値

> なし

### 解説

> njMotionTransformEx()関数でイベントモーションがあった場合、イベントフラグの内容に従ってオブジェクトの内容を変更します。

> 現在イベントモーションはEVALFLAGのHIDEしか変更していません。

### 用例

>     void UserPushPopMotion( const NJS_CNK_OBJECT *cnkobj )
>     {
>     	NJS_CNK_OBJECT back_cnkobj;

>         do {
>             njPushMatrixEx();

>             njMotionTransformEx( cnkobj );

>             if(njGetMotionEventFlag()){
>             	back_cnkobj = *cnkobj;
>             	njChangeMotionObject( cnkobj );
>             }

>             if ( ( cnkobj->model != NULL ) && ( !( cnkobj->evalflags & NJD_EVAL_HIDE ) ) ) {
>                 njCnkEasyDrawModel( cnkobj->model );
>             }

>             if(njGetMotionEventFlag()){
>             	*( NJS_CNK_OBJECT* )cnkobj = back_cnkobj;
>             }

>             if ( cnkobj->child != NULL ) {
>                 UserPushPopMotion( ( NJS_CNK_OBJECT* )cnkobj->child );
>             }

>             njPopMatrixEx();

>             cnkobj = cnkobj->sibling;
>         } while ( cnkobj != NULL );
>     }

### 参照

> njMotionLinkTransformEx() | 現在のモーションリンクパラメータにおいてのカレントノードのマトリックス作成
> njStartMotionObj() | ０番スロットへのオブジェクトモーションパラメータの設定
> njGetMotionNodeData() | 現在のモーションパラメータにおいてのカレントノードの姿勢情報の取得
> njSetNextMotionNodeEx() | モーションのカレントノードの更新
> njGetMotionEventFlag() | イベントモーションフラグの結果の取得

njChangeMotionObject

COPYRIGHT © SEGA ENTERPRISES, LTD., 1998-2000