sidebar.htmlのjavascriptでサイドバーの非表示のところで
overlay.transition({
opacity: 0,
duration: 200,
complete: function(){
overlay.hide();
almight.stage.canClick = true;
$(Almight).triggerHandler('hideSidebar');
almight.script.command('[ch text="オートモードです" cond="almight.stage.autoMode == true"]',false);
almight.script.command('[ch text="オートモードじゃない" cond="almight.stage.autoMode == false"]',false);
と下に2行足してみたのですが、停止しているけどオートモード判定でした。
クリックすればゲームは進行するし再度オートモードにもなるので些細な事とは思うのですが
オートモード中には「オートモードです」という画像を出す処理を追加しているので解消できないかと思っています。
もし、何か解消法がありましたらお願いします。
最初にも書いたように「オートモード中」という画像を表示するのに
condタグでalmight.stage.autoModeを判定して表示しているのですが、
サイドバーをゲーム進行の間開いているとalmight.stage.autoMode == trueのままオートモードが停止してしまうので
「オートモード中」という画像が表示されたままになってしまいます。
ですので、停止するのであればfalseを返せないかと思いまして、、、
よろしくお願いします。
組み込んでみて感じたのですが、これだとサイドバーを開閉するとその都度オートモードが停止してしまうので
色々とクリックする回数が多くなってしまいユーザーから見るとあまりスマートではないかなと思います。
そこでサイドバーを開いてもオートモードが停止しないという処理は出来ないでしょうか?
宜しくお願いします。
上記のように記述して再度オートモードになるのを確認しました。
やはり音声は強制的に終了してしまうので、最初の箇所を
if(almight.stage.autoMode == true && almight.se[0].playing == false)
といたしました。
これで音声が切れることもなく、サイドバーを閉じた時にオートモードが再開するようになりました。
更に微調整をしたいのですが、
テキストだけで進んでいく部分でオートモードを作動させると音声の時と同様に
強制的に次に進んでしまいます。
テキストを表示している状態を判定出来ればこれも制御できると思うのですが、、、
テキスト表示しているならtrueみたいな判定は出来ないでしょうか?
宜しくお願いします。
返信有難うございます。
現状のAlmightだとオートモード使用時に音声や文字描画が強制的に進んでしまうので
これで制御してみようと思います。
javascriptの知識がなく参考本見ながらやっているのですが、while使えば擬似的に出来るかなと思って
sidebar.htmlのオートモードを以下のようにやってみたらハングしてしまいました(笑)
setAuto: function() {
while ( almight.stage.textAnimating == true){
almight.script.command('[wait time=1000 canskip=false]',false);
}
almight.stage.toggleAutomode(1500, true);
},
宜しくお願いします。