ごいしはまぐり

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

ティラノスクリプト

ティラノスクリプト備忘録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 セーブスロット数の変更

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

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

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

ティラノスクリプト備忘録42
ボイス再生マクロ

 前回に引き続き今回も実用的なマクロを紹介します。 紹介するのは「ボイス再生のためのマクロ」です。 ボイスはただ[playse]タグを使うのではなく、いろいろなタグを組み合わせてようやく実用的なものに ...

ティラノスクリプト備忘録46
文字のセンタリング

 こんにちは!ぽんかです。 今回はメッセージウィンドウに表示される文字のセンタリング方法についてです。 自作品「思ひ出のラプソディ」ではメッセージ表示領域に対して中央揃えと瞬間表示を使うことで映画字幕 ...

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

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

アーカイブ