システム変数/ティラノ の変更点
Top > システム変数 > ティラノ
- 追加された行はこの色です。
- 削除された行はこの色です。
- システム変数/ティラノ へ行く。
TITLE:変数について &color(Red){・参考用に記載している■変数名■は■も含めて任意の変数名に書き換えること。}; ・変数の書き方は ゲーム変数→f.変数名 システム変数→sf.変数名 一時変数→tf.変数名 #br と記載。 頭に必ず「.f」か「.sf」か「.tf」を付けること。 「.tf」はまぁ無いと思われる。 *変数名 [#qe853aaa] ティラノスクリプトのページには ・変数名には半角英数と全角文字、_ (アンダーバー) を使うことができる ・変数名の最初に数値がくることはできない #br という記載がある。 上記の通り、全角文字でも私はバグらなかったが、不安な場合は半角英数のみで変数を作った方が無難。 ティラノービルダーバグ多いみたいなんで・・・。 *変数の初期値 [#o61f3f57] ゲーム変数(f)、システム変数(sf)は初期値は「0」ではなく「undefined」というものが入ってる状態。 **ゲーム変数(f) [#tc0840c3] 変数を新規作成時に初期値を設定できる為、「0」と入力して作っておくのが無難。 **システム変数(sf) [#y76e8f4a] 変数を新規作成する際、ゲーム変数(f)とは違って初期値を設定することができない。 その為最初(作りたてほやほや時)は数字ではなく、「undefined」が入った状態となっている。 *変数設定(乱数) [#f4de76b3] バージョンによるくさいな・・・。 ver1.8.5→「2」~「3」の場合、「2」しか出てこない ver1.8.7→「2」~「3」の場合、「2」「3」が出てくる。(上限、下限の数値も含まれる) #br 昔のは完全バグってて計算式を入れないとダメだったようですが、バージョンアップで修正されてるみたいです。 とはいえどこまで正しいかなんとも不安なので、[[この辺り>http://denkimiti.blog.shinobi.jp/%E3%82%B2%E3%83%BC%E3%83%A0%E5%88%B6%E4%BD%9C%E3%83%BB%E3%83%A9%E3%82%A4%E3%83%96%EF%BC%92%EF%BC%A4/%E3%83%86%E3%82%A3%E3%83%A9%E3%83%8E%E3%83%93%E3%83%AB%E3%83%80%E3%83%BC%E3%80%82%E4%B9%B1%E6%95%B0%E8%A8%AD%E5%AE%9A%E3%81%AE%E8%AA%A4%E5%B7%AE%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6%E3%80%82]]のを見て自分で計算式入れた方がいいかも。 私はめんどくさがりなのと、今のところ問題なさそうなのでとりあえず現状維持で「変数設定」使う。 *システム変数に0を代入する [#w437b616] システム変数は最初(ゲーム本編に入る前)にスクリプトでシステム変数の初期値を設定しておく必要がある。 でないと、ティラノビルダーのデバッグでは通常に動くが、ティラノライダーでのデバッグやエクスポートした際にシステム変数が稼働しない。 #br メニュー内の「スクリプト」>「ティラノスクリプト」を選び、下記を入力する事でsf変数の初期値を設定する事が可能。 #br #br [tb_start_tyrano_code] [if exp="sf.■変数名1■==null"] [eval exp="sf.■変数名1■=0"] [endif] [if exp="sf.■変数名2■==null"] [eval exp="sf.■変数名2■=0"] [endif] [_tb_end_tyrano_code] #br #br ※■変数名■(■も含めて)をシステム変数名に変更する。 #br 「システム変数が存在しない場合(undefined)は初期値を与えて宣言し、存在する場合(0とか1とか)は何もしない」 という設定をこれで施す。 #br 上記初期設定を入れれば、通常はメニューから「変数設定」で数字なりなんなり代入すれば良。 #br &ref(title_screen1.jpg); &ref(title_screen2.jpg); ↑xx_0というページを初期化ページにしている。 #br xx_0内容(初期化ページ) &ref(変数0.jpg); ※ティラノスクリプトの全容見えてないけど、 #br [tb_start_tyrano_code] [if exp="sf.sf_test1==null"] [eval exp="sf.sf_test1=0"] [endif] [if exp="sf.sf_test2==null"] [eval exp="sf.sf_test2=0"] [endif] #br こうなっている。 下の空白の「ティラノスクリプト」は自動で出てくるので気にしなくていい。 #br #br 参考:[[外部リンク>http://blog.patio.work/archives/66#toc10]] *システム変数を初期値に戻す [#h204b4de] 0ではなく「undefined」に戻す場合は下記を コンポーネント>スクリプト>ティラノスクリプトに入れれば良い。 #br [clearsysvar] #br 一つではなく、すべてのシステム変数を初期化する。 ※くどいが「0」にするのではなく、初期化「undefined」にするものなので、デバッグ時にまっさらな状態でやりたいとかゲームをパッケージングする前とかそういう時しか今のところ使わないかな・・・。 *全ての変数を初期化 [#y8d4c99f] [clearvar] #br 試してないけどシステム変数、ゲーム変数、一時変数すべて? #br *一つだけ初期化 [#y0285fef] こちらはスクリプト<T>に入力。 特定の変数だけって場合はdelete f.flag1;に続いて変数を書いていけばいいかと。 0ではなく「undefined」 #br [iscript] delete ■変数名■; [endscript] #br undefinedのものに特定の数値を入れたい場合は #br if(■変数名■ ==undefined){ ■変数名■ = 0; } #br #br 参考ページ:[[外部リンク>https://tyranobuilder.wiki.fc2.com/wiki/%E5%A4%89%E6%95%B0%E7%AE%A1%E7%90%86]]