Browse Source

Port misc and plugin demos to Godot 3.1

Rémi Verschelde 6 years ago
parent
commit
cfcc0f3964
86 changed files with 703 additions and 3205 deletions
  1. 3 3
      misc/android_iap/iap.gd
  2. 0 83
      misc/android_iap/main.tscn
  3. 10 1
      misc/android_iap/project.godot
  4. 6 1
      misc/autoload/project.godot
  5. 3 38
      misc/autoload/scene_a.tscn
  6. 0 33
      misc/autoload/scene_b.tscn
  7. 13 15
      misc/background_load/background_load.gd
  8. 2 32
      misc/background_load/background_load.tscn
  9. 2 0
      misc/background_load/painting_babel.jpg.import
  10. 2 0
      misc/background_load/painting_las_meninas.png.import
  11. 2 0
      misc/background_load/painting_mona_lisa.jpg.import
  12. 2 0
      misc/background_load/painting_old_guitarist.jpg.import
  13. 2 0
      misc/background_load/painting_parasol.jpg.import
  14. 2 0
      misc/background_load/painting_the_swing.jpg.import
  15. 0 1
      misc/background_load/paintings.gd
  16. 8 33
      misc/background_load/paintings.tscn
  17. 3 0
      misc/background_load/project.godot
  18. 2 0
      misc/background_load/sculpture_david.jpg.import
  19. 2 0
      misc/background_load/sculpture_fountain.jpg.import
  20. 2 0
      misc/background_load/sculpture_four_parts_of_earth.jpg.import
  21. 2 0
      misc/background_load/sculpture_lincoln.jpg.import
  22. 2 0
      misc/background_load/sculpture_thinker.jpg.import
  23. 2 0
      misc/background_load/sculpture_venus.png.import
  24. 0 1
      misc/background_load/sculptures.gd
  25. 9 39
      misc/background_load/sculptures.tscn
  26. 6 26
      misc/instancing/ball.tscn
  27. 2 3
      misc/instancing/bowling_ball.png.import
  28. 2 3
      misc/instancing/container.png.import
  29. 41 23
      misc/instancing/container.tscn
  30. 2 3
      misc/instancing/icon.png.import
  31. 6 1
      misc/instancing/project.godot
  32. 1 1
      misc/joypads/joypads.gd
  33. 76 848
      misc/joypads/joypads.tscn
  34. 26 53
      misc/joypads/jsdiagram.tscn
  35. 10 1
      misc/joypads/project.godot
  36. 1 94
      misc/multitouch_cubes/CubeScene.tscn
  37. 0 1
      misc/multitouch_cubes/GestureArea.gd
  38. 38 246
      misc/multitouch_cubes/Main.tscn
  39. 0 75
      misc/multitouch_cubes/default_env.tres
  40. 31 0
      misc/multitouch_cubes/icon.png.import
  41. 6 1
      misc/multitouch_cubes/project.godot
  42. 1 1
      misc/multitouch_view/Main.gd
  43. 0 2
      misc/multitouch_view/Main.tscn
  44. 0 87
      misc/multitouch_view/default_env.tres
  45. 31 0
      misc/multitouch_view/icon.png.import
  46. 6 1
      misc/multitouch_view/project.godot
  47. 2 3
      misc/pause/icon.png.import
  48. 6 1
      misc/pause/project.godot
  49. 17 126
      misc/pause/spinpause.tscn
  50. 2 3
      misc/regex/icon.png.import
  51. 6 1
      misc/regex/project.godot
  52. 4 74
      misc/regex/regex.tscn
  53. 10 1
      misc/scene_changer/project.godot
  54. 0 33
      misc/scene_changer/scene_a.tscn
  55. 2 3
      misc/sensors/cube_6.png.import
  56. 0 90
      misc/sensors/default_env.tres
  57. 2 3
      misc/sensors/icon.png.import
  58. 21 482
      misc/sensors/main.tscn
  59. 6 1
      misc/sensors/project.godot
  60. 6 1
      misc/threads/project.godot
  61. 3 23
      misc/threads/thread.tscn
  62. 2 3
      misc/tween/godot.png.import
  63. 2 3
      misc/tween/icon.png.import
  64. 2 2
      misc/tween/main.gd
  65. 52 541
      misc/tween/main.tscn
  66. 10 1
      misc/tween/project.godot
  67. 1 1
      misc/window_management/control.gd
  68. 0 1
      misc/window_management/observer/observer.tscn
  69. 34 8
      misc/window_management/project.godot
  70. 0 2
      misc/window_management/window_management.tscn
  71. BIN
      plugins/custom_dock/custom_dock.scn
  72. 56 0
      plugins/custom_dock/custom_dock.tscn
  73. 2 10
      plugins/custom_dock/dock_plugin.gd
  74. 0 7
      plugins/custom_dock/plugin.cfg
  75. 2 2
      plugins/custom_import_plugin/import_plugin.gd
  76. 0 1
      plugins/custom_import_plugin/material_import.gd
  77. 14 0
      plugins/custom_import_plugin/test.mtxt.import
  78. 1 1
      plugins/custom_material_creator/custom_material_dock.tscn
  79. 4 6
      plugins/custom_material_creator/material_import.gd
  80. 1 1
      plugins/custom_material_creator/silly_material_creator.gd
  81. 0 0
      plugins/custom_material_creator/silly_material_resource.gd
  82. 3 4
      plugins/custom_node/heart.gd
  83. 31 0
      plugins/custom_node/heart.png.import
  84. 31 0
      plugins/custom_node/heart_icon.png.import
  85. 1 9
      plugins/custom_node/heart_plugin.gd
  86. 0 7
      plugins/custom_node/plugin.cfg

+ 3 - 3
misc/android_iap/iap.gd

@@ -38,7 +38,7 @@ func request_purchased():
 	if payment:
 		payment.requestPurchased()
 
-func has_purchased(receipt, signature, sku):
+func has_purchased(_receipt, _signature, sku):
 	if sku == "":
 		print("has_purchased : nothing")
 		emit_signal("has_purchased", null)
@@ -54,7 +54,7 @@ func purchase(item_name):
 		# transaction_id could be any string that used for validation internally in java
 		payment.purchase(item_name, "transaction_id")
 
-func purchase_success(receipt, signature, sku):
+func purchase_success(_receipt, _signature, sku):
 	print("purchase_success : ", sku)
 	emit_signal("purchase_success", sku)
 
@@ -82,7 +82,7 @@ func consume_all():
 	if payment:
 		payment.consumeUnconsumedPurchases()
 
-func consume_success(receipt, signature, sku):
+func consume_success(_receipt, _signature, sku):
 	print("consume_success : ", sku)
 	emit_signal("consume_success", sku)
 

+ 0 - 83
misc/android_iap/main.tscn

@@ -3,140 +3,61 @@
 [ext_resource path="res://iap_demo.gd" type="Script" id=1]
 
 [node name="Control" type="Control"]
-
-anchor_left = 0.0
-anchor_top = 0.0
 anchor_right = 1.0
 anchor_bottom = 1.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 script = ExtResource( 1 )
 
 [node name="purchase" type="Button" parent="."]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 40.0
 margin_top = 40.0
 margin_right = 250.0
 margin_bottom = 120.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "Purchase in app"
-flat = false
 
 [node name="consume" type="Button" parent="."]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 40.0
 margin_top = 150.0
 margin_right = 250.0
 margin_bottom = 230.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "Consume in app"
-flat = false
 
 [node name="request" type="Button" parent="."]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 40.0
 margin_top = 260.0
 margin_right = 250.0
 margin_bottom = 340.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "Request purchased"
-flat = false
 
 [node name="query" type="Button" parent="."]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 40.0
 margin_top = 370.0
 margin_right = 250.0
 margin_bottom = 450.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "Query in app items"
-flat = false
 
 [node name="alert" type="AcceptDialog" parent="."]
-
-visible = false
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 290.0
 margin_top = 60.0
 margin_right = 700.0
 margin_bottom = 290.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-popup_exclusive = false
