#やりたいこと
ゲーム画面にて、オブジェクト選択時の右クリックメニューとオブジェクト非選択時の右クリックメニューの作成を検討しております。
AsssetStoreにて以下のAssetを使っています。
#問題
同じ右クリックにてメニュー表示を行っているため、オブジェクト選択時のメニューとオブジェクト非選択時のメニューが重なってしまいます。
オブジェクト非選択時の右クリックメニューのみ独立して表示される方法をご教示いただければと思います。
#オブジェクト選択時の右クリックメニュー
オブジェクトをマウスで選択したとき、オブジェクト色を赤に変えるものを別で用意します。。赤に変わったときに右クリックを行うとオブジェクト用のメニューが表示できるようにしました。これはうまくいきました。
void Update()
{ if(Input.GetMouseButtonDown(1)
&&(this.gameObject.GetComponent<Renderer>().material.color == Color.red)
)
{
ContextMenu.HideAllMenus();//hide other menus
menu.ShowAtMousePosition();//show the menu
}
}
他のContextMenu(Prefab)を隠して、オブジェクトメニュー用の『menu.~』を表示するようになっています。
#オブジェクト非選択時の右クリックメニュー(問題)
右クリックを押したときに他のメニュー内容が隠れて、『mainMenu~』が表示されるようになっています。
void Update()
{
if(Input.GetMouseButtonDown(1))
{
ContextMenu.HideAllMenus();
mainMenu.ShowAtMousePosition();
}
}
「右クリックのみ押されたとき ⇒ mainMenu表示」もしくは
「子オブジェクトの中に赤色のものがないとき右クリック ⇒ mainMenu表示」
という条件を追加したいのですが、いい方法を見つけられませんでした。(他の方法でも構いません。)
どなたかご教示いただけると幸いです。よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/26 02:34
2020/05/26 02:46
2020/05/26 06:50
2020/05/26 08:13
2020/05/26 09:03
2020/09/09 03:54
2020/09/09 05:37
2020/09/09 06:22
2020/09/09 23:47
2020/09/10 00:25
2020/09/10 01:55
2020/09/10 02:01
2020/09/10 03:24