見出し画像

ティラノスタジオのエラー

こんなエラー吐かれたよ
のときの対処したやつ


Uncaught TypeError: Cannot read property 'find' of undefined

発生状況:作成したマクロを別のゲームに移植したとき
原因:config.tjsの設定違い。

例えば、message_layer2を呼び出す処理がある場合、

config.tjs

;numMessageLayers = 2
↓
;numMessageLayers = 3

にする。初期設定の2だとmessage_layer0と1の2種のみ。

TypeError: Cannot read property '0' of undefined

発生状況:numberの変数を文字列にした
原因:検索物が一致しない

例えばcsvの一覧表から一致する行を取り出すというとき、その変数がそのcsvから取り出す関数の要素が存在しない場合など。
その場合、存在しない場合の処理を付け加えるか、存在するものに変換する。
私の例だと「1234」は項目にあるが、「3421」は項目にない。
文字列でどの並びでも問題ないのなら、小さい順に並べ替えるようにする。

TypeError: 【関数】 is not a function

発生状況:上の関数を入力した時
原因1:スペルミス

× f.dice.macth
〇 f.dice.match

effectパラメーターでスペルミスをすると

エラー処理がループする。

原因2:ティラノスクリプトが対応していない
例えばeffect="def"は対応しておらず(220109時)ループエラーを起こす。


SyntaxError: Unexpected string

発生状況:変数同士の四則演算の時
原因:スペルミス(式として成立していない)

;数字を文字列にして足した後数字に戻す(1+1=11)
@eval exp="f.dice=(tf.rank1''+tf.rank2+''+tf.rank3+'')*1"
↓
@eval exp="f.dice=(tf.rank1 + ''+tf.rank2+''+tf.rank3+'')*1"

@dialog text="&f.dice."@dialog text="&f.dice"
;.がいらない


マクロが閉じていません

発生状況:[iscript]でJS関数作ってるとき
原因:記述ミス

[endmacro]がない場合も発生するが今回は別。
この〇行目は[endscript]の位置を指すので、その中のどれかがエラーを起こしている。
例えば、登録していない変数名とか。
〇route ×round 
例えば引用する配列の、作っていないインデックスを参照していたりとか。


Cannot read property 'remove' of undefined

発生状況:delete直後
原因:セーブデータがないのにそのデータを再生しようとしている

プレビュー同期のチェックを外せばOK。


この記事が気に入ったらサポートをしてみませんか?