-window_title = "Alert!"
-resizable = false
-dialog_hide_on_ok = true
 
 [node name="Label" type="Label" parent="."]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 300.0
 margin_top = 40.0
 margin_right = 932.0
 margin_bottom = 207.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 2
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "\"iap\" is located in Autoloads. See Project > Project Settings > AutoLoad
@@ -156,8 +77,4 @@ To test in-app purchase on android device,
     (It's not published to public, but you and tester can access it.)
 3. There should be activated in-app item
 4. Any changes on Developer console will take 2~3 hours to take effect"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
 

+ 10 - 1
misc/android_iap/project.godot

@@ -6,7 +6,12 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [android]
 
@@ -22,6 +27,10 @@ config/icon="res://icon.png"
 
 iap="*res://iap.gd"
 
+[debug]
+
+gdscript/warnings/return_value_discarded=false
+
 [gdnative]
 
 singletons=[  ]

+ 6 - 1
misc/autoload/project.godot

@@ -6,7 +6,12 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 

+ 3 - 38
misc/autoload/scene_a.tscn

@@ -2,63 +2,28 @@
 
 [ext_resource path="res://scene_a.gd" type="Script" id=1]
 
-[node name="scene_a" type="Panel" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
+[node name="scene_a" type="Panel"]
 anchor_right = 1.0
 anchor_bottom = 1.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 script = ExtResource( 1 )
 
-[node name="label" type="Label" parent="." index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="label" type="Label" parent="."]
 margin_left = 64.0
 margin_top = 48.0
 margin_right = 104.0
 margin_bottom = 62.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
 size_flags_vertical = 0
 text = "This is scene A."
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="goto_scene" type="Button" parent="." index="1"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="goto_scene" type="Button" parent="."]
 margin_left = 64.0
 margin_top = 128.0
 margin_right = 192.0
 margin_bottom = 160.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "Go to Scene B"
-flat = false
-align = 1
 
 [connection signal="pressed" from="goto_scene" to="." method="_on_goto_scene_pressed"]
-
-

+ 0 - 33
misc/autoload/scene_b.tscn

@@ -3,60 +3,27 @@
 [ext_resource path="res://scene_b.gd" type="Script" id=1]
 
 [node name="scene_b" type="Panel"]
-
-anchor_left = 0.0
-anchor_top = 0.0
 anchor_right = 1.0
 anchor_bottom = 1.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 script = ExtResource( 1 )
 
 [node name="label" type="Label" parent="."]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 64.0
 margin_top = 48.0
 margin_right = 164.0
 margin_bottom = 62.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 2
-size_flags_horizontal = 1
 size_flags_vertical = 0
 text = "This is scene B."
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
 [node name="goto_scene" type="Button" parent="."]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 64.0
 margin_top = 128.0
 margin_right = 192.0
 margin_bottom = 160.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "Go to Scene A"
-flat = false
 
 [connection signal="pressed" from="goto_scene" to="." method="_on_goto_scene_pressed"]
-
-

+ 13 - 15
misc/background_load/background_load.gd

@@ -1,7 +1,5 @@
 extends Control
 
-var current_scene = null
-
 var thread = null
 
 onready var progress = $progress
@@ -10,35 +8,35 @@ var SIMULATED_DELAY_SEC = 1.0
 
 func _thread_load(path):
 	var ril = ResourceLoader.load_interactive(path)
-	assert( ril )
+	assert(ril)
 	var total = ril.get_stage_count()
 	# Call deferred to configure max load steps
-	progress.call_deferred("set_max",total)
+	progress.call_deferred("set_max", total)
 	
 	var res = null
 	
-	while (true): #iterate until we have a resource
+	while true: #iterate until we have a resource
 		# Update progress bar, use call deferred, which routes to main thread
-		progress.call_deferred("set_value",ril.get_stage())
+		progress.call_deferred("set_value", ril.get_stage())
 		# Simulate a delay
-		OS.delay_msec( SIMULATED_DELAY_SEC * 1000.0 )
+		OS.delay_msec(SIMULATED_DELAY_SEC * 1000.0)
 		# Poll (does a load step)
 		var err = ril.poll()
 		# if OK, then load another one. If EOF, it' s done. Otherwise there was an error.
-		if ( err == ERR_FILE_EOF):
-			#loading done, fetch resource
+		if err == ERR_FILE_EOF:
+			# Loading done, fetch resource
 			res = ril.get_resource()
 			break
-		elif (err != OK):
-			#Not OK, there was an error
+		elif err != OK:
+			# Not OK, there was an error
 			print("There was an error loading")
 			break
 	
 	# Send whathever we did (or not) get
-	call_deferred("_thread_done",res)
+	call_deferred("_thread_done", res)
 
 func _thread_done(resource):
-	assert( resource )
+	assert(resource)
 	
 	# Always wait for threads to finish, this is required on Windows
 	thread.wait_to_finish()
@@ -52,7 +50,7 @@ func _thread_done(resource):
 	get_tree().current_scene.free()
 	get_tree().current_scene = null
 	# Add new one to root
-	get_tree().root.add_child( new_scene ) 
+	get_tree().root.add_child(new_scene) 
 	# Set as current scene
 	get_tree().current_scene = new_scene
 	
@@ -62,7 +60,7 @@ func load_scene(path):
 	
 	thread = Thread.new()
 	thread.start( self, "_thread_load", path)
-	raise() #show on top
+	raise() # show on top
 	progress.visible = true
 
 	

+ 2 - 32
misc/background_load/background_load.tscn

@@ -2,44 +2,14 @@
 
 [ext_resource path="res://background_load.gd" type="Script" id=1]
 
-[node name="bgload" type="Control" index="0"]
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 1
+[node name="bgload" type="Control"]
 script = ExtResource( 1 )
 
-[node name="progress" type="ProgressBar" parent="." index="0"]
+[node name="progress" type="ProgressBar" parent="."]
 visible = false
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 7.0
 margin_top = 8.0
 margin_right = 207.0
 margin_bottom = 22.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 0
-min_value = 0.0
-max_value = 100.0
 step = 1.0
-page = 0.0
-value = 0.0
-exp_edit = false
-rounded = false
-allow_greater = false
-allow_lesser = false
-percent_visible = true
-_sections_unfolded = [ "Visibility" ]
 

+ 2 - 0
misc/background_load/painting_babel.jpg.import

@@ -14,6 +14,7 @@ dest_files=[ "res://.import/painting_babel.jpg-bb6b7c64c260f78ce43012bcac8a1c4e.
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -23,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 2 - 0
misc/background_load/painting_las_meninas.png.import

@@ -14,6 +14,7 @@ dest_files=[ "res://.import/painting_las_meninas.png-158bef53fe63c53626df2020827
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -23,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 2 - 0
misc/background_load/painting_mona_lisa.jpg.import

@@ -14,6 +14,7 @@ dest_files=[ "res://.import/painting_mona_lisa.jpg-cefdc64dfa49e9ee9566b078597cd
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -23,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 2 - 0
misc/background_load/painting_old_guitarist.jpg.import

@@ -14,6 +14,7 @@ dest_files=[ "res://.import/painting_old_guitarist.jpg-f04ba627b38b0def60d96cb6c
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -23,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 2 - 0
misc/background_load/painting_parasol.jpg.import

@@ -14,6 +14,7 @@ dest_files=[ "res://.import/painting_parasol.jpg-2864da595fcb4f0e842ba9c49097a05
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -23,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 2 - 0
misc/background_load/painting_the_swing.jpg.import

@@ -14,6 +14,7 @@ dest_files=[ "res://.import/painting_the_swing.jpg-1303041ac03cbc85efa4b07ce56ef
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -23,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 0 - 1
misc/background_load/paintings.gd

@@ -1,6 +1,5 @@
 extends Node2D
 
-
 func _on_switch_pressed():
 	$switch.hide()
 	background_load.load_scene("res://sculptures.tscn")

+ 8 - 33
misc/background_load/paintings.tscn

@@ -9,11 +9,9 @@
 [ext_resource path="res://painting_the_swing.jpg" type="Texture" id=7]
 
 [sub_resource type="Animation" id=1]
-
 resource_name = "move_around"
 length = 4.0
 loop = true
-step = 0.1
 tracks/0/type = "value"
 tracks/0/path = NodePath("painting_mona_lisa:position")
 tracks/0/interp = 2
@@ -162,68 +160,45 @@ tracks/11/keys = {
 [node name="Node2D" type="Node2D"]
 script = ExtResource( 1 )
 
-[node name="painting_parasol" type="Sprite" parent="." index="0"]
+[node name="painting_parasol" type="Sprite" parent="."]
 position = Vector2( 451.448, 256.916 )
 scale = Vector2( 0.557998, 0.557998 )
 texture = ExtResource( 2 )
 
-[node name="painting_babel" type="Sprite" parent="." index="1"]
+[node name="painting_babel" type="Sprite" parent="."]
 position = Vector2( 155.796, 468.287 )
 scale = Vector2( 0.29005, 0.29005 )
 texture = ExtResource( 3 )
 
-[node name="painting_mona_lisa" type="Sprite" parent="." index="2"]
+[node name="painting_mona_lisa" type="Sprite" parent="."]
 position = Vector2( 117.659, 173.793 )
 scale = Vector2( 0.696799, 0.696799 )
 texture = ExtResource( 4 )
-_sections_unfolded = [ "Transform" ]
 
-[node name="painting_las_meninas" type="Sprite" parent="." index="3"]
+[node name="painting_las_meninas" type="Sprite" parent="."]
 position = Vector2( 861.734, 494.059 )
 scale = Vector2( 0.348146, 0.348146 )
 texture = ExtResource( 5 )
 
-[node name="painting_old_guitarist" type="Sprite" parent="." index="4"]
+[node name="painting_old_guitarist" type="Sprite" parent="."]
 position = Vector2( 886.982, 185.641 )
 scale = Vector2( 0.344706, 0.328421 )
 texture = ExtResource( 6 )
 
-[node name="painting_the_swing" type="Sprite" parent="." index="5"]
+[node name="painting_the_swing" type="Sprite" parent="."]
 position = Vector2( 715.927, 181.745 )
 scale = Vector2( 0.286677, 0.286677 )
 texture = ExtResource( 7 )
 
-[node name="AnimationPlayer" type="AnimationPlayer" parent="." index="6"]
-root_node = NodePath("..")
+[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
 autoplay = "move_around"
-playback_process_mode = 1
-playback_default_blend_time = 0.0
-playback_speed = 1.0
 anims/move_around = SubResource( 1 )
-blend_times = [  ]
 
-[node name="switch" type="Button" parent="." index="7"]
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="switch" type="Button" parent="."]
 margin_left = 6.0
 margin_top = 7.0
 margin_right = 152.0
 margin_bottom = 27.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 1
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "Switch to Sulptures"
-flat = false
-align = 1
 
 [connection signal="pressed" from="switch" to="." method="_on_switch_pressed"]

+ 3 - 0
misc/background_load/project.godot

@@ -9,6 +9,9 @@
 config_version=4
 
 _global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 

+ 2 - 0
misc/background_load/sculpture_david.jpg.import

@@ -14,6 +14,7 @@ dest_files=[ "res://.import/sculpture_david.jpg-48aeb7cb164d32e6f17209e6764b659c
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -23,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 2 - 0
misc/background_load/sculpture_fountain.jpg.import

@@ -14,6 +14,7 @@ dest_files=[ "res://.import/sculpture_fountain.jpg-dac3819d7eb39b78d36e9f6504d09
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -23,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 2 - 0
misc/background_load/sculpture_four_parts_of_earth.jpg.import

@@ -14,6 +14,7 @@ dest_files=[ "res://.import/sculpture_four_parts_of_earth.jpg-6d7b17284103f155af
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -23,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 2 - 0
misc/background_load/sculpture_lincoln.jpg.import

@@ -14,6 +14,7 @@ dest_files=[ "res://.import/sculpture_lincoln.jpg-2309a3ef73573c72052204394b916e
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -23,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 2 - 0
misc/background_load/sculpture_thinker.jpg.import

@@ -14,6 +14,7 @@ dest_files=[ "res://.import/sculpture_thinker.jpg-d13623267c5f848cecaa2bb8bb609f
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -23,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 2 - 0
misc/background_load/sculpture_venus.png.import

@@ -14,6 +14,7 @@ dest_files=[ "res://.import/sculpture_venus.png-ce0240c8ebb6a0aae05e92456d21d8f3
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -23,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 0 - 1
misc/background_load/sculptures.gd

@@ -1,6 +1,5 @@
 extends Node2D
 
-
 func _on_switch_pressed():
 	$switch.hide()
 	background_load.load_scene("res://paintings.tscn")

+ 9 - 39
misc/background_load/sculptures.tscn

@@ -9,11 +9,9 @@
 [ext_resource path="res://sculpture_venus.png" type="Texture" id=7]
 
 [sub_resource type="Animation" id=1]
-
 resource_name = "colorcycle"
 length = 8.0
 loop = true
-step = 0.1
 tracks/0/type = "value"
 tracks/0/path = NodePath("sculpture_four_parts_of_earth:modulate")
 tracks/0/interp = 1
@@ -87,76 +85,48 @@ tracks/5/keys = {
 "values": [ Color( 1, 1, 1, 1 ), Color( 0, 0, 0, 1 ) ]
 }
 
-[node name="Node2D" type="Node2D" index="0"]
+[node name="Node2D" type="Node2D"]
 script = ExtResource( 1 )
 
-[node name="sculpture_fountain" type="Sprite" parent="." index="0"]
+[node name="sculpture_fountain" type="Sprite" parent="."]
 position = Vector2( 152.971, 513.499 )
 scale = Vector2( 0.191615, 0.191615 )
 texture = ExtResource( 2 )
-_sections_unfolded = [ "Visibility" ]
 
-[node name="sculpture_four_parts_of_earth" type="Sprite" parent="." index="1"]
+[node name="sculpture_four_parts_of_earth" type="Sprite" parent="."]
 position = Vector2( 480.743, 588.027 )
 scale = Vector2( 0.198693, 0.198693 )
 texture = ExtResource( 3 )
-_sections_unfolded = [ "Visibility" ]
 
-[node name="sculpture_david" type="Sprite" parent="." index="2"]
+[node name="sculpture_david" type="Sprite" parent="."]
 position = Vector2( 567.784, 196.577 )
 scale = Vector2( 0.447348, 0.447348 )
 texture = ExtResource( 4 )
-_sections_unfolded = [ "Visibility" ]
 
-[node name="sculpture_lincoln" type="Sprite" parent="." index="3"]
+[node name="sculpture_lincoln" type="Sprite" parent="."]
 position = Vector2( 211.852, 203.688 )
 scale = Vector2( 0.386179, 0.378971 )
 texture = ExtResource( 5 )
-_sections_unfolded = [ "Visibility" ]
 
-[node name="sculpture_thinker" type="Sprite" parent="." index="4"]
+[node name="sculpture_thinker" type="Sprite" parent="."]
 position = Vector2( 854.336, 202.363 )
 scale = Vector2( 0.182302, 0.182302 )
 texture = ExtResource( 6 )
-_sections_unfolded = [ "Visibility" ]
 
-[node name="sculpture_venus" type="Sprite" parent="." index="5"]
+[node name="sculpture_venus" type="Sprite" parent="."]
 position = Vector2( 848.731, 495.153 )
 scale = Vector2( 0.402249, 0.402249 )
 texture = ExtResource( 7 )
-_sections_unfolded = [ "Visibility" ]
 
-[node name="AnimationPlayer" type="AnimationPlayer" parent="." index="6"]
-root_node = NodePath("..")
+[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
 autoplay = "colorcycle"
-playback_process_mode = 1
-playback_default_blend_time = 0.0
-playback_speed = 1.0
 anims/colorcycle = SubResource( 1 )
-blend_times = [  ]
 
-[node name="switch" type="Button" parent="." index="7"]
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="switch" type="Button" parent="."]
 margin_left = 5.0
 margin_top = 6.0
 margin_right = 137.0
 margin_bottom = 26.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 1
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "Switch to Paintings"
-flat = false
-align = 1
 
 [connection signal="pressed" from="switch" to="." method="_on_switch_pressed"]

+ 6 - 26
misc/instancing/ball.tscn

@@ -1,39 +1,19 @@
-[gd_scene load_steps=3 format=2]
+[gd_scene load_steps=4 format=2]
 
 [ext_resource path="res://bowling_ball.png" type="Texture" id=1]
 
-[sub_resource type="CircleShape2D" id=1]
+[sub_resource type="PhysicsMaterial" id=1]
+bounce = 0.4
 
-custom_solver_bias = 0.0
+[sub_resource type="CircleShape2D" id=2]
 radius = 30.0
 
 [node name="ball" type="RigidBody2D"]
-
-input_pickable = false
-collision_layer = 1
-collision_mask = 1
-mode = 0
-mass = 1.0
-friction = 1.0
-bounce = 0.4
-gravity_scale = 1.0
-custom_integrator = false
-continuous_cd = 0
-contacts_reported = 0
-contact_monitor = false
-sleeping = false
-can_sleep = true
-linear_velocity = Vector2( 0, 0 )
-linear_damp = -1.0
-angular_velocity = 0.0
-angular_damp = -1.0
+physics_material_override = SubResource( 1 )
 
 [node name="sprite" type="Sprite" parent="."]
-
 texture = ExtResource( 1 )
 
 [node name="collision" type="CollisionShape2D" parent="."]
-
-shape = SubResource( 1 )
-
+shape = SubResource( 2 )
 

+ 2 - 3
misc/instancing/bowling_ball.png.import

@@ -7,16 +7,14 @@ path="res://.import/bowling_ball.png-0fe48f78a8537b41cee7fd03e5ee14fe.stex"
 [deps]
 
 source_file="res://bowling_ball.png"
-source_md5="ed6ee0994bbfefa88886b9c0844fd911"
-
 dest_files=[ "res://.import/bowling_ball.png-0fe48f78a8537b41cee7fd03e5ee14fe.stex" ]
-dest_md5="486e2c71579c634163b4521aeb93c256"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 2 - 3
misc/instancing/container.png.import

@@ -7,16 +7,14 @@ path="res://.import/container.png-08b8c30d2209234da421d1db5c67b811.stex"
 [deps]
 
 source_file="res://container.png"
-source_md5="3bb268159ba0d05e281b2218e48c8ce8"
-
 dest_files=[ "res://.import/container.png-08b8c30d2209234da421d1db5c67b811.stex" ]
-dest_md5="5c570503eb858bbf6a495ff5fac6653e"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 41 - 23
misc/instancing/container.tscn

@@ -1,69 +1,87 @@
-[gd_scene load_steps=3 format=2]
+[gd_scene load_steps=13 format=2]
 
 [ext_resource path="res://container.png" type="Texture" id=1]
 [ext_resource path="res://ball.tscn" type="PackedScene" id=2]
 
+[sub_resource type="PhysicsMaterial" id=1]
+bounce = 0.4
+
+[sub_resource type="PhysicsMaterial" id=2]
+bounce = 0.4
+
+[sub_resource type="PhysicsMaterial" id=3]
+bounce = 0.4
+
+[sub_resource type="PhysicsMaterial" id=4]
+bounce = 0.4
+
+[sub_resource type="PhysicsMaterial" id=5]
+bounce = 0.4
+
+[sub_resource type="PhysicsMaterial" id=6]
+bounce = 0.4
+
+[sub_resource type="PhysicsMaterial" id=7]
+bounce = 0.4
+
+[sub_resource type="PhysicsMaterial" id=8]
+bounce = 0.4
+
+[sub_resource type="PhysicsMaterial" id=9]
+bounce = 0.4
+
+[sub_resource type="PhysicsMaterial" id=10]
+bounce = 0.4
+
 [node name="container" type="Node"]
 
 [node name="static" type="StaticBody2D" parent="."]
 
-input_pickable = false
-collision_layer = 1
-collision_mask = 1
-constant_linear_velocity = Vector2( 0, 0 )
-constant_angular_velocity = 0.0
-friction = 1.0
-bounce = 0.0
-
 [node name="sprite" type="Sprite" parent="static"]
-
 position = Vector2( 3, -4 )
 texture = ExtResource( 1 )
 centered = false
 
 [node name="collision" type="CollisionPolygon2D" parent="static"]
-
-build_mode = 0
 polygon = PoolVector2Array( 8.68994, 22.1976, 50.4445, 556.656, 292.621, 501.54, 335.36, 550.855, 510.039, 563.135, 542.137, 526.368, 567.463, 515.822, 612.463, 506.822, 667.291, 495.079, 747.553, 553.575, 793.806, 6.70509, 802.465, 601.097, 4.43558, 596.186 )
 
 [node name="ball 1" parent="." instance=ExtResource( 2 )]
-
 position = Vector2( 223.823, 161.773 )
+physics_material_override = SubResource( 1 )
 
 [node name="ball 2" parent="." instance=ExtResource( 2 )]
-
 position = Vector2( 388.078, 213.215 )
+physics_material_override = SubResource( 2 )
 
 [node name="ball 3" parent="." instance=ExtResource( 2 )]
-
 position = Vector2( 439.52, 104.013 )
+physics_material_override = SubResource( 3 )
 
 [node name="ball 4" parent="." instance=ExtResource( 2 )]
-
 position = Vector2( 235.555, 336.858 )
+physics_material_override = SubResource( 4 )
 
 [node name="ball 5" parent="." instance=ExtResource( 2 )]
-
 position = Vector2( 509.555, 362.858 )
+physics_material_override = SubResource( 5 )
 
 [node name="ball 6" parent="." instance=ExtResource( 2 )]
-
 position = Vector2( 635.555, 147.858 )
+physics_material_override = SubResource( 6 )
 
 [node name="ball 7" parent="." instance=ExtResource( 2 )]
-
 position = Vector2( 631.872, 325.88 )
+physics_material_override = SubResource( 7 )
 
 [node name="ball 8" parent="." instance=ExtResource( 2 )]
-
 position = Vector2( 529.97, 205.561 )
+physics_material_override = SubResource( 8 )
 
 [node name="ball 9" parent="." instance=ExtResource( 2 )]
-
 position = Vector2( 101.489, 167.502 )
+physics_material_override = SubResource( 9 )
 
 [node name="ball 10" parent="." instance=ExtResource( 2 )]
-
 position = Vector2( 143.756, 295.139 )
-
+physics_material_override = SubResource( 10 )
 

+ 2 - 3
misc/instancing/icon.png.import

@@ -7,16 +7,14 @@ path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
 [deps]
 
 source_file="res://icon.png"
-source_md5="e70abe25cc26c842c92db68acfe39dbb"
-
 dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ]
-dest_md5="c3a615657e792c23f1442ea6f3eb334a"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 6 - 1
misc/instancing/project.godot

@@ -6,7 +6,12 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 

+ 1 - 1
misc/joypads/joypads.gd

@@ -14,7 +14,7 @@ var axis_value
 
 const DEADZONE = 0.2
 
-func _physics_process(delta):
+func _physics_process(_delta):
 	# Get the joypad device number from the spinbox
 	joy_num = get_node("device_info/joy_num").get_value()
 

+ 76 - 848
misc/joypads/joypads.tscn

@@ -3,1421 +3,649 @@
 [ext_resource path="res://joypads.gd" type="Script" id=1]
 [ext_resource path="res://jsdiagram.tscn" type="PackedScene" id=2]
 
-[node name="joypads" type="Node2D" index="0"]
-
+[node name="joypads" type="Node2D"]
 script = ExtResource( 1 )
 
-[node name="diagram" parent="." index="0" instance=ExtResource( 2 )]
-
+[node name="diagram" parent="." instance=ExtResource( 2 )]
 position = Vector2( 400, 200 )
 
-[node name="device_info" type="Control" parent="." index="1"]
-
+[node name="device_info" type="Control" parent="."]
 editor/display_folded = true
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_right = 40.0
 margin_bottom = 40.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 1
-
-[node name="label_device" type="Label" parent="device_info" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+
+[node name="label_device" type="Label" parent="device_info"]
 margin_left = 10.0
 margin_top = 10.0
 margin_right = 60.0
 margin_bottom = 30.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Device"
 valign = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="joy_num" type="SpinBox" parent="device_info" index="1"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="joy_num" type="SpinBox" parent="device_info"]
 margin_left = 65.0
 margin_top = 10.0
 margin_right = 139.0
 margin_bottom = 34.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-min_value = 0.0
 max_value = 16.0
-step = 1.0
-page = 0.0
-value = 0.0
-exp_edit = false
-rounded = false
-editable = true
-prefix = ""
-suffix = ""
-
-[node name="joy_name" type="Label" parent="device_info" index="2"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+
+[node name="joy_name" type="Label" parent="device_info"]
 margin_left = 10.0
 margin_top = 35.0
 margin_right = 250.0
 margin_bottom = 50.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 custom_colors/font_color = Color( 0.229156, 1, 0.239205, 1 )
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="axes" type="Control" parent="." index="2"]
 
+[node name="axes" type="Control" parent="."]
 editor/display_folded = true
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_right = 40.0
 margin_bottom = 40.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 1
-
-[node name="axis_prog0" type="ProgressBar" parent="axes" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+
+[node name="axis_prog0" type="ProgressBar" parent="axes"]
 margin_left = 60.0
 margin_top = 60.0
 margin_right = 260.0
 margin_bottom = 76.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
-size_flags_vertical = 0
 min_value = -100.0
-max_value = 100.0
 step = 0.0001
-page = 0.0
-value = 0.0
-exp_edit = false
-rounded = false
 percent_visible = false
 
-[node name="axis_prog1" type="ProgressBar" parent="axes" index="1"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="axis_prog1" type="ProgressBar" parent="axes"]
 margin_left = 60.0
 margin_top = 80.0
 margin_right = 260.0
 margin_bottom = 96.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
-size_flags_vertical = 0
 min_value = -100.0
-max_value = 100.0
 step = 0.0001
-page = 0.0
-value = 0.0
-exp_edit = false
-rounded = false
 percent_visible = false
 
-[node name="axis_prog2" type="ProgressBar" parent="axes" index="2"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="axis_prog2" type="ProgressBar" parent="axes"]
 margin_left = 60.0
 margin_top = 100.0
 margin_right = 260.0
 margin_bottom = 116.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
-size_flags_vertical = 0
 min_value = -100.0
-max_value = 100.0
 step = 0.0001
-page = 0.0
-value = 0.0
-exp_edit = false
-rounded = false
 percent_visible = false
 
-[node name="axis_prog3" type="ProgressBar" parent="axes" index="3"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="axis_prog3" type="ProgressBar" parent="axes"]
 margin_left = 60.0
 margin_top = 120.0
 margin_right = 260.0
 margin_bottom = 136.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
-size_flags_vertical = 0
 min_value = -100.0
-max_value = 100.0
 step = 0.0001
-page = 0.0
-value = 0.0
-exp_edit = false
-rounded = false
 percent_visible = false
 
-[node name="axis_prog4" type="ProgressBar" parent="axes" index="4"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="axis_prog4" type="ProgressBar" parent="axes"]
 margin_left = 60.0
 margin_top = 140.0
 margin_right = 260.0
 margin_bottom = 156.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
-size_flags_vertical = 0
 min_value = -100.0
-max_value = 100.0
 step = 0.0001
-page = 0.0
-value = 0.0
-exp_edit = false
-rounded = false
 percent_visible = false
 
-[node name="axis_prog5" type="ProgressBar" parent="axes" index="5"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="axis_prog5" type="ProgressBar" parent="axes"]
 margin_left = 60.0
 margin_top = 160.0
 margin_right = 260.0
 margin_bottom = 176.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
-size_flags_vertical = 0
 min_value = -100.0
-max_value = 100.0
 step = 0.0001
-page = 0.0
-value = 0.0
-exp_edit = false
-rounded = false
 percent_visible = false
 
-[node name="axis_prog6" type="ProgressBar" parent="axes" index="6"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="axis_prog6" type="ProgressBar" parent="axes"]
 margin_left = 60.0
 margin_top = 180.0
 margin_right = 260.0
 margin_bottom = 196.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
-size_flags_vertical = 0
 min_value = -100.0
-max_value = 100.0
 step = 0.0001
-page = 0.0
-value = 0.0
-exp_edit = false
-rounded = false
 percent_visible = false
 
-[node name="axis_prog7" type="ProgressBar" parent="axes" index="7"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="axis_prog7" type="ProgressBar" parent="axes"]
 margin_left = 60.0
 margin_top = 200.0
 margin_right = 260.0
 margin_bottom = 216.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
-size_flags_vertical = 0
 min_value = -100.0
-max_value = 100.0
 step = 0.0001
-page = 0.0
-value = 0.0
-exp_edit = false
-rounded = false
 percent_visible = false
 
-[node name="axis_prog8" type="ProgressBar" parent="axes" index="8"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="axis_prog8" type="ProgressBar" parent="axes"]
 margin_left = 60.0
 margin_top = 220.0
 margin_right = 260.0
 margin_bottom = 236.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
-size_flags_vertical = 0
 min_value = -100.0
-max_value = 100.0
 step = 0.0001
-page = 0.0
-value = 0.0
-exp_edit = false
-rounded = false
 percent_visible = false
 
-[node name="axis_prog9" type="ProgressBar" parent="axes" index="9"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="axis_prog9" type="ProgressBar" parent="axes"]
 margin_left = 60.0
 margin_top = 240.0
 margin_right = 260.0
 margin_bottom = 256.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
-size_flags_vertical = 0
 min_value = -100.0
-max_value = 100.0
 step = 0.0001
-page = 0.0
-value = 0.0
-exp_edit = false
-rounded = false
 percent_visible = false
 
-[node name="axis_prog10" type="ProgressBar" parent="axes" index="10"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="axis_prog10" type="ProgressBar" parent="axes"]
 margin_left = 60.0
 margin_top = 260.0
 margin_right = 260.0
 margin_bottom = 276.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
-size_flags_vertical = 0
 min_value = -100.0
-max_value = 100.0
 step = 0.0001
-page = 0.0
-value = 0.0
-exp_edit = false
-rounded = false
 percent_visible = false
 
-[node name="axis_val0" type="Label" parent="axes" index="11"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="axis_val0" type="Label" parent="axes"]
 margin_left = 60.0
 margin_top = 60.0
 margin_right = 260.0
 margin_bottom = 75.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "0"
 align = 1
 valign = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
-[node name="axis_val1" type="Label" parent="axes" index="12"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="axis_val1" type="Label" parent="axes"]
 margin_left = 60.0
 margin_top = 80.0
 margin_right = 260.0
 margin_bottom = 95.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "0"
 align = 1
 valign = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="axis_val2" type="Label" parent="axes" index="13"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="axis_val2" type="Label" parent="axes"]
 margin_left = 60.0
 margin_top = 100.0
 margin_right = 260.0
 margin_bottom = 115.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "0"
 align = 1
 valign = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
-[node name="axis_val3" type="Label" parent="axes" index="14"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="axis_val3" type="Label" parent="axes"]
 margin_left = 60.0
 margin_top = 120.0
 margin_right = 260.0
 margin_bottom = 135.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "0"
 align = 1
 valign = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="axis_val4" type="Label" parent="axes" index="15"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="axis_val4" type="Label" parent="axes"]
 margin_left = 60.0
 margin_top = 140.0
 margin_right = 260.0
 margin_bottom = 155.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "0"
 align = 1
 valign = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="axis_val5" type="Label" parent="axes" index="16"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="axis_val5" type="Label" parent="axes"]
 margin_left = 60.0
 margin_top = 160.0
 margin_right = 260.0
 margin_bottom = 175.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "0"
 align = 1
 valign = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
-[node name="axis_val6" type="Label" parent="axes" index="17"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="axis_val6" type="Label" parent="axes"]
 margin_left = 60.0
 margin_top = 180.0
 margin_right = 260.0
 margin_bottom = 195.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "0"
 align = 1
 valign = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="axis_val7" type="Label" parent="axes" index="18"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="axis_val7" type="Label" parent="axes"]
 margin_left = 60.0
 margin_top = 200.0
 margin_right = 260.0
 margin_bottom = 215.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "0"
 align = 1
 valign = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
-[node name="axis_val8" type="Label" parent="axes" index="19"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="axis_val8" type="Label" parent="axes"]
 margin_left = 60.0
 margin_top = 220.0
 margin_right = 260.0
 margin_bottom = 235.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "0"
 align = 1
 valign = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="axis_val9" type="Label" parent="axes" index="20"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="axis_val9" type="Label" parent="axes"]
 margin_left = 60.0
 margin_top = 240.0
 margin_right = 260.0
 margin_bottom = 255.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "0"
 align = 1
 valign = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="axis_val10" type="Label" parent="axes" index="21"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="axis_val10" type="Label" parent="axes"]
 margin_left = 60.0
 margin_top = 260.0
 margin_right = 260.0
 margin_bottom = 275.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "0"
 align = 1
 valign = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
-[node name="label_axis0" type="Label" parent="axes" index="22"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="label_axis0" type="Label" parent="axes"]
 margin_left = 10.0
 margin_top = 60.0
 margin_right = 51.0
 margin_bottom = 75.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Axis 0"
 valign = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="label_axis1" type="Label" parent="axes" index="23"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="label_axis1" type="Label" parent="axes"]
 margin_left = 10.0
 margin_top = 80.0
 margin_right = 51.0
 margin_bottom = 95.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Axis 1"
 valign = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
-[node name="label_axis2" type="Label" parent="axes" index="24"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="label_axis2" type="Label" parent="axes"]
 margin_left = 10.0
 margin_top = 100.0
 margin_right = 51.0
 margin_bottom = 115.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Axis 2"
 valign = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="label_axis3" type="Label" parent="axes" index="25"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="label_axis3" type="Label" parent="axes"]
 margin_left = 10.0
 margin_top = 120.0
 margin_right = 51.0
 margin_bottom = 135.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Axis 3"
 valign = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="label_axis4" type="Label" parent="axes" index="26"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="label_axis4" type="Label" parent="axes"]
 margin_left = 10.0
 margin_top = 140.0
 margin_right = 51.0
 margin_bottom = 155.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Axis 4"
 valign = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
-[node name="label_axis5" type="Label" parent="axes" index="27"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="label_axis5" type="Label" parent="axes"]
 margin_left = 10.0
 margin_top = 160.0
 margin_right = 51.0
 margin_bottom = 175.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Axis 5"
 valign = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="label_axis6" type="Label" parent="axes" index="28"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="label_axis6" type="Label" parent="axes"]
 margin_left = 10.0
 margin_top = 180.0
 margin_right = 51.0
 margin_bottom = 195.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Axis 6"
 valign = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="label_axis7" type="Label" parent="axes" index="29"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="label_axis7" type="Label" parent="axes"]
 margin_left = 10.0
 margin_top = 200.0
 margin_right = 51.0
 margin_bottom = 215.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Axis 7"
 valign = 2
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
-[node name="label_axis8" type="Label" parent="axes" index="30"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="label_axis8" type="Label" parent="axes"]
 margin_left = 10.0
 margin_top = 220.0
 margin_right = 51.0
 margin_bottom = 235.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Axis 8"
 valign = 2
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="label_axis9" type="Label" parent="axes" index="31"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="label_axis9" type="Label" parent="axes"]
 margin_left = 10.0
 margin_top = 240.0
 margin_right = 51.0
 margin_bottom = 255.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Axis 9"
 valign = 2
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="label_axis10" type="Label" parent="axes" index="32"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="label_axis10" type="Label" parent="axes"]
 margin_left = 10.0
 margin_top = 260.0
 margin_right = 51.0
 margin_bottom = 275.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Axis 10"
 valign = 2
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="buttons" type="Control" parent="." index="3"]
 
