投稿記事

ティラノスクリプトの記事 (4)

ティラノビルダーでメッセージウィンドウの手前に立ち絵を出すを試してみた。

参考記事
https://www.wicurio.com/tyrano/

ティラノビルダーで普通に触って出てくるメッセージウィンドウはレイヤーが"message0"らしい。(伝聞系。)
で、メッセージウィンドウの手前に立ち絵を出したい場合は"message1"を定義すれば出来そうだ。

やってみた。

①シナリオでmacro.ksを作って以下のティラノスクリプトを記述する。(macro.ksの最初にラベルstartを入れる)

[macro name="m0"] [current layer="message0"]
[er] [endmacro]

[macro name="m1"] [current layer="message1"]
[er] [font color="0x99ffcc" shadow="0x000000"]
[endmacro]

②シナリオの最初でティラノスクリプトでmacro.ksを呼び出す

[call storage=macro.ks target=*start]

③キャラクター管理でキャラクター名と画像を登録。
この時名前を英文字以外(日本語)にするとその後ティラノスクリプトで反応しなかったりしてめんどくさいので英文字で。

④キャラ立ち絵をティラノスクリプトで呼び出す

[chara_show name="sora" layer="message1" zindex=1005 time="1000" wait="true" storage="chara/1/sora1.png" width="999" height="1375" left="10" top="-100" reflect="false" ]

※layer="message1"で指定してzindexで手前か奥かを指定してるっぽい。


シケモクテクノロジー様
https://shikemokumk.hateblo.jp/entry/2016/01/17/193217

によると、
z-indexの値が

メッセージ枠が100 文字の部分が1001

らしいので、

メッセージウィンドウや文字より前に出したい場合は1005、メッセージウィンドウと文字の間にして文字を前に出したい場合は900位がよいらしい。

zindex=1005の場合

zindex=900の場合

⑤退場させたい

ティラノスクリプトで記述
[chara_hide name="sora" layer="message1" time="1000" wait="true" pos_mode="true" ]

※layerを指定しないと消えないので注意……。

とりあえず立ち絵をメッセージウィンドウの前に出したり消したりしてみただけ。
では今回はこれで。

フォロワー以上限定無料

ただのつぶやき。

無料

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

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

ビルダー用メニュー画面内のボタン位置を調整する方法の備忘録。

今回も突発で、ビルダー用メニュー画面内のボタン位置を調整する方法の備忘録行きます。

ビルダーの機能では、デフォルトのメニューが入っており、任意のメニューボタンを非表示にすることが出来ます。

その時ボタンの位置は自動で調整が入りますが、ボタン配置が偏って見えて気に入らない……という場合も。

少し偏って見える?

ビルダーの機能では細かい調整が出来ないようなので、今回はhtmlをエディタで開いて触って、直接ボタンの位置を指定してみます。

※自分はhtmlを触るのに「Visual Studio Code」という無料のソースコードエディタを使いました。

エディタDLページ↓
https://code.visualstudio.com/Download

①ビルダーにて
myproject>作品名>tyrano>html内のmenu.html
を探して、menu.htmlをエディタで開きます。

エディタで見た画面。

現在ビルダーの機能でウィンドウクローズ(テキスト枠消去)が消えている状態になります。
そして、オブジェクトのサイズだけが指定されている状態です。

以下はセーブの部分の記述です。

<div class="menu_item ">

		<a href="javascript:void(0)"><img class="menu_save" src="tyrano/images/system/menu_button_save.png" style="width: 520px;"></a>
		</div>

ここに、位置の指定を書き加えます。

②styleに「position: absolute」を入れて、「オブジェクトの位置を絶対値で指定」します。
高さはtop、横位置はleft、単位はpxでボタンの位置を指定します。

		<div class="menu_item" style="position: absolute;top: 100px;left: 0px;width: 100%;">
		<a href="javascript:void(0)"><img class="menu_save" src="tyrano/images/system/menu_button_save.png" style="width: 520px;"></a>
		</div>

今回は横位置を全て0.縦位置をそれぞれsave100px,load220px,menu_skip340px,menu_back_title460pxで指定しました。
サイズは100%です。

表示してみるとこんな感じに。

バランス良くなったでしょうか。位置の数値は好みで調整して下さい。
応用で戻るボタン等も任意の場所に移動出来ますが……今回はここまで。

ではまたしても駆け足でしたが、グッドラック!

フォロワー以上限定無料

絵が進まない。

無料

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

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

ビルダーでルート制限する方法の備忘録。(複数条件分岐応用編)

今回は突発でビルダーでのルート制限する方法の備忘録行きます。

このエンドを見ないと特定のエンドやルートが見られない、というやつですね。
前回の「ティラノビルダーで複数の条件を満たした場合のみ分岐させる方法の備忘録。」の応用で、ティラノスクリプトの力を借りて複数の条件を設定します。
[if]文のテンプレートと条件の書き方は前回の備忘録を参考にして下さい。

前回の参考記事↓
https://ci-en.net/creator/16848/article/797159

今回条件は以下の三つにします。

「end1、end2、end3、end4全てを見た場合にルートCに分岐する」
「end1、end2のみを見た場合にはルートBに分岐する」
「上記の条件を満たしていない場合はルートAに分岐する」

