お知らせ掲示板 | 質問掲示板 | 不具合報告掲示板 | 機能要望掲示板 | 雑談掲示板

  新規投稿 ┃全記事一覧 ┃検索 ┃設定 ┃サポートフォーラムトップ  
222 / 401 ツリー ←次へ | 前へ→

テキストウインドウを二種類使う 刈谷 2010/7/9(金) 12:53
UIの切り替えについて 穂乃井 2010/7/11(日) 20:42
Re:UIの切り替えについて 刈谷 2010/7/12(月) 4:50
関連の質問です UIの切り替えについて 朝倉 満 2012/7/2(月) 6:18
Re:関連の質問です UIの切り替えについて 穂乃井 2012/8/2(木) 2:46
メールさせていただきました。 朝倉 満 2012/8/4(土) 7:37
Re:メールさせていただきました。 穂乃井 2012/8/4(土) 15:37

テキストウインドウを二種類使う
 刈谷  - 2010/7/9(金) 12:53 -
  
こんにちは。最近β4を使い始めたものです。
掲示板で「メッセージウインドウを複数使い分けたい」という質問がありましたが、わたしもノーマルなテキストウインドウと、顔画像つきメッセージウインドウの二つを使いたいと思いました。
β4にはフェイス画像付きメッセージウインドウのサンプルがありました。それを元にやってみましたが、テキストが顔画像にかぶさってしまいます。ただしスペースをあけて打てばなんとかはいります。

もうひとつ、別な短いメッセージウインドウを作ってみてメイン設計で追加してみましたが、(61行以下)

    //フェイス付きウインドウ    
    \BTDEF.GROUP("ES.GAMEMAIN")
    \BT.GROUP(1)
    \BT.CGSYS("main/meswindow1")//自作のウインドウ
    \BT.XY(237, 452)//フェイス画像分右にずらす
    \BT.MAP.A(255)
    \BT.Z(013)
    \BT.SET(TIP.FMESW)//文字列が必要かといれてみる

    //フェイス付きウィンドウ・テキスト部分
    \BTDEF.GROUP("ES.GAMEMAIN")
    \BT.GROUP(1)
    \BT.CGSYS("main/meswindow_txspace")
    \BT.XY(237+20, 452+02+10)//フェイス画像分右にずらす
    \BT.MAP.A(255)
    \BT.Z(012)
    \BT.SET(TIP.FMESW.TX)

    //フェイス付きウィンドウ・後ろ(透過部分)
    \BTDEF.GROUP("ES.GAMEMAIN")
    \BT.GROUP(1)
    \BT.CGSYS("main/meswindow_back")//自作のウインドウ
    \BT.XY(237, 452)//フェイス画像分右にずらす
    \BT.MAP.A(255)
    \BT.Z(011)
    \BT.SET(TIP.FMESW.A)

サンプルの真似をして上記のように書くだけではウインドウが最初からずっと表示されているし、元のウインドウも消えてません。
もしかしてメイン画面設計のIF[@L(777)==1] //2番目のデザイン とかを使うんでしょうか?
顔画像用の2つめのテキストウインドウを元のテキストウインドウと台詞のたびに置き換える方法があれば教えてください。
引用なし
パスワード

UIの切り替えについて
 穂乃井 WEB  - 2010/7/11(日) 20:42 -
  
>こんにちは。最近β4を使い始めたものです。
>掲示板で「メッセージウインドウを複数使い分けたい」という質問がありましたが、わたしもノーマルなテキストウインドウと、顔画像つきメッセージウインドウの二つを使いたいと思いました。
>β4にはフェイス画像付きメッセージウインドウのサンプルがありました。それを元にやってみましたが、テキストが顔画像にかぶさってしまいます。ただしスペースをあけて打てばなんとかはいります。
>
>もうひとつ、別な短いメッセージウインドウを作ってみてメイン設計で追加してみましたが、(61行以下)
>
>    //フェイス付きウインドウ    
>    \BTDEF.GROUP("ES.GAMEMAIN")
>    \BT.GROUP(1)
>    \BT.CGSYS("main/meswindow1")//自作のウインドウ
>    \BT.XY(237, 452)//フェイス画像分右にずらす
>    \BT.MAP.A(255)
>    \BT.Z(013)
>    \BT.SET(TIP.FMESW)//文字列が必要かといれてみる
>
>    //フェイス付きウィンドウ・テキスト部分
>    \BTDEF.GROUP("ES.GAMEMAIN")
>    \BT.GROUP(1)
>    \BT.CGSYS("main/meswindow_txspace")
>    \BT.XY(237+20, 452+02+10)//フェイス画像分右にずらす
>    \BT.MAP.A(255)
>    \BT.Z(012)
>    \BT.SET(TIP.FMESW.TX)
>
>    //フェイス付きウィンドウ・後ろ(透過部分)
>    \BTDEF.GROUP("ES.GAMEMAIN")
>    \BT.GROUP(1)
>    \BT.CGSYS("main/meswindow_back")//自作のウインドウ
>    \BT.XY(237, 452)//フェイス画像分右にずらす
>    \BT.MAP.A(255)
>    \BT.Z(011)
>    \BT.SET(TIP.FMESW.A)
>
>サンプルの真似をして上記のように書くだけではウインドウが最初からずっと表示されているし、元のウインドウも消えてません。
>もしかしてメイン画面設計のIF[@L(777)==1] //2番目のデザイン とかを使うんでしょうか?
>顔画像用の2つめのテキストウインドウを元のテキストウインドウと台詞のたびに置き換える方法があれば教えてください。


なるほど、説明不足で申し訳ないです。
この場でひとまず簡単に説明します。

β4では \BT.SET 命令で指定するボタン名自体に意味がありまして、
ERISのほうで機能が自動的に割り振られています。
つまり、メッセージウィンドウは「TIP.MESW」、
テキストレイヤが「TIP.MESW.TX」、透過部分が「TIP.MESW.A」
という風に決まっていまして、
これ以外の名前でメッセージウィンドウを登録しても
メッセージウィンドウとして正しく機能しません。
他に関しても同様で、
「BTN.LOG」ならバックログボタン、
「BTN.SAVE」ならセーブ画面ボタン、
というようになっています。

また、2つのメッセージウィンドウを切り替えて使う方法ですが、

>もしかしてメイン画面設計のIF[@L(777)==1] //2番目のデザイン とかを使うんでしょうか?

まさにその通りでして、
たとえばメッセージウィンドウをサンプルのものと独自のもので使い分けたい場合、

IF[@L(777)==0]

    //
    //1番目のデザインをここで定義する
    //

IFEND[]
IF[@L(777)==1]

    //
    //2番目のデザインをここで定義する
    //

IFEND[]

という形でまず定義しておきます。
このとき、1番目のデザインと2番目のデザインでボタン名は重複して大丈夫です。
具体的に書くと、以下のようになると思います。

IF[@L(777)==0]

    //メッセージウィンドウ
    \BTDEF.GROUP("ES.GAMEMAIN")
    \BT.GROUP(1)
    \BT.CGSYS("main/tip_meswindow")
    \BT.XY(037, 452)
    \BT.MAP.A(255)
    \BT.Z(013)
    \BT.SET(TIP.MESW)
    
    //メッセージウィンドウ・テキスト部分
    \BTDEF.GROUP("ES.GAMEMAIN")
    \BT.GROUP(1)
    \BT.CGSYS("main/tip_meswindow_txspace")
    \BT.XY(037+20, 452+02+10)
    \BT.MAP.A(255)
    \BT.Z(012)
    \BT.SET(TIP.MESW.TX)
    
    //メッセージウィンドウ・後ろ(透過部分)
    \BTDEF.GROUP("ES.GAMEMAIN")
    \BT.GROUP(1)
    \BT.CGSYS("main/tip_meswindow_back")
    \BT.XY(037, 452)
    \BT.MAP.A(255)
    \BT.Z(011)
    \BT.SET(TIP.MESW.A)

IFEND[]
IF[@L(777)==1]

    //フェイス付きウインドウ    
    \BTDEF.GROUP("ES.GAMEMAIN")
    \BT.GROUP(1)
    \BT.CGSYS("main/meswindow1")//自作のウインドウ
    \BT.XY(237, 452)//フェイス画像分右にずらす
    \BT.MAP.A(255)
    \BT.Z(013)
    \BT.SET(TIP.MESW)//文字列が必要かといれてみる

    //フェイス付きウィンドウ・テキスト部分
    \BTDEF.GROUP("ES.GAMEMAIN")
    \BT.GROUP(1)
    \BT.CGSYS("main/meswindow_txspace")
    \BT.XY(237+20, 452+02+10)//フェイス画像分右にずらす
    \BT.MAP.A(255)
    \BT.Z(012)
    \BT.SET(TIP.MESW.TX)

    //フェイス付きウィンドウ・後ろ(透過部分)
    \BTDEF.GROUP("ES.GAMEMAIN")
    \BT.GROUP(1)
    \BT.CGSYS("main/meswindow_back")//自作のウインドウ
    \BT.XY(237, 452)//フェイス画像分右にずらす
    \BT.MAP.A(255)
    \BT.Z(011)
    \BT.SET(TIP.MESW.A)

IFEND[]


そしてあとは、シナリオスクリプト上から、

@L(777)=1
\UI.RELOAD

とすれば、2番目のデザインに切り替わる、という感じです。

@L(777)=0
\UI.RELOAD

とすれば、1番目のデザインに切り替わります。

実際にこれはサンプルの「UIサンプル」でご覧になれますので、
サンプルスクリプトを見ながら参考にしていただければと思います。


ただ、台詞の度に切り替える場合ですと、ちょっと想定外の使用方法なため、
動作的にちょっと重いかもしれません。その場合、
フェイス画像用ウィンドウで統一していただいたほうがいいかもしれません。
すみませんです。
引用なし
パスワード

Re:UIの切り替えについて
 刈谷  - 2010/7/12(月) 4:50 -
  
ありがとうございます。
無事、メッセージウインドウの切り替えができるようになりました。

>ただ、台詞の度に切り替える場合ですと、ちょっと想定外の使用方法なため、
>動作的にちょっと重いかもしれません。

今のところさほど重いようには感じませんでした。

これからゲーム制作を進めていきます。
ありがとうございました!
引用なし
パスワード

関連の質問です UIの切り替えについて
 朝倉 満  - 2012/7/2(月) 6:18 -
  
はじめまして。
ゲーム製作初心者でこちらに質問するのが大変申し訳ありませんが、
解決できない事象が発生しましたのでご指導いただけると幸いです。

この記事の投稿主様と同じように、UIを切り替えて台詞と文章の2通りを表示しようとしています。
現在使用しているバージョンは最新の開発版(yu-ris_0473_007とフォルダ名にあります)です。

メイン画面設計にて2通りの表示方法を設定し、それ自体はちゃんと切り替わるようになりました。(台詞画面と文章とが同時に存在することはありません。)
ところが、台詞画面から文章画面にUIを変更、若しくはその逆の文章画面から台詞画面に変更すると、最初の一文が表示されず、
また、メッセージウィンドウのテキスト部分が透過されずに白抜きで表示されてしまいます。
複数行表示させると解消され、正常な表示になるのですが、その間、当然のことですがUIの切り替えは行っていません。
この現象を更によく見てみると、文章画面のときに透過がされないことが多いとわかりました。
文章画面は、以前こちらの掲示板で質問されていたように、自動改ページを自動改行にしたくて、\AP(0)を使用しております。
そのため、殆ど文章全てを表示してから改ページを行い、台詞画面に切り替わるときまで改ページが行われないことに気づきました。(演出効果を狙って文章表示画面で改ページをしたところは、透過がきちんと行われました。
その際には文章の始まりで¥AP(0)を使用、改ページを行いたいところに\[p]を使用しました。)
台詞のときは¥AP(0)を使わず、自動改ページを行っています。
また、文章画面から台詞画面に切り替えた際、自動改ページを〜の記事で記事主様が指摘されていたように、キャラクターの名前がメッセージ表示されてしまい、名前欄に反映されませんでした。

尚、処理に時間を置いたほうがいいのかと思い、UI切り替えの後にスクリプトで\WAを使用しましたが改善されませんでした。

自動改ページで複数行表示するときちんと表示されるだけに、大変歯痒い思いをしております。
お忙しい中恐縮ですが、この現象を解消する方法をご指示いただけると幸いです。

よろしくお願いいたします。
引用なし
パスワード

Re:関連の質問です UIの切り替えについて
 穂乃井 WEB  - 2012/8/2(木) 2:46 -
  
>はじめまして。
>ゲーム製作初心者でこちらに質問するのが大変申し訳ありませんが、
>解決できない事象が発生しましたのでご指導いただけると幸いです。
>
>この記事の投稿主様と同じように、UIを切り替えて台詞と文章の2通りを表示しようとしています。
>現在使用しているバージョンは最新の開発版(yu-ris_0473_007とフォルダ名にあります)です。
>
>メイン画面設計にて2通りの表示方法を設定し、それ自体はちゃんと切り替わるようになりました。(台詞画面と文章とが同時に存在することはありません。)
>ところが、台詞画面から文章画面にUIを変更、若しくはその逆の文章画面から台詞画面に変更すると、最初の一文が表示されず、
>また、メッセージウィンドウのテキスト部分が透過されずに白抜きで表示されてしまいます。
>複数行表示させると解消され、正常な表示になるのですが、その間、当然のことですがUIの切り替えは行っていません。
>この現象を更によく見てみると、文章画面のときに透過がされないことが多いとわかりました。
>文章画面は、以前こちらの掲示板で質問されていたように、自動改ページを自動改行にしたくて、\AP(0)を使用しております。
>そのため、殆ど文章全てを表示してから改ページを行い、台詞画面に切り替わるときまで改ページが行われないことに気づきました。(演出効果を狙って文章表示画面で改ページをしたところは、透過がきちんと行われました。
>その際には文章の始まりで¥AP(0)を使用、改ページを行いたいところに\[p]を使用しました。)
>台詞のときは¥AP(0)を使わず、自動改ページを行っています。
>また、文章画面から台詞画面に切り替えた際、自動改ページを〜の記事で記事主様が指摘されていたように、キャラクターの名前がメッセージ表示されてしまい、名前欄に反映されませんでした。
>
>尚、処理に時間を置いたほうがいいのかと思い、UI切り替えの後にスクリプトで\WAを使用しましたが改善されませんでした。
>
>自動改ページで複数行表示するときちんと表示されるだけに、大変歯痒い思いをしております。
>お忙しい中恐縮ですが、この現象を解消する方法をご指示いただけると幸いです。
>
>よろしくお願いいたします。


返信大変遅くなってしまいすみません。
いろいろ検証してみましたが、ちょっとよく分からず、こちらでは再現できませんでした。
お手数おかけしますが、再現できる簡単なスクリプトの提示をお願いすることはできますでしょうか。
それをもとに再度詳しく調査したいと思います。
引用なし
パスワード

メールさせていただきました。
 朝倉 満  - 2012/8/4(土) 7:37 -
  
お返事ありがとうございます!
お忙しいところ大変申し訳ありません。

問題のスクリプト及び画面設計、そして再現動画をメールにて送らせて頂きました。
どうかよろしくお願いいたします。
引用なし
パスワード

Re:メールさせていただきました。
 穂乃井 WEB  - 2012/8/4(土) 15:37 -
  
>お返事ありがとうございます!
>お忙しいところ大変申し訳ありません。
>
>問題のスクリプト及び画面設計、そして再現動画をメールにて送らせて頂きました。
>どうかよろしくお願いいたします。

こちらにて返信させていただきます。
データのほう頂きましたが、やはりこちらでは再現しませんでした。
それで、動画のほうを拝見したところ、恐らくですが、
テキスト表示範囲を設定している

cgsys/main/tip_meswindow_txspace.png
および
cgsys/main/tip_novel_txspace.png

この2つの画像が
完全透過画像でなく白画像になってしまっていて、
それがそのまま表示されてしまっている可能性があります。
一度ご確認いただければと思います。
引用なし
パスワード

  新規投稿 ┃全記事一覧 ┃検索 ┃設定 ┃サポートフォーラムトップ  
222 / 401 ツリー ←次へ | 前へ→
59,457
(SS)C-BOARD v3.8.1β4 is Free.