+[node name="buttons" type="Control" parent="."]
 editor/display_folded = true
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_right = 40.0
 margin_bottom = 40.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 1
-
-[node name="label_buttons" type="Label" parent="buttons" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+
+[node name="label_buttons" type="Label" parent="buttons"]
 margin_left = 10.0
 margin_top = 290.0
 margin_right = 65.0
 margin_bottom = 304.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Buttons:"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
-[node name="btn0" type="Label" parent="buttons" index="1"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="btn0" type="Label" parent="buttons"]
 margin_left = 20.0
 margin_top = 310.0
 margin_right = 45.0
 margin_bottom = 324.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "0"
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="btn1" type="Label" parent="buttons" index="2"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="btn1" type="Label" parent="buttons"]
 margin_left = 45.0
 margin_top = 310.0
 margin_right = 70.0
 margin_bottom = 324.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "1"
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="btn2" type="Label" parent="buttons" index="3"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="btn2" type="Label" parent="buttons"]
 margin_left = 70.0
 margin_top = 310.0
 margin_right = 95.0
 margin_bottom = 324.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "2"
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
-[node name="btn3" type="Label" parent="buttons" index="4"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="btn3" type="Label" parent="buttons"]
 margin_left = 95.0
 margin_top = 310.0
 margin_right = 120.0
 margin_bottom = 324.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "3"
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="btn4" type="Label" parent="buttons" index="5"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="btn4" type="Label" parent="buttons"]
 margin_left = 120.0
 margin_top = 310.0
 margin_right = 145.0
 margin_bottom = 324.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "4"
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
-[node name="btn5" type="Label" parent="buttons" index="6"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="btn5" type="Label" parent="buttons"]
 margin_left = 145.0
 margin_top = 310.0
 margin_right = 170.0
 margin_bottom = 324.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "5"
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="btn6" type="Label" parent="buttons" index="7"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="btn6" type="Label" parent="buttons"]
 margin_left = 170.0
 margin_top = 310.0
 margin_right = 195.0
 margin_bottom = 324.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "6"
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="btn7" type="Label" parent="buttons" index="8"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="btn7" type="Label" parent="buttons"]
 margin_left = 195.0
 margin_top = 310.0
 margin_right = 220.0
 margin_bottom = 324.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "7"
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
-[node name="btn8" type="Label" parent="buttons" index="9"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="btn8" type="Label" parent="buttons"]
 margin_left = 220.0
 margin_top = 310.0
 margin_right = 245.0
 margin_bottom = 324.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "8"
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="btn9" type="Label" parent="buttons" index="10"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="btn9" type="Label" parent="buttons"]
 margin_left = 20.0
 margin_top = 330.0
 margin_right = 45.0
 margin_bottom = 344.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "9"
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
-[node name="btn10" type="Label" parent="buttons" index="11"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="btn10" type="Label" parent="buttons"]
 margin_left = 45.0
 margin_top = 330.0
 margin_right = 70.0
 margin_bottom = 344.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "10"
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="btn11" type="Label" parent="buttons" index="12"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="btn11" type="Label" parent="buttons"]
 margin_left = 70.0
 margin_top = 330.0
 margin_right = 95.0
 margin_bottom = 344.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "11"
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="btn12" type="Label" parent="buttons" index="13"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="btn12" type="Label" parent="buttons"]
 margin_left = 95.0
 margin_top = 330.0
 margin_right = 120.0
 margin_bottom = 344.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "12"
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
-[node name="btn13" type="Label" parent="buttons" index="14"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="btn13" type="Label" parent="buttons"]
 margin_left = 120.0
 margin_top = 330.0
 margin_right = 145.0
 margin_bottom = 344.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "13"
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="btn14" type="Label" parent="buttons" index="15"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="btn14" type="Label" parent="buttons"]
 margin_left = 145.0
 margin_top = 330.0
 margin_right = 170.0
 margin_bottom = 344.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "14"
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
-[node name="btn15" type="Label" parent="buttons" index="16"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="btn15" type="Label" parent="buttons"]
 margin_left = 170.0
 margin_top = 330.0
 margin_right = 195.0
 margin_bottom = 344.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "15"
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="vibration" type="Control" parent="." index="4"]
 
+[node name="vibration" type="Control" parent="."]
 editor/display_folded = true
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_right = 40.0
 margin_bottom = 40.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 1
