ごいしはまぐり

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

ティラノスクリプト

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


関連記事

ティラノスクリプト備忘録10 背景切替タイプ見本(method)

今回は背景切り替えタイプの見本を動画にしました。bgタグのmethodでの違いが一目瞭然!是非、お役立て下さい♪ フェードイン:fadeInフェードインダウン:fadeInDownフェードインレフト: ...

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

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

ティラノスクリプト備忘録45
パスワード入力

 今回はパスワードの入力ボックスとボタンを表示して、入力ボックスの文字とパスワードが合っていれば先に進むというサンプルを作成しました。 まずは動画とコードをどうぞ。 ノベルゲーム制作におすすめの本   ...

ティラノスクリプト備忘録29
正規表現でタグ[]を消す

 こんにちは!今回は正規表現と置換を使ってタグを消します。 こちらのテクニックは例えばこんな時に便利です。 スクリプトを打ち始めたが…「もう一度シナリオの見直しをしたい」「ボイスを追加したくなった。依 ...

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

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

アーカイブ