ごいしはまぐり

ノベルゲーム制作サークル「ごいしはまぐり」紹介の他、映画紹介やティラノスクリプト等、メンバーの記事を寄せ集めています。

ティラノスクリプト

ティラノスクリプト備忘録16
セーブデータ・変数の初期化

投稿日:2019年6月16日 更新日:


 みなさまこんにちは!ぽんかです。

以前、乱数や変数による条件分岐、変数への入力についてご説明しましたが、今回はセーブデータと変数の初期化についてです。

 中でもシステム変数は不可逆的で一度保存してしまったらずーっと残り続けるのでユーザー側でリセットしたいときは再インストール…なんてことになりかねません。

 ユーザー側でゲームをエンディングリストもまとめて全てリセットする自由はあってもいいのでは…と思ったり、
 故意的に「おきのどくながら ぼうけんのしょ1ばんは きえてしまいました。」のような理不尽な演出もありなんじゃないかと思います。

それでは変数の初期化から説明していきます!



変数を削除する


 「delete 変数名」で指定の変数を削除することが出来ます。

[eval exp="delete.f.hensu"]


 上記のコードはf.hensuを削除します。
 [clearvar]ではゲーム変数を、[clearsysvar]ではシステム変数を全消去です。
 ゲーム変数はセーブデータ毎に保存される変数、システム変数はゲーム全体で保存される変数です。

セーブデータも含めて全て削除する

[iscript]
localStorage.removeItem(TG.config.projectID + "_tyrano_data")
[endscript]


 上記コードはブラウザ版で使えます。セーブデータ毎(projectIDを置換して下さい)に全てを削除します。
projectIDは data\system\Config.tjs の26行目くらいで設定できます。

…タイトルは設定してもprojectIDは規定値のまま、という方も多いのでは、と思います。

 規定値のままだと上記コードを利用してセーブデータも変数も他のゲームによって削除されてしまう、ということもあり得ます。
(全てのprojectIDのセーブデータもろとも削除するコードもあるのですが、敢えてここでは記述しません)

 必ずprojectIDは作品毎に決めましょう!

 というか、projectIDを個別に決めないとセーブがごちゃまぜ状態になります…


今回はこの辺で!
それではまた♪



ごいしはまぐりではブラウザでプレイできるノベルゲームも制作しております。
作品一覧はこちらです。

-ティラノスクリプト

執筆者:


comment

メールアドレスが公開されることはありません。

CAPTCHA


関連記事

ティラノスクリプト備忘録9 セーブスロット数の変更

ティラノスクリプトのセーブスロットの数をデフォルトから減らしたり多くしたりしたいことはあるのではないでしょうか。特に長編で分岐が沢山ある作品の場合はセーブスロットが沢山ほしい!なんてプレイヤーもいらっ ...

ティラノスクリプト備忘録4 JavaScriptで乱数

ティラノスクリプト備忘録第4弾は「乱数」。サイコロとか、ダメージ計算、その他色々な運要素を盛り込んだゲームには必須といっても過言ではありません。今回はJavaScriptを使って整数の乱数を発生させま ...

ティラノスクリプト備忘録11 複数の効果音を同時に出す

ティラノスクリプト備忘録第11弾は複数の効果音を同時に出す方法です。例えばキャラのボイスと”キラーン”というような効果音を同時に出したいときに使います。デフォルトだと前になっていた効果音が止まって新し ...

ティラノスクリプト備忘録20
ループ処理

 備忘録20回目はループ処理についてご説明します。ティラノスクリプトにはfor文のようなものが無いので、ラベルとジャンプ、ifで代用します。 具体的なコードと動画は以下の通りです。 ループ処理 ループ ...

ティラノスクリプト備忘録40
マクロに値を渡す

 今回はティラノスクリプト[macro]タグで変数を渡す方法についてご説明します。 [macro]タグは繰り返し同じようなタグの組み合わせを使用しているときに使うとコードが短くすることが出来るので制作 ...

アーカイブ