-
-[node name="weak_label" type="Label" parent="vibration" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+
+[node name="weak_label" type="Label" parent="vibration"]
 margin_left = 10.0
 margin_top = 375.0
 margin_right = 152.0
 margin_bottom = 389.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Vibration Weak Motor:"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
-[node name="strong_label" type="Label" parent="vibration" index="1"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="strong_label" type="Label" parent="vibration"]
 margin_left = 10.0
 margin_top = 413.0
 margin_right = 157.0
 margin_bottom = 427.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Vibration Strong Motor:"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="duration_label" type="Label" parent="vibration" index="2"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="duration_label" type="Label" parent="vibration"]
 margin_left = 10.0
 margin_top = 454.0
 margin_right = 157.0
 margin_bottom = 468.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Vibration Duration:"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
-[node name="vibration_weak_value" type="SpinBox" parent="vibration" index="3"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="vibration_weak_value" type="SpinBox" parent="vibration"]
 margin_left = 165.0
 margin_top = 370.0
 margin_right = 239.0
 margin_bottom = 394.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-min_value = 0.0
 max_value = 1.0
 step = 0.05
-page = 0.0
 value = 1.0
-exp_edit = false
-rounded = false
-editable = true
-prefix = ""
-suffix = ""
-
-[node name="vibration_strong_value" type="SpinBox" parent="vibration" index="4"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+
+[node name="vibration_strong_value" type="SpinBox" parent="vibration"]
 margin_left = 165.0
 margin_top = 408.0
 margin_right = 239.0
 margin_bottom = 432.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-min_value = 0.0
 max_value = 1.0
 step = 0.05
-page = 0.0
 value = 1.0
-exp_edit = false
-rounded = false
-editable = true
-prefix = ""
-suffix = ""
-
-[node name="vibration_duration_value" type="SpinBox" parent="vibration" index="5"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+
+[node name="vibration_duration_value" type="SpinBox" parent="vibration"]
 margin_left = 165.0
 margin_top = 449.0
 margin_right = 239.0
 margin_bottom = 473.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-min_value = 0.0
 max_value = 10.0
 step = 0.1
-page = 0.0
 value = 1.0
-exp_edit = false
-rounded = false
-editable = true
-prefix = ""
-suffix = ""
-
-[node name="start_vibration" type="Button" parent="vibration" index="6"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+
+[node name="start_vibration" type="Button" parent="vibration"]
 margin_left = 290.0
 margin_top = 400.0
 margin_right = 392.0
 margin_bottom = 420.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
+focus_mode = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
 enabled_focus_mode = 0
-shortcut = null
-group = null
 text = "Start Vibration"
-flat = false
-align = 1
 
-[node name="stop_vibration" type="Button" parent="vibration" index="7"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="stop_vibration" type="Button" parent="vibration"]
 margin_left = 408.0
 margin_top = 400.0
 margin_right = 509.0
 margin_bottom = 420.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "Stop Vibration"
-flat = false
-align = 1
 
 [connection signal="pressed" from="vibration/start_vibration" to="." method="_on_start_vibration_pressed"]
-
 [connection signal="pressed" from="vibration/stop_vibration" to="." method="_on_stop_vibration_pressed"]
-
-

+ 26 - 53
misc/joypads/jsdiagram.tscn

@@ -4,65 +4,56 @@
 [ext_resource path="res://indicators.png" type="Texture" id=2]
 
 [node name="diagram" type="Sprite"]
-
 position = Vector2( 368.635, 155.289 )
 scale = Vector2( 0.432859, 0.446287 )
 texture = ExtResource( 1 )
 
-[node name="buttons" type="Node2D" parent="." index="0"]
-
+[node name="buttons" type="Node2D" parent="."]
 editor/display_folded = true
 
-[node name="0" type="Sprite" parent="buttons" index="0"]
-
+[node name="0" type="Sprite" parent="buttons"]
 position = Vector2( 147.73, 120.925 )
 scale = Vector2( 0.9, 0.9 )
 texture = ExtResource( 2 )
 region_enabled = true
 region_rect = Rect2( 0, 0, 45, 45 )
 
-[node name="1" type="Sprite" parent="buttons" index="1"]
-
+[node name="1" type="Sprite" parent="buttons"]
 position = Vector2( 185.769, 82.4874 )
 scale = Vector2( 0.9, 0.9 )
 texture = ExtResource( 2 )
 region_enabled = true
 region_rect = Rect2( 0, 0, 45, 45 )
 
-[node name="2" type="Sprite" parent="buttons" index="2"]
-
+[node name="2" type="Sprite" parent="buttons"]
 position = Vector2( 112.377, 82.4874 )
 scale = Vector2( 0.9, 0.9 )
 texture = ExtResource( 2 )
 region_enabled = true
 region_rect = Rect2( 0, 0, 45, 45 )
 
-[node name="3" type="Sprite" parent="buttons" index="3"]
-
+[node name="3" type="Sprite" parent="buttons"]
 position = Vector2( 149.073, 47.3293 )
 scale = Vector2( 0.9, 0.9 )
 texture = ExtResource( 2 )
 region_enabled = true
 region_rect = Rect2( 0, 0, 45, 45 )
 
-[node name="4" type="Sprite" parent="buttons" index="4"]
-
+[node name="4" type="Sprite" parent="buttons"]
 position = Vector2( -161.038, -158.037 )
 scale = Vector2( 5.3348, 3.35512 )
 texture = ExtResource( 2 )
 region_enabled = true
 region_rect = Rect2( 10, 10, 10, 10 )
 
-[node name="5" type="Sprite" parent="buttons" index="5"]
-
+[node name="5" type="Sprite" parent="buttons"]
 position = Vector2( 159.362, -156.977 )
 scale = Vector2( 5.3348, 3.35512 )
 texture = ExtResource( 2 )
 region_enabled = true
 region_rect = Rect2( 10, 10, 10, 10 )
 
-[node name="6" type="Sprite" parent="buttons" index="6"]
-
+[node name="6" type="Sprite" parent="buttons"]
 position = Vector2( -159.349, -221.878 )
 scale = Vector2( 1.0458, 2.16952 )
 texture = ExtResource( 2 )
@@ -70,56 +61,49 @@ flip_h = true
 region_enabled = true
 region_rect = Rect2( 0, 0, 45, 22 )
 
-[node name="7" type="Sprite" parent="buttons" index="7"]
-
+[node name="7" type="Sprite" parent="buttons"]
 position = Vector2( 156.677, -220.11 )
 scale = Vector2( 1.0458, 2.16952 )
 texture = ExtResource( 2 )
 region_enabled = true
 region_rect = Rect2( 0, 0, 45, 22 )
 
-[node name="8" type="Sprite" parent="buttons" index="8"]
-
+[node name="8" type="Sprite" parent="buttons"]
 position = Vector2( -67.5308, 164.422 )
 scale = Vector2( 0.9, 0.9 )
 texture = ExtResource( 2 )
 region_enabled = true
 region_rect = Rect2( 0, 0, 45, 45 )
 
-[node name="9" type="Sprite" parent="buttons" index="9"]
-
+[node name="9" type="Sprite" parent="buttons"]
 position = Vector2( 75.8825, 167.363 )
 scale = Vector2( 0.9, 0.9 )
 texture = ExtResource( 2 )
 region_enabled = true
 region_rect = Rect2( 0, 0, 45, 45 )
 
-[node name="10" type="Sprite" parent="buttons" index="10"]
-
+[node name="10" type="Sprite" parent="buttons"]
 position = Vector2( -46.6707, 52.702 )
 scale = Vector2( 0.810497, 0.57205 )
 texture = ExtResource( 2 )
 region_enabled = true
 region_rect = Rect2( 0, 0, 45, 45 )
 
-[node name="11" type="Sprite" parent="buttons" index="11"]
-
+[node name="11" type="Sprite" parent="buttons"]
 position = Vector2( 56.2581, 54.4382 )
 scale = Vector2( 0.810497, 0.57205 )
 texture = ExtResource( 2 )
 region_enabled = true
 region_rect = Rect2( 0, 0, 45, 45 )
 
-[node name="12" type="Sprite" parent="buttons" index="12"]
-
+[node name="12" type="Sprite" parent="buttons"]
 position = Vector2( -139.402, 46.8295 )
 scale = Vector2( 0.9, 0.9 )
 texture = ExtResource( 2 )
 region_enabled = true
 region_rect = Rect2( 50, 0, 54, 14 )
 
-[node name="13" type="Sprite" parent="buttons" index="13"]
-
+[node name="13" type="Sprite" parent="buttons"]
 position = Vector2( -139.838, 115.789 )
 scale = Vector2( 0.9, 0.9 )
 texture = ExtResource( 2 )
@@ -127,16 +111,14 @@ flip_v = true
 region_enabled = true
 region_rect = Rect2( 50, 0, 54, 14 )
 
-[node name="14" type="Sprite" parent="buttons" index="14"]
-
+[node name="14" type="Sprite" parent="buttons"]
 position = Vector2( -172.262, 81.8793 )
 scale = Vector2( 0.9, 0.9 )
 texture = ExtResource( 2 )
 region_enabled = true
 region_rect = Rect2( 50, 0, 14, 54 )
 
-[node name="15" type="Sprite" parent="buttons" index="15"]
-
+[node name="15" type="Sprite" parent="buttons"]
 position = Vector2( -105.085, 81.0326 )
 scale = Vector2( 0.9, 0.9 )
 texture = ExtResource( 2 )
@@ -144,18 +126,16 @@ flip_h = true
 region_enabled = true
 region_rect = Rect2( 50, 0, 14, 54 )
 
-[node name="axes" type="Node2D" parent="." index="1"]
-
-[node name="0-" type="Sprite" parent="axes" index="0"]
+[node name="axes" type="Node2D" parent="."]
 
+[node name="0-" type="Sprite" parent="axes"]
 position = Vector2( -94.4295, 164.932 )
 scale = Vector2( 0.9, 0.9 )
 texture = ExtResource( 2 )
 region_enabled = true
 region_rect = Rect2( 50, 0, 14, 54 )
 
-[node name="0+" type="Sprite" parent="axes" index="1"]
-
+[node name="0+" type="Sprite" parent="axes"]
 position = Vector2( -40.3475, 164.509 )
 scale = Vector2( 0.9, 0.9 )
 texture = ExtResource( 2 )
@@ -163,16 +143,14 @@ flip_h = true
 region_enabled = true
 region_rect = Rect2( 50, 0, 14, 54 )
 
-[node name="1-" type="Sprite" parent="axes" index="2"]
-
+[node name="1-" type="Sprite" parent="axes"]
 position = Vector2( -67.6802, 137.926 )
 scale = Vector2( 0.9, 0.9 )
 texture = ExtResource( 2 )
 region_enabled = true
 region_rect = Rect2( 50, 0, 54, 14 )
 
-[node name="1+" type="Sprite" parent="axes" index="3"]
-
+[node name="1+" type="Sprite" parent="axes"]
 position = Vector2( -67.4618, 192.915 )
 scale = Vector2( 0.9, 0.9 )
 texture = ExtResource( 2 )
@@ -180,16 +158,14 @@ flip_v = true
 region_enabled = true
 region_rect = Rect2( 50, 0, 54, 14 )
 
-[node name="2-" type="Sprite" parent="axes" index="4"]
-
+[node name="2-" type="Sprite" parent="axes"]
 position = Vector2( 48.8152, 167.145 )
 scale = Vector2( 0.9, 0.9 )
 texture = ExtResource( 2 )
 region_enabled = true
 region_rect = Rect2( 50, 0, 14, 54 )
 
-[node name="2+" type="Sprite" parent="axes" index="5"]
-
+[node name="2+" type="Sprite" parent="axes"]
 position = Vector2( 102.899, 167.857 )
 scale = Vector2( 0.9, 0.9 )
 texture = ExtResource( 2 )
@@ -197,16 +173,14 @@ flip_h = true
 region_enabled = true
 region_rect = Rect2( 50, 0, 14, 54 )
 
-[node name="3-" type="Sprite" parent="axes" index="6"]
-
+[node name="3-" type="Sprite" parent="axes"]
 position = Vector2( 76.6557, 140.986 )
 scale = Vector2( 0.9, 0.9 )
 texture = ExtResource( 2 )
 region_enabled = true
 region_rect = Rect2( 50, 0, 54, 14 )
 
-[node name="3+" type="Sprite" parent="axes" index="7"]
-
+[node name="3+" type="Sprite" parent="axes"]
 position = Vector2( 76.0009, 195.339 )
 scale = Vector2( 0.9, 0.9 )
 texture = ExtResource( 2 )
@@ -214,4 +188,3 @@ flip_v = true
 region_enabled = true
 region_rect = Rect2( 50, 0, 54, 14 )
 
-

+ 10 - 1
misc/joypads/project.godot

@@ -6,7 +6,12 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 
@@ -14,6 +19,10 @@ config/name="Joypads"
 run/main_scene="res://joypads.tscn"
 config/icon="res://icon.png"
 
+[debug]
+
+gdscript/warnings/return_value_discarded=false
+
 [display]
 
 window/size/width=540

+ 1 - 94
misc/multitouch_cubes/CubeScene.tscn

@@ -3,121 +3,28 @@
 [ext_resource path="res://default_env.tres" type="Environment" id=1]
 
 [sub_resource type="SpatialMaterial" id=1]
-
-render_priority = 0
-flags_transparent = false
-flags_unshaded = false
-flags_vertex_lighting = false
-flags_no_depth_test = false
-flags_use_point_size = false
-flags_world_triplanar = false
-flags_fixed_size = false
-vertex_color_use_as_albedo = false
-vertex_color_is_srgb = false
 params_diffuse_mode = 1
-params_specular_mode = 0
-params_blend_mode = 0
-params_cull_mode = 0
-params_depth_draw_mode = 0
-params_line_width = 1.0
-params_point_size = 1.0
-params_billboard_mode = 0
-params_grow = false
-params_use_alpha_scissor = false
 albedo_color = Color( 0.149414, 0.796875, 0.569252, 1 )
-metallic = 0.0
-metallic_specular = 0.5
-metallic_texture_channel = 0
 roughness = 0.0
-roughness_texture_channel = 0
-emission_enabled = false
-normal_enabled = false
-rim_enabled = false
-clearcoat_enabled = false
-anisotropy_enabled = false
-ao_enabled = false
-depth_enabled = false
-subsurf_scatter_enabled = false
-transmission_enabled = false
-refraction_enabled = false
-detail_enabled = false
-uv1_scale = Vector3( 1, 1, 1 )
-uv1_offset = Vector3( 0, 0, 0 )
-uv1_triplanar = false
-uv1_triplanar_sharpness = 1.0
-uv2_scale = Vector3( 1, 1, 1 )
-uv2_offset = Vector3( 0, 0, 0 )
-uv2_triplanar = false
-uv2_triplanar_sharpness = 1.0
-proximity_fade_enable = false
-distance_fade_enable = false
 
 [sub_resource type="CubeMesh" id=2]
 
-size = Vector3( 2, 2, 2 )
-subdivide_width = 0
-subdivide_height = 0
-subdivide_depth = 0
-
 [node name="Spatial" type="Spatial"]
 
 [node name="MeshInstance" type="MeshInstance" parent="."]
-
 transform = Transform( 0.707107, 0, -0.707107, -0.353553, 0.866025, -0.353553, 0.612372, 0.5, 0.612372, 0, 0, 0 )
-layers = 1
 material_override = SubResource( 1 )
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 2 )
-skeleton = NodePath("..")
 material/0 = null
 
 [node name="DirectionalLight" type="DirectionalLight" parent="."]
-
 transform = Transform( 0.926535, 0.11439, -0.358396, 0.199614, 0.658013, 0.726067, 0.318884, -0.744267, 0.586839, 0, 4.14991, 0 )
-layers = 1
-light_color = Color( 1, 1, 1, 1 )
-light_energy = 1.0
-light_indirect_energy = 1.0
-light_negative = false
-light_specular = 0.5
-light_cull_mask = -1
-shadow_enabled = false
-shadow_color = Color( 0, 0, 0, 1 )
-shadow_bias = 0.1
-shadow_contact = 0.0
-shadow_reverse_cull_face = false
-editor_only = false
-directional_shadow_mode = 2
-directional_shadow_split_1 = 0.1
-directional_shadow_split_2 = 0.2
-directional_shadow_split_3 = 0.5
-directional_shadow_blend_splits = false
-directional_shadow_normal_bias = 0.8
-directional_shadow_bias_split_scale = 0.25
-directional_shadow_depth_range = 0
-directional_shadow_max_distance = 200.0
 
 [node name="Camera" type="Camera" parent="."]
-
 transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 7.09558 )
-projection = 0
 fov = 74.0
 near = 0.1
-far = 100.0
-keep_aspect = 1
-current = false
-cull_mask = 1048575
-environment = null
-h_offset = 0.0
-v_offset = 0.0
-doppler/tracking = 0
 
 [node name="WorldEnvironment" type="WorldEnvironment" parent="."]
-
 environment = ExtResource( 1 )
+

+ 0 - 1
misc/multitouch_cubes/GestureArea.gd

@@ -27,7 +27,6 @@ func _gui_input(event):
 #		(event is InputEventScreenTouch && (!event.pressed || get_global_rect().has_point(event.position)))):
 #		return
 
-	var finger_count_changed = false
 	var finger_count = base_state.size()
 
 	if finger_count == 0:

+ 38 - 246
misc/multitouch_cubes/Main.tscn

@@ -4,373 +4,165 @@
 [ext_resource path="res://CubeScene.tscn" type="PackedScene" id=2]
 
 [node name="VBoxContainer" type="VBoxContainer"]
-
-anchor_left = 0.0
-anchor_top = 0.0
 anchor_right = 1.0
 anchor_bottom = 1.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 1
 size_flags_horizontal = 0
 size_flags_vertical = 0
-alignment = 0
 
 [node name="HBoxContainer" type="HBoxContainer" parent="."]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
-margin_right = 512.0
-margin_bottom = 254.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 1
+margin_right = 1024.0
+margin_bottom = 298.0
 size_flags_horizontal = 3
 size_flags_vertical = 3
-alignment = 0
 
 [node name="ViewportContainer" type="ViewportContainer" parent="HBoxContainer"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
-margin_right = 254.0
-margin_bottom = 254.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
+margin_right = 510.0
+margin_bottom = 298.0
 size_flags_horizontal = 3
 size_flags_vertical = 3
 stretch = true
-stretch_shrink = 1
 script = ExtResource( 1 )
 target = NodePath("Viewport/Spatial/MeshInstance")
-min_scale = 0.1
-max_scale = 3.0
-one_finger_rot_x = true
 one_finger_rot_y = false
 two_fingers_rot_z = false
 two_fingers_zoom = false
 
 [node name="Viewport" type="Viewport" parent="HBoxContainer/ViewportContainer"]
-
-arvr = false
-size = Vector2( 254, 254 )
+size = Vector2( 510, 298 )
 own_world = true
-world = null
 transparent_bg = true
-msaa = 0
+handle_input_locally = false
 hdr = false
-disable_3d = false
-usage = 2
-debug_draw = 0
-render_target_v_flip = false
-render_target_clear_mode = 0
 render_target_update_mode = 3
-audio_listener_enable_2d = false
-audio_listener_enable_3d = false
-physics_object_picking = false
-gui_disable_input = false
-gui_snap_controls_to_pixels = true
-shadow_atlas_size = 0
-shadow_atlas_quad_0 = 2
-shadow_atlas_quad_1 = 2
-shadow_atlas_quad_2 = 3
-shadow_atlas_quad_3 = 4
 
 [node name="Spatial" parent="HBoxContainer/ViewportContainer/Viewport" instance=ExtResource( 2 )]
 
-[node name="DirectionalLight" parent="HBoxContainer/ViewportContainer/Viewport/Spatial"]
-
-light_cull_mask = -1
-
-[node name="Camera" parent="HBoxContainer/ViewportContainer/Viewport/Spatial"]
+[node name="DirectionalLight" parent="HBoxContainer/ViewportContainer/Viewport/Spatial" index="1"]
+light_cull_mask = 4294967295
 
+[node name="Camera" parent="HBoxContainer/ViewportContainer/Viewport/Spatial" index="2"]
 current = true
 
 [node name="Label" type="Label" parent="HBoxContainer/ViewportContainer"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 7.0
 margin_top = 11.0
 margin_right = 157.0
 margin_bottom = 25.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 2
-size_flags_horizontal = 1
-size_flags_vertical = 4
 text = "One-finger rot around X"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
 [node name="ViewportContainer2" type="ViewportContainer" parent="HBoxContainer"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
-margin_left = 258.0
-margin_right = 512.0
-margin_bottom = 254.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
+margin_left = 514.0
+margin_right = 1024.0
+margin_bottom = 298.0
 size_flags_horizontal = 3
 size_flags_vertical = 3
 stretch = true
-stretch_shrink = 1
 script = ExtResource( 1 )
 target = NodePath("Viewport/Spatial/MeshInstance")
-min_scale = 0.1
-max_scale = 3.0
-one_finger_rot_x = true
-one_finger_rot_y = true
 two_fingers_rot_z = false
 two_fingers_zoom = false
 
 [node name="Viewport" type="Viewport" parent="HBoxContainer/ViewportContainer2"]
-
-arvr = false
-size = Vector2( 254, 254 )
+size = Vector2( 510, 298 )
 own_world = true
-world = null
 transparent_bg = true
-msaa = 0
+handle_input_locally = false
 hdr = false
-disable_3d = false
-usage = 2
-debug_draw = 0
-render_target_v_flip = false
-render_target_clear_mode = 0
 render_target_update_mode = 3
-audio_listener_enable_2d = false
-audio_listener_enable_3d = false
-physics_object_picking = false
-gui_disable_input = false
-gui_snap_controls_to_pixels = true
-shadow_atlas_size = 0
-shadow_atlas_quad_0 = 2
-shadow_atlas_quad_1 = 2
-shadow_atlas_quad_2 = 3
-shadow_atlas_quad_3 = 4
 
 [node name="Spatial" parent="HBoxContainer/ViewportContainer2/Viewport" instance=ExtResource( 2 )]
 
-[node name="DirectionalLight" parent="HBoxContainer/ViewportContainer2/Viewport/Spatial"]
-
-light_cull_mask = -1
-
-[node name="Camera" parent="HBoxContainer/ViewportContainer2/Viewport/Spatial"]
+[node name="DirectionalLight" parent="HBoxContainer/ViewportContainer2/Viewport/Spatial" index="1"]
+light_cull_mask = 4294967295
 
+[node name="Camera" parent="HBoxContainer/ViewportContainer2/Viewport/Spatial" index="2"]
 current = true
 
 [node name="Label2" type="Label" parent="HBoxContainer/ViewportContainer2"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 8.0
 margin_top = 11.0
 margin_right = 196.0
 margin_bottom = 25.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 2
-size_flags_horizontal = 1
-size_flags_vertical = 4
 text = "One-finger rot around X and Y"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
 [node name="HBoxContainer2" type="HBoxContainer" parent="."]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
-margin_top = 258.0
-margin_right = 512.0
-margin_bottom = 512.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 1
+margin_top = 302.0
+margin_right = 1024.0
+margin_bottom = 600.0
 size_flags_horizontal = 3
 size_flags_vertical = 3
-alignment = 0
 
 [node name="ViewportContainer" type="ViewportContainer" parent="HBoxContainer2"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
-margin_right = 254.0
-margin_bottom = 254.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
+margin_right = 510.0
+margin_bottom = 298.0
 size_flags_horizontal = 3
 size_flags_vertical = 3
 stretch = true
-stretch_shrink = 1
 script = ExtResource( 1 )
 target = NodePath("Viewport/Spatial/MeshInstance")
-min_scale = 0.1
-max_scale = 3.0
-one_finger_rot_x = true
-one_finger_rot_y = true
-two_fingers_rot_z = true
 two_fingers_zoom = false
 
 [node name="Viewport" type="Viewport" parent="HBoxContainer2/ViewportContainer"]
-
-arvr = false
-size = Vector2( 254, 254 )
+size = Vector2( 510, 298 )
 own_world = true
-world = null
 transparent_bg = true
-msaa = 0
+handle_input_locally = false
 hdr = false
-disable_3d = false
-usage = 2
-debug_draw = 0
-render_target_v_flip = false
-render_target_clear_mode = 0
 render_target_update_mode = 3
-audio_listener_enable_2d = false
-audio_listener_enable_3d = false
-physics_object_picking = false
-gui_disable_input = false
-gui_snap_controls_to_pixels = true
-shadow_atlas_size = 0
-shadow_atlas_quad_0 = 2
-shadow_atlas_quad_1 = 2
-shadow_atlas_quad_2 = 3
-shadow_atlas_quad_3 = 4
 
 [node name="Spatial" parent="HBoxContainer2/ViewportContainer/Viewport" instance=ExtResource( 2 )]
 
-[node name="DirectionalLight" parent="HBoxContainer2/ViewportContainer/Viewport/Spatial"]
-
-light_cull_mask = -1
-
-[node name="Camera" parent="HBoxContainer2/ViewportContainer/Viewport/Spatial"]
+[node name="DirectionalLight" parent="HBoxContainer2/ViewportContainer/Viewport/Spatial" index="1"]
+light_cull_mask = 4294967295
 
+[node name="Camera" parent="HBoxContainer2/ViewportContainer/Viewport/Spatial" index="2"]
 current = true
 
 [node name="Label3" type="Label" parent="HBoxContainer2/ViewportContainer"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 8.0
 margin_top = 9.0
 margin_right = 236.0
 margin_bottom = 23.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 2
-size_flags_horizontal = 1
-size_flags_vertical = 4
 text = "One-finger X/Y rot + two-finger Z rot"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
 [node name="ViewportContainer2" type="ViewportContainer" parent="HBoxContainer2"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
-margin_left = 258.0
-margin_right = 512.0
-margin_bottom = 254.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
+margin_left = 514.0
+margin_right = 1024.0
+margin_bottom = 298.0
 size_flags_horizontal = 3
 size_flags_vertical = 3
 stretch = true
-stretch_shrink = 1
 script = ExtResource( 1 )
 target = NodePath("Viewport/Spatial/MeshInstance")
-min_scale = 0.1
-max_scale = 3.0
-one_finger_rot_x = true
-one_finger_rot_y = true
-two_fingers_rot_z = true
-two_fingers_zoom = true
 
 [node name="Viewport" type="Viewport" parent="HBoxContainer2/ViewportContainer2"]
-
-arvr = false
-size = Vector2( 254, 254 )
+size = Vector2( 510, 298 )
 own_world = true
-world = null
 transparent_bg = true
-msaa = 0
+handle_input_locally = false
 hdr = false
-disable_3d = false
-usage = 2
-debug_draw = 0
-render_target_v_flip = false
-render_target_clear_mode = 0
 render_target_update_mode = 3
-audio_listener_enable_2d = false
-audio_listener_enable_3d = false
-physics_object_picking = false
-gui_disable_input = false
-gui_snap_controls_to_pixels = true
-shadow_atlas_size = 0
-shadow_atlas_quad_0 = 2
-shadow_atlas_quad_1 = 2
-shadow_atlas_quad_2 = 3
-shadow_atlas_quad_3 = 4
 
 [node name="Spatial" parent="HBoxContainer2/ViewportContainer2/Viewport" instance=ExtResource( 2 )]
 
-[node name="DirectionalLight" parent="HBoxContainer2/ViewportContainer2/Viewport/Spatial"]
-
-light_cull_mask = -1
-
-[node name="Camera" parent="HBoxContainer2/ViewportContainer2/Viewport/Spatial"]
+[node name="DirectionalLight" parent="HBoxContainer2/ViewportContainer2/Viewport/Spatial" index="1"]
+light_cull_mask = 4294967295
 
+[node name="Camera" parent="HBoxContainer2/ViewportContainer2/Viewport/Spatial" index="2"]
 current = true
 
 [node name="Label2" type="Label" parent="HBoxContainer2/ViewportContainer2"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 12.0
 margin_top = 9.0
 margin_right = 279.0
 margin_bottom = 23.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 2
-size_flags_horizontal = 1
-size_flags_vertical = 4
 text = "One-finger X/Y, two-finger Z + pinch"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
 
 [editable path="HBoxContainer/ViewportContainer/Viewport/Spatial"]
+
 [editable path="HBoxContainer/ViewportContainer2/Viewport/Spatial"]
+
 [editable path="HBoxContainer2/ViewportContainer/Viewport/Spatial"]
+
 [editable path="HBoxContainer2/ViewportContainer2/Viewport/Spatial"]

+ 0 - 75
misc/multitouch_cubes/default_env.tres

@@ -1,80 +1,5 @@
 [gd_resource type="Environment" format=2]
 
 [resource]
-
-background_mode = 0
-background_sky_custom_fov = 0.0
-background_color = Color( 0, 0, 0, 1 )
-background_energy = 1.0
-background_canvas_max_layer = 0
 ambient_light_color = Color( 0.307434, 0.362682, 0.539063, 1 )
-ambient_light_energy = 1.0
-ambient_light_sky_contribution = 1.0
-fog_enabled = false
-fog_color = Color( 0.5, 0.6, 0.7, 1 )
-fog_sun_color = Color( 1, 0.9, 0.7, 1 )
-fog_sun_amount = 0.0
-fog_depth_enabled = true
-fog_depth_begin = 10.0
-fog_depth_curve = 1.0
-fog_transmit_enabled = false
-fog_transmit_curve = 1.0
-fog_height_enabled = false
-fog_height_min = 0.0
-fog_height_max = 100.0
-fog_height_curve = 1.0
-tonemap_mode = 0
-tonemap_exposure = 1.0
-tonemap_white = 1.0
-auto_exposure_enabled = false
-auto_exposure_scale = 0.4
-auto_exposure_min_luma = 0.05
-auto_exposure_max_luma = 8.0
-auto_exposure_speed = 0.5
-ss_reflections_enabled = false
-ss_reflections_max_steps = 64
-ss_reflections_fade_in = 0.15
-ss_reflections_fade_out = 2.0
-ss_reflections_depth_tolerance = 0.2
-ss_reflections_roughness = true
-ssao_enabled = false
-ssao_radius = 1.0
-ssao_intensity = 1.0
-ssao_radius2 = 0.0
-ssao_intensity2 = 1.0
-ssao_bias = 0.01
-ssao_light_affect = 0.0
-ssao_color = Color( 0, 0, 0, 1 )
-ssao_quality = 0
-ssao_blur = 3
-ssao_edge_sharpness = 4.0
-dof_blur_far_enabled = false
-dof_blur_far_distance = 10.0
-dof_blur_far_transition = 5.0
-dof_blur_far_amount = 0.1
-dof_blur_far_quality = 1
-dof_blur_near_enabled = false
-dof_blur_near_distance = 2.0
-dof_blur_near_transition = 1.0
-dof_blur_near_amount = 0.1
-dof_blur_near_quality = 1
-glow_enabled = false
-glow_levels/1 = false
-glow_levels/2 = false
-glow_levels/3 = true
-glow_levels/4 = false
-glow_levels/5 = true
-glow_levels/6 = false
-glow_levels/7 = false
-glow_intensity = 0.8
-glow_strength = 1.0
-glow_bloom = 0.0
-glow_blend_mode = 2
-glow_hdr_threshold = 1.0
-glow_hdr_scale = 2.0
-glow_bicubic_upscale = false
-adjustment_enabled = false
-adjustment_brightness = 1.0
-adjustment_contrast = 1.0
-adjustment_saturation = 1.0
 

+ 31 - 0
misc/multitouch_cubes/icon.png.import

@@ -0,0 +1,31 @@
+[remap]
+
+importer="texture"
+type="StreamTexture"
+path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
+
+[deps]
+
+source_file="res://icon.png"
+dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ]
+
+[params]
+
+compress/mode=0
+compress/lossy_quality=0.7
+compress/hdr_mode=0
+compress/bptc_ldr=0
+compress/normal_map=0
+flags/repeat=0
+flags/filter=true
+flags/mipmaps=false
+flags/anisotropic=false
+flags/srgb=2
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/HDR_as_SRGB=false
+process/invert_color=false
+stream=false
+size_limit=0
+detect_3d=true
+svg/scale=1.0

+ 6 - 1
misc/multitouch_cubes/project.godot

@@ -6,7 +6,12 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 

+ 1 - 1
misc/multitouch_view/Main.gd

@@ -1,6 +1,6 @@
 extends Node2D
 
-func _process(delta):
+func _process(_delta):
 	# To keep redrawing on every frame
 	update()
 

+ 0 - 2
misc/multitouch_view/Main.tscn

@@ -3,7 +3,5 @@
 [ext_resource path="res://Main.gd" type="Script" id=1]
 
 [node name="Main" type="Node2D"]
-
 script = ExtResource( 1 )
 
-

+ 0 - 87
misc/multitouch_view/default_env.tres

@@ -1,101 +1,14 @@
 [gd_resource type="Environment" load_steps=2 format=2]
 
 [sub_resource type="ProceduralSky" id=1]
-
-radiance_size = 4
 sky_top_color = Color( 0.0470588, 0.454902, 0.976471, 1 )
 sky_horizon_color = Color( 0.556863, 0.823529, 0.909804, 1 )
 sky_curve = 0.25
-sky_energy = 1.0
 ground_bottom_color = Color( 0.101961, 0.145098, 0.188235, 1 )
 ground_horizon_color = Color( 0.482353, 0.788235, 0.952941, 1 )
 ground_curve = 0.01
-ground_energy = 1.0
-sun_color = Color( 1, 1, 1, 1 )
-sun_latitude = 35.0
-sun_longitude = 0.0
-sun_angle_min = 1.0
-sun_angle_max = 100.0
-sun_curve = 0.05
-sun_energy = 16.0
-texture_size = 2
 
 [resource]
-
 background_mode = 2
 background_sky = SubResource( 1 )
-background_sky_custom_fov = 0.0
-background_color = Color( 0, 0, 0, 1 )
-background_energy = 1.0
-background_canvas_max_layer = 0
-ambient_light_color = Color( 0, 0, 0, 1 )
-ambient_light_energy = 1.0
-ambient_light_sky_contribution = 1.0
-fog_enabled = false
-fog_color = Color( 0.5, 0.6, 0.7, 1 )
-fog_sun_color = Color( 1, 0.9, 0.7, 1 )
-fog_sun_amount = 0.0
-fog_depth_enabled = true
-fog_depth_begin = 10.0
-fog_depth_curve = 1.0
-fog_transmit_enabled = false
-fog_transmit_curve = 1.0
-fog_height_enabled = false
-fog_height_min = 0.0
-fog_height_max = 100.0
-fog_height_curve = 1.0
-tonemap_mode = 0
-tonemap_exposure = 1.0
-tonemap_white = 1.0
-auto_exposure_enabled = false
-auto_exposure_scale = 0.4
-auto_exposure_min_luma = 0.05
-auto_exposure_max_luma = 8.0
-auto_exposure_speed = 0.5
-ss_reflections_enabled = false
-ss_reflections_max_steps = 64
-ss_reflections_fade_in = 0.15
-ss_reflections_fade_out = 2.0
-ss_reflections_depth_tolerance = 0.2
-ss_reflections_roughness = true
-ssao_enabled = false
-ssao_radius = 1.0
-ssao_intensity = 1.0
-ssao_radius2 = 0.0
-ssao_intensity2 = 1.0
-ssao_bias = 0.01
-ssao_light_affect = 0.0
-ssao_color = Color( 0, 0, 0, 1 )
-ssao_quality = 0
-ssao_blur = 3
-ssao_edge_sharpness = 4.0
-dof_blur_far_enabled = false
-dof_blur_far_distance = 10.0
-dof_blur_far_transition = 5.0
-dof_blur_far_amount = 0.1
-dof_blur_far_quality = 1
-dof_blur_near_enabled = false
-dof_blur_near_distance = 2.0
-dof_blur_near_transition = 1.0
-dof_blur_near_amount = 0.1
-dof_blur_near_quality = 1
-glow_enabled = false
-glow_levels/1 = false
-glow_levels/2 = false
-glow_levels/3 = true
-glow_levels/4 = false
-glow_levels/5 = true
-glow_levels/6 = false
-glow_levels/7 = false
-glow_intensity = 0.8
-glow_strength = 1.0
-glow_bloom = 0.0
-glow_blend_mode = 2
-glow_hdr_threshold = 1.0
-glow_hdr_scale = 2.0
-glow_bicubic_upscale = false
-adjustment_enabled = false
-adjustment_brightness = 1.0
-adjustment_contrast = 1.0
-adjustment_saturation = 1.0
 

+ 31 - 0
misc/multitouch_view/icon.png.import

@@ -0,0 +1,31 @@
+[remap]
+
+importer="texture"
+type="StreamTexture"
+path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
+
+[deps]
+
+source_file="res://icon.png"
+dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ]
+
+[params]
+
+compress/mode=0
+compress/lossy_quality=0.7
+compress/hdr_mode=0
+compress/bptc_ldr=0
+compress/normal_map=0
+flags/repeat=0
+flags/filter=true
+flags/mipmaps=false
+flags/anisotropic=false
+flags/srgb=2
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/HDR_as_SRGB=false
+process/invert_color=false
+stream=false
+size_limit=0
+detect_3d=true
+svg/scale=1.0

+ 6 - 1
misc/multitouch_view/project.godot

@@ -6,7 +6,12 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 

+ 2 - 3
misc/pause/icon.png.import

@@ -7,16 +7,14 @@ path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
 [deps]
 
 source_file="res://icon.png"
-source_md5="96d63cb4455baa9e16edea6a3d3d7376"
-
 dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ]
-dest_md5="ec0188ad554f40c7bf64dff529d58d79"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 6 - 1
misc/pause/project.godot

@@ -6,7 +6,12 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 

+ 17 - 126
misc/pause/spinpause.tscn

@@ -4,16 +4,9 @@
 
 [sub_resource type="CubeMesh" id=1]
 
-size = Vector3( 2, 2, 2 )
-subdivide_width = 0
-subdivide_height = 0
-subdivide_depth = 0
-
 [sub_resource type="Animation" id=2]
-
 length = 10.0
 loop = true
-step = 0.1
 tracks/0/type = "value"
 tracks/0/path = NodePath("cube:rotation_degrees")
 tracks/0/interp = 1
@@ -27,165 +20,63 @@ tracks/0/keys = {
 "values": [ Vector3( 0, 0, 0 ), Vector3( 0, -360, 0 ) ]
 }
 
-[node name="pause_scene" type="Spatial" index="0"]
-
+[node name="pause_scene" type="Spatial"]
 script = ExtResource( 1 )
 
-[node name="cube" type="MeshInstance" parent="." index="0"]
-
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
+[node name="cube" type="MeshInstance" parent="."]
 mesh = SubResource( 1 )
-skeleton = NodePath("..")
 material/0 = null
 
-[node name="camera" type="Camera" parent="." index="1"]
-
+[node name="camera" type="Camera" parent="."]
 transform = Transform( 0.571594, 0.275303, -0.772974, 0, 0.942035, 0.335515, 0.820537, -0.191779, 0.538461, -5.59754, 2.75935, 4.01344 )
-keep_aspect = 1
-cull_mask = 1048575
-environment = null
-h_offset = 0.0
-v_offset = 0.0
-doppler_tracking = 0
-projection = 0
-current = false
 fov = 74.0
-size = 1.0
 near = 0.1
-far = 100.0
-
-[node name="anim" type="AnimationPlayer" parent="." index="2"]
 
-root_node = NodePath("..")
+[node name="anim" type="AnimationPlayer" parent="."]
 autoplay = "spin"
-playback_process_mode = 1
-playback_default_blend_time = 0.0
-playback_speed = 1.0
 anims/spin = SubResource( 2 )
-blend_times = [  ]
-autoplay = "spin"
-
-[node name="spot" type="SpotLight" parent="." index="3"]
 
+[node name="spot" type="SpotLight" parent="."]
 transform = Transform( 0.792992, 0.251051, -0.555101, 0, 0.911149, 0.412078, 0.609232, -0.326775, 0.722534, -3.05357, 1.80053, 3.64099 )
-layers = 1
-light_color = Color( 1, 1, 1, 1 )
-light_energy = 1.0
-light_indirect_energy = 1.0
-light_negative = false
-light_specular = 0.5
-light_bake_mode = 1
-light_cull_mask = -1
-shadow_enabled = false
-shadow_color = Color( 0, 0, 0, 1 )
-shadow_bias = 0.15
-shadow_contact = 0.0
-shadow_reverse_cull_face = false
-editor_only = false
 spot_range = 6.0
-spot_attenuation = 1.0
-spot_angle = 45.0
-spot_angle_attenuation = 1.0
-_sections_unfolded = [ "Spot" ]
-
-[node name="pause" type="Button" parent="." index="4"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="pause" type="Button" parent="."]
 margin_left = 24.0
 margin_top = 24.0
 margin_right = 120.0
 margin_bottom = 56.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "PAUSE!"
-flat = false
-align = 1
-
-[node name="pause_popup" type="PopupPanel" parent="." index="5"]
 
+[node name="pause_popup" type="PopupPanel" parent="."]
 pause_mode = 2
-visible = false
 self_modulate = Color( 1, 1, 1, 0.7 )
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 185.0
 margin_top = 72.0
 margin_right = 638.0
 margin_bottom = 433.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-popup_exclusive = false
-_sections_unfolded = [ "Pause" ]
-
-[node name="text" type="Label" parent="pause_popup" index="0"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
-margin_left = 73.0
-margin_top = 49.0
-margin_right = 389.0
-margin_bottom = 154.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
+[node name="text" type="Label" parent="pause_popup"]
+margin_left = 4.0
+margin_top = 4.0
+margin_right = 449.0
+margin_bottom = 357.0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "The game has been paused! Nodes are not processing anymore, but this popup can still process!"
 autowrap = true
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
-[node name="unpause" type="Button" parent="pause_popup" index="1"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
-margin_left = 185.0
-margin_top = 288.0
-margin_right = 281.0
-margin_bottom = 320.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
+[node name="unpause" type="Button" parent="pause_popup"]
+margin_left = 4.0
+margin_top = 4.0
+margin_right = 449.0
+margin_bottom = 357.0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "UN-PAUSE!"
-flat = false
-align = 1
 
 [connection signal="pressed" from="pause" to="." method="_on_pause_pressed"]
-
 [connection signal="pressed" from="pause_popup/unpause" to="." method="_on_unpause_pressed"]

+ 2 - 3
misc/regex/icon.png.import

@@ -7,16 +7,14 @@ path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
 [deps]
 
 source_file="res://icon.png"
-source_md5="1a9620f0fb6d6216fe36a69a9f4e89f6"
-
 dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ]
-dest_md5="b4d083f20fc2ab22305e92d47d512f03"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 6 - 1
misc/regex/project.godot

@@ -6,7 +6,12 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 

+ 4 - 74
misc/regex/regex.tscn

@@ -2,97 +2,27 @@
 
 [ext_resource path="res://regex.gd" type="Script" id=1]
 
-[node name="VBoxContainer" type="VBoxContainer" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
+[node name="VBoxContainer" type="VBoxContainer"]
 anchor_right = 1.0
 anchor_bottom = 1.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 1
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 1
-alignment = 0
 script = ExtResource( 1 )
-_sections_unfolded = [ "Size Flags" ]
-
-[node name="Expression" type="LineEdit" parent="." index="0"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="Expression" type="LineEdit" parent="."]
 margin_right = 1024.0
 margin_bottom = 24.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 1
-size_flags_horizontal = 1
-size_flags_vertical = 1
 text = "\"((?:\\\\.|[^\"])*)\""
-focus_mode = 2
-context_menu_enabled = true
-placeholder_alpha = 0.6
-caret_blink = false
-caret_blink_speed = 0.65
-caret_position = 0
-_sections_unfolded = [ "Size Flags" ]
 
-[node name="Text" type="TextEdit" parent="." index="1"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="Text" type="TextEdit" parent="."]
 margin_top = 28.0
 margin_right = 1024.0
 margin_bottom = 328.0
 rect_min_size = Vector2( 0, 300 )
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
 mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 1
-text = ""
-readonly = false
-highlight_current_line = false
-syntax_highlighting = false
-show_line_numbers = false
-highlight_all_occurrences = false
-override_selected_font_color = false
-context_menu_enabled = true
-smooth_scrolling = false
-v_scroll_speed = 80.0
-hiding_enabled = 0
-wrap_lines = false
-caret_block_mode = false
-caret_blink = false
-caret_blink_speed = 0.65
-caret_moving_by_right_click = true
-_sections_unfolded = [ "Rect", "Size Flags" ]
-
-[node name="List" type="VBoxContainer" parent="." index="2"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="List" type="VBoxContainer" parent="."]
 margin_top = 332.0
 margin_right = 1024.0
 margin_bottom = 332.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 1
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 1
-alignment = 0
-_sections_unfolded = [ "Rect", "Size Flags" ]
 
 [connection signal="text_changed" from="Expression" to="." method="update_expression"]
-
 [connection signal="text_changed" from="Text" to="." method="update_text"]
-
-

+ 10 - 1
misc/scene_changer/project.godot

@@ -6,13 +6,22 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 
 config/name="Scene Changer"
 run/main_scene="res://scene_a.tscn"
 
+[debug]
+
+gdscript/warnings/return_value_discarded=false
+
 [gdnative]
 
 singletons=[  ]

+ 0 - 33
misc/scene_changer/scene_a.tscn

@@ -3,60 +3,27 @@
 [ext_resource path="res://scene_a.gd" type="Script" id=1]
 
 [node name="scene_a" type="Panel"]
-
-anchor_left = 0.0
-anchor_top = 0.0
 anchor_right = 1.0
 anchor_bottom = 1.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 script = ExtResource( 1 )
 
 [node name="label" type="Label" parent="."]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 64.0
 margin_top = 48.0
 margin_right = 104.0
 margin_bottom = 62.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 2
-size_flags_horizontal = 1
 size_flags_vertical = 0
 text = "This is scene A."
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
 [node name="goto_scene" type="Button" parent="."]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 64.0
 margin_top = 128.0
 margin_right = 192.0
 margin_bottom = 160.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "Go to Scene B"
-flat = false
 
 [connection signal="pressed" from="goto_scene" to="." method="_on_goto_scene_pressed"]
-
-

+ 2 - 3
misc/sensors/cube_6.png.import

@@ -8,16 +8,14 @@ path.etc2="res://.import/cube_6.png-0b954e2c88c21596044fe6448711988e.etc2.stex"
 [deps]
 
 source_file="res://cube_6.png"
-source_md5="9d2131f81a62c204dc382856b9be043c"
-
 dest_files=[ "res://.import/cube_6.png-0b954e2c88c21596044fe6448711988e.s3tc.stex", "res://.import/cube_6.png-0b954e2c88c21596044fe6448711988e.etc2.stex" ]
-dest_md5="5187ca5e757e289bfdded0a98ce964ba"
 
 [params]
 
 compress/mode=2
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=true
 flags/filter=true
@@ -27,6 +25,7 @@ flags/srgb=1
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=false

+ 0 - 90
misc/sensors/default_env.tres

@@ -1,104 +1,14 @@
 [gd_resource type="Environment" load_steps=2 format=2]
 
 [sub_resource type="ProceduralSky" id=1]
-
-radiance_size = 4
 sky_top_color = Color( 0.0470588, 0.454902, 0.976471, 1 )
 sky_horizon_color = Color( 0.556863, 0.823529, 0.909804, 1 )
 sky_curve = 0.25
-sky_energy = 1.0
 ground_bottom_color = Color( 0.101961, 0.145098, 0.188235, 1 )
 ground_horizon_color = Color( 0.482353, 0.788235, 0.952941, 1 )
 ground_curve = 0.01
-ground_energy = 1.0
-sun_color = Color( 1, 1, 1, 1 )
-sun_latitude = 35.0
-sun_longitude = 0.0
-sun_angle_min = 1.0
-sun_angle_max = 100.0
-sun_curve = 0.05
-sun_energy = 16.0
-texture_size = 2
 
 [resource]
-
 background_mode = 2
 background_sky = SubResource( 1 )
-background_sky_custom_fov = 0.0
-background_color = Color( 0, 0, 0, 1 )
-background_energy = 1.0
-background_canvas_max_layer = 0
-background_camera_feed_id = 1
-background_camera_feed_h_flip = false
-background_camera_feed_v_flip = true
-ambient_light_color = Color( 0, 0, 0, 1 )
-ambient_light_energy = 1.0
-ambient_light_sky_contribution = 1.0
-fog_enabled = false
-fog_color = Color( 0.5, 0.6, 0.7, 1 )
-fog_sun_color = Color( 1, 0.9, 0.7, 1 )
-fog_sun_amount = 0.0
-fog_depth_enabled = true
-fog_depth_begin = 10.0
-fog_depth_curve = 1.0
-fog_transmit_enabled = false
-fog_transmit_curve = 1.0
-fog_height_enabled = false
-fog_height_min = 0.0
-fog_height_max = 100.0
-fog_height_curve = 1.0
-tonemap_mode = 0
-tonemap_exposure = 1.0
-tonemap_white = 1.0
-auto_exposure_enabled = false
-auto_exposure_scale = 0.4
-auto_exposure_min_luma = 0.05
-auto_exposure_max_luma = 8.0
-auto_exposure_speed = 0.5
-ss_reflections_enabled = false
-ss_reflections_max_steps = 64
-ss_reflections_fade_in = 0.15
-ss_reflections_fade_out = 2.0
-ss_reflections_depth_tolerance = 0.2
-ss_reflections_roughness = true
-ssao_enabled = false
-ssao_radius = 1.0
-ssao_intensity = 1.0
-ssao_radius2 = 0.0
-ssao_intensity2 = 1.0
-ssao_bias = 0.01
-ssao_light_affect = 0.0
-ssao_color = Color( 0, 0, 0, 1 )
-ssao_quality = 0
-ssao_blur = 3
-ssao_edge_sharpness = 4.0
-dof_blur_far_enabled = false
-dof_blur_far_distance = 10.0
-dof_blur_far_transition = 5.0
-dof_blur_far_amount = 0.1
-dof_blur_far_quality = 1
-dof_blur_near_enabled = false
-dof_blur_near_distance = 2.0
-dof_blur_near_transition = 1.0
-dof_blur_near_amount = 0.1
-dof_blur_near_quality = 1
-glow_enabled = false
-glow_levels/1 = false
-glow_levels/2 = false
-glow_levels/3 = true
-glow_levels/4 = false
-glow_levels/5 = true
-glow_levels/6 = false
-glow_levels/7 = false
-glow_intensity = 0.8
-glow_strength = 1.0
-glow_bloom = 0.0
-glow_blend_mode = 2
-glow_hdr_threshold = 1.0
-glow_hdr_scale = 2.0
-glow_bicubic_upscale = false
-adjustment_enabled = false
-adjustment_brightness = 1.0
-adjustment_contrast = 1.0
-adjustment_saturation = 1.0
 

+ 2 - 3
misc/sensors/icon.png.import

@@ -7,16 +7,14 @@ path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
 [deps]
 
 source_file="res://icon.png"
-source_md5="ae7e641067601e2184afcade49abd283"
-
 dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ]
-dest_md5="84511021bbc8c9d37c7f0f4d181de883"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 21 - 482
misc/sensors/main.tscn

@@ -4,591 +4,130 @@
 [ext_resource path="res://cube_6.png" type="Texture" id=2]
 
 [sub_resource type="Environment" id=1]
-
 background_mode = 1
-background_sky_custom_fov = 0.0
-background_color = Color( 0, 0, 0, 1 )
-background_energy = 1.0
-background_canvas_max_layer = 0
 ambient_light_color = Color( 0.648438, 0.64578, 0.64578, 1 )
-ambient_light_energy = 1.0
-ambient_light_sky_contribution = 1.0
-fog_enabled = false
-fog_color = Color( 0.5, 0.6, 0.7, 1 )
-fog_sun_color = Color( 1, 0.9, 0.7, 1 )
-fog_sun_amount = 0.0
-fog_depth_enabled = true
-fog_depth_begin = 10.0
-fog_depth_curve = 1.0
-fog_transmit_enabled = false
-fog_transmit_curve = 1.0
-fog_height_enabled = false
-fog_height_min = 0.0
-fog_height_max = 100.0
-fog_height_curve = 1.0
-tonemap_mode = 0
-tonemap_exposure = 1.0
-tonemap_white = 1.0
-auto_exposure_enabled = false
-auto_exposure_scale = 0.4
-auto_exposure_min_luma = 0.05
-auto_exposure_max_luma = 8.0
-auto_exposure_speed = 0.5
-ss_reflections_enabled = false
-ss_reflections_max_steps = 64
-ss_reflections_fade_in = 0.15
-ss_reflections_fade_out = 2.0
-ss_reflections_depth_tolerance = 0.2
-ss_reflections_roughness = true
-ssao_enabled = false
-ssao_radius = 1.0
-ssao_intensity = 1.0
-ssao_radius2 = 0.0
-ssao_intensity2 = 1.0
-ssao_bias = 0.01
-ssao_light_affect = 0.0
-ssao_color = Color( 0, 0, 0, 1 )
-ssao_quality = 0
-ssao_blur = 3
-ssao_edge_sharpness = 4.0
-dof_blur_far_enabled = false
-dof_blur_far_distance = 10.0
-dof_blur_far_transition = 5.0
-dof_blur_far_amount = 0.1
-dof_blur_far_quality = 1
-dof_blur_near_enabled = false
-dof_blur_near_distance = 2.0
-dof_blur_near_transition = 1.0
-dof_blur_near_amount = 0.1
-dof_blur_near_quality = 1
-glow_enabled = false
-glow_levels/1 = false
-glow_levels/2 = false
-glow_levels/3 = true
-glow_levels/4 = false
-glow_levels/5 = true
-glow_levels/6 = false
-glow_levels/7 = false
-glow_intensity = 0.8
-glow_strength = 1.0
-glow_bloom = 0.0
-glow_blend_mode = 2
-glow_hdr_threshold = 1.0
-glow_hdr_scale = 2.0
-glow_bicubic_upscale = false
-adjustment_enabled = false
-adjustment_brightness = 1.0
-adjustment_contrast = 1.0
-adjustment_saturation = 1.0
-_sections_unfolded = [ "Ambient Light", "Background" ]
 
 [sub_resource type="CylinderMesh" id=2]
-
 top_radius = 0.2
 bottom_radius = 0.1
 height = 4.0
 radial_segments = 16
-rings = 4
 
 [sub_resource type="SpatialMaterial" id=3]
-
-render_priority = 0
-flags_transparent = false
-flags_unshaded = false
-flags_vertex_lighting = false
-flags_no_depth_test = false
-flags_use_point_size = false
-flags_world_triplanar = false
-flags_fixed_size = false
-flags_albedo_tex_force_srgb = false
-vertex_color_use_as_albedo = false
-vertex_color_is_srgb = false
 params_diffuse_mode = 1
-params_specular_mode = 0
-params_blend_mode = 0
-params_cull_mode = 0
-params_depth_draw_mode = 0
-params_line_width = 1.0
-params_point_size = 1.0
-params_billboard_mode = 0
-params_grow = false
-params_use_alpha_scissor = false
 albedo_color = Color( 0.356557, 1, 0.366611, 1 )
-metallic = 0.0
-metallic_specular = 0.5
-metallic_texture_channel = 0
 roughness = 0.0
-roughness_texture_channel = 0
-emission_enabled = false
-normal_enabled = false
-rim_enabled = false
-clearcoat_enabled = false
-anisotropy_enabled = false
-ao_enabled = false
-depth_enabled = false
-subsurf_scatter_enabled = false
-transmission_enabled = false
-refraction_enabled = false
-detail_enabled = false
-uv1_scale = Vector3( 1, 1, 1 )
-uv1_offset = Vector3( 0, 0, 0 )
-uv1_triplanar = false
-uv1_triplanar_sharpness = 1.0
-uv2_scale = Vector3( 1, 1, 1 )
-uv2_offset = Vector3( 0, 0, 0 )
-uv2_triplanar = false
-uv2_triplanar_sharpness = 1.0
-proximity_fade_enable = false
-distance_fade_enable = false
-_sections_unfolded = [ "Albedo", "Flags", "Parameters", "Resource", "Vertex Color" ]
 
 [sub_resource type="CylinderMesh" id=4]
-
 top_radius = 0.1
-bottom_radius = 1.0
-height = 2.0
 radial_segments = 16
-rings = 4
 
 [sub_resource type="SpatialMaterial" id=5]
-
-render_priority = 0
-flags_transparent = false
-flags_unshaded = false
-flags_vertex_lighting = false
-flags_no_depth_test = false
-flags_use_point_size = false
-flags_world_triplanar = false
-flags_fixed_size = false
-flags_albedo_tex_force_srgb = false
-vertex_color_use_as_albedo = false
-vertex_color_is_srgb = false
 params_diffuse_mode = 1
-params_specular_mode = 0
-params_blend_mode = 0
-params_cull_mode = 0
-params_depth_draw_mode = 0
-params_line_width = 1.0
-params_point_size = 1.0
-params_billboard_mode = 0
-params_grow = false
-params_use_alpha_scissor = false
 albedo_color = Color( 0.0266393, 0.292793, 1, 1 )
-metallic = 0.0
-metallic_specular = 0.5
-metallic_texture_channel = 0
 roughness = 0.0
-roughness_texture_channel = 0
-emission_enabled = false
-normal_enabled = false
-rim_enabled = false
-clearcoat_enabled = false
-anisotropy_enabled = false
-ao_enabled = false
-depth_enabled = false
-subsurf_scatter_enabled = false
-transmission_enabled = false
-refraction_enabled = false
-detail_enabled = false
-uv1_scale = Vector3( 1, 1, 1 )
-uv1_offset = Vector3( 0, 0, 0 )
-uv1_triplanar = false
-uv1_triplanar_sharpness = 1.0
-uv2_scale = Vector3( 1, 1, 1 )
-uv2_offset = Vector3( 0, 0, 0 )
-uv2_triplanar = false
-uv2_triplanar_sharpness = 1.0
-proximity_fade_enable = false
-distance_fade_enable = false
-_sections_unfolded = [ "Albedo", "Vertex Color" ]
 
 [sub_resource type="SpatialMaterial" id=6]
-
-render_priority = 0
-flags_transparent = false
-flags_unshaded = false
-flags_vertex_lighting = false
-flags_no_depth_test = false
-flags_use_point_size = false
-flags_world_triplanar = false
-flags_fixed_size = false
-flags_albedo_tex_force_srgb = false
-vertex_color_use_as_albedo = false
-vertex_color_is_srgb = false
 params_diffuse_mode = 1
-params_specular_mode = 0
-params_blend_mode = 0
-params_cull_mode = 0
-params_depth_draw_mode = 0
-params_line_width = 1.0
-params_point_size = 1.0
-params_billboard_mode = 0
-params_grow = false
-params_use_alpha_scissor = false
 albedo_color = Color( 0.957031, 0.801627, 0.0921731, 1 )
-metallic = 0.0
-metallic_specular = 0.5
-metallic_texture_channel = 0
 roughness = 0.0
-roughness_texture_channel = 0
-emission_enabled = false
-normal_enabled = false
-rim_enabled = false
-clearcoat_enabled = false
-anisotropy_enabled = false
-ao_enabled = false
-depth_enabled = false
-subsurf_scatter_enabled = false
-transmission_enabled = false
-refraction_enabled = false
-detail_enabled = false
-uv1_scale = Vector3( 1, 1, 1 )
-uv1_offset = Vector3( 0, 0, 0 )
-uv1_triplanar = false
-uv1_triplanar_sharpness = 1.0
-uv2_scale = Vector3( 1, 1, 1 )
-uv2_offset = Vector3( 0, 0, 0 )
-uv2_triplanar = false
-uv2_triplanar_sharpness = 1.0
-proximity_fade_enable = false
-distance_fade_enable = false
-_sections_unfolded = [ "Albedo" ]
 
 [sub_resource type="CubeMesh" id=7]
-
 size = Vector3( 4, 4, 4 )
-subdivide_width = 0
-subdivide_height = 0
-subdivide_depth = 0
 
 [sub_resource type="SpatialMaterial" id=8]
-
-render_priority = 0
-flags_transparent = false
-flags_unshaded = false
-flags_vertex_lighting = false
-flags_no_depth_test = false
-flags_use_point_size = false
-flags_world_triplanar = false
-flags_fixed_size = false
-flags_albedo_tex_force_srgb = false
-vertex_color_use_as_albedo = false
-vertex_color_is_srgb = false
 params_diffuse_mode = 1
-params_specular_mode = 0
-params_blend_mode = 0
-params_cull_mode = 0
-params_depth_draw_mode = 0
-params_line_width = 1.0
-params_point_size = 1.0
-params_billboard_mode = 0
-params_grow = false
-params_use_alpha_scissor = false
-albedo_color = Color( 1, 1, 1, 1 )
 albedo_texture = ExtResource( 2 )
-metallic = 0.0
-metallic_specular = 0.5
-metallic_texture_channel = 0
 roughness = 0.0
-roughness_texture_channel = 0
-emission_enabled = false
-normal_enabled = false
-rim_enabled = false
-clearcoat_enabled = false
-anisotropy_enabled = false
-ao_enabled = false
-depth_enabled = false
-subsurf_scatter_enabled = false
-transmission_enabled = false
-refraction_enabled = false
-detail_enabled = false
-uv1_scale = Vector3( 1, 1, 1 )
-uv1_offset = Vector3( 0, 0, 0 )
-uv1_triplanar = false
-uv1_triplanar_sharpness = 1.0
-uv2_scale = Vector3( 1, 1, 1 )
-uv2_offset = Vector3( 0, 0, 0 )
-uv2_triplanar = false
-uv2_triplanar_sharpness = 1.0
-proximity_fade_enable = false
-distance_fade_enable = false
-_sections_unfolded = [ "Albedo" ]
-
-[node name="Main" type="Node" index="0"]
 
+[node name="Main" type="Node"]
 script = ExtResource( 1 )
 
-[node name="Control" type="Control" parent="." index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="Control" type="Control" parent="."]
 margin_right = 1025.0
 margin_bottom = 602.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 3
 size_flags_vertical = 3
-_sections_unfolded = [ "Anchor", "Grow Direction", "Hint", "Margin", "Rect", "Size Flags" ]
-
-[node name="Accelerometer" type="Label" parent="Control" index="0"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="Accelerometer" type="Label" parent="Control"]
 margin_right = 340.0
 margin_bottom = 14.0
 rect_scale = Vector2( 2, 2 )
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 4
 text = "Accelerometer"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-_sections_unfolded = [ "Anchor", "Margin", "Rect", "Size Flags" ]
 
-[node name="Magnetometer" type="Label" parent="Control" index="1"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="Magnetometer" type="Label" parent="Control"]
 margin_top = 30.0
 margin_right = 340.0
 margin_bottom = 44.0
 rect_scale = Vector2( 2, 2 )
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 4
 text = "Magnetometer"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-_sections_unfolded = [ "Anchor", "Margin", "Rect", "Size Flags" ]
-
-[node name="Gyroscope" type="Label" parent="Control" index="2"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="Gyroscope" type="Label" parent="Control"]
 margin_top = 60.0
 margin_right = 340.0
 margin_bottom = 74.0
 rect_scale = Vector2( 2, 2 )
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 4
 text = "Gyroscope"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-_sections_unfolded = [ "Anchor", "Margin", "Rect", "Size Flags" ]
-
-[node name="Camera" type="Camera" parent="." index="1"]
 
+[node name="Camera" type="Camera" parent="."]
 transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.285209, 0, 11.9833 )
-keep_aspect = 1
-cull_mask = 1048575
 environment = SubResource( 1 )
-h_offset = 0.0
-v_offset = 0.0
-doppler_tracking = 0
-projection = 0
-current = false
 fov = 74.0
-size = 1.0
 near = 0.1
-far = 100.0
 
-[node name="Arrows" type="Spatial" parent="." index="2"]
-
-[node name="AccelerometerArrow" type="Spatial" parent="Arrows" index="0"]
+[node name="Arrows" type="Spatial" parent="."]
 
+[node name="AccelerometerArrow" type="Spatial" parent="Arrows"]
 transform = Transform( 1, 0, 0, 0, -1, 8.74228e-08, 0, -8.74228e-08, -1, 0, 0, 0 )
-_sections_unfolded = [ "Transform" ]
-
-[node name="Bottom" type="MeshInstance" parent="Arrows/AccelerometerArrow" index="0"]
 
+[node name="Bottom" type="MeshInstance" parent="Arrows/AccelerometerArrow"]
 transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2, 0 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 2 )
-skeleton = NodePath("..")
 material/0 = SubResource( 3 )
-_sections_unfolded = [ "Transform", "material" ]
-
-[node name="Top" type="MeshInstance" parent="Arrows/AccelerometerArrow" index="1"]
 
+[node name="Top" type="MeshInstance" parent="Arrows/AccelerometerArrow"]
 transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 5, 0 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 4 )
-skeleton = NodePath("..")
 material/0 = SubResource( 3 )
-_sections_unfolded = [ "Transform", "material" ]
-
-[node name="MagnetoArrow" type="Spatial" parent="Arrows" index="1"]
 
+[node name="MagnetoArrow" type="Spatial" parent="Arrows"]
 transform = Transform( -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0, 1, 0, 0, 0 )
-_sections_unfolded = [ "Transform" ]
-
-[node name="Bottom" type="MeshInstance" parent="Arrows/MagnetoArrow" index="0"]
 
+[node name="Bottom" type="MeshInstance" parent="Arrows/MagnetoArrow"]
 transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2, 0 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 2 )
-skeleton = NodePath("..")
 material/0 = SubResource( 5 )
-_sections_unfolded = [ "Transform", "material" ]
-
-[node name="Top" type="MeshInstance" parent="Arrows/MagnetoArrow" index="1"]
 
+[node name="Top" type="MeshInstance" parent="Arrows/MagnetoArrow"]
 transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 5, 0 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 4 )
-skeleton = NodePath("..")
 material/0 = SubResource( 5 )
-_sections_unfolded = [ "Transform", "material" ]
-
-[node name="NorthArrow" type="Spatial" parent="Arrows" index="2"]
 
+[node name="NorthArrow" type="Spatial" parent="Arrows"]
 transform = Transform( 1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0 )
-_sections_unfolded = [ "Transform" ]
-
-[node name="Bottom" type="MeshInstance" parent="Arrows/NorthArrow" index="0"]
 
+[node name="Bottom" type="MeshInstance" parent="Arrows/NorthArrow"]
 transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2, 0 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 2 )
-skeleton = NodePath("..")
 material/0 = SubResource( 6 )
-_sections_unfolded = [ "Transform", "material" ]
-
-[node name="Top" type="MeshInstance" parent="Arrows/NorthArrow" index="1"]
 
+[node name="Top" type="MeshInstance" parent="Arrows/NorthArrow"]
 transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 5, 0 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 4 )
-skeleton = NodePath("..")
 material/0 = SubResource( 6 )
-_sections_unfolded = [ "Transform", "material" ]
-
-[node name="Boxes" type="Spatial" parent="." index="3"]
 
-[node name="MagAndGrav" type="MeshInstance" parent="Boxes" index="0"]
+[node name="Boxes" type="Spatial" parent="."]
 
+[node name="MagAndGrav" type="MeshInstance" parent="Boxes"]
 transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -7, -4, 0 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 7 )
