AIRNovel更新:プレイデータを暗号化ファイルで保存

●リリース Ansan_sdkAndroidChromeOSiPadiPhone
2.63
* bug:履歴画面、クリックでそのページから再開するマクロでプレイを長く続けるとシステム動作が緩慢になる不具合修正(プレイデータを暗号化ファイルとして保存した)
* add:[save][load][copybookmark][erasebookmark]にてプレイデータを暗号化ファイルとして保存・読込・操作する機能を追加(AIRのみ)
* bug:マクロ[for_call]がi以外の変数を使用時に正しく動作しない不具合修正
* add:[export]でpath属性に「(フォルダ名)/*」指定追加。フォルダ内全てのファイルを含める(サブフォルダ再帰しない)

そんなつもりはないのに不具合対応してたら次々新機能が……

「プレイデータを暗号化ファイルとして保存」する機能はFlashで使えず、AdobeAIRのみですし、
「履歴画面、クリックでそのページから再開するマクロ」を使わなければさほど気にならないです。
が、SharedObjectの肥大を抑え、システム動作の緩慢化を防ぐ効果があるので、
今後は推奨と云うことで。

ver2.62以前で(SharedObjectに)セーブしたデータを、
ver2.63以降([save]タグ使用箇所にpath属性付けた)でも読み込めます。
その際はセーブし直すと暗号化ファイルとして保存しますが。

「櫻の樹の下には」サンプルで再開情報はplace=99999に保存していますが、
それは頻繁に更新するのでSharedObjectのまま(pathを指定しない)にしてます。
スポンサーサイト

AIRNovel更新:履歴画面、台詞クリックで音声再生・表示頁から再開

●リリース Ansan_sdkAndroidChromeOSiPadiPhone
2.62
* add:履歴画面、台詞クリックで再度音声再生するマクロ追加。タグで台詞を囲む。
    例)[h_voice]「はい」[end_h_voice]@
* add:履歴画面、クリックでそのページから再開するマクロ追加。
    使用するにはsub.anで幾つかコメントアウトなどが必要
* add:[let_as]のキーボード指定を追加(command、control)
* chg:[let_as]キーボード指定を変更(esc→escape)
* add:[er]に履歴を改ページするか指定するrec_page_break属性(default=true)
* add:[graph]にデフォルトサイズ指定(width、height)
* chg:[graph]の内部テキスト表現を変更(jsonに)
    旧… | 《grp||breakline》
    新… | 《grp||{"pic":"breakline"}》
* chg:[copybookmark][erasebookmark][load][save]のplace属性を数値から文字型に
* add:履歴画面プラグインplgHistoryにページ番号を返す命令追加。
    [history_let_page_count]……全ページ数page_countは自然数。
    [history_let_page]……………現在表示ページpageは最古が0(初期値はpage_count-1)

広範囲に更新があります。履歴画面プラグインとか久々触りました。

履歴画面に機能を二つ追加。テクニック的には履歴テキストに内部テキスト表現(『| 《link|~》』みたいな)で[link]を埋め込んだり、その時点の情報も引数として履歴テキストに埋め込んだりしてます。

「履歴画面、クリックでそのページから再開する」機能は中々お気に入り。
既知の問題:再開→その画面の履歴に「再開リンク」が表示されない、という動作があります。

AIRNovel更新:機能追加と統廃合、キーやマウス状態取得方法追加

●リリース Ansan_sdkAndroidChromeOSiPadiPhone
2.61
* add:escキーを押して起動すると再開しない機能追加(マクロ[sys_resume_load]変更)
* add:ホイールボタンクリックでも読み進めが出来るように(AIRのみ)
* add:[let_as](システム情報取得)を追加。キーボード押下状態(esc、end)マウス状態(ホイールボタン)などを変数にセットする。
* del:[let_date_time](UTC経過時間)、[let_timer](VM起動経過時間)を削除、[let_as]に統合。

無くなったタグがありますが、新規追加タグ[let_as]に機能が吸収されています。

また前回終了ポイントから再開する機能がマクロレベルで実現されていましたが、今回の追加機能を使用し、「起動時にescキー押しっぱなしで、再開せずタイトル画面から始める」ようになります。
変更マクロはsub.anの[sys_resume_load]定義部分のみ。


新機能はこんな感じでお試しできます。
以下を実行する瞬間、escなどを押しっぱなしにしたり押さなかったりすると値表示が変化します。

[let_as name="ise" text="an.key.end"]
[trace text=&ise]
[let_as name="ise" text="an.key.esc"]
[trace text=&ise]
[let_as name="ise" text="an.mouse.middle"]
[trace text=&ise]
[let_as name="ise" text="new Date().getTime()"]
[trace text=&ise]
[let_as name="ise" text="flash.utils.getTimer()"]
[trace text=&ise]



以前メール(8月10日 8/10 23:48)でお問い合わせ頂いた

テキスト履歴表示の閉じる×アイコン(/menu/Icon_btnX.png)は、
変更を加えていないデフォルト状態でも表示されませんでした。


件ですが、勘違いしてました。
_history.anの24行に
cond="const.flash.system.Capabilities.playerType != 'Desktop'"
とありますように、デスクトップ(Win/Mac/Linux)では表示されません。
これは主にiPadやAndroidタブレット、Flashなどの「右クリックが効かない(イベントが取れない)」メディア向けにあり、押して履歴画面を閉じるためにあります。
最近ボケ気味(´ω⊂

【訂正更新】AIRNovel・設定画面プラグインについて

(公開:9/2 19時 訂正:9/14 20時)
AIRNovelサンプルの設定画面はほぼプラグインで製作されています。
よってプラグインマニュアルに使い方の概要を追加しました。


きっかけは(匿名希望)さんによる不具合への質問でした。

サンプルプロジェクトの「桜の樹の下には」の、
config.anprjの4行目・save_nsのname属性
com.fc2.blog112.ugainovel.4bd7195b-c3ed-48b8-80a2-58798be3d81b
を改変した際の件です。

テストとして、サンプルプロジェクトのzip解凍後、いずれのファイルも
変更することなく、config.anprjの4行目・save_nsのname属性から
"blog112."を削除


私の環境でしか起こらないのかな?と思うのですが、デフォルト
状態で確認してみても、「設定」の反映ができていないようです。
一度ゲームを終了して再起動しても、数値は記録しているものの、特に
なにも変わらないように見えます。
音量を0にするなど極端な設定をしてみても、音が流れる、という感じ
です。
お手数ですが、一度ご確認いただいてよろしいでしょうか?


 こちら、判りました。
 ので、失礼して記事にて御回答&情報共有したいと思います。


 _config.anの四行目 [loadplugin fn="_config"] にて読み込まれる _config.swf 内部でも、
com.fc2.blog112.ugainovel.4bd7195b-c3ed-48b8-80a2-58798be3d81b」という
指定(システム/_config_MXML/_config.mxml の237行目)が有りました。
これも変更(してコンパイル)する必要があります。

 自分で作っておいて忘れておりました(汗)

 _config.swfプラグインはスライダーやチェックボタンなど設定画面の大半をまとめて
提供しています。AIRNovelには本来存在しない、しかしFlashが持つ機能はこうやって
取り込んでいます。

 _config.swfプラグインはサンプルでは mxml 形式、とも云うべき方法で記述され、言語は
XML+ActionScriptと云う形です。
 他にも形式がありまして、同梱しています。_config_as/_config.as がそれです。
こちらをコンパイルして作った _config.swf もAIRNovelで使用できます。
(_config.anの80~91行目をコメントに従い変更してください)
 こちらのプラグインはconfig.anprjのsave_ns・name属性に合わせる設定は不要です

 _config.swfプラグイン製作方法が二つ(正確にはもう一つ、これはFlash CSが
必要なので割愛)あるのは、MXMLのほうがぱっと見の作りやすそうであること、
選択の余地を持たせるためです。(違います。後述します)二つの設定画面は微妙に部品が違っていたり、
(マニアックな話ですが)Flex由来のswfとFlash由来のswfという違いがあります。

(追記訂正)
MXMLタイプ(_config_MXML)とFlash CSタイプ(_config_fla)が、デスクトップなどで作り方を選択できるものです。ただし、Flash CSタイプはもちろんFlash CSが必要であり、全ての人が使える方法ではありませんね。
 Flash CSを使用しない・持っていない場合はMXMLタイプです。

 _config_asはswfファイルプラグインが動作できない環境(現在iOSのみ)向けの設定画面であり、その他のデスクトップやAndroidなどには使用しません


 どちらでもお好みで選んでください。


そしてここまで書いて気付いたのですが、あの設定はもしかしてフォント
と同じでAirアプリとしてパッケージにならないと反映されなかったり
しますでしょうか?
もしそうであれば、早とちりですねー……。


決してそんな事は無いですよー

こちらの問合せにふぁみべえ様が丁寧に答えてくださるおかげで、初めて
ながらもだんだんゲームのおおよそのひな形ができつつあります。
ありがとうございます。


こちらこそ有り難う御座います(´ω⊂
様々な方のご指摘で、改良が進んでます!

リンク修正しました。

操作方法とXNovel紹介のHTMLソースを置いておきます。とありますが、どうやらリンクが切れているようです…。htmlからも暫く離れている状況なのに、右も左もわからないところから無謀にも挑戦しようと目論んでいるので、ぜひ一度ソースを拝見したいです。お手すきのときにでも再アップお願いしますm(_ _)m


あ、古い記事なのでメンテしてなかったです~
リンク張っときました、どもです。挑戦がんばて!!
プロフィール

ふぁみべぇ

Author:ふぁみべぇ
 →@famibee
 →メアド(四角を@に)

カテゴリ
リンク
検索フォーム
最新記事
月別アーカイブ