インクルード講座でも始めようかと思っています。


お久しぶりです、某たわしです。
けるげれん氏はシナリオ、ものぐさ氏・魔沙氏はオリMIDIなど、それぞれ得意な分野で記事を作成されてると思います。
私はそこでシナリオに一味違った印象を与える事ができるインクルードの作成を手助けするような記事を書いていこうかなと考えています。


長くなったのでここらで折ります。


今は記事を紛失してしまいましたが、過去に変数・条件分岐・繰り返し処理の使い方講座を自分のページで行った事があります。
その時は少数ながら好評を得ました。
何か「これをやってほしい」というのがございましたら、コメントでもつけてくれるとありがたいところです。
……まあ、あまり期待されても高度な事はまだやれませんけど、ショップインクルや改造インクル、ステータス表示インクル等のわりと使用頻度が高めなものは随時作り方を解説していきたいと考えています。


具体的にはまず、用意する予備知識をヘルプより抜粋=>動作の流れのまとめ=>実際にどう作っていったらよいのか、といった感じで段階的にやっていくつもりです。


最後に、私の知る限りでのインクルード高速化テクニックの一つを。
例えば成長系インクルードを組んだ時に、サブルーチンを呼び出す場合があります。
その時にデータを受け渡すわけですが、Args()を頻繁に使うよりはサブルーチン内ローカル変数に一度格納してしまったほうが多少早くなるようです。
実際にテストに使ったルーチンがこれですが、ルーチン2のほうが若干速度が上昇しております。
では、今回はこの程度で筆を置きたいと思います。

#テストルーチン:Args(1)はパイロットIDを受け渡しています。

テストルーチン:
Local T1 T2

#ルーチン1
Local Num
T1 = GetTime()

Num = Args(1)
Num = Args(1)
Num = Args(1)
Num = Args(1)
Num = Args(1)
Num = Args(1)

T2 = GetTime()

Talk
$(T2 - T1)
End

Unset Num
#ルーチン2
T1 = GetTime()
Local PID Num
PID = Args(1)

Num = PID
Num = PID
Num = PID
Num = PID
Num = PID
Num = PID

T2 = GetTime()

Talk
$(T2 - T1)
End

Return