-skeleton = NodePath("..")
 material/0 = SubResource( 8 )
-_sections_unfolded = [ "Transform", "material" ]
-
-[node name="GyroAndGrav" type="MeshInstance" parent="Boxes" index="1"]
 
+[node name="GyroAndGrav" type="MeshInstance" parent="Boxes"]
 transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 7, -4, 0 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 7 )
-skeleton = NodePath("..")
 material/0 = SubResource( 8 )
-_sections_unfolded = [ "Transform", "material" ]
-
-[node name="DirectionalLight" type="DirectionalLight" parent="." index="4"]
 
+[node name="DirectionalLight" type="DirectionalLight" parent="."]
 transform = Transform( 0.884838, -0.329433, 0.329449, 0, 0.707124, 0.707089, -0.4659, -0.625659, 0.62569, 0, 4.69444, 0 )
-layers = 1
-light_color = Color( 1, 1, 1, 1 )
-light_energy = 1.0
-light_indirect_energy = 1.0
-light_negative = false
-light_specular = 0.5
-light_bake_mode = 1
-light_cull_mask = -1
-shadow_enabled = false
-shadow_color = Color( 0, 0, 0, 1 )
-shadow_bias = 0.1
-shadow_contact = 0.0
-shadow_reverse_cull_face = false
-editor_only = false
-directional_shadow_mode = 2
-directional_shadow_split_1 = 0.1
-directional_shadow_split_2 = 0.2
-directional_shadow_split_3 = 0.5
-directional_shadow_blend_splits = false
-directional_shadow_normal_bias = 0.8
-directional_shadow_bias_split_scale = 0.25
-directional_shadow_depth_range = 0
-directional_shadow_max_distance = 200.0
+

