Hermes TrisClistos 2021/07/01 22:45

ティラノスクリプトのマクロ機能を使ってみる / デリヘル純愛ゲーム(仮)制作日誌

体調を崩して、半月も開発が停滞しました。きょうから再開。

スクリプト記述の簡略化。これをやりたい。ティラノスクリプトの「マクロ」や「サブルーチン」で実現できそうだが、いまいち具体的な使い方がわかりませんでした。今までは。

公式解説を眺めながら、なんとなく使ってみました。

サブルーチンとマクロ-使い方&チュートリアル - ティラノスクリプト
https://tyrano.jp/usage/tech/macro

マクロとは

ティラノスクリプトに備わっている「既存の命令」を組み合わせて、「新しい命令」を作ることができる……という理解をしています。とりあえず。

[macro name=mornigLeftSlide]
;朝背景にスライド
[backlay]
[bg storage=1280house_room_weekly_apartment_a.jpg time=500 wait=false method=slideInLeft]
[trans time=0 layer=0]
[wt]
[endmacro]

[macro name=wednesday]
;「曜日」表示の変更
[eval exp="f.youbi='水曜日'"]
[backlay]
[ptext page=back text="&f.youbi" layer=0 size=40 x=200 y=55 color=0xffffff face="sans-serif" name="youbi" overwrite=true]
[trans time=0 layer=0]
[wt]
[endmacro]

[macro name=turnStartMessage]
;ターン開始メッセージ
[emb exp="f.month"]・[emb exp="f.week"]・[emb exp="f.youbi"]です。[p]
[endmacro]

mornigLeftSlide …「朝」背景を「左スライド表示」するユーザー定義の命令
wednesday…「曜日」変数に「水曜日」を代入する命令
turnStartMessage…ターン開始を報せる定型メッセージを表示する命令

この3つのマクロを設定することによって、ターン遷移に必要なスクリプトが簡潔になります。

;◆7月・第1週・水曜日
[mornigLeftSlide]
[wednesday]
[turnStartMessage]

さらに、その他いろいろの機能をマクロ化すると……1ターン分のスクリプト記述は下記のように省略することが可能です。

;◆7月・第1週・月曜日
[eveningLeftSlide]
[month7]
[weekfirst]
[monday]
[baseDayMoneyStatus]
[turnStartMessage]
[dayActionSelect]
[dayEndMessage]

こんな感じで「スクリプト全体の見通しが良くなる」というわけです。

今回の「純愛デリヘルゲーム」は、月水金✕4週間✕12ヶ月=144ターンです。
馬鹿正直にスクリプトを書いていたら、修正するだけでも膨大な労力を要します。

マクロ化してスクリプト全体の見通しを良くすることは開発効率に関わります。あらゆる機能を積極的にマクロ化していきたいです。

サブルーチンについては、いずれ。まだよくわかっていません。

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

月別アーカイブ

限定特典から探す

記事を検索