mirror of
https://github.com/CrispyPin/ovr-utils.git
synced 2024-11-10 02:40:25 +01:00
fix moving hidden overlays & cleanup
This commit is contained in:
parent
6c15e9ff5f
commit
4a5d1f02c3
6 changed files with 23 additions and 12 deletions
|
@ -1,4 +1,4 @@
|
||||||
[gd_scene load_steps=9 format=2]
|
[gd_scene load_steps=11 format=2]
|
||||||
|
|
||||||
[ext_resource path="res://styles/menu.theme" type="Theme" id=1]
|
[ext_resource path="res://styles/menu.theme" type="Theme" id=1]
|
||||||
[ext_resource path="res://icons/visible.svg" type="Texture" id=2]
|
[ext_resource path="res://icons/visible.svg" type="Texture" id=2]
|
||||||
|
@ -8,6 +8,10 @@
|
||||||
[ext_resource path="res://icons/reset.svg" type="Texture" id=6]
|
[ext_resource path="res://icons/reset.svg" type="Texture" id=6]
|
||||||
[ext_resource path="res://icons/size.svg" type="Texture" id=7]
|
[ext_resource path="res://icons/size.svg" type="Texture" id=7]
|
||||||
[ext_resource path="res://icons/hand_r.svg" type="Texture" id=8]
|
[ext_resource path="res://icons/hand_r.svg" type="Texture" id=8]
|
||||||
|
[ext_resource path="res://textures/icon.png" type="Texture" id=9]
|
||||||
|
|
||||||
|
[sub_resource type="DynamicFont" id=1]
|
||||||
|
size = 1
|
||||||
|
|
||||||
[node name="ListOverlayItem" type="PanelContainer"]
|
[node name="ListOverlayItem" type="PanelContainer"]
|
||||||
margin_top = 1727.0
|
margin_top = 1727.0
|
||||||
|
@ -35,25 +39,27 @@ margin_bottom = 199.0
|
||||||
alignment = 2
|
alignment = 2
|
||||||
|
|
||||||
[node name="Remove" type="Button" parent="HBoxContainer"]
|
[node name="Remove" type="Button" parent="HBoxContainer"]
|
||||||
margin_left = 1006.0
|
margin_left = 948.0
|
||||||
margin_right = 1182.0
|
margin_right = 1124.0
|
||||||
margin_bottom = 191.0
|
margin_bottom = 191.0
|
||||||
toggle_mode = true
|
toggle_mode = true
|
||||||
icon = ExtResource( 5 )
|
icon = ExtResource( 5 )
|
||||||
|
|
||||||
[node name="Reset" type="Button" parent="HBoxContainer"]
|
[node name="Reset" type="Button" parent="HBoxContainer"]
|
||||||
margin_left = 1186.0
|
margin_left = 1128.0
|
||||||
margin_right = 1362.0
|
margin_right = 1304.0
|
||||||
margin_bottom = 191.0
|
margin_bottom = 191.0
|
||||||
icon = ExtResource( 6 )
|
icon = ExtResource( 6 )
|
||||||
|
|
||||||
[node name="Target" type="OptionButton" parent="HBoxContainer"]
|
[node name="Target" type="OptionButton" parent="HBoxContainer"]
|
||||||
margin_left = 1366.0
|
margin_left = 1308.0
|
||||||
margin_right = 1492.0
|
margin_right = 1492.0
|
||||||
margin_bottom = 191.0
|
margin_bottom = 191.0
|
||||||
text = "H"
|
custom_fonts/font = SubResource( 1 )
|
||||||
items = [ "H", null, false, 0, null, "L", ExtResource( 8 ), false, 1, null, "R", ExtResource( 8 ), false, 2, null, "W", null, false, 3, null ]
|
text = "Left"
|
||||||
selected = 0
|
icon = ExtResource( 8 )
|
||||||
|
items = [ "Head", ExtResource( 9 ), false, 0, null, "Left", ExtResource( 8 ), false, 1, null, "Right", ExtResource( 8 ), false, 2, null, "World", ExtResource( 4 ), false, 3, null ]
|
||||||
|
selected = 1
|
||||||
|
|
||||||
[node name="Size" type="Button" parent="HBoxContainer"]
|
[node name="Size" type="Button" parent="HBoxContainer"]
|
||||||
margin_left = 1496.0
|
margin_left = 1496.0
|
||||||
|
|
|
@ -53,7 +53,7 @@ func _trigger_off():
|
||||||
|
|
||||||
|
|
||||||
func _on_OverlayArea_entered(body: Node) -> void:
|
func _on_OverlayArea_entered(body: Node) -> void:
|
||||||
if body.get_node("../../..") != self or pause_triggers:
|
if body.get_node("../../..") != self or pause_triggers or !get_parent().overlay_visible:
|
||||||
return
|
return
|
||||||
touch_state = true
|
touch_state = true
|
||||||
active_controller = body.get_parent().name
|
active_controller = body.get_parent().name
|
||||||
|
@ -62,7 +62,7 @@ func _on_OverlayArea_entered(body: Node) -> void:
|
||||||
|
|
||||||
|
|
||||||
func _on_OverlayArea_exited(body: Node) -> void:
|
func _on_OverlayArea_exited(body: Node) -> void:
|
||||||
if body.get_node("../../..") != self or pause_triggers:
|
if body.get_node("../../..") != self or pause_triggers or !get_parent().overlay_visible:
|
||||||
return
|
return
|
||||||
# TODO revert to other controller if both were touching (edge case)
|
# TODO revert to other controller if both were touching (edge case)
|
||||||
active_controller = ""
|
active_controller = ""
|
||||||
|
|
|
@ -26,6 +26,7 @@ var _offsets:Dictionary = {
|
||||||
var current_target: String = "world" setget _set_current_target# most of the time the actual target, but will fall back
|
var current_target: String = "world" setget _set_current_target# most of the time the actual target, but will fall back
|
||||||
var fallback = ["left", "right", "head"] # TODO setget that updates tracking (not important)
|
var fallback = ["left", "right", "head"] # TODO setget that updates tracking (not important)
|
||||||
var interaction_handler: Node
|
var interaction_handler: Node
|
||||||
|
var overlay_visible := true setget set_overlay_visible
|
||||||
|
|
||||||
var _tracker_id: int = 0
|
var _tracker_id: int = 0
|
||||||
|
|
||||||
|
@ -139,6 +140,10 @@ func update_current_target():
|
||||||
update_tracker_id()
|
update_tracker_id()
|
||||||
|
|
||||||
|
|
||||||
|
func set_overlay_visible(state: bool):
|
||||||
|
overlay_visible = state
|
||||||
|
$OverlayViewport.overlay_visible = state
|
||||||
|
|
||||||
|
|
||||||
func _tracker_changed(tracker_name: String, type: int, id: int):
|
func _tracker_changed(tracker_name: String, type: int, id: int):
|
||||||
update_current_target()
|
update_current_target()
|
||||||
|
|
Binary file not shown.
|
@ -10,7 +10,7 @@ func _ready() -> void:
|
||||||
|
|
||||||
|
|
||||||
func _on_Visibility_toggled(state: bool) -> void:
|
func _on_Visibility_toggled(state: bool) -> void:
|
||||||
overlay.get_node("OverlayViewport").overlay_visible = state
|
overlay.overlay_visible = state
|
||||||
if state:
|
if state:
|
||||||
$HBoxContainer/Visibility.icon = preload("res://icons/visible.svg")
|
$HBoxContainer/Visibility.icon = preload("res://icons/visible.svg")
|
||||||
else:
|
else:
|
||||||
|
|
Binary file not shown.
Loading…
Reference in a new issue