+ 6 - 1
misc/sensors/project.godot

@@ -6,7 +6,12 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 

+ 6 - 1
misc/threads/project.godot

@@ -6,7 +6,12 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 

+ 3 - 23
misc/threads/thread.tscn

@@ -2,39 +2,19 @@
 
 [ext_resource path="res://thread.gd" type="Script" id=1]
 
-[node name="node" type="Node2D" index="0"]
-
+[node name="node" type="Node2D"]
 script = ExtResource( 1 )
 
-[node name="load" type="Button" parent="." index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="load" type="Button" parent="."]
 margin_left = 192.0
 margin_top = 32.0
 margin_right = 320.0
 margin_bottom = 64.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "Load in Thread"
-flat = false
-align = 1
-
-[node name="sprite" type="Sprite" parent="." index="1"]
 
+[node name="sprite" type="Sprite" parent="."]
 position = Vector2( 248, 256 )
-_sections_unfolded = [ "Transform" ]
 
 [connection signal="pressed" from="load" to="." method="_on_load_pressed"]
-
-

+ 2 - 3
misc/tween/godot.png.import

@@ -7,16 +7,14 @@ path="res://.import/godot.png-5e0da45ed3d6786d5794553e04f58a8c.stex"
 [deps]
 
 source_file="res://godot.png"
