Add recalling and summoning table
This commit is contained in:
		
							parent
							
								
									d0fbc077ec
								
							
						
					
					
						commit
						5331087313
					
				| @ -166,6 +166,11 @@ zoom_orbit_in={ | ||||
| "events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":16,"position":Vector2(336, 24),"global_position":Vector2(350, 94),"factor":1.0,"button_index":5,"canceled":false,"pressed":true,"double_click":false,"script":null) | ||||
| ] | ||||
| } | ||||
| toggle_table={ | ||||
| "deadzone": 0.5, | ||||
| "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":69,"key_label":0,"unicode":101,"location":0,"echo":false,"script":null) | ||||
| ] | ||||
| } | ||||
| 
 | ||||
| [internationalization] | ||||
| 
 | ||||
|  | ||||
| @ -74,8 +74,9 @@ size = Vector3(87.9724, 96.1174, 91.8458) | ||||
| transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0415039, 58.3319, 0.0198975) | ||||
| size = Vector3(43.3174, 26.5295, 43.4319) | ||||
| 
 | ||||
| [node name="Player" parent="." instance=ExtResource("10_3xiy2")] | ||||
| [node name="Player" parent="." node_paths=PackedStringArray("Table") instance=ExtResource("10_3xiy2")] | ||||
| transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.332064, 1.5426, 3.65156) | ||||
| Table = NodePath("../table") | ||||
| 
 | ||||
| [node name="table" parent="." node_paths=PackedStringArray("Hud", "TrenchbroomMap") instance=ExtResource("11_7trvw")] | ||||
| transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 2.83695, 0, -4.36558) | ||||
|  | ||||
| @ -29,6 +29,9 @@ namespace Gmtk24 { | ||||
|         public AudioStreamPlayer3D FootstepPlayer; | ||||
|         [Export] | ||||
|         public float FootstepNoiseInterval = 0.25f; | ||||
|         [ExportCategory("World")] | ||||
|         [Export] | ||||
|         public Table Table; | ||||
| 
 | ||||
|         private float CurrentYaw = 0; | ||||
|         private float CurrentPitch = 0; | ||||
| @ -62,6 +65,16 @@ namespace Gmtk24 { | ||||
|                 } | ||||
|                 GetViewport().SetInputAsHandled(); | ||||
|             } | ||||
| 
 | ||||
|             if (@event.IsActionPressed("toggle_table") && !Table.Orbit.IsEnabled) { | ||||
|                 if (Table.IsEnabled) | ||||
|                     Table.DisableTable(); | ||||
|                 else { | ||||
|                     var forward = Eye.Basis * Vector3.Forward; | ||||
|                     forward.Y = 0; | ||||
|                     Table.SpawnTable(Position + forward.Normalized() * 2, Position); | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         public override void _Process(double delta) { | ||||
|  | ||||
| @ -1,4 +1,5 @@ | ||||
| using Godot; | ||||
| using System; | ||||
| using System.Linq; | ||||
| 
 | ||||
| namespace Gmtk24 { | ||||
| @ -36,6 +37,8 @@ namespace Gmtk24 { | ||||
|         public BuildingBlock GhostBlock; | ||||
|         private Vector3 GhostBlockNormal; | ||||
| 
 | ||||
|         public bool IsEnabled { get => Visible == true; } | ||||
| 
 | ||||
|         // Called when the node enters the scene tree for the first time. | ||||
|         public override void _Ready() { | ||||
|             Orbit.Hud = Hud; | ||||
| @ -169,5 +172,22 @@ namespace Gmtk24 { | ||||
|             Plane.Visible = false; | ||||
|             Plane.ProcessMode = ProcessModeEnum.Disabled; | ||||
|         } | ||||
| 
 | ||||
|         public void DisableTable() { | ||||
|             Visible = false; | ||||
|             ProcessMode = ProcessModeEnum.Disabled; | ||||
|         } | ||||
| 
 | ||||
|         public void SpawnTable(Vector3 position, Vector3 lookAt) { | ||||
|             if (IsEnabled) | ||||
|                 return; | ||||
| 
 | ||||
|             Visible = true; | ||||
|             ProcessMode = ProcessModeEnum.Pausable; | ||||
|             Position = position; | ||||
|             lookAt.Y = 0; | ||||
|             LookAt(lookAt); | ||||
|             Rotate(Vector3.Up, (float)Math.PI / 2); | ||||
|         } | ||||
|     } | ||||
| } | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user