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

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

ESCキーを緊急回避ボタンにしたい めめ 2019/6/28(金) 21:24
Re:ESCキーを緊急回避ボタンにしたい ぽてと 2019/7/3(水) 0:42
Re:ESCキーを緊急回避ボタンにしたい めめ 2019/7/3(水) 3:28

ESCキーを緊急回避ボタンにしたい
 めめ  - 2019/6/28(金) 21:24 -
  
質問です。

いわゆる「緊急回避ボタン」としてESCキーを割り当てたいのですが、
そういったことは可能でしょうか?

具体的には、ESCキーを押すことで指定の「画像」が全画面で表示され、
なんらかのキーをクリックすることで元の画面(本編)に戻るという感じです。

解りづらい説明で申し訳ないのですが、
もしお解りでしたらお教えいただければ幸いです。
宜しくお願いいたします。
引用なし
パスワード

Re:ESCキーを緊急回避ボタンにしたい
 ぽてと E-MAIL  - 2019/7/3(水) 0:42 -
  
ぽてとです。

緊急回避ボタンの作成は可能です。

挙動としてはボタン非表示(ERASEボタン)の挙動とほぼ同じで、全画面に指定した画像を表示してあげれば問題なく作成できるかと思います。

具体的には下記です。
1:緊急回避ボタン画像の作成
2:緊急回避ボタンの作成
3:緊急回避画面から戻るボタンの作成
4:緊急回避ボタンに割当てたESCキーを他のボタンから削除
5:緊急回避ボタンの処理を追加


■ボタン画像の準備
下記2枚のフルスクリーンに対応した画像を用意する。
・main\button\btn_esc_off.png
・main\button\btn_esc_over.png


■システム\data\script\UserDesign\メイン画面設計.txt
下記ボタンをメイン画面設計のES.GAMEMAIN.BTDEFに追加する。
※ボタン画像は適宜変更ください。

\BTDEF.GROUP(ES.GAMEMAIN)
\BT.NAME("■ESC")
\BT.GROUP(1)
\BT.CGSYS("main/button/btn_menu_off", "main/button/btn_menu_over")
\BT.XY(999, 999)
\BT.Z(020)
\BT.KEY("ESC")
\BT.SET(BTN.ESC)

■システム\data\script\UserDesign\メイン画面設計.txt
下記ボタンをメイン画面設計の一番下に追加する。

//============================================================================
// 緊急回避ボタン
//============================================================================
#=ES.WINDOWESC.BTDEF
{
  \BTDEF.GROUP(ES.WINDOWESC)
  \BT.NAME("■WINDOWESC")
  \BT.CGSYS("main/button/btn_esc_off", "main/button/btn_esc_over")
  \BT.KEY("ESC")
  \BT.XY(0, 0)
  \BT.Z(999)
  \BT.SET(BTN.ESCSHOW)

  RETURN[]
}

■システム\data\script\UserDesign\メイン画面設計.txt
下記ボタンをメイン画面設計のESCボタンが他に割り当て有られている場合に解除する。
具体的にはERASEボタンにESCキーが割り当てられてるので解除する。

変更前 \BT.KEY("MOUSE_R", "SPACE", "ESC", "BS")
変更後 \BT.KEY("MOUSE_R", "SPACE", "BS")

■システム\data\script\ERIS\Scene\GAMEMAIN\ES_Gamemain.yst
最終行に下記コードを追加する。

//■[ESC]ボタン ----------------------------------------------------
//
#=ES.GAMEMAIN.BTN.ESC.ON
{
  @es.SCENARIOSTOP=@e.ERASE
  \es.S.GOSUB("ES.WINDOWESC", 0, 0, 1, 2)
  return[]
}
#=ES.WINDOWESC.INIT
{
  @es.STATE=0
  return[]
}

#=ES.WINDOWESC.LOOP
{
  IF[@es.STATE==0]
  {
    \SS.FADE(0)
    @es.STATE=1
  }
  IFEND[]
  return[]
}
//■[ESCSHOW]ボタン -----------------------------------------------------
//
#=ES.WINDOWESC.BTN.ESCSHOW.ON
{
  \es.S.RETURN
  return[]
}


