ごいしはまぐり

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

ティラノスクリプト

ティラノスクリプト備忘録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


関連記事

ティラノスクリプト備忘録38
背景を変えるときに黒背景をはさむべきかどうか

 背景を変えるときに黒背景を挟んで背景を変えるか、それともそのまま背景を変えるかで印象はかなり変わります。  まずは、「思ひ出のラプソディ」より、コードと動画をご覧ください。 [font italic ...

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

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

ティラノスクリプト備忘録19
タイマー JavaScript

 今回はティラノスクリプト上でJavaScriptを使ってタイマーを作ってみます! メッセージウィンドウ上でカウントダウン表示を行い、0になったタイミングでジャンプするようにします。 まずは動画と実際 ...

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

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

ティラノスクリプト備忘録22
タイマーを利用する

 以前、JavaScriptでタイマーを表示させる実験を行いましたが、今回は実際にゲームとして動作するように組込を行います。 以下の例は時間制限ありのボタンクリックになります。 指定した時間以内に入力 ...

アーカイブ