-source_md5="377c28f8825ea7512b64b3bff69f4e34"
-
 dest_files=[ "res://.import/godot.png-5e0da45ed3d6786d5794553e04f58a8c.stex" ]
-dest_md5="7d9b5e3ee856458ff45c2bf5351d3d81"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=false

+ 2 - 3
misc/tween/icon.png.import

@@ -7,16 +7,14 @@ path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
 [deps]
 
 source_file="res://icon.png"
-source_md5="84f7874a3f7c91a93c9ee13c816e4c09"
-
 dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ]
-dest_md5="7d003c6ff4c5614804c89fb09547b9bd"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 2 - 2
misc/tween/main.gd

@@ -73,7 +73,7 @@ func on_modes_changed(mode_name):
 		reset_tween()
 
 
-func on_color_changed(color):
+func on_color_changed(_color):
 	reset_tween()
 
 
@@ -138,7 +138,7 @@ func reset_tween():
 		#get_node("timeline").set_ignore_mouse(true)
 
 
-func _on_tween_step(object, key, elapsed, value):
+func _on_tween_step(_object, _key, elapsed, _value):
 	var timeline = get_node("timeline")
 
 	var tween = get_node("tween")

+ 52 - 541
misc/tween/main.tscn

@@ -3,825 +3,336 @@
 [ext_resource path="res://main.gd" type="Script" id=1]
 [ext_resource path="res://godot.png" type="Texture" id=2]
 
-[node name="main" type="Control" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="main" type="Control"]
 margin_right = 800.0
 margin_bottom = 600.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 script = ExtResource( 1 )
 
-[node name="trans" type="VBoxContainer" parent="." index="0"]
-
+[node name="trans" type="VBoxContainer" parent="."]
 editor/display_folded = true
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 56.0
 margin_top = 288.0
 margin_right = 129.0
 margin_bottom = 614.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 1
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-alignment = 0
-
-[node name="linear" type="Button" parent="trans" index="0"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="linear" type="Button" parent="trans"]
 margin_right = 48.0
 margin_bottom = 20.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 toggle_mode = true
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "linear"
-flat = false
-align = 1
 
-[node name="sine" type="Button" parent="trans" index="1"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="sine" type="Button" parent="trans"]
 margin_top = 30.0
 margin_right = 39.0
 margin_bottom = 50.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 toggle_mode = true
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "sine"
-flat = false
-align = 1
-
-[node name="quint" type="Button" parent="trans" index="2"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="quint" type="Button" parent="trans"]
 margin_top = 60.0
 margin_right = 45.0
 margin_bottom = 80.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 toggle_mode = true
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "quint"
-flat = false
-align = 1
-
-[node name="quart" type="Button" parent="trans" index="3"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="quart" type="Button" parent="trans"]
 margin_top = 90.0
 margin_right = 45.0
 margin_bottom = 110.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 toggle_mode = true
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "quart"
-flat = false
-align = 1
 
-[node name="quad" type="Button" parent="trans" index="4"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="quad" type="Button" parent="trans"]
 margin_top = 120.0
 margin_right = 43.0
 margin_bottom = 140.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 toggle_mode = true
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "quad"
-flat = false
-align = 1
-
-[node name="expo" type="Button" parent="trans" index="5"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="expo" type="Button" parent="trans"]
 margin_top = 150.0
 margin_right = 43.0
 margin_bottom = 170.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 toggle_mode = true
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "expo"
-flat = false
-align = 1
-
-[node name="elastic" type="Button" parent="trans" index="6"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="elastic" type="Button" parent="trans"]
 margin_top = 180.0
 margin_right = 54.0
 margin_bottom = 200.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 toggle_mode = true
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "elastic"
-flat = false
-align = 1
 
-[node name="cubic" type="Button" parent="trans" index="7"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="cubic" type="Button" parent="trans"]
 margin_top = 210.0
 margin_right = 46.0
 margin_bottom = 230.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 toggle_mode = true
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "cubic"
-flat = false
-align = 1
-
-[node name="circ" type="Button" parent="trans" index="8"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="circ" type="Button" parent="trans"]
 margin_top = 240.0
 margin_right = 35.0
 margin_bottom = 260.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 toggle_mode = true
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "circ"
-flat = false
-align = 1
-
-[node name="bounce" type="Button" parent="trans" index="9"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="bounce" type="Button" parent="trans"]
 margin_top = 270.0
 margin_right = 59.0
 margin_bottom = 290.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 toggle_mode = true
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "bounce"
-flat = false
-align = 1
 
-[node name="back" type="Button" parent="trans" index="10"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="back" type="Button" parent="trans"]
 margin_top = 300.0
 margin_right = 41.0
 margin_bottom = 320.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 toggle_mode = true
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "back"
-flat = false
-align = 1
-
-[node name="eases" type="VBoxContainer" parent="." index="1"]
 
+[node name="eases" type="VBoxContainer" parent="."]
 editor/display_folded = true
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 152.0
 margin_top = 288.0
 margin_right = 215.0
 margin_bottom = 404.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 1
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-alignment = 0
-
-[node name="in" type="Button" parent="eases" index="0"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="in" type="Button" parent="eases"]
 margin_right = 24.0
 margin_bottom = 20.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 toggle_mode = true
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "in"
-flat = false
-align = 1
 
-[node name="out" type="Button" parent="eases" index="1"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="out" type="Button" parent="eases"]
 margin_top = 30.0
 margin_right = 33.0
 margin_bottom = 50.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 toggle_mode = true
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "out"
-flat = false
-align = 1
-
-[node name="in_out" type="Button" parent="eases" index="2"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="in_out" type="Button" parent="eases"]
 margin_top = 60.0
 margin_right = 51.0
 margin_bottom = 80.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 toggle_mode = true
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "in_out"
-flat = false
-align = 1
-
-[node name="out_in" type="Button" parent="eases" index="3"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="out_in" type="Button" parent="eases"]
 margin_top = 90.0
 margin_right = 51.0
 margin_bottom = 110.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 toggle_mode = true
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "out_in"
-flat = false
-align = 1
-
-[node name="modes" type="VBoxContainer" parent="." index="2"]
 
+[node name="modes" type="VBoxContainer" parent="."]
 editor/display_folded = true
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 240.0
 margin_top = 288.0
 margin_right = 317.0
 margin_bottom = 524.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 1
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-alignment = 0
-
-[node name="move" type="Button" parent="modes" index="0"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="move" type="Button" parent="modes"]
 margin_right = 48.0
 margin_bottom = 20.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 toggle_mode = true
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "move"
-flat = false
-align = 1
-
-[node name="color" type="Button" parent="modes" index="1"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="color" type="Button" parent="modes"]
 margin_top = 30.0
 margin_right = 44.0
 margin_bottom = 50.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 toggle_mode = true
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "color"
-flat = false
-align = 1
 
-[node name="scale" type="Button" parent="modes" index="2"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="scale" type="Button" parent="modes"]
 margin_top = 60.0
 margin_right = 45.0
 margin_bottom = 80.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 toggle_mode = true
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "scale"
-flat = false
-align = 1
-
-[node name="rotate" type="Button" parent="modes" index="3"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="rotate" type="Button" parent="modes"]
 margin_top = 90.0
 margin_right = 50.0
 margin_bottom = 110.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 toggle_mode = true
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "rotate"
-flat = false
-align = 1
 