以上、お役に立てればと思います。
引用なし
パスワード

Re:ESCキーを緊急回避ボタンにしたい
 めめ  - 2019/7/3(水) 3:28 -
  
ぽてとさま

ご丁寧にありがとうございます!
早速試してみまして、無事に動いてくれました!
感謝です!


>ぽてとです。
>
>緊急回避ボタンの作成は可能です。
>
>挙動としてはボタン非表示(ERASEボタン)の挙動とほぼ同じで、全画面に指定した画像を表示してあげれば問題なく作成できるかと思います。
>
>具体的には下記です。
>1:緊急回避ボタン画像の作成
>2:緊急回避ボタンの作成
>3:緊急回避画面から戻るボタンの作成
>4:緊急回避ボタンに割当てたESCキーを他のボタンから削除
>5:緊急回避ボタンの処理を追加
>
>
>■ボタン画像の準備
>下記2枚のフルスクリーンに対応した画像を用意する。
>・main\button\btn_esc_off.png
>・main\button\btn_esc_over.png
>
>
>■システム\data\script\UserDesign\メイン画面設計.txt
>下記ボタンをメイン画面設計のES.GAMEMAIN.BTDEFに追加する。
>※ボタン画像は適宜変更ください。
>
>\BTDEF.GROUP(ES.GAMEMAIN)
>\BT.NAME("■ESC")
>\BT.GROUP(1)
>\BT.CGSYS("main/button/btn_menu_off", "main/button/btn_menu_over")
>\BT.XY(999, 999)
>\BT.Z(020)
>\BT.KEY("ESC")
>\BT.SET(BTN.ESC)
>
>■システム\data\script\UserDesign\メイン画面設計.txt
>下記ボタンをメイン画面設計の一番下に追加する。
>
>//============================================================================
>// 緊急回避ボタン
>//============================================================================
>#=ES.WINDOWESC.BTDEF
>{
>  \BTDEF.GROUP(ES.WINDOWESC)
>  \BT.NAME("■WINDOWESC")
>  \BT.CGSYS("main/button/btn_esc_off", "main/button/btn_esc_over")
>  \BT.KEY("ESC")
>  \BT.XY(0, 0)
>  \BT.Z(999)
>  \BT.SET(BTN.ESCSHOW)
>
>  RETURN[]
>}
>
>■システム\data\script\UserDesign\メイン画面設計.txt
>下記ボタンをメイン画面設計のESCボタンが他に割り当て有られている場合に解除する。
>具体的にはERASEボタンにESCキーが割り当てられてるので解除する。
>
>変更前 \BT.KEY("MOUSE_R", "SPACE", "ESC", "BS")
>変更後 \BT.KEY("MOUSE_R", "SPACE", "BS")
>
>■システム\data\script\ERIS\Scene\GAMEMAIN\ES_Gamemain.yst
>最終行に下記コードを追加する。
>
>//■[ESC]ボタン ----------------------------------------------------
>//
>#=ES.GAMEMAIN.BTN.ESC.ON
>{
>  @es.SCENARIOSTOP=@e.ERASE
>  \es.S.GOSUB("ES.WINDOWESC", 0, 0, 1, 2)
>  return[]
>}
>#=ES.WINDOWESC.INIT
>{
>  @es.STATE=0
>  return[]
>}
>
>#=ES.WINDOWESC.LOOP
>{
>  IF[@es.STATE==0]
>  {
>    \SS.FADE(0)
>    @es.STATE=1
>  }
>  IFEND[]
>  return[]
>}
>//■[ESCSHOW]ボタン -----------------------------------------------------
>//
>#=ES.WINDOWESC.BTN.ESCSHOW.ON
>{
>  \es.S.RETURN
>  return[]
>}
>
>
>以上、お役に立てればと思います。
引用なし
パスワード

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