逆に言うと最初はルートAにしか入れず、end1、end2を見たらルートBに、end1、end2、end3、end4全てを見た場合にルートCに入れるという場合です。

早速行ってみましょう。

①ビルダー左上のプロジェクト>変数管理でend1、end2、end3、end4を作り、「システム変数」にチェックを入れます。

②分岐を解りやすくするため、シナリオ追加で各ルートシナリオ用のrootA、rootB、rootCと、各エンドシナリオ用のend1、end2、end3、end4を作ります。
(最初からあるscene1.ksは共通ルートとして扱います)

③シナリオ内のend1、end2、end3、end4にたどり着いた所で、それぞれ変数設定で変数がtrueになるように指定します。
 そして今回はend後はタイトル画面にジャンプする指定にします。

④rootA、rootB、rootCの最初にフラグ「start」を追加します。(ジャンプ先の指定用。シナリオの最初に飛ばす場合はなくても動く)

⑤ルートの途中、分岐を発生させたい場所(この場合共通ルートであるscene1.ksの最後)に次のティラノスクリプトを記述します。

ティラノスクリプトで記述

[if exp="sf.end1 =='true'&& sf.end2 =='true'&& sf.end3 =='true'&& sf.end4 =='true'"]

[jump  storage="rootC.ks"  target="*start"  ]

[elsif if exp="sf.end1 =='true'&& sf.end2 =='true'"]

[jump  storage="rootB.ks"  target="*start"  ]

[else]

[jump  storage="rootA.ks"  target="*start"  ]

[endif]

⑥rootAからend1.ksとend2.ksへは分岐ボタンで行けるように設定します。
 同様に、rootBからend3.ksとend4.ksへは分岐ボタンで行けるように設定します。

これでプレビューしてみましょう。

end1、end2を見た状態になると……。

rootBに分岐しました。

4つのendを見た状態でもう一度「はじめから」を選ぶと……。

成功!
無事rootCに入れました。

今回は駆け足でしたが、ここまで。

フォロワー以上限定無料

突発で書いた一言。

無料

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

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

ティラノビルダーで複数の条件を満たした場合のみ分岐させる方法の備忘録。

今回は、ティラノビルダーで複数の条件を満たした場合のみ分岐させる方法の備忘録になります。

元々ビルダーのジャンプ機能では、「実行条件を指定する」にチェックを入れると発動条件を指定出来ます。

が。

ビルダーでは、一度に一つの条件しか指定出来ません。
ので、
「全てのエンディングを見た場合のみ分岐や表示を変える」場合とかだと、
「end1を見た場合に次のフラグに飛ばして、その後end2を見たかどうか判定してさらに飛ばして……」
とかやると、end数が数十もある場合、コンプリート後にタイトル画面を変えるとか、かなり力業で面倒くさくなります。

逆に見ていない場合に通常のタイトル画面に飛ばす設定にして、全て引っかからない場合全て見たということで、コンプリート後の画面を出すことも出来ますが……。

ここではティラノスクリプトの力を借りて楽をしようと思います。

まずはコピペ用にテンプレートを書いておきます。
今回は[if](もし~の場合)を使ってみます。

テンプレ開始

[if exp="変数名と条件"]

[ここに当てはまる場合の処理を書く]

[elsif if exp="変数名と条件"]

[1番目の条件に当てはまっていなかった場合で、また条件を指定したい場合は[elsif]で指定する]

[else]

[それ以外の場合の処理を書く]

[endif]

テンプレ終わり

で、次に条件の書き方。

条件

A && B and条件。AとBの両方にあてはまっているとき
A || B or条件。AとBのどちらかがあてはまっているとき

A == B  AとBは等しいとき
A != B  AとBが等しくないとき
A > B  AがBよりも大きいとき
A >= B  AがB以上のとき(Bも含んだ値)
A < B  AがBよりも小さいとき
A <= B  AがB以下のとき(Bも含んだ値)

では、実際に「end1、end2、end3、end4全てを見た場合に分岐する」をやってみましょう。

①ビルダー左上のプロジェクト>変数管理でend1、end2、end3、end4を作り、「システム変数」にチェックを入れます。


②シナリオ内のend1、end2、end3、end4を通過する所でそれぞれ変数設定で変数がtrueになるように指定します。

③それぞれのend後(分岐させたい場面)に、「end1、end2、end3、end4全てを見た場合に分岐する」ティラノスクリプトを記述します。


[if exp="sf.end1 =='true'&& sf.end2 =='true'&& sf.end3 =='true'&& sf.end4 =='true'"]

[jump  storage="secret.ks"  target="*start"  ]

[else]

[jump  storage="title_screen.ks"  target=""  ]

[endif]


※個人的注意事項
条件全体は「"」(クォーテーション)で囲みますが、
値であるtrueそのものも「'」(シングルクォーテーション)で囲む必要があります!
'true'

AとBが等しいときは「==」とイコールを二つ書くこと。「=」ではないので注意。

プレビューしてみると……。

分岐した画面が表示されました!(画面は開発中のものです)

出来た!!

ティラノスクリプトは覚えるのが(ビルダー民には)少し取っつきにくいかもですが、覚えると楽ではあるので、役に立てば幸いです。

フォロワー以上限定無料

凍結祭りについてと、開発中タイトル画像。

無料

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

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

月別アーカイブ

限定特典から探す

記事を検索