# ArcadeZero YutMod 4.1 ~ Timing Group Properties ガイド
ArcadeZero YutMod 4.1(以降)では、本家ゲームのTiming Groupのプロパティに加えて、**Scene Controlを使わずにノーツの表現の幅を広げる**オリジナルのプロパティをセットすることができます。
このバージョンでは本家ゲームのプロパティの仕様にそのまま対応しているため、本家ゲームの譜面や他バージョンのArcade、その他の譜面ツールで作成された譜面をロードする際にaffファイルを加工する必要はありません。
ただし、このArcadeZero YutMod 4.1で追加されたTiming Groupプロパティはこのバージョン独自のものであるため、**このバージョンで本家ゲームにない独自のプロパティを使用して作成された譜面は、他バージョンのArcadeや本家ゲームには対応しませんのでご注意ください。**
## 本体のダウンロード
**Windows**:
https://bit.ly/3h6DpDL
**Mac**:
https://bit.ly/3iOJdSJ
### アップデートログ
> ・Timing GroupプロパティとEnwidenイベントにオリジナル仕様を追加
> →詳細は下記使い方へ!
>
> ・効果音ファイルが指定されていない(effectパラメータが空欄)状態の特殊ArcTapが譜面内にある場合でも動画出力ができるよう修正
> 例:arc(1000,2000,1.00,1.00,s,0.00,0.00,1,\,true)[arctap(1500)];
>
> ・スカイノーツをゴーストノーツへ変化させるGhost ArcTapを復活
> Timing Groupに関わらずすべてのArcTapをゴースト化します
> スキン設定から有効にできます
> ※これを有効化した場合、Timing GroupプロパティのArcTapに対するゴースト化設定は無視されます
## 使い方
① 譜面を開いている状態で、画面右上のTiming Group欄の「★」ボタンをクリックすると、Timing Groupプロパティを設定するダイアログが表示されます。

---
② Timing Groupプロパティを編集できるのはGroup番号1以上なので、Groupを1以上に変更します。新しく追加したTiming Groupではまだプロパティを変更できませんので、先にこのTiming Group内でノーツの配置を行います。

---
③ 譜面を保存して再読み込みすると、プロパティを編集できるようになります。

---
④ そのTiming Group内のノーツで表現したいスタイルになるようプロパティを編集します。(それぞれのプロパティの編集方法については下記を参照してください)

---
⑤ 編集を確定する場合は、「Save & Apply」をクリックします。自動で譜面が保存されて再読み込みされます。

---
⑥ 変更したプロパティをもとに戻したい場合は、「Save & Apply」ボタンの横の矢印「↩」ボタンをクリックします。プロパティが変更される前の状態に戻して保存し、再読み込みされます。(元に戻せるのは直前の1回までです)

---
⑦ セットしたプロパティが譜面に反映されていることを確認します。

---
## 各プロパティの仕様

---
#### **仕様種別の表記**
**◇**:**公式仕様**
→ 本家ゲームや他バージョンのArcadeと互換性のある仕様
**★**:**オリジナル仕様**
→ このArcadeZero YutMod 4.1(以降)でのみ対応する仕様
このプロパティを空欄や「Default」以外にセットした場合は、その譜面を他バージョンのArcadeや本家ゲームで使用することはできません
---
#### **イージングとは?**
一定の速度で直線的に移動するオブジェクト(ここではノーツのこと)の動きに緩急や加減速を加えることです。
イージングの種類については以下のサイトを参照してください。
また、Timing Group Propertiesダイアログ内の「What is Easing?」ボタンから以下のサイトにアクセスすることもできます。
**https://easings.net/ja**
---
### No Input
| プロパティ名 | 設定項目 |
| -------- | -------- |
| No Input | ON / OFF ◇ |
そのGroup内の全てのノーツの判定を無効にします。
### Angle
| プロパティ名 | 設定項目1 | 設定項目2 | 設定項目3 |
| -------- | -------- | --- | --- |
| X | ON / OFF ◇ | 角度の数値(整数0 ~ 3600) ◇ | イージングタイプ ★ |
| Y | ON / OFF ◇ | 角度の数値(整数0 ~ 3600) ◇ | イージングタイプ ★ |
そのGroup内の全てのノーツの進行方向に角度を加えます。
スイッチをONにすることで角度の数値を入力できるようになります。
角度は0 ~ 3600の整数で指定します。
Angle Xでは縦方向の角度を指定します。
Angle Yでは横方向の角度を指定します。
XとYそれぞれにイージングを加えることができます。
### Z Ease
| プロパティ名 | 設定項目1 | 設定項目2 |
| -------- | -------- | --- |
| Z Ease | ON / OFF ★ | イージングタイプ ★ |
そのGroup内の全てのノーツの進行速度にイージングを加えます。
スイッチをONにすることでイージングの種類を選択できるようになります。
**※** このプロパティは、そのGroup内のノーツが全てTapまたはArcTapだけである場合のみ使用することをおすすめします。HoldやArcでは長押し判定開始直後にノーツが判定線から離れていく形になります。
### Ghost
| プロパティ名 | 設定項目 |
| -------- | -------- |
| Tap | ON / OFF ★ |
| Hold | ON / OFF ★ |
| ArcTap | ON / OFF ★ |
| Arc | ON / OFF ★ |
| (ONにされたノーツ種別に対して…) | イージングタイプ ★ |
そのGroup内の指定された種類のノーツをゴーストノーツに変化させます。
ゴースト化させるノーツ種類のスイッチをONにすることで、その種類のノーツが全てゴーストノーツになります。
イージングタイプを指定することで、ゴースト化されたノーツが透明になっていく速度に緩急を加えることができます。
## affファイル内での構文(上級者向け)
ArcadeZero YutMod 4.1(以降)の独自のTiming Groupプロパティは、affファイル内では以下の通りの構文となっています。
### Angle / Z Ease
```
timinggroup(anglex60_anglexease=OutSine){};
timinggroup(anglex30_angley30_anglexease=b_angleyease=OutQuad_zease=InCirc){};
```
### Ghost
```
timinggroup(ghost=tap){};
timinggroup(ghost=tap&hold&sky&arc_ghostease=InOutExpo){};
```
## おまけ:Enwidenイベントの拡張
SceneControlのenwidencameraとenwidenlanesでも、上記と同様のイージングを加えることができます!
また、enwidencameraでは、カメラの移動位置を小数値で自由に指定できるようになりました。(※ ★オリジナル仕様)
enwidenlanesでも、拡張レーンの出現位置を0~1の範囲の小数値で自由に指定できるようになりました。(※ ★オリジナル仕様)
構文は以下の通りです。
```
scenecontrol(2000,enwindencamera,1000.00,2.00,si);
scenecontrol(2000,enwindenlanes,1000.00,1.00,OutElastic);
scenecontrol(4000,enwindencamera,1000.00,-0.50,b);
scenecontrol(4000,enwindenlanes,1000.00,0.50,InQuad);
```