# ノートカードの中身

nPose には、ノートカード内で使用されるすべてのコマンド ラインに対して権限を設定できる機能が追加されました。これをボタン権限ではなく「ライン権限」と名付けました。行権限を使用すると、コマンドを実行するかどうか、いつ実行するかをより詳細に制御できるようになりました。

ノートカード内の行を処理するときに nPose が検索するキーワードがいくつかあります。これらのキーワードは次のとおりです：

# アニメーション

| コマンド                        | 必須の nPose バージョン |
| ------------------------------- | ----------------------- |
| ~~[ANIM](#anim)~~               | 0.xx - 3.10             |
| ~~[SCHMO](#schmo-and-schmoe)~~  | 2.00 - 3.10             |
| ~~[SCHMOE](#schmo-and-schmoe)~~ | 2.00 - 3.10             |
| [SEAT_INIT](#seat_init)         | 4.00 - ∞                |
| [XANIM](#xanim)                 | 4.00 - ∞                |

# プロップ

| コマンド                  | 必須の nPose バージョン | 追加要件                                                                |
| ------------------------- | ----------------------- | ----------------------------------------------------------------------- |
| [PROP](#prop)             | 3.00 - ∞                | [prop script](https://github.com/nPoseTeam/nPose-Prop-Plugin) V1.00 - ∞ |
| [PARENT_DO](#parent_do)   | 4.00 - ∞                | [prop script](https://github.com/nPoseTeam/nPose-Prop-Plugin) V4.00 - ∞ |
| [PROP_DO](#prop_do)       | 4.00 - ∞                | [prop script](https://github.com/nPoseTeam/nPose-Prop-Plugin) V4.00 - ∞ |
| [DIE](#die)               | 4.00 - ∞                | [prop script](https://github.com/nPoseTeam/nPose-Prop-Plugin) V4.00 - ∞ |
| [TEMPATTACH](#tempattach) | 4.00 - ∞                | [prop script](https://github.com/nPoseTeam/nPose-Prop-Plugin) V4.00 - ∞ |
| [POS](#pos)               | 4.00 - ∞                | [prop script](https://github.com/nPoseTeam/nPose-Prop-Plugin) V4.00 - ∞ |
| [ROT](#rot)               | 4.00 - ∞                | [prop script](https://github.com/nPoseTeam/nPose-Prop-Plugin) V4.00 - ∞ |
| [COPY](#copy)             | 4.00 - ∞                | [prop script](https://github.com/nPoseTeam/nPose-Prop-Plugin) V4.00 - ∞ |
| ~~[PROPDIE](#propdie)~~   | 3.00 - 3.10             | [prop script](https://github.com/nPoseTeam/nPose-Prop-Plugin) V1.00 - ∞ |

# イベント

| コマンド                      | 必須の nPose バージョン | 追加要件                                                                                       |
| ----------------------------- | ----------------------- | ---------------------------------------------------------------------------------------------- |
| [ON_SIT](#on_sit)             | 3.10 - ∞                | [nPose SAT-NOTSAT Plugin](https://github.com/nPoseTeam/nPose-SAT-NOTSAT-Plugin) V3.10 - ∞      |
| [ON_UNSIT](#on_unsit)         | 3.10 - ∞                | [nPose SAT-NOTSAT Plugin](https://github.com/nPoseTeam/nPose-SAT-NOTSAT-Plugin) V3.10 - ∞      |
| [TIMER](#timer)               | 3.10 - ∞                | [nPose SAT-NOTSAT Plugin](https://github.com/nPoseTeam/nPose-SAT-NOTSAT-Plugin) V3.10 - ∞      |
| [TIMER_REMOVE](#timer_remove) | 3.10 - ∞                | [nPose SAT-NOTSAT Plugin](https://github.com/nPoseTeam/nPose-SAT-NOTSAT-Plugin) V3.10 - ∞      |
| [ON_ENTER](#on_x)             | 4.00 - ∞                | [nPose SAT-NOTSAT Plugin](https://github.com/nPoseTeam/nPose-SAT-NOTSAT-Plugin) V4.00 - ∞      |
| [ON_EXIT](#on_x)              | 4.00 - ∞                | [nPose SAT-NOTSAT Plugin](https://github.com/nPoseTeam/nPose-SAT-NOTSAT-Plugin) V4.00 - ∞      |
| [ON_NEW](#on_x)               | 4.00 - ∞                | [nPose SAT-NOTSAT Plugin](https://github.com/nPoseTeam/nPose-SAT-NOTSAT-Plugin) V4.00 - ∞      |
| [ON_LOST](#on_x)              | 4.00 - ∞                | [nPose SAT-NOTSAT Plugin](https://github.com/nPoseTeam/nPose-SAT-NOTSAT-Plugin) V4.00 - ∞      |
| [ON_ALL_EMPTY](#on_x)         | 4.00 - ∞                | [nPose SAT-NOTSAT Plugin](https://github.com/nPoseTeam/nPose-SAT-NOTSAT-Plugin) V4.00 - ∞      |
| [ON_ALL_FULL](#on_x)          | 4.00 - ∞                | [nPose SAT-NOTSAT Plugin](https://github.com/nPoseTeam/nPose-SAT-NOTSAT-Plugin) V4.00 - ∞      |
| [ON_ALL_NOT_EMPTY](#on_x)     | 4.00 - ∞                | [nPose SAT-NOTSAT Plugin](https://github.com/nPoseTeam/nPose-SAT-NOTSAT-Plugin) V4.00 - ∞      |
| [ON_ALL_NOT_FULL](#on_x)      | 4.00 - ∞                | [nPose SAT-NOTSAT Plugin](https://github.com/nPoseTeam/nPose-SAT-NOTSAT-Plugin) V4.00 - ∞      |
| ~~[SATMSG](#satmsg)~~         | 0.xx? - 3.29            | [nPose SAT-NOTSAT Plugin](https://github.com/nPoseTeam/nPose-SAT-NOTSAT-Plugin) V0.xx? - V3.29 |
| ~~[NOTSATMSG](#notsatmsg)~~   | 0.xx? - 3.29            | [nPose SAT-NOTSAT Plugin](https://github.com/nPoseTeam/nPose-SAT-NOTSAT-Plugin) V0.xx? - V3.29 |

# その他

| コマンド                    | 必須の nPose バージョン |
| --------------------------- | ----------------------- |
| [DEFAULTCARD](#defaultcard) | 3.00 - ∞                |
| [MENUPROMT](#menuprompt)    | 3.00 - ∞                |
| [OPTION](#option)           | 3.00 - ∞                |
| [DOCARD](#docard)           | 3.10 - ∞                |
| [PLUGINMENU](#pluginmenu)   | 3.00 - ∞                |
| [DEF](#def)                 | 4.00 - ∞                |

# その他（高度）

| コマンド                        | 必須の nPose バージョン |
| ------------------------------- | ----------------------- |
| [LINKMSG](#linkmsg)             | 0.xx? - ∞               |
| [~~PAUSE~~](#pause)             | 2.00 - 3.10             |
| [UDPBOOL](#udpbool-udplist)     | 3.00 - ∞                |
| [UDPLIST](#udpbool-udplist)     | 3.10 - ∞                |
| [MACRO](#macro)                 | 3.00 - ∞                |
| [PLUGINCOMMAND](#plugincommand) | 3.00 - ∞                |

キーワードは常にすべて大文字です。

<div class="alert alert-info">
ノートカード内のメモや注釈の場合、各行をポンド記号 (#) で始めるのがベスト プラクティスです。注記と注釈は、キーワード コマンド ラインとは別の行に置く必要があります。
</div>

## XANIM

nPose は、`XANIM`ノートカード内のすべての行を実行しますが、`XANIM`各シートの行数が 1 つである必要があるという意味ではありません。これは、1 つのカード内で一部の (必ずしも全員ではない) シッターのポーズを変更できることを意味します。

何が起こっているかの全体像を見ると、`XANIM`の行はメモリ内にシッターを作成することはできませんが、現在メモリ内にある座席情報を置き換える (更新する) ことはできます。シートはすでに存在している必要があり、`SEAT_INIT`という簡単なコマンドによって作成されます。`SEAT_INIT`は必要最小限の座席情報を作成しますが、これは着席者をアニメーション化するには十分な情報ではないため、座ることは許可されない可能性があります。使用方法については、[SEAT_INIT](#seat_init) を見てください。

nPose は、単一のノートカード内にあるすべての`XANIM`行を実行します。すべての着席者が着席する前に完全な座席情報を入手できるように、DEFAULTCARD のすべての座席を更新することを強くお勧めします。そうしないと座ることができません。

構文は次のとおりです：

```
XANIM|seat#|csvlist animationName|<0,0,0>|<0,0,0>[|facial]
```

5 つの必須要素 (keyword、seat#、animationList、位置ベクトル、および回転ベクトル) があり、他の要素 (顔) はオプションであるため、構文はこのように書かれています。アニメーションのリストを使用すると、通常のアバターアニメーションと一緒に実行されるベントアニメーションを追加できます。

nPose の以前のバージョンでは、もう 1 つの`seat name`オプションのデータ ビットを提供できました。[座席の変更]サブメニューで使用される座席名を変更したい場合は、[DEF](./NC-Contents#def)コマンドを使用します。

位置ベクトルは、グローバル設定の[Global Setting adjustRefRoot](./Setting-Global-Options#adjustrefroot)に応じて、ルート プリムまたはスレーブ スクリプトが配置されているプリムへのオフセットです。

ノートカード名と同様に、コアはデータ区切り文字を期待します。メニュー名では区切り文字はコロン(`:`)ですが、ノートカード内の区切り文字は縦棒(`|`)です。キーワード`XANIM`で始まる行内でコアに提供する必要がある情報は、次のとおりです：

- キーワード（縦棒）席番号（縦棒）正確なアニメーション名（縦棒）位置ベクトル（縦棒）回転ベクトル（縦棒）オプションで実行したい表情（縦棒）オプションの座席名。

アニメーション名は、編集ウィンドウのコンテンツタブにあるアニメーションの名前と一致する必要があります。コピー/ペーストは、アニメーション名を追加する最も信頼できる方法です。アニメーションは、スレーブスクリプトが存在するプリムのコンテンツにも含まれている必要があります。

ベクトルは、<0.0, 0.0, 0.0> のように 3 つの数値をカンマで区切って記述します。 <x オフセット、y オフセット、および z オフセット>。

**表情アニメーションを使用するには、[nPose 表情／レイヤリングプラグイン](./nPose-Facial-Layering-Plugin)が必要です。**
表情アニメーションには、次の内部アニメーションのいずれかを使用できます: <http://wiki.secondlife.com/wiki/Internal_Animations>名前で呼んでください。チルダ`~`で区切ることで、複数の表情を呼び出すことができます。

### カップルやグループ向けの席

[ここ](./Adding-Couples-Sitters)の***ハウツー***のカップルのセットアップを見てください。

1 つのノートカードでは、`SEAT_INIT`によって作成されるシートの総数まで、任意の数の`XANIM`行を使用できます。カップルなどグループの座席情報を変更するオプションを提供します。

> `XANIM`行で座席情報を完全に入力するには、DEFAULTCARD で座席情報の完全なセットが指定されていない限り、nPose は、空いている座席の新しい座席に正しく応答しない（またはまったく応答しない）ことがわかっています。
> {.is-info}

### シッターのグループ内の単独のシッター

[ここ](./Adding-Multiple-Singles)の***ハウツー***のシングルの複数のセットアップを見てください。

各シッターがポーズを選択できるようにするプロセス（SCHMO アクション置換）は次のようになります。

1. メニュー ユーザーの UUID に制限されるすべての座席のノートカードに`XANIM`行を作成します。
2. 席ごとにポーズを調整します。
3. 各行の XANIM に続いて「行権限」を使用します： `XANIM{seat#}|seat#|animationName|position vector|rotation vector||`これにより、メニュー ユーザーが座っている座席に関連付けられた単一の XANIM 行のみが実行されます。

## SEAT_INIT

構文は下記のとおりです：

```
SEAT_INIT|numberOfSeatsRequired`
```

このビルドにシッターが含まれる場合、`SEAT_INIT`は必須のコマンドです。このコマンドの唯一の目的は、nPose が着席アバターをアニメートするために必要な情報を保持する場所をメモリ内に作成することです。

`SEAT_INIT`行の最適な場所は、.init ノートカード内です。 他のノートカードの中に入れることもできますが、何らかの理由でこのビルドに必要なシート数が変更されない限り、.init ノートカードを使用してください。
[ここ](https://github.com/nPoseTeam/nPose-V4/blob/master/nPose%20Utility%20Notecards/.init)から.init ノートカードに最低限書くことを確認してください。

## PROP

PROP セットアップの[プロップの Rez と Derez](./Rezzing-and-Derezzing-Props)、および[プロップとしてアニメッシュいを使用する](./Animesh-as-a-Prop) _**方法を**_ 参照してください。

**このコマンドは、[prop スクリプト](https://github.com/nPoseTeam/nPose-Prop-Plugin) V1.00 以降を使用している場合にのみ機能します。**

構文は次のとおりです：

```
PROP|propName|<propPosition>|<propRotation>[|groupNumber|[quiet]]
```

`propName`：文字列、Rez するオブジェクトの名前。
`propPosition`：ベクトル、位置は、コア スクリプトが含まれるプリムから参照されるオフセットです。位置ベクトルは、所有者が構築する権限を持っているシム内のどこにでも置くことができます。
`propRotation`：ベクトル (オイラー、度)、回転は、コア スクリプトが含まれるプリムから参照されるオフセットです。
`groupNumber`：整数 (0 ～ 15)、デフォルト: 0、自由に選択した数値。 専門分野: groupNumber 0 の Props は、デフォルトのノートカードまたは`XANIM`コマンドを含む ノートカードが読み取られるたびに終了します。
`quiet`：string、prop で新しい位置レポートが抑制されます。これは、プロップが移動することになっているときに、プロップの移動によってローカルチャットに情報が溢れないようにするためです。

構文は、groupNumber と Quiet がオプションであることを示すためにこのように書かれています。

> 注: プロップの nPose コントロールの場合、プロップのコンテンツ内にプロップ プラグインが必要です。 そうでない場合、これらのプロップは所有者によって手動で削除されるまで rez されたままになります。
> {.is-info}

## ~~PROPDIE~~

**このコマンドは、[prop スクリプト](https://github.com/nPoseTeam/nPose-Prop-Plugin)V1.00 を使用する場合にのみ機能します。**
**このコマンドは、nPose V4.00 のリリースで削除されました。 代わりに[DIE](#die)を参照してください。**

## PARENT_DO

PARENT_DO は、コマンドを実行するためにプロップから親にコマンドを送り返す方法です。

構文は次のとおりです：

```
PARENT_DO|nPose command
```

## PROP_DO

nPose が rez し、プロップと通信する方法（すべてのものが rez されるとき）に大きな変更があります。 rez 時に通信（送信と受信の両方）を処理する 1 つのスクリプト（`nPose Prop Plugin V4.00`）が存在するため、prop プラグインをメインスクリプト（rez 時とデータの送受信用）および rez されたすべての内容（プロップ、アイテムの一時的な装着物、アイテムの一時な装着物へのクリック、およびアイテムの装着）。アジャスター以外はこれで全てです。

`PROP_DO`コマンドは、メイン ビルドからプロップにコマンドなどを送信することが重要な場合に、すべてのノートカードで使用されます。

構文は次のとおりです：

```
PROP_DO|propName|csv propGroup|propNameSpace|nPose command
```

`propNameSpace`はおそらく常に空白になります。PROP_DO は、propName と csv `propGroup`の両方で、「`ALL`」のワイルドカード「`*`」をサポートします。

すべてのプロップを停止させる方法の例:

- `PROP_DO|*|*||DIE` このコマンドは、propName および propGroupNumber の `*` ワイルドカードによりアタッチされた、または一時的にアタッチされたプロパティを含む、すべてのプロパティを削除します。

## DIE

DIE コマンドは、attach や tempattach を含むすべてのプロパティに対して機能します。 PROP_DO と組み合わせて使用すると、名前やプロパティ グループ番号で指定できます。

```
PROP_DO|*|*||DIE
```

## TEMPATTACH

[ここ](./Rezzing-and-Derezzing-Props#Temp-Attach-props)から TEMPATTACH の接続 _**方法**_ を参照ください。

一時アタッチは prop プラグインを介して処理されるようになったため、すべての一時アタッチ項目に prop プラグインを追加します。 PROP_DO とも併用します。

構文は次のとおりです。

```
[TEMP]ATTACH|target[|attachmentPoint[|allowInsecureMessages[|PermissionRequestTimeout[|AttachTimeout]]]]
```

`target`：アバターの UUID か座席番号

`attachmentPoint`：integer 装着先 <https://wiki.secondlife.com/wiki/LlAttachToAvatarTemp/ja>

`allowInsecureMessages`：nPose オブジェクトの所有者とは異なるユーザーにプロップが一時的にアタッチされた場合、このプロップからその親への通信は、セキュリティ上の理由からデフォルトでブロックされます。

ただし、保護者への通信を許可したい場合もあるでしょう。

| 番号            | 説明                                                                                                                                                                     |
| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| 0（デフォルト） | 所有者が変わっても親に通信する必要はありません。 これは安全です。                                                                                                        |
| 1               | の所有者のためにプロパティが noMod に設定されている場合、親への通信が許可されます。 これは、**_プロップが新しいプロップを再設定しない限り_**、かなり安全であるはずです。 |
| 2               | 親への通信は許可されています。これは完全に安全ではなく、次の所有者があなたの nPose を制御することを可能にします。                                                        |

`ObjectPermissionRequestTimeout`：float, 秒, デフォルト=60; 0 に設定した場合: タイムアウトなし → プロップは終了しません
`AttachTimeout`: float, 秒, デフォルト=5;（LSL wiki の情報：接続ステップが成功する保証はありません）0 に設定した場合: タイムアウトなし → プロップは終了しません

<div class="alert alert-info">
オプションの設定はデフォルト設定で問題なく動作し、ほとんどの場合は無視できます。
</div>

たとえば、次の行を使用して剣を右手に一時的に取り付けます。
```
PROP_DO|sword|||TEMPATTACH|%AVKEY%|6
```

target はユーザーの UUID または Seat# のいずれかになります。

添付アイテムをユーザーのインベントリに送信し、そこから添付することが目的の場合は、ATTACH を使用します。

## POS

POS は、Prop を位置 pos に移動します。ここで、pos は「NC」座標内にあります (親オブジェクトを基準としており、スケール フラグが設定されている場合はスケールされます)。 PROP_DO と組み合わせて使用します。

構文は次のとおりです：

```
POS|pos
```

「apple」という名前のプロップを位置 <1.0, 2.0, 1.0> に移動する例:

```
PROP_DO|apple|||POS|<1.0, 2.0, 1.0>
```

## ROT

ROT は、Prop を回転 rot に回転させます。rot は「NC」座標内にあります(親オブジェクトを基準)。

構文は次のとおりです：

```
ROT|rot
```

「apple」という名前のプロップを上下逆に回転する例 <0.0, 180.0, 0.0>:

```
PROP_DO|apple|||ROT|<0.0, 180.0, 0.0>
```

## COPY

このコマンドは、親インベントリーから独自のインベントリー（スクリプトを除くすべてのタイプ）にアイテムをコピーします。これは、ポーズを変更するときにアジャスターが行うことと似ています。

構文は次のとおりです：

```
COPY|item[|item...]
```

## LINKMSG

構文は次のとおりです：

```
LINKMSG|arbNum|message[|%AVKEY%[|pauseTime]]
```

構文は、`%AVKEY%`と遅延時間がオプションであることを示すためにこのように書かれています。

`LINKMSG`行は、特定の`arbNum`が使用されたときに動作することを検討しているスクリプトに情報を渡すために使用されます。 この情報は、何らかの方法で nPose の通常の機能を拡張することを目的としています (何かを行うためにプラグインにキーを入力することがよくあります)。
`LINKMSG`ラインは、ノートカードから処理されるとすぐに実行され、ライン情報は nPose 内から破棄されます。
オプションの`%AVKEY%`は、特定のコマンドで誰がメニューに触れたかを知る必要がある場合に使用されます。 これにより、メニュータッチャーのキーが取得され、メッセージとともに渡されます。
オプションの`pauseTime`は、特にプロップが rez され、nPose がプロップにメッセージを送信する前に、そのプロップが rez されてスクリプトを起動して実行する時間が必要な場合に使用することを目的としています (一時装着コマンドなど)。

<div class="alert alert-info">
「pauseTime」を使用しないように努めてください (これは悪です)。代わりに [TIMER](#timer) コマンドを使用してください。
</div>

LINKMSG ではなく [PLUGINCOMMAND](#plugincommand) を使用することをお勧めします。これは自己文書化されており、ノートカード行でのデータ情報の構成が簡単になるなどの利点があるためです。

## ~~PAUSE~~

V4.00 で削除されました。

## ON_SIT

**nPose V3.00 以上のバージョンで使用できます。**

構文は次のとおりです：

```
ON_SIT|seatNumber|command
```

例：
```
ON_SIT|1|PROP|propName|<0,0,0>|<0,0,0>
```
誰かがこの特定の座席に座っている場合、プロップ propName を再設定します。

## ON_UNSIT

**nPose V3.00 以上のバージョンで使用できます。**

構文は次のとおりです：

```
ON_UNSIT|seatNumber|command
```

例：
```
ON_UNSIT|1|PROP_DO|*|*||DIE
```
誰かがこの特定の席を離れると、すべてのプロップが削除されます。

## TIMER

**nPose V3.00 以上のバージョンで使用できます。**

構文は次のとおりです：

```
TIMER|[(string)timerName]|(csv list)seconds|command
```

`timerName`：大文字と小文字は区別されず、ユーザー定義名は空でもかまいません。 同じ名前のタイマーは複数有効です。 `TIMER_REMOVE` でタイマーを削除できるようにする場合は、名前を選択します。
`seconds`：複数のカンマ区切りの float 値を指定できます。 特別: 「r」の後に 2 つの float 値を指定して、最初と 2 番目の float 値の間にランダムな値を作成することもできます。
`command`：コマンドの文字列

例：
```  
TIMER|myTimer|5.5|LINKMSG|5000|タイマーは 5.5 秒後にトリガーされました
```
タイマーが開始されてから 5.5 秒後にLINK MSGを送信します。

```
TIMER|myTimer|r,300,600|LINKMSG|5000|トリガーされました
```
5分から10分の間でランダムな時間にトリガーされます。

```
TIMER|myTimer|300,600,r,300,600|LINKMSG|5000|トリガーされました
```
5分から10分の間でランダムな時間にトリガーされます。5分後と10分後にもトリガーされます。

## TIMER_REMOVE

**nPose V3.00 以上のバージョンで使用できます。**

構文は次のとおりです：

```
TIMER_REMOVE[|(csv list)Names]
```

`Names`：削除する必要がある、大文字と小文字を区別しない、カンマ区切りのタイマー名のリスト。各名前の末尾にはワイルドカード`*`を使用できます。
NameList を指定しない場合、または NameList に名前`*`が含まれている場合は、すべてのタイマーが削除されます。

例：  
```
TIMER_REMOVE
TIMER_REMOVE|*
TIMER_REMOVE|whatever,*
```
このコマンドはすべてのタイマーを削除します

`TIMER_REMOVE|redApple`：「redApple」という名前のタイマーを削除します
`TIMER_REMOVE|redApple, green*`：「redApple」という名前のタイマーと、「green」で始まる名前のすべてのタイマーを削除します。

## ON_X

**nPose V4.00 以上のバージョンで使用できます。**
**[nPose SAT-NOTSAT Plugin](https://github.com/nPoseTeam/nPose-SAT-NOTSAT-Plugin)の V4.00 以降が動作に必要です。**

ON_X コマンドは座席固有です (ノートカード固有の ON_SIT および ON_UNSIT とは異なります)。ON_X コマンドが設定されると、同様の空のコマンドが発行されるか、.init カードが実行されるまで、設定されたままになります。したがって、.init はこれらのコマンドに最適な場所です。

構文は次のとおりです：

- `ON_ENTER|csv seat#s|nPose command`
- `ON_EXIT|csv seat#s|nPose command`
- `ON_NEW|csv seat#s|nPose command`
- `ON_LOST|csv seat#s|nPose command`
- `ON_ALL_EMPTY|nPose command`
- `ON_ALL_NOT_EMPTY|nPose command`
- `ON_ALL_FULL|nPose command`
- `ON_ALL_NOT_FULL|nPose command`

| コマンド         | トリガー                                                                   |
| ---------------- | -------------------------------------------------------------------------- |
| ON_ENTER         | 誰かが特定の席に入るとトリガーされます                                     |
| ON_EXIT          | 誰かが特定の席を離れた場合にトリガーされます                               |
| ON_NEW           | 新しい人がオブジェクトに座るとトリガーされます                             |
| ON_LOST          | triggers if someone unsits from the object                                 |
| ON_ALL_EMPTY     | 誰かがオブジェクトから離れた場合にトリガーされます                         |
| ON_ALL_NOT_EMPTY | すべての座席が空だったときにトリガーされますが、現在は空ではありません     |
| ON_ALL_FULL      | すべての座席が満席ではなかったが、現在は満席になったときにトリガーされます |
| ON_ALL_NOT_FULL  | すべての座席が満席だったが、現在は満席ではない場合にトリガーされます       |

## ~~SATMSG~~

**ON_SIT を使ってください**

## ~~NOTSATMSG~~

**ON_UNSIT を使ってください**

## PLUGINMENU

構文は次のとおりです：

```
PLUGINMENU|pluginName|[pluginMenuParameters[|pluginActionParameters]]
```

`pluginName`：プラグインの一意の名前。 ビルドインプラグインは次のとおりです: npose_changeseat、npose_unsit、npose_pickseat、npose_offset

`pluginMenuParameters`：メニュー作成のためのプラグイン固有のパラメーター

`pluginActionParameters`：アクションのプラグイン固有のパラメーター

<div class="alert alert-info">
nPose でメニューを再表示しないようにするには、コマンド `PLUGINMENU|void` を使用してください。 (nPose の以前のバージョンでは、ボタン名の末尾に「-」記号を追加する必要がありました)
</div>

## DEFAULTCARD

構文は次のとおりです：

```
DEFAULTCARD|ncName
```

このコマンドを使用して、デフォルトのノートカードを定義します。 .init ノートカード内で設定されている場合、スクリプトのリセット後にデフォルトのノートカードが実行されます。 グローバル オプション 2default=1 を設定すると、シッター全員が立ち上がったとき (またはメニューがタイムアウトしたとき)、デフォルトのノートカードも実行されます。

## OPTION

[ここ](./Setting-Global-Options)から使用可能なオプションのリストを参照してください。

構文は次のとおりです：

```
OPTION|optionName=optionValue[|optionName=optionValue[|...]]
```

.init ノートカードで [全般オプション](./Setting-Global-Options)を使用できます。

## DOCARD

**nPose V3.10 以上のバージョンで使用できます。**
構文は次のとおりです：

```
DOCARD|cardName
```

現在のカードが終了した後、ノートカードの内容をロードして実行します。

例：`DOCARD|SET:sit1`または`DOCARD|thisCard`。つまり、カードにメニューボタンがない場合でも、nPose は任意のカードを実行します。

## UDPBOOL, UDPLIST

構文は次のとおりです：

```
UDPBOOL|udpName=udpValue[|udpName=udpValue[|...]]
UDPLIST|udpName=udpValue[|udpName=udpValue[|...]]
```

UDP (ユーザー定義のアクセス許可) を定義します。
UDPBOOL は、単一のブール値 (0/1) の名前と値のペアです。
UDPLIST は、名前と値のペアのリストです。

_**ハウツー**_ [UDPBOOL](./UDPBOOL-and-Toggle-Buttons) のセットアップとメンテナンスを参照してください。

## MACRO

構文は次のとおりです：

```
MACRO|macroName=macroValue[|macroName=macroValue[|...]]
```

マクロを定義します。 マクロは、権限/メニュー プロンプト/ボタン テキスト/パス/一部のメニュー プラグイン内で使用できます。

例 1:
運転席と複数の乗客席があるバスを想像してください。 乗客は他の助手席に座席を変更できる必要がありますが、運転席には変更できません。
`.init` ノートカード内で座席を「運転手」グループと乗客グループに「グループ化」するためのマクロを使用します。

```
MACRO|driver=1|passenger=2~3~4~5~6~7~8~9~10~11~12
```

次に、`SET:ChangeSeat{@passenger}`という名前とコンテンツを含むノートカードを作成します (ここでは、権限内でマクロを使用して、乗客のみがボタンを表示できるようにしています)。

```
MENUPLUGIN|nPose_changeSeat|@passenger
```

（ここではマクロを nPose_changeSeat プラグインのパラメーターとして使用します）

## MENUPROMPT

構文は次のとおりです：

```
MENUPROMPT|theText
```

メニュープロンプトを定義します。

<div class="alert alert-warning">

ノートカード内では`MENUPROMPT`行を 1 つだけ使用してください。`MENUPROMT`コマンドには権限を使用できません。
</div>

## PLUGINCOMMAND

構文は次のとおりです：

```
PLUGINCOMMAND|commandName|linkMessageNumber
```

`commandName`：定義したいコマンド
`linkMessageNumber`：使用したい番号

新しいノートカードコマンドを定義します。 `.init`ノートカード内でのみ使用する必要があります。

## DEF

構文は次のとおりです：

```
DEF|keyword|seat#=setting[|seat#=setting]
```

キーワード (大文字と小文字は区別されません):

`seatName`、`seatPerm`、`animName`、`animPos`、`animRot`、`animFacials`、`animNcName`、`animCommand`、`sitterKey`、`sitterType`、`sitterName`

パラメータのリストからわかるように、よほど大胆な場合を除き、変更する意味があるパラメータはほんの 2 つだけです (`seatName`と`seatPerm`)。

`seatName`は、[座席の変更] メニューの空席のリストに表示される座席名です。

```
DEF|seatName|1=One|2=Two|3=OuthouseLeft|4=OuthouseRight
```

`seatPerm`は、たとえば、他の人が特定の席に座ることを防ぎ、その席を所有者のために予約することができます。

```
DEF|seatPerm|1=owner|2=group
```

---

## Page Navigation

- Canonical URL: https://sl.logue.be/ドキュメント/nPose/NC-Contents
- Permalink: https://sl.logue.be/6647457d6f76b0a2f2dc7344
- Parent: [nPose](/66473b186f76b0a2f2dc387c.md)
- Children: 0 total
- Total descendants: 0
- Siblings: 20 total
  - [Adding-Couples-Sitters](/66473bd86f76b0a2f2dc421b.md)
  - [Adding-Multiple-Singles](/66473c2a6f76b0a2f2dc4814.md)
  - [Adjusting-Poses](/66473bbb6f76b0a2f2dc3f77.md)
  - [Animesh-as-a-Prop](/664743046f76b0a2f2dc5fe9.md)
  - [Button-Permissions](/6647477e6f76b0a2f2dc8b5c.md)
  - [Command-Syntax-Quick-Reference](/664743ed6f76b0a2f2dc6aba.md)
  - [Line-Permissions](/664745ae6f76b0a2f2dc76cb.md)
  - [Menu-System](/664746cb6f76b0a2f2dc83e8.md)
  - [Multi-Language-Menu](/664748476f76b0a2f2dc94f1.md)
  - [NC-Names](/664747176f76b0a2f2dc872a.md)
  - [NC-Reader_Link-messages](/664748d76f76b0a2f2dc9b71.md)
  - [Placeholders](/664746186f76b0a2f2dc7ae8.md)
  - [Rezzing-and-Derezzing-Props](/66473c466f76b0a2f2dc4aca.md)
  - [Setting-Global-Options](/664743ca6f76b0a2f2dc67a4.md)
  - [Simple-Single-Sitter](/66473b676f76b0a2f2dc3b7a.md)
  - [System-Menu-Plugins](/664748786f76b0a2f2dc98c9.md)
  - [UDP-Register](/664748136f76b0a2f2dc9181.md)
  - [UDPBOOL-and-Toggle-Buttons](/664743516f76b0a2f2dc6380.md)
  - [User-Defined-Permissions](/664747c16f76b0a2f2dc8e5f.md)
  - [Utility-Notecards](/664746566f76b0a2f2dc7e8d.md)
- Last updated: 2024-05-25T10:38:43.049Z by 
- Full page listing (all children regardless of count): https://sl.logue.be/_api/v3/page-listing/children?id=6647457d6f76b0a2f2dc7344