-[node name="callback" type="Button" parent="modes" index="4"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="callback" type="Button" parent="modes"]
 margin_top = 120.0
 margin_right = 63.0
 margin_bottom = 140.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 toggle_mode = true
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "callback"
-flat = false
-align = 1
-
-[node name="follow" type="Button" parent="modes" index="5"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="follow" type="Button" parent="modes"]
 margin_top = 150.0
 margin_right = 50.0
 margin_bottom = 170.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 toggle_mode = true
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "follow"
-flat = false
-align = 1
-
-[node name="repeat" type="Button" parent="modes" index="6"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="repeat" type="Button" parent="modes"]
 margin_top = 180.0
 margin_right = 53.0
 margin_bottom = 200.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 toggle_mode = true
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "repeat"
-flat = false
-align = 1
 
-[node name="pause" type="Button" parent="modes" index="7"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="pause" type="Button" parent="modes"]
 margin_top = 210.0
 margin_right = 50.0
 margin_bottom = 230.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 toggle_mode = true
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "pause"
-flat = false
-align = 1
-
-[node name="colors" type="HBoxContainer" parent="." index="3"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="colors" type="HBoxContainer" parent="."]
 margin_left = 352.0
 margin_top = 288.0
 margin_right = 858.0
 margin_bottom = 626.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 1
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 custom_constants/separation = 40
-alignment = 0
-
-[node name="color_from" type="VBoxContainer" parent="colors" index="0"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
-margin_right = 298.0
-margin_bottom = 476.0
+[node name="color_from" type="VBoxContainer" parent="colors"]
+margin_right = 290.0
+margin_bottom = 480.0
 rect_min_size = Vector2( 0, 320 )
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 1
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-alignment = 0
 
-[node name="label" type="Label" parent="colors/color_from" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="label" type="Label" parent="colors/color_from"]
 margin_right = 74.0
 margin_bottom = 14.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Color From:"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="picker" type="ColorPicker" parent="colors/color_from" index="1"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="picker" type="ColorPicker" parent="colors/color_from"]
 margin_top = 18.0
-margin_right = 298.0
-margin_bottom = 476.0
+margin_right = 290.0
+margin_bottom = 480.0
 rect_min_size = Vector2( 0, 320 )
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 1
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-alignment = 0
-color = Color( 1, 1, 1, 1 )
-edit_alpha = true
-raw_mode = false
-
-[node name="color_to" type="VBoxContainer" parent="colors" index="1"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
-margin_left = 338.0
-margin_right = 636.0
-margin_bottom = 476.0
+[node name="color_to" type="VBoxContainer" parent="colors"]
+margin_left = 330.0
+margin_right = 620.0
+margin_bottom = 480.0
 rect_min_size = Vector2( 0, 320 )
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 1
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-alignment = 0
 
-[node name="label" type="Label" parent="colors/color_to" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="label" type="Label" parent="colors/color_to"]
 margin_right = 56.0
 margin_bottom = 14.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Color To:"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="picker" type="ColorPicker" parent="colors/color_to" index="1"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="picker" type="ColorPicker" parent="colors/color_to"]
 margin_top = 18.0
-margin_right = 298.0
-margin_bottom = 476.0
+margin_right = 290.0
+margin_bottom = 480.0
 rect_min_size = Vector2( 0, 320 )
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 1
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-alignment = 0
-color = Color( 1, 1, 1, 1 )
-edit_alpha = true
-raw_mode = false
-
-[node name="tween" type="Tween" parent="." index="4"]
 
+[node name="tween" type="Tween" parent="."]
 repeat = true
-playback_process_mode = 1
-playback_speed = 1.0
-playback/active = true
 playback/repeat = true
-playback/speed = 1.0
 
-[node name="area" type="Panel" parent="tween" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="area" type="Panel" parent="tween"]
 margin_left = 32.0
 margin_top = 32.0
 margin_right = 896.0
 margin_bottom = 232.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 
-[node name="label" type="RichTextLabel" parent="tween/area" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="label" type="RichTextLabel" parent="tween/area"]
 margin_left = 176.0
 margin_top = 24.0
 margin_right = 552.0
 margin_bottom = 160.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = true
-mouse_filter = 0
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 2
-size_flags_vertical = 2
-bbcode_enabled = false
-bbcode_text = ""
-visible_characters = -1
-percent_visible = 1.0
-meta_underlined = true
-tab_size = 4
-text = ""
-scroll_active = true
-scroll_following = false
-selection_enabled = false
-override_selected_font_color = false
-
-[node name="sprite" type="Sprite" parent="tween/area" index="1"]
+size_flags_horizontal = 2
+size_flags_vertical = 2
 
+[node name="sprite" type="Sprite" parent="tween/area"]
 texture = ExtResource( 2 )
 
-[node name="follow" type="Sprite" parent="tween/area" index="2"]
-
+[node name="follow" type="Sprite" parent="tween/area"]
 position = Vector2( 0, 184 )
 texture = ExtResource( 2 )
 
-[node name="follow_2" type="Sprite" parent="tween/area" index="3"]
-
+[node name="follow_2" type="Sprite" parent="tween/area"]
 position = Vector2( 736, 0 )
 texture = ExtResource( 2 )
 
-[node name="timeline" type="HSlider" parent="." index="5"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="timeline" type="HSlider" parent="."]
 margin_left = 48.0
 margin_top = 240.0
 margin_right = 880.0
 margin_bottom = 256.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
-size_flags_vertical = 0
-min_value = 0.0
-max_value = 100.0
-step = 1.0
-page = 0.0
 value = 1.0
-exp_edit = false
-rounded = false
-editable = true
-tick_count = 0
-ticks_on_borders = false
-focus_mode = 2
 
 [connection signal="tween_step" from="tween" to="." method="_on_tween_step"]
-
 [connection signal="value_changed" from="timeline" to="." method="_on_timeline_value_changed"]
-
-

+ 10 - 1
misc/tween/project.godot

@@ -6,7 +6,12 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 
@@ -15,6 +20,10 @@ run/main_scene="res://main.tscn"
 config/icon="res://icon.png"
 target_fps=60
 
+[debug]
+
+gdscript/warnings/return_value_discarded=false
+
 [display]
 
 window/size/height=768

+ 1 - 1
misc/window_management/control.gd

@@ -5,7 +5,7 @@ var mousepos
 
 onready var observer = $"../Observer"
 
-func _physics_process(delta):
+func _physics_process(_delta):
 	var modetext = "Mode:\n"
 
 	if OS.is_window_fullscreen():

+ 0 - 1
misc/window_management/observer/observer.tscn

@@ -4,7 +4,6 @@
 
 [sub_resource type="BoxShape" id=1]
 
-
 [node name="Observer" type="KinematicBody"]
 script = ExtResource( 1 )
 

+ 34 - 8
misc/window_management/project.godot

@@ -6,7 +6,12 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 
@@ -26,17 +31,38 @@ singletons=[  ]
 
 [input]
 
-mouse_mode_captured=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777246,"unicode":0,"echo":false,"script":null)
+mouse_mode_captured={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777246,"unicode":0,"echo":false,"script":null)
  ]
-mouse_mode_hidden=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777245,"unicode":0,"echo":false,"script":null)
+}
+mouse_mode_hidden={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777245,"unicode":0,"echo":false,"script":null)
  ]
-mouse_mode_visible=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777244,"unicode":0,"echo":false,"script":null)
+}
+mouse_mode_visible={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777244,"unicode":0,"echo":false,"script":null)
  ]
-move_backwards=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":83,"unicode":0,"echo":false,"script":null)
+}
+move_backwards={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":83,"unicode":0,"echo":false,"script":null)
  ]
-move_forward=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":87,"unicode":0,"echo":false,"script":null)
+}
+move_forward={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":87,"unicode":0,"echo":false,"script":null)
  ]
-move_left=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":65,"unicode":0,"echo":false,"script":null)
+}
+move_left={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":65,"unicode":0,"echo":false,"script":null)
  ]
-move_right=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":68,"unicode":0,"echo":false,"script":null)
+}
+move_right={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":68,"unicode":0,"echo":false,"script":null)
  ]
+}

+ 0 - 2
misc/window_management/window_management.tscn

@@ -4,11 +4,9 @@
 [ext_resource path="res://control.gd" type="Script" id=2]
 
 [sub_resource type="SpatialMaterial" id=1]
-
 albedo_color = Color( 0.835294, 0.133333, 0.133333, 1 )
 
 [sub_resource type="CubeMesh" id=2]
-
 material = SubResource( 1 )
 size = Vector3( 5, 5, 5 )
 

BIN
plugins/custom_dock/custom_dock.scn


+ 56 - 0
plugins/custom_dock/custom_dock.tscn

@@ -0,0 +1,56 @@
+[gd_scene format=2]
+
+[node name="CustomDock" type="VBoxContainer"]
+__meta__ = {
+"__editor_plugin_screen__": "2D"
+}
+
+[node name="Title" type="Label" parent="."]
+margin_right = 141.0
+margin_bottom = 14.0
+text = "This is a Custom Dock"
+
+[node name="Button" type="Button" parent="."]
+margin_top = 18.0
+margin_right = 141.0
+margin_bottom = 38.0
+text = "Really cool"
+
+[node name="GridContainer" type="GridContainer" parent="."]
+margin_top = 42.0
+margin_right = 141.0
+margin_bottom = 74.0
+columns = 2
+
+[node name="One" type="Label" parent="GridContainer"]
+margin_right = 36.0
+margin_bottom = 14.0
+text = "One"
+
+[node name="Two" type="Label" parent="GridContainer"]
+margin_left = 40.0
+margin_right = 68.0
+margin_bottom = 14.0
+text = "Two"
+
+[node name="Three" type="Label" parent="GridContainer"]
+margin_top = 18.0
+margin_right = 36.0
+margin_bottom = 32.0
+text = "Three"
+
+[node name="Four" type="Label" parent="GridContainer"]
+margin_left = 40.0
+margin_top = 18.0
+margin_right = 68.0
+margin_bottom = 32.0
+text = "Four"
+
+[node name="OptionButton" type="OptionButton" parent="."]
+margin_top = 78.0
+margin_right = 141.0
+margin_bottom = 98.0
+text = "Heho"
+items = [ "Heho", null, false, -1, null ]
+selected = 0
+

+ 2 - 10
plugins/custom_dock/dock_plugin.gd

@@ -5,19 +5,11 @@ var dock = null
 
 func _enter_tree():
 	# When this plugin node enters tree, add the custom type
-
-	dock = preload("res://addons/custom_dock/custom_dock.scn").instance()
-
-	add_control_to_dock( DOCK_SLOT_LEFT_UL, dock )
+	dock = preload("res://addons/custom_dock/custom_dock.tscn").instance()
+	add_control_to_dock(DOCK_SLOT_LEFT_UL, dock)
 
 func _exit_tree():
-
 	# Remove from docks (must be called so layout is updated and saved)
 	remove_control_from_docks(dock)
 	# Remove the node
 	dock.free()
-
-
-
-
-	

+ 0 - 7
plugins/custom_dock/plugin.cfg

@@ -5,10 +5,3 @@ description="Adds a new Customizable Dock"
 author="Juan Linietsky"
 version="1.0"
 script="dock_plugin.gd"
-
-
-
-
-
-
-

+ 2 - 2
plugins/custom_import_plugin/import_plugin.gd

@@ -23,12 +23,12 @@ func get_preset_count():
 
 func get_preset_name(preset):
 	match preset:
-		PRESET_DEFAULT: return "Default"
+		Presets.PRESET_DEFAULT: return "Default"
 		_ : return "Unknown"
 
 func get_import_options(preset):
 	match preset:
-		PRESET_DEFAULT:
+		Presets.PRESET_DEFAULT:
 			return [{
 					"name": "use_red_anyway",
 					"default_value": false

+ 0 - 1
plugins/custom_import_plugin/material_import.gd

@@ -5,7 +5,6 @@ var import_plugin
 
 func _enter_tree():
 	import_plugin = preload("import_plugin.gd").new()
-
 	add_import_plugin(import_plugin)
 
 func _exit_tree():

+ 14 - 0
plugins/custom_import_plugin/test.mtxt.import

@@ -0,0 +1,14 @@
+[remap]
+
+importer="demos.sillymaterial"
+type="Material"
+path="res://.import/test.mtxt-0850936d050b34fd8096ae7fe7a591cc.res"
+
+[deps]
+
+source_file="res://addons/custom_import_plugin/test.mtxt"
+dest_files=[ "res://.import/test.mtxt-0850936d050b34fd8096ae7fe7a591cc.res" ]
+
+[params]
+
+use_red_anyway=false

+ 1 - 1
plugins/custom_material_creator/Custom_material_dock.tscn → plugins/custom_material_creator/custom_material_dock.tscn

@@ -1,6 +1,6 @@
 [gd_scene load_steps=2 format=2]
 
-[ext_resource path="res://addons/custom_import_plugin/Silly_material_creator.gd" type="Script" id=1]
+[ext_resource path="res://addons/custom_material_creator/silly_material_creator.gd" type="Script" id=1]
 
 [node name="Silly Material Creator" type="Panel"]
 

+ 4 - 6
plugins/custom_material_creator/material_import.gd

@@ -4,20 +4,18 @@
 # SPECIAL NOTE: This technically should be using EditorImportPlugin and EditorExportPlugin
 # to handle the input and output of the silly material. However, currently you cannot export
 # custom resources in Godot, so instead we're using JSON files instead.
-# |
+#
 # This example should be replaced when EditorImportPlugin and EditorExportPlugin are both
 # fully working and you can save custom resources.
 
 tool
 extends EditorPlugin
 
-var io_material_dialog;
+var io_material_dialog
 
 func _enter_tree():
-	
-	io_material_dialog = preload("res://addons/custom_import_plugin/Custom_material_dock.tscn").instance()
-	io_material_dialog.editor_interface = get_editor_interface();
-	
+	io_material_dialog = preload("res://addons/custom_material_creator/custom_material_dock.tscn").instance()
+	io_material_dialog.editor_interface = get_editor_interface()
 	add_control_to_dock(DOCK_SLOT_LEFT_UL, io_material_dialog)
 
 func _exit_tree():

+ 1 - 1
plugins/custom_material_creator/Silly_material_creator.gd → plugins/custom_material_creator/silly_material_creator.gd

@@ -1,7 +1,7 @@
 tool
 extends Panel
 
-var silly_material_resource = preload("res://addons/custom_import_plugin/Silly_material_resource.gd")
+var silly_material_resource = preload("res://addons/custom_material_creator/silly_material_resource.gd")
 var editor_interface
 
 func _ready():

+ 0 - 0
plugins/custom_material_creator/Silly_material_resource.gd → plugins/custom_material_creator/silly_material_resource.gd


+ 3 - 4
plugins/custom_node/heart.gd

@@ -1,12 +1,11 @@
 tool
 extends Node2D
 
-
 var heart = preload("res://addons/custom_node/heart.png")
 
 func _draw():
-	draw_texture(heart,-heart.get_size()/2)
+	draw_texture(heart, -heart.get_size() / 2)
 
 func _get_item_rect():
-	#override
-	return Rect2(-heart.get_size()/2,heart.get_size())
+	# override
+	return Rect2(-heart.get_size() / 2, heart.get_size())

+ 31 - 0
plugins/custom_node/heart.png.import

@@ -0,0 +1,31 @@
+[remap]
+
+importer="texture"
+type="StreamTexture"
+path="res://.import/heart.png-53d6538480df02caf4bbbee10b65a623.stex"
+
+[deps]
+
+source_file="res://addons/custom_node/heart.png"
+dest_files=[ "res://.import/heart.png-53d6538480df02caf4bbbee10b65a623.stex" ]
+
+[params]
+
+compress/mode=0
+compress/lossy_quality=0.7
+compress/hdr_mode=0
+compress/bptc_ldr=0
+compress/normal_map=0
+flags/repeat=0
+flags/filter=true
+flags/mipmaps=false
+flags/anisotropic=false
+flags/srgb=2
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/HDR_as_SRGB=false
+process/invert_color=false
+stream=false
+size_limit=0
+detect_3d=true
+svg/scale=1.0

+ 31 - 0
plugins/custom_node/heart_icon.png.import

@@ -0,0 +1,31 @@
+[remap]
+
+importer="texture"
+type="StreamTexture"
+path="res://.import/heart_icon.png-8f04adf78b3bd1a5c39f790588a1fa78.stex"
+
+[deps]
+
+source_file="res://addons/custom_node/heart_icon.png"
+dest_files=[ "res://.import/heart_icon.png-8f04adf78b3bd1a5c39f790588a1fa78.stex" ]
+
+[params]
+
+compress/mode=0
+compress/lossy_quality=0.7
+compress/hdr_mode=0
+compress/bptc_ldr=0
+compress/normal_map=0
+flags/repeat=0
+flags/filter=true
+flags/mipmaps=false
+flags/anisotropic=false
+flags/srgb=2
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/HDR_as_SRGB=false
+process/invert_color=false
+stream=false
+size_limit=0
+detect_3d=true
+svg/scale=1.0

+ 1 - 9
plugins/custom_node/heart_plugin.gd

@@ -1,18 +1,10 @@
 tool
 extends EditorPlugin
 
-
 func _enter_tree():
 	# When this plugin node enters tree, add the custom type
-
-	add_custom_type("Heart","Node2D",preload("res://addons/custom_node/heart.gd"),preload("res://addons/custom_node/heart_icon.png"))
+	add_custom_type("Heart", "Node2D", preload("res://addons/custom_node/heart.gd"), preload("res://addons/custom_node/heart_icon.png"))
 
 func _exit_tree():
 	# When the plugin node exits the tree, remove the custom type
-
 	remove_custom_type("Heart")
-
-
-
-
-	

+ 0 - 7
plugins/custom_node/plugin.cfg

@@ -5,10 +5,3 @@ description="Adds a new Heart node in 2D"
 author="Juan Linietsky"
 version="1.0"
 script="heart_plugin.gd"
-
-
-
-
-
-
-