回想モードについての追記
回想モードの公式チュートリアルは http://tyrano.jp/adv/next/cg です。
まずはそちらをご覧ください。
CGモード・回想モードにもどる。
回想モードについての追記
回想モードのファイル
詳細をみる
scenario/replay.ksファイルです。
([cg]はありません のアラートが出たら(最新の)tyrano.ksも用意して下さい。普通にティラノスクリプト最新版を使っていればアラートは出ません)
リプレイボタン
詳細をみる
replay.ksにある
[replay_image_button name="rouka_scene" graphic="rouka.jpg" no_graphic="noise.jpg" x=60 y=100 width=160 height=140 folder="bgimage" ]
を追加して下さい。
例:[setreplay name="rouka_scene" 〜]
- name…setreplayで使用する際、同じnameを書いて下さい
nameによってどのシーンを呼び出すか紐付けられています。
../fgimage/ でもフォルダ指定できます
- graphic…回想シーンが見れる状態になった際に表示するボタン画像です。見れる状態にするには[setreplay]タグが書かれた回想シーン用のシナリオを[endreplay]まで実際に実行して下さい。
../fgimage/ でもフォルダ指定できます
- no_graphic…回想シーンが見れない状態の時に表示するボタン画像です。
- folder…使用するボタン画像があるフォルダー指定です。
buttonタグを使った時点で強制的に、フリーレイヤが表示状態になる。
表示を見えなくする場合は
[iscript]
$(".layer_free").css("opacity",0);
[endscript]
戻す場合は0を1に
ページを増やす
詳細をみる
作りは基本、CGモードと同じです。replay.ks に
*page_1
を増やし、
そのページの終わりは@jump target=common
にして下さい。
【次へ】のボタンを作成します。 targetは nextpageにして下さい。
[button]については、http://tyrano.jp/tag#button または、ボタン表示]を参照。
次へのボタンを「fixボタン」(常に表示 fix=true)にする場合は、nextpageに[clearstack]を置いてください。
スクリプトサンプルをみる
layer1は消さないほうがいいかも?
*replaypage
[cm]
;次 fix=trueにするかはお好みで@clearfixと[clearstack]を忘れずに
[button fix=true graphic="next.gif" target="*nextpage" x=820 y=100]
;前のページに戻る
[button fix=true graphic="retrun.gif" target="*backpage" x=820 y=200]
;タイトルに戻る fix=trueにするかはお好みで@clearfixと[clearstack]を忘れずに
[button fix=true graphic="back.png" target="*backtitle" x=870 y=20 ]
;デフォルトであるもの↓そのままで。
[iscript]
tf.target_page = "page_"+tf.page;
[endscript]
*replayview
*cgview
@jump target=&tf.target_page
*page_0
;1ページ目
[replay_image_button name="replay_nomalED_scene" graphic="nomalED.jpg" no_graphic="no_img.jpg" x=50 y=60 width=200 height=130 folder="bgimage"]
replay_image_button name="replay_goodED_scene" graphic="goodED.jpg" no_graphic="no_img.jpg" x=50 y=60 width=200 height=130 folder="bgimage"]
@jump target=common
*page_1
;2ページ目
[replay_image_button name="replay_nomalED_scene" graphic="nomalED.jpg" no_graphic="no_img.jpg" x=50 y=60 width=200 height=130 folder="bgimage"]
replay_image_button name="replay_goodED_scene" graphic="goodED.jpg" no_graphic="no_img.jpg" x=50 y=60 width=200 height=130 folder="bgimage"]
@jump target=common
*common
;@layopt layer=1 visible=true など 回想モード内での(ptext等)元に戻す表示をここに追記
[s]
*backtitle
[back storage="title.jpg" time=1]
[cm]
;[freeimage layer=1]他に表示物を付け足した場合消すこと
;@layopt layer=1 visible=true
;fixボタンを使用したら追記
@clearfix
[clearstack]
[iscript]
tf.flag_replay = false;
[endscript]
@jump storage=title.ks
*nextpage
[emb exp="tf.page++;"]
;[freeimage layer=2]
[clearstack]
@jump target="*replaypage"
*backpage
[emb exp="tf.page--;"]
;[freeimage layer=2]他に表示物を付け足した場合消すこと
[clearstack]
@jump target="*replaypage"
*clickcg
;[back storage="title.jpg" time=1]
[stopbgm]
[cm]
;[freeimage layer=2]他に表示物を付け足した場合消すことlayer1は消さないほうがいいかも
次へのボタンを消す
◆2ページ目以降は消す場合詳細をみる
[if exp="tf.page == 0"]
[button name=next fix=true graphic="next.gif" target="*nextpage" x=820 y=100]
;↑次へのボタンです
[else]
[iscript]
$('.next').remove();
[endscript]
;freeタグがあるバージョンはそれを使用
[endif]
[button name=next fix=true graphic="next.gif" target="*nextpage" x=820 y=100]
;↑次へのボタンです
[else]
[iscript]
$('.next').remove();
[endscript]
;freeタグがあるバージョンはそれを使用
[endif]
◆10ページ目以降は消す場合 数値は各自調整
詳細をみる
[if exp="tf.page >= 9"]
[iscript]
$('.next').remove();
[endscript]
;freeタグがあるバージョンはそれを使用
[else]
[button name=next fix=true graphic="next.gif" target="*nextpage" x=820 y=100]
;↑次へのボタンです
[endif]
[iscript]
$('.next').remove();
[endscript]
;freeタグがあるバージョンはそれを使用
[else]
[button name=next fix=true graphic="next.gif" target="*nextpage" x=820 y=100]
;↑次へのボタンです
[endif]
回想シーンの実行準備
詳細をみる
回想シーンを始めたいシナリオの始めに[setreplay]を使用して下さい。
このタグが書かれていないと回想モードのシナリオに戻らず、そのシナリオを実行し続けてしまいますので忘れずに。
[setreplay name="rouka_scene" storage="scene1.ks" target="rouka_scene_label"]
*rouka_scene_label
回想シーンで表示したいシナリオの最後に[endreplay]を追記して下さい。nameによってどのシナリオを呼び出すか紐付けられています。
- name…[replay_image_button]に対して同じになるように書いて下さい。
- storage…scenarioフォルダからの表示させるシナリオがある場所。
scenarioフォルダ、youko_seenフォルダーの中にscene1.ksがあるとするなら、 storage=youko_seen/scene1.ks となる@jumpのtargetと同じようなものなので、必ず同じラベルを回想モードで実行したいシナリオに設置して下さい。(ないとラベル"rouka_scene_label"はありません。というアラートが出ます。ラベル名は各自設定したものです。これは一例です)
- target="rouka_scene_label" は回想シーンを始めたいラベルの位置です。
このタグが書かれていないと回想モードのシナリオに戻らず、そのシナリオを実行し続けてしまいますので忘れずに。
その他 参照 ヘルプ
詳細をみる
◆既読済か参照する
config.tjsのラベル記録
◆リプレイ中か?分岐する
◆リプレイのジャンプ先
@jump storage=&tf.selected_replay_obj.storage target=&tf.selected_replay_obj.target
◆zindexをかえたレイヤー30がレイヤー1になっている 不明?? 募集中
◆Q:なぜか回想モードをみた後、通常で流すと回想モードの画面に戻る。
A:マクロやサブルーチンにて[return]が抜けているのではないでしょうか。
もし、それで抜け出せない状態になってしまったら、セーブ方式を変えてみてはいかがでしょうか
◆Q:マクロがないって言われる
A:こんな状態になっている?
[eval exp="tf.flag_replay=false"]
◆Q:まったく表示しないですけど?
A:ティラノスクリプトデフォルトのscene1.ksの7行目[bg storage="room.jpg" time="100"]の上に
[setreplay name="replay1" storage="scene1.ks" target="start1"]を置いてみてください。
シーン設定・・・メッセージの位置、キャラについてはマクロ化しておいて[setreplay]の後に読み込むと良いかもしれません。
◆WEB版でフリーズする
A:弱サーバーについては専用のシナリオ作ってジャンプしたが早いです。
tyrano.ksをはじめにcallすると表示がリセットされるので元のシナリオに分岐かけて画面構成する等…
config.tjsのラベル記録
◆リプレイ中か?分岐する
[if exp="tf.flag_replay==true"]
@jump storage=replay.ks
[endif]
◆リプレイのジャンプ先
@jump storage=&tf.selected_replay_obj.storage target=&tf.selected_replay_obj.target
◆zindexをかえたレイヤー30がレイヤー1になっている 不明?? 募集中
詳細をみる
戻った際に画像が残っている場合はレイヤー1をツールバーなどでElement確認してみてください。
他レイヤーでも[endreplay]直前のものは残りやすい??
[if exp="tf.flag_replay==true"]などで分岐し、シナリオ内で消してください。
[iscript]
$('.1_fore').remove();
[endscript]
レイヤー1を消した後はシナリオ冒頭[if exp="tf.flag_replay==true"]などで分岐し、
表示してください
(chara_show)
[if exp="tf.flag_replay==true"]
@layopt layer=1 visible=true
[chara_show name="bg"]
[endif]
他レイヤーでも[endreplay]直前のものは残りやすい??
[if exp="tf.flag_replay==true"]などで分岐し、シナリオ内で消してください。
[iscript]
$('.1_fore').remove();
[endscript]
レイヤー1を消した後はシナリオ冒頭[if exp="tf.flag_replay==true"]などで分岐し、
表示してください
(chara_show)
[if exp="tf.flag_replay==true"]
@layopt layer=1 visible=true
[chara_show name="bg"]
[endif]
◆Q:なぜか回想モードをみた後、通常で流すと回想モードの画面に戻る。
A:マクロやサブルーチンにて[return]が抜けているのではないでしょうか。
もし、それで抜け出せない状態になってしまったら、セーブ方式を変えてみてはいかがでしょうか
◆Q:マクロがないって言われる
A:こんな状態になっている?
【1】◆backボタン等を押したあとに初期化する
[setreplay name="replay1" storage="scene1.ks" target="start1"]
[call storage=macro.ks];ここは読まない
*start1
[eval exp="tf.flag_replay=false"]
◆Q:まったく表示しないですけど?
A:ティラノスクリプトデフォルトのscene1.ksの7行目[bg storage="room.jpg" time="100"]の上に
[setreplay name="replay1" storage="scene1.ks" target="start1"]を置いてみてください。
シーン設定・・・メッセージの位置、キャラについてはマクロ化しておいて[setreplay]の後に読み込むと良いかもしれません。
◆WEB版でフリーズする
A:弱サーバーについては専用のシナリオ作ってジャンプしたが早いです。
tyrano.ksをはじめにcallすると表示がリセットされるので元のシナリオに分岐かけて画面構成する等…
◆自作でリプレイボタンを作る
詳細をみる
[macro name=replay_image_button2]
[if exp="mp.end == 1"]
;endに&で代入すると表示が分岐されます。==1にしてますが クリアフラグによってtrueやら3等に変更して下さい。
[button name=rp_bt graphic=&mp.graphic x=&mp.x y=&mp.y width=&mp.width height=&mp.height graphic=&mp.graphic storage=&mp.storage target="&mp.target" folder="mp.folder|fgimage" ]
;exp="tf.selected_cg_image = preexp"
[else]
;リプレイが見れないときのボタン表示です シナリオのジャンプ先等は調整して下さい。
[button graphic=&mp.no_graphic x=&mp.x y=&mp.y width=&mp.width height=&mp.height graphic="../fgimage/bg/cg_not.jpg" storage="replay2.ks" target="*no_image" folder="bgimage"]
[endif]
[endmacro]
使用例 end=&sf.yuko_end クリアフラグを代入してチェックします。調整して下さい
[replay_image_button2 end=&sf.yuko_end storage="yuko_goodED.ks" target="replay_yuko_goodED" graphic="../fgimage/bg/replay_yuko_goodED.jpg" x=270 y=60 width=200 height=130 folder="bgimage"]
replay_image_button2マクロ内で分岐されてるのでno_graphicはなくて大丈夫です。表示するものだけ記述して下さい。
あとは各シナリオにボタンを消す[cm]または[free name=rp_bt]またはremoveを使用して下さい。
ラベルも同じものを配置して下さい。基本ただのボタンと同じ機能です。
- 最終更新:2021-10-06 15:53:35