This page contains an outdated translation of the original content. Please check the
English version for the most accurate information (and consider updating the translation if you are able to help out)!
An example of scripting in .osb.
ガイドの残りの.osb もしくは .osuファイルの[Events]
の下に置かれるコードについて解説をしています。osbに記述されたコマンドは全ての難易度で、osuファイルに記述されたものはその難易度のみで動作します。
Editorのスクリーンサイズ。緑はスクリーンのサイズで赤はプレイエリア。
*Editorの座標:
スクリーン; x: 0 - 640, y: 0 - 480
プレイエリア; x: 60 - 570, y: 55 - 440
重なりに関してのルール
オブジェクトは異なるレイヤーで重なり、上から順に描写されます(例えばForegroundのレイヤーのオブジェクトはBackground、Fail、Passのレイヤーよりも常に手前で見ることができます。)
同じレイヤーでオブジェクトがいくつかある場合、上から指定されている順に表示されます。
osbファイルからのコマンドがosuファイルの終わりにosbファイルからのコマンドはosuファイルのコードより優先されます。
ただの動画の代わりにSBを背景として使用することで、ゲームプレイでの状態に合わせて変化する機能 です。osu!はプレイヤーのその時の状態に応じ、Fail/Passのレイヤーが表示されます。これらの状態は"Fail状態"と"Pass状態"と呼ばれます。
最初より前のプレイタイムの状態 (要するにサークル/スライダー/スピナーの前で、 MP3/OGGの前とは限りません)**
プレイ中の状態 ("ドレインタイム"、プレイヤーがドレインによって減っていき、クリックがされると思われるポイント)**
休憩時の状態 (プレイタイムを区切っている間)**
最後のプレイタイム後の状態で、ビートマップに最低1つのBreakがあった場合。
最後のプレイタイム終了後の状態で、Breakがない場合
CTRL+Cでタイムスタンプをコピーすることができます。
ビートマップのメインのMP3/OGGはミリセカンド(1000ms = 1s)単位で設定可能で、イントロ前の負の値もそれに含まれます。
SBのタイムはビートマップ自体のタイミングに依存しません(具体的には1分間に何回Beatを刻むかどうかなど)。なのでSBを作る前にタイミングをある程度良いものとし、後での調節のための労力を割くことがないようにしてください。
SBは曲の長さに制限されることがありません。曲が始まる(イントロ)前でマイナスの値を使うことでエフェクトを入れることも可能ですし、MP3/OGGが終わった(アウトロ)としても伸ばしてエフェクトを入れることができます。
ロードされた時、ビートマップは最も古いイベントか0のタイムのいずれかの早い方から開始されます。
ゲーム内で最後のイベントが終了すると、リザルト画面へできるだけ早く移動するようになりますが、場合によってはクリック、もしくはスペースでスキップをする必要があります。
Designタブを開いている時、表示されている現在のタイムをCtrl+Cをすることで単位ミリセカンドでクリップボードにコピーすることができます。
シングルラインのCスタイルのコメントを入れることができますが、ゲーム内のEditorで保存をすればそれは消えてしまいます。デフォルトでは4つのレイヤーにコマンドを分けることが勧められています。
// This is a comment.
C/C++/C#/Javaと異なり、有効なコマンドの後ろにこのコマンドを入れることはできず、またブロックコメントをすることもできません。