Set Motion of Horizontal:Wrap
ASTER::ACTION::ObjectControl::MOTION::Set Horizontal:Wrap
モーションテンプレート
Horizontal Wrapを選択、モーションコントローラにオブジェクト・インスタンスを登録
- Wrap は指定された領域を超えた時、指定座標へワープして移動を継続する動作です。
モーション::概要
水平移動 ( Horizontal ) の場合、左端と右端の各座標に仮想壁 ( The Virtual Walls ) が設定でき、壁に当たったら進行方向と反対側の壁まで座標をワープさせ、再び進行方向側の壁へ向かって移動する、このルーチンを繰り返します。
仮想壁との衝突 ( 実際には座標通過 ) を検出した場合には即時実行条件が起動し、専用コンディションとエクスプレッションから該当インスタンスの x|y 座標や固定値を得ることができます。
移動量には浮動小数点数が設定可能になり、ASTER ベータ版では移動量の最小単位が
1フレームタイム =1ピクセルでしたが、ASTER 正式版ではより詳細な動作解像度を実現します。
モーション・コントローラへモーショングループを登録する際に、ユーザーが任意で決めた「モーショングループ名」を利用できます。
パラメータ.1
オブジェクト・インスタンスを選択。コントローラにはアクティブ ( スプライト ) のみ登録可能です。
アクティブ以外のオブジェクトタイプを指定した場合、イベントからアクション実行時にエラーが表示され、登録処理を中止します。
パラメータ.2
モーションコントローラへ登録するモーショングループ名を入力します。
異なるオブジェクトから作成されたインスタンスでも同じモーショングループ名でグループ化し、コントローラから管理できます。
すでにコントローラに登録済みのインスタンスを別グループ名から重複登録はできません。
マルチバイト文字列 (日本語など) も利用可能ですが、実用上、アルファベット小文字で短い名前を推奨します。
"test"アクティブオブジェクトに設定された名前をモーショングループ名として登録に利用する場合、空文字列を送信します。
""パラメータ.3
4つのパラメータをシリアライズして 1 つの文字列にまとめ送信します。
" 3.3 , false , -40 , 1000 "| 値 | データ型 | 説明 |
|---|---|---|
| 3.3 | float | X 移動量 |
| false | boolean | 停止状態で開始 (true, false) |
| -40 | signed int | 仮想壁 ( 左端座標 ) |
| 1000 | signed int | 仮想壁 ( 右端座標 ) |