gizmo semi functional?
This commit is contained in:
parent
ff0d1a5156
commit
42d238a2f8
7 changed files with 48 additions and 15 deletions
|
|
@ -102,9 +102,10 @@ script = ExtResource("1_so2ke")
|
||||||
jenga_manager = NodePath("..")
|
jenga_manager = NodePath("..")
|
||||||
scopes = Array[String](["chat:edit", "chat:read", "moderator:read:followers"])
|
scopes = Array[String](["chat:edit", "chat:read", "moderator:read:followers"])
|
||||||
|
|
||||||
[node name="CameraPivot" type="Node3D" parent="."]
|
[node name="CameraPivot" type="Node3D" parent="." node_paths=PackedStringArray("gizmo_pivot")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3.445, 0)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3.445, 0)
|
||||||
script = ExtResource("3_7e1m6")
|
script = ExtResource("3_7e1m6")
|
||||||
|
gizmo_pivot = NodePath("../UserInterface/SubViewportContainer/SubViewport/VCamPivot")
|
||||||
|
|
||||||
[node name="Camera3D" type="Camera3D" parent="CameraPivot"]
|
[node name="Camera3D" type="Camera3D" parent="CameraPivot"]
|
||||||
transform = Transform3D(1, 0, 0, 0, 0.819152, 0.573576, 0, -0.573576, 0.819152, 0, 0, 4.12)
|
transform = Transform3D(1, 0, 0, 0, 0.819152, 0.573576, 0, -0.573576, 0.819152, 0, 0, 4.12)
|
||||||
|
|
@ -126,12 +127,13 @@ mesh = SubResource("PlaneMesh_kyck2")
|
||||||
skeleton = NodePath("../..")
|
skeleton = NodePath("../..")
|
||||||
surface_material_override/0 = SubResource("ShaderMaterial_avbpb")
|
surface_material_override/0 = SubResource("ShaderMaterial_avbpb")
|
||||||
|
|
||||||
[node name="PlayerHand" type="Node3D" parent="." node_paths=PackedStringArray("blocks_node")]
|
[node name="PlayerHand" type="Node3D" parent="." node_paths=PackedStringArray("blocks_node", "gizmo_node")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.28028, 0)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.28028, 0)
|
||||||
script = ExtResource("4_kq4yo")
|
script = ExtResource("4_kq4yo")
|
||||||
moveScale = 0.5
|
moveScale = 0.5
|
||||||
block_scene = ExtResource("5_mn8hr")
|
block_scene = ExtResource("5_mn8hr")
|
||||||
blocks_node = NodePath("../Blocks")
|
blocks_node = NodePath("../Blocks")
|
||||||
|
gizmo_node = NodePath("../UserInterface/SubViewportContainer/SubViewport/TransformGizmo")
|
||||||
|
|
||||||
[node name="Blocks" type="Node3D" parent="."]
|
[node name="Blocks" type="Node3D" parent="."]
|
||||||
|
|
||||||
|
|
@ -182,13 +184,11 @@ grow_horizontal = 0
|
||||||
stretch = true
|
stretch = true
|
||||||
|
|
||||||
[node name="SubViewport" type="SubViewport" parent="UserInterface/SubViewportContainer"]
|
[node name="SubViewport" type="SubViewport" parent="UserInterface/SubViewportContainer"]
|
||||||
|
transparent_bg = true
|
||||||
|
handle_input_locally = false
|
||||||
size = Vector2i(128, 128)
|
size = Vector2i(128, 128)
|
||||||
size_2d_override = Vector2i(225, 190)
|
size_2d_override = Vector2i(225, 190)
|
||||||
|
render_target_update_mode = 4
|
||||||
[node name="Camera3D" type="Camera3D" parent="UserInterface/SubViewportContainer/SubViewport"]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 0.819152, 0.573576, 0, -0.573576, 0.819152, 0, 52.925, 4.12)
|
|
||||||
cull_mask = 524288
|
|
||||||
fov = 28.2
|
|
||||||
|
|
||||||
[node name="TransformGizmo" type="Node3D" parent="UserInterface/SubViewportContainer/SubViewport"]
|
[node name="TransformGizmo" type="Node3D" parent="UserInterface/SubViewportContainer/SubViewport"]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 50, 0)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 50, 0)
|
||||||
|
|
@ -258,6 +258,31 @@ material_override = ExtResource("8_2httq")
|
||||||
polygon = PackedVector2Array(0, 0, 0.2, 0.4, -0.2, 0.4)
|
polygon = PackedVector2Array(0, 0, 0.2, 0.4, -0.2, 0.4)
|
||||||
depth = 0.2
|
depth = 0.2
|
||||||
|
|
||||||
|
[node name="VCamPivot" type="Node3D" parent="UserInterface/SubViewportContainer/SubViewport"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 52.925, 0)
|
||||||
|
|
||||||
|
[node name="Camera3D" type="Camera3D" parent="UserInterface/SubViewportContainer/SubViewport/VCamPivot"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.819152, 0.573576, 0, -0.573576, 0.819152, 0, 0, 4.12)
|
||||||
|
cull_mask = 524288
|
||||||
|
fov = 28.2
|
||||||
|
|
||||||
|
[node name="VBoxContainer" type="VBoxContainer" parent="UserInterface"]
|
||||||
|
layout_mode = 0
|
||||||
|
offset_left = 991.0
|
||||||
|
offset_top = 1.0
|
||||||
|
offset_right = 1023.0
|
||||||
|
offset_bottom = 125.0
|
||||||
|
|
||||||
|
[node name="Label" type="RichTextLabel" parent="UserInterface/VBoxContainer"]
|
||||||
|
layout_mode = 2
|
||||||
|
bbcode_enabled = true
|
||||||
|
text = "[b][font_size=30][color=red]X[/color]
|
||||||
|
[color=green]Y[/color]
|
||||||
|
[color=blue]Z[/color]
|
||||||
|
[/font_size][/b]"
|
||||||
|
fit_content = true
|
||||||
|
|
||||||
|
[connection signal="dropBlock" from="TwitchLink" to="." method="_on_twitch_link_drop_block"]
|
||||||
[connection signal="dropBlock" from="TwitchLink" to="PlayerHand" method="_on_twitch_link_drop_block"]
|
[connection signal="dropBlock" from="TwitchLink" to="PlayerHand" method="_on_twitch_link_drop_block"]
|
||||||
[connection signal="moveBlock" from="TwitchLink" to="PlayerHand" method="_on_twitch_link_move_block"]
|
[connection signal="moveBlock" from="TwitchLink" to="PlayerHand" method="_on_twitch_link_move_block"]
|
||||||
[connection signal="rotateBlock" from="TwitchLink" to="PlayerHand" method="_on_twitch_link_rotate_block"]
|
[connection signal="rotateBlock" from="TwitchLink" to="PlayerHand" method="_on_twitch_link_rotate_block"]
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
[gd_resource type="StandardMaterial3D" format=3 uid="uid://bipwt04wjyv6v"]
|
[gd_resource type="StandardMaterial3D" format=3 uid="uid://bipwt04wjyv6v"]
|
||||||
|
|
||||||
[resource]
|
[resource]
|
||||||
albedo_color = Color(0, 0.792157, 0.172549, 1)
|
albedo_color = Color(0, 0.72549, 0.882353, 1)
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,4 @@
|
||||||
[gd_resource type="StandardMaterial3D" format=3 uid="uid://dd5vcwp8smlnt"]
|
[gd_resource type="StandardMaterial3D" format=3 uid="uid://dd5vcwp8smlnt"]
|
||||||
|
|
||||||
[resource]
|
[resource]
|
||||||
|
albedo_color = Color(0, 0.768627, 0.231373, 1)
|
||||||
|
|
|
||||||
|
|
@ -56,3 +56,7 @@ func _process(delta):
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
func _on_twitch_link_drop_block():
|
||||||
|
turn_timer = 0
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,9 @@ extends Node3D
|
||||||
@export var rotation_speed : float = 20 #degrees per second
|
@export var rotation_speed : float = 20 #degrees per second
|
||||||
@export var height_speed : float = 0.5 # m per second
|
@export var height_speed : float = 0.5 # m per second
|
||||||
|
|
||||||
|
@export_group("Node References")
|
||||||
|
@export var gizmo_pivot : Node3D
|
||||||
|
|
||||||
#Onready Variables
|
#Onready Variables
|
||||||
|
|
||||||
#Other Variables (please try to separate and organise!)
|
#Other Variables (please try to separate and organise!)
|
||||||
|
|
@ -37,6 +40,7 @@ func _process(delta):
|
||||||
else:
|
else:
|
||||||
rotation_degrees.y -= rotation_speed * delta
|
rotation_degrees.y -= rotation_speed * delta
|
||||||
pass
|
pass
|
||||||
|
gizmo_pivot.rotation_degrees.y = rotation_degrees.y
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region Signal methods
|
#region Signal methods
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,7 @@ extends Node3D
|
||||||
@export var block_scene : PackedScene
|
@export var block_scene : PackedScene
|
||||||
@export_group("Node References")
|
@export_group("Node References")
|
||||||
@export var blocks_node : Node3D
|
@export var blocks_node : Node3D
|
||||||
|
@export var gizmo_node : Node3D
|
||||||
|
|
||||||
#Onready Variables
|
#Onready Variables
|
||||||
|
|
||||||
|
|
@ -51,13 +52,11 @@ func _on_twitch_link_move_block(direction, amount):
|
||||||
func _on_twitch_link_rotate_block(direction, amount):
|
func _on_twitch_link_rotate_block(direction, amount):
|
||||||
var dir : Vector3
|
var dir : Vector3
|
||||||
match direction:
|
match direction:
|
||||||
"up": dir = Vector3.UP
|
"x": dir = Vector3.RIGHT
|
||||||
"down" : dir = Vector3.DOWN
|
"y" : dir = Vector3.UP
|
||||||
"north" : dir = Vector3.FORWARD
|
"z" : dir = Vector3.BACK
|
||||||
"east" : dir = Vector3.RIGHT
|
|
||||||
"south" : dir = Vector3.BACK
|
|
||||||
"west" : dir = Vector3.LEFT
|
|
||||||
rotation_degrees += dir * amount
|
rotation_degrees += dir * amount
|
||||||
|
gizmo_node.rotation_degrees = rotation_degrees
|
||||||
|
|
||||||
func _on_twitch_link_drop_block():
|
func _on_twitch_link_drop_block():
|
||||||
current_block.freeze = false
|
current_block.freeze = false
|
||||||
|
|
|
||||||
|
|
@ -183,7 +183,7 @@ func move(cmd_info : CommandInfo, arg_ary : PackedStringArray) -> void:
|
||||||
func rotate(cmd_info : CommandInfo, arg_ary : PackedStringArray) -> void:
|
func rotate(cmd_info : CommandInfo, arg_ary : PackedStringArray) -> void:
|
||||||
if(cmd_info.sender_data.tags["display-name"] == jenga_manager.current_player and jenga_manager.turn_started) :
|
if(cmd_info.sender_data.tags["display-name"] == jenga_manager.current_player and jenga_manager.turn_started) :
|
||||||
var chosenDirection = arg_ary[0].to_lower()
|
var chosenDirection = arg_ary[0].to_lower()
|
||||||
var validDirections = ["up","down","north","south","east","west"]
|
var validDirections = ["x","y","z"]
|
||||||
if(validDirections.has(chosenDirection)):
|
if(validDirections.has(chosenDirection)):
|
||||||
rotateBlock.emit(arg_ary[0],float(arg_ary[1]))
|
rotateBlock.emit(arg_ary[0],float(arg_ary[1]))
|
||||||
chat("rotating block " + arg_ary[0] + " by " + arg_ary[1] + " degrees")
|
chat("rotating block " + arg_ary[0] + " by " + arg_ary[1] + " degrees")
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue