diff --git a/.gitignore b/.gitignore index c57e842..3329744 100644 --- a/.gitignore +++ b/.gitignore @@ -8,6 +8,7 @@ logs/ TEMP/ #export_presets.cfg logs/ -.godot/ +.import/ +#.godot/ .godot/imported/ .godot/editor diff --git a/AIO/AllNodes/2DALL.tscn b/AIO/AllNodes/2DALL.tscn deleted file mode 100644 index ab7831c..0000000 --- a/AIO/AllNodes/2DALL.tscn +++ /dev/null @@ -1,460 +0,0 @@ -[gd_scene load_steps=20 format=2] - -[ext_resource path="res://icon.png" type="Texture2D" id=5] - -[sub_resource type="SpriteFrames" id=1] -animations = [ { -"frames": [ ExtResource( 5 ) ], -"loop": true, -"name": @"0", -"speed": 5.0 -}, { -"frames": [ ExtResource( 5 ), ExtResource( 5 ), ExtResource( 5 ) ], -"loop": true, -"name": @"New Anim", -"speed": 5.0 -} ] - -[sub_resource type="CapsuleShape2D" id=2] - -[sub_resource type="AudioStreamGenerator" id=3] - -[sub_resource type="CircleShape2D" id=4] -radius = 143.376 - -[sub_resource type="CapsuleShape2D" id=5] - -[sub_resource type="PhysicsMaterial" id=6] -friction = 0.68 -bounce = 0.22 - -[sub_resource type="OccluderPolygon2D" id=7] -polygon = PackedVector2Array( 154.731, -96.6275, 387.172, 24.2205, -101.105, 208.947, -186.368, 85.7895, -29.5522, -93.1285, 96.4138, -123.454, 143.068, -27.8128, 63.7559, 96.9867, -58.7109, 98.1531, -124.027, 87.6559, -94.8678, 130.811, -65.709, 134.31, -20.2213, 121.48, 63.7559, 115.648, 168.728, 23.5066 ) - -[sub_resource type="Curve" id=8] -_data = [ Vector2( 0.39011, 0.254545 ), 0.0, 12.6848, 0, 0, Vector2( 0.725275, 0.672727 ), 0.0, 0.0, 0, 0 ] - -[sub_resource type="StandardMaterial3D" id=9] - -[sub_resource type="CylinderMesh" id=10] -lightmap_size_hint = Vector2i( 0, -5 ) -material = SubResource( 9 ) -custom_aabb = AABB( 0, -2.18, 0, 0, 1.14, 0 ) -flip_faces = true -top_radius = 100.0 -bottom_radius = 46.11 -height = 46.901 -radial_segments = 4 -rings = 2 - -[sub_resource type="CapsuleMesh" id=11] - -[sub_resource type="MultiMesh" id=12] -transform_format = 1 -instance_count = 20 -mesh = SubResource( 11 ) -buffer = PackedFloat32Array( 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0 ) - -[sub_resource type="NavigationPolygon" id=13] -vertices = PackedVector2Array( 296.65, 558.363, 13.3817, 304.252, 991.535, 303.622, 782.014, 568.914, 664.753, 123.873, 648.051, 292.561, 407.545, 340.996, 591.265, 102.16, 200.442, 481.292, -91.8398, 511.355, 288.962, 234.105 ) -polygons = [ PackedInt32Array( 0, 1, 2, 3 ), PackedInt32Array( 4, 5, 6, 7 ), PackedInt32Array( 8, 9, 10 ) ] -outlines = [ PackedVector2Array( 296.65, 558.363, 13.3817, 304.252, 991.535, 303.622, 782.014, 568.914 ), PackedVector2Array( 591.265, 102.16, 407.545, 340.996, 648.051, 292.561, 664.753, 123.873 ), PackedVector2Array( 288.962, 234.105, -91.8398, 511.355, 200.442, 481.292 ) ] - -[sub_resource type="NavigationPolygon" id=14] -polygons = [ ] -outlines = [ ] - -[sub_resource type="ParticlesMaterial" id=15] -gravity = Vector3( 0, 98, 0 ) -angular_velocity = 0.000168972 - -[sub_resource type="Curve2D" id=16] -_data = { -"points": PackedVector2Array( 0, 0, 0, 0, 600.13, 43.3051, 0, 0, 0, 0, 300.135, 362.781, 0, 0, 0, 0, 347.542, 374.582, 0, 0, 0, 0, 705.323, 520.571, 0, 0, 0, 0, 1046.23, 234.211, 0, 0, 0, 0, 810.516, 74.4735, 0, 0, 0, 0, 652.727, 304.34, 0, 0, 0, 0, 658.571, 132.914, 0, 0, 0, 0, 600.13, 43.3051 ) -} - -[sub_resource type="TileSet" id=17] -0/name = "icon.png 0" -0/texture = ExtResource( 5 ) -0/tex_offset = Vector2( 0, 0 ) -0/modulate = Color( 1, 1, 1, 1 ) -0/region = Rect2( 0, 9, 20, 1 ) -0/tile_mode = 0 -0/occluder_offset = Vector2( 0, 0 ) -0/navigation_offset = Vector2( 0, 0 ) -0/shape_offset = Vector2( 0, 0 ) -0/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) -0/shape_one_way = false -0/shape_one_way_margin = 0.0 -0/shapes = [ ] -0/z_index = 0 -1/name = "icon.png 1" -1/texture = ExtResource( 5 ) -1/tex_offset = Vector2( 0, 0 ) -1/modulate = Color( 1, 1, 1, 1 ) -1/region = Rect2( 96, 153, 332, 109 ) -1/tile_mode = 0 -1/occluder_offset = Vector2( 0, 0 ) -1/navigation_offset = Vector2( 0, 0 ) -1/shape_offset = Vector2( 0, 0 ) -1/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) -1/shape_one_way = false -1/shape_one_way_margin = 0.0 -1/shapes = [ ] -1/z_index = 0 -2/name = "icon.png 2" -2/texture = ExtResource( 5 ) -2/tex_offset = Vector2( 0, 0 ) -2/modulate = Color( 1, 1, 1, 1 ) -2/region = Rect2( 4, 4, 33, 31 ) -2/tile_mode = 0 -2/occluder_offset = Vector2( 0, 0 ) -2/navigation_offset = Vector2( 0, 0 ) -2/shape_offset = Vector2( 0, 0 ) -2/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) -2/shape_one_way = false -2/shape_one_way_margin = 0.0 -2/shapes = [ ] -2/z_index = 0 - -[sub_resource type="StreamTexture2D" id=18] - -[node name="2DALL" type="Node2D"] -script = null -__meta__ = { -"_edit_vertical_guides_": [ ] -} - -[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."] -position = Vector2( 1079.71, 252.027 ) -frames = SubResource( 1 ) -animation = @"New Anim" -script = null - -[node name="Area2D" type="Area2D" parent="."] -position = Vector2( 700.235, 306.442 ) -space_override = 1 -script = null - -[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D"] -shape = SubResource( 2 ) -script = null - -[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="Area2D"] -polygon = PackedVector2Array( 9.03, -9.88, -12.31, -3.97, 11.88, 17.58 ) -script = null - -[node name="KinematicBody2D" type="KinematicBody2D" parent="."] -position = Vector2( 899.279, 302.146 ) -collision/safe_margin = 0.078 -script = null - -[node name="CollisionShape2D" type="CollisionShape2D" parent="KinematicBody2D"] -shape = SubResource( 2 ) -script = null - -[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="KinematicBody2D"] -polygon = PackedVector2Array( 9.03, -9.88, -12.31, -3.97, 11.88, 17.58 ) -script = null - -[node name="RigidBody2D" type="RigidBody2D" parent="."] -position = Vector2( 989.493, 115.99 ) -mass = 1.21 -script = null - -[node name="CollisionShape2D" type="CollisionShape2D" parent="RigidBody2D"] -shape = SubResource( 2 ) -script = null - -[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="RigidBody2D"] -polygon = PackedVector2Array( 9.03, -9.88, -12.31, -3.97, 11.88, 17.58 ) -script = null - -[node name="StaticBody2D" type="StaticBody2D" parent="."] -position = Vector2( 1118.37, 103.102 ) -script = null - -[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D"] -shape = SubResource( 2 ) -script = null - -[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="StaticBody2D"] -polygon = PackedVector2Array( 9.03, -9.88, -12.31, -3.97, 11.88, 17.58 ) -script = null - -[node name="AudioStreamPlayer2D" type="AudioStreamPlayer2D" parent="."] -position = Vector2( 395.869, 394.508 ) -stream = SubResource( 3 ) -script = null - -[node name="BackBufferCopy" type="BackBufferCopy" parent="."] -position = Vector2( 531.906, 372.742 ) -rect = Rect2( -100, -100, 201.655, 200 ) -script = null - -[node name="Bone2D" type="Bone2D" parent="."] -position = Vector2( 306.084, 224.462 ) -rest = Transform2D( 0.045, 0, 0.065, 0.015, 0, 0.027 ) -default_length = 19.0 -script = null - -[node name="CPUParticles2D" type="CPUParticles2D" parent="."] -position = Vector2( 129.236, 465.248 ) -emitting = false -script = null - -[node name="Camera2D" type="Camera2D" parent="."] -position = Vector2( 533.267, 444.842 ) -script = null - -[node name="CanvasModulate" type="CanvasModulate" parent="."] -position = Vector2( 210.858, 352.337 ) -script = null - -[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="."] -skew = 4.37114e-08 -polygon = PackedVector2Array( 202.409, 143.34, -41.2679, 348.875, 259.62, 360.529, 458.799, 111.556, 139.9, 7.72824 ) -script = null - -[node name="CollisionShape2D" type="CollisionShape2D" parent="."] -position = Vector2( 95.8147, 94.5793 ) -shape = SubResource( 4 ) -script = null - -[node name="DampedSpringJoint2D" type="DampedSpringJoint2D" parent="."] -position = Vector2( 606, 195 ) -node_a = NodePath("RigidBody2D") -script = null - -[node name="RigidBody2D" type="RigidBody2D" parent="DampedSpringJoint2D"] -script = null - -[node name="CollisionShape2D" type="CollisionShape2D" parent="DampedSpringJoint2D/RigidBody2D"] -shape = SubResource( 5 ) -script = null - -[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="DampedSpringJoint2D/RigidBody2D"] -polygon = PackedVector2Array( 9.03, -9.88, -12.31, -3.97, 11.88, 17.58 ) -script = null - -[node name="RigidBody2D2" type="RigidBody2D" parent="DampedSpringJoint2D"] -script = null - -[node name="CollisionShape2D" type="CollisionShape2D" parent="DampedSpringJoint2D/RigidBody2D2"] -shape = SubResource( 5 ) -script = null - -[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="DampedSpringJoint2D/RigidBody2D2"] -polygon = PackedVector2Array( 9.03, -9.88, -12.31, -3.97, 11.88, 17.58 ) -script = null - -[node name="GrooveJoint2D" type="GrooveJoint2D" parent="."] -position = Vector2( 1115.92, 421.941 ) -node_a = NodePath("../KinematicBody2D") -node_b = NodePath("../RigidBody2D") -script = null - -[node name="RigidBody2D" type="RigidBody2D" parent="GrooveJoint2D"] -script = null - -[node name="CollisionShape2D" type="CollisionShape2D" parent="GrooveJoint2D/RigidBody2D"] -shape = SubResource( 5 ) -script = null - -[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="GrooveJoint2D/RigidBody2D"] -polygon = PackedVector2Array( 9.03, -9.88, -12.31, -3.97, 11.88, 17.58 ) -script = null - -[node name="RigidBody2D2" type="RigidBody2D" parent="GrooveJoint2D"] -mass = 1.49 -physics_material_override = SubResource( 6 ) -gravity_scale = 69.62 -custom_integrator = true -contacts_reported = 23 -contact_monitor = true -linear_velocity = Vector2( 0.04, 0 ) -script = null - -[node name="CollisionShape2D" type="CollisionShape2D" parent="GrooveJoint2D/RigidBody2D2"] -shape = SubResource( 5 ) -script = null - -[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="GrooveJoint2D/RigidBody2D2"] -polygon = PackedVector2Array( 9.03, -9.88, -12.31, -3.97, 11.88, 17.58 ) -script = null - -[node name="PinJoint2D" type="PinJoint2D" parent="."] -position = Vector2( 1017.84, 196.165 ) -node_a = NodePath("../KinematicBody2D") -node_b = NodePath("../RigidBody2D") -bias = 0.021 -softness = 0.84 -script = null - -[node name="Light2D" type="PointLight2D" parent="."] -position = Vector2( 716.189, 403.435 ) -energy = 2.07 -shadow_enabled = true -shadow_filter_smooth = 3.0 -texture = ExtResource( 5 ) -offset = Vector2( 0.059, 0.024 ) -texture_scale = 0.57 -script = null - -[node name="LightOccluder2D" type="LightOccluder2D" parent="."] -position = Vector2( 867.666, 539.296 ) -occluder = SubResource( 7 ) -script = null - -[node name="Line2D" type="Line2D" parent="."] -position = Vector2( 352.357, 194.507 ) -points = PackedVector2Array( -210.754, 6.62849, -326.754, 206.628, 263.246, 428.628, 617.246, 56.6285, -74.754, 32.6285, -128.754, 116.628 ) -width = 10.037 -width_curve = SubResource( 8 ) -script = null - -[node name="MeshInstance2D" type="MeshInstance2D" parent="."] -position = Vector2( 721.714, 117.422 ) -mesh = SubResource( 10 ) -texture = ExtResource( 5 ) -script = null - -[node name="MultiMeshInstance2D" type="MultiMeshInstance2D" parent="."] -position = Vector2( 809.065, 246.299 ) -multimesh = SubResource( 12 ) -texture = ExtResource( 5 ) -script = null - -[node name="Navigation2D" type="Node2D" parent="."] -script = null - -[node name="NavigationPolygonInstance" type="NavigationRegion2D" parent="Navigation2D"] -position = Vector2( 105.221, 24.723 ) -navpoly = SubResource( 13 ) -script = null - -[node name="NavigationPolygonInstance2" type="NavigationRegion2D" parent="Navigation2D"] -position = Vector2( 223.804, 198.752 ) -navpoly = SubResource( 13 ) -script = null - -[node name="NavigationPolygonInstance" type="NavigationRegion2D" parent="."] -position = Vector2( 784.721, 73.0306 ) -navpoly = SubResource( 14 ) -script = null - -[node name="ParallaxLayer" type="ParallaxLayer" parent="."] -position = Vector2( 794.745, 399.52 ) -motion_scale = Vector2( 1.141, 1 ) -script = null - -[node name="Particles2D" type="GPUParticles2D" parent="."] -position = Vector2( 1071.12, 353.697 ) -scale = Vector2( 1.201, 1 ) -emitting = false -lifetime = 52.61 -speed_scale = 26.46 -explosiveness = 1.0 -randomness = 0.85 -visibility_rect = Rect2( -100, -100, 200.135, 200 ) -process_material = SubResource( 15 ) -texture = ExtResource( 5 ) -script = null - -[node name="Path2D" type="Path2D" parent="."] -position = Vector2( -64.439, 73.147 ) -rotation = 0.37001 -curve = SubResource( 16 ) -script = null - -[node name="PathFollow2D" type="PathFollow2D" parent="Path2D"] -position = Vector2( 600.13, 43.3051 ) -rotation = 2.32475 -script = null - -[node name="PathFollow2D" type="PathFollow2D" parent="."] -position = Vector2( 1000.95, 604.292 ) -offset = 304.25 -h_offset = 0.027 -v_offset = 0.058 -script = null - -[node name="Polygon2D" type="Polygon2D" parent="."] -position = Vector2( 765.407, 28.5835 ) -antialiased = true -texture = ExtResource( 5 ) -skeleton = NodePath("../Skeleton2D") -polygons = [ ] -bones = [ ] -script = null - -[node name="Position2D_NOTHING" type="Position2D" parent="."] -position = Vector2( 356.561, 562.765 ) -script = null -__meta__ = { -"_gizmo_extents_": 55.4 -} - -[node name="RayCast2D" type="RayCast2D" parent="."] -position = Vector2( 602.86, 448.207 ) -script = null - -[node name="RemoteTransform2D" type="RemoteTransform2D" parent="."] -remote_path = NodePath("../CollisionPolygon2D") -script = null - -[node name="Skeleton2D" type="Skeleton2D" parent="."] -position = Vector2( 715.557, 193.173 ) -script = null - -[node name="Bone2D" type="Bone2D" parent="Skeleton2D"] -rest = Transform2D( 1, 0, 0, 1, 0, 0 ) -script = null - -[node name="Bone2D2" type="Bone2D" parent="Skeleton2D"] -rest = Transform2D( 1, 0, 0, 1, 0, 0 ) -script = null - -[node name="Sprite" type="Sprite2D" parent="."] -position = Vector2( -209.57, 743.506 ) -texture = ExtResource( 5 ) -offset = Vector2( 0.255, 1.512 ) -flip_h = true -flip_v = true -hframes = 11 -script = null - -[node name="TileMap" type="TileMap" parent="."] -position = Vector2( 207.103, 369.11 ) -mode = 1 -tile_set = SubResource( 17 ) -cell_size = Vector2( 32, 32 ) -cell_half_offset = 0 -cell_y_sort = true -centered_textures = true -cell_clip_uv = true -format = 1 -tile_data = PackedInt32Array( -237436027, 0, 0, -237370492, 0, 0, -237304957, 0, 0, -237239422, 0, 0, -237173887, 0, 0, -237108351, 0, 0, -237042816, 0, 0, -236977281, 0, 0, -236911746, 0, 0, -236846211, 0, 0, -236780676, 0, 0, -236715141, 0, 0, -236649606, 0, 0, -236584071, 0, 0, -236518536, 0, 0, -236453000, 0, 0, -236387465, 0, 0, -236321930, 0, 0, -236256395, 0, 0, -236190860, 0, 0, -236125325, 0, 0, -236059790, 0, 0, -235994255, 0, 0, -235928720, 0, 0, -235863184, 0, 0, -235797649, 0, 0, -235732114, 0, 0, -235666579, 0, 0, -235601044, 0, 0, -235535509, 0, 0, -235469974, 0, 0, -235404439, 0, 0, -235338904, 0, 0, -235273369, 0, 0, -235207833, 0, 0, -235142298, 0, 0, -235076763, 0, 0, -235011228, 0, 0, -234945693, 0, 0, -234880158, 0, 0, -234814623, 0, 0, -234749088, 0, 0, -234683553, 0, 0, -234618017, 0, 0, -234552482, 0, 0, -234486947, 0, 0, -234421412, 0, 0, -234355877, 0, 0, -234290342, 0, 0, -234224807, 0, 0, -234159272, 0, 0, -234093737, 0, 0, -234028202, 0, 0, -233962666, 0, 0, -233897131, 0, 0, -233831596, 0, 0, -233766061, 0, 0, -233700526, 0, 0, -233634991, 0, 0, -233569456, 0, 0, -233503921, 0, 0, -233438386, 0, 0, -233372850, 0, 0, -233307315, 0, 0, -233241780, 0, 0, -233176245, 0, 0, -233110710, 0, 0, -233045175, 0, 0, -232979640, 0, 0, -232914105, 0, 0, -232848570, 0, 0, -232783035, 0, 0, -232717499, 0, 0, -232651964, 0, 0, -232586429, 0, 0, -232520894, 0, 0, -232455359, 0, 0, -232389824, 0, 0, -232324289, 0, 0, -232258754, 0, 0, -232193219, 0, 0, -232127683, 0, 0, -232062148, 0, 0, -231996613, 0, 0, -231931078, 0, 0, -231865543, 0, 0, -231800008, 0, 0, -231734473, 0, 0, -231668938, 0, 0, -231603403, 0, 0, -231537868, 0, 0, -231472332, 0, 0, -231406797, 0, 0, -231341262, 0, 0, -231275727, 0, 0, -231210192, 0, 0, -231144657, 0, 0, -231079122, 0, 0, -231013587, 0, 0, -230948052, 0, 0, -230882516, 0, 0, -230816981, 0, 0, -230751446, 0, 0, -230685911, 0, 0, -230620376, 0, 0, -230554841, 0, 0, -230489306, 0, 0, -230423771, 0, 0, -230358236, 0, 0, -230292701, 0, 0, -230227165, 0, 0, -230161630, 0, 0, -230096095, 0, 0, -230030560, 0, 0, -229965025, 0, 0, -229899490, 0, 0, -229833955, 0, 0, -229768420, 0, 0, -229702885, 0, 0, -229637350, 0, 0, -229571814, 0, 0, -229506279, 0, 0, -229440744, 0, 0, -229375209, 0, 0, -229309674, 0, 0, -229244139, 0, 0, -229178604, 0, 0, -229113069, 0, 0, -229047534, 0, 0, -228981998, 0, 0, -228916463, 0, 0, -228850928, 0, 0, -228785393, 0, 0, -228719858, 0, 0, -228654323, 0, 0, -228588788, 0, 0, -228523253, 0, 0, -228457718, 0, 0, -228392183, 0, 0, -228326647, 0, 0, -228261112, 0, 0, -228195577, 0, 0, -228130042, 0, 0, -228064507, 0, 0, -227998972, 0, 0, -227933437, 0, 0, -227867902, 0, 0, -227802367, 0, 0, -227736831, 0, 0, -227671296, 0, 0, -227605761, 0, 0, -227540226, 0, 0, -227474691, 0, 0, -227409156, 0, 0, -227343621, 0, 0, -227278086, 0, 0, -227212551, 0, 0, -227147016, 0, 0, -227081480, 0, 0, -227015945, 0, 0, -226950410, 0, 0, -226884875, 0, 0, -226819340, 0, 0, -226753805, 0, 0, -226688270, 0, 0, -226622735, 0, 0, -226557200, 0, 0, -226491664, 0, 0, -226426129, 0, 0, -226360594, 0, 0, -226295059, 0, 0, -226229524, 0, 0, -226163989, 0, 0, -226098454, 0, 0, -226032919, 0, 0, -225967384, 0, 0, -225901849, 0, 0, -225836313, 0, 0, -225770778, 0, 0, -225705243, 0, 0, -225639708, 0, 0, -225574173, 0, 0, -225508638, 0, 0, -225443103, 0, 0, -225377568, 0, 0, -225312033, 0, 0, -225246497, 0, 0, -225180962, 0, 0, -225115427, 0, 0, -225049892, 0, 0, -224984357, 0, 0, -224918822, 0, 0, -224853287, 0, 0, -224787752, 0, 0, -224722217, 0, 0, -224656682, 0, 0, -224591146, 0, 0, -224525611, 0, 0, -224460076, 0, 0, -224394541, 0, 0, -224329006, 0, 0, -224263471, 0, 0, -224197936, 0, 0, -224132401, 0, 0, -224066866, 0, 0, -224001330, 0, 0, -223935795, 0, 0, -223870260, 0, 0, -223804725, 0, 0, -223739190, 0, 0, -223673655, 0, 0, -223608120, 0, 0, -223542585, 0, 0, -223477050, 0, 0, -223411515, 0, 0, -223345979, 0, 0, -223280444, 0, 0, -223214909, 0, 0, -223149374, 0, 0, -223083839, 0, 0, -223018304, 0, 0, -222952769, 0, 0, -222887234, 0, 0, -222821699, 0, 0, -222756163, 0, 0, -222690628, 0, 0, -222625093, 0, 0, -222559558, 0, 0, -222494023, 0, 0, -222428488, 0, 0, -222362953, 0, 0, -222297418, 0, 0, -222231883, 0, 0, -222166348, 0, 0, -222100812, 0, 0, -222035277, 0, 0, -221969742, 0, 0, -221904207, 0, 0, -221838672, 0, 0, -221773137, 0, 0, -221707602, 0, 0, -221642067, 0, 0, -221576532, 0, 0, -221510996, 0, 0, -221445461, 0, 0, -221379926, 0, 0, -221314391, 0, 0, -221248856, 0, 0, -221183321, 0, 0, -221117786, 0, 0, -221052251, 0, 0, -220986716, 0, 0, -220921181, 0, 0, -220855645, 0, 0, -220790110, 0, 0, -220724575, 0, 0, -220659040, 0, 0, -220593505, 0, 0, -220527970, 0, 0, -220462435, 0, 0, -220396900, 0, 0, -220331365, 0, 0, -220265829, 0, 0, -220200294, 0, 0, -220134759, 0, 0, -220069224, 0, 0, -220003689, 0, 0, -219938154, 0, 0, -219872619, 0, 0, -219807084, 0, 0, -219741549, 0, 0, -219676014, 0, 0, -219610478, 0, 0, -219544943, 0, 0, -219479408, 0, 0, -219413873, 0, 0, -219348338, 0, 0, -219282803, 0, 0, -219217268, 0, 0, -219151733, 0, 0, -219086198, 0, 0, -219020662, 0, 0, -218955127, 0, 0, -218889592, 0, 0, -218824057, 0, 0, -218758522, 0, 0, -218692987, 0, 0, -218627452, 0, 0, -218561917, 0, 0, -218496382, 0, 0, -218430847, 0, 0, -218365311, 0, 0, -218299776, 0, 0, -218234241, 0, 0, -218168706, 0, 0, -218103171, 0, 0, -218037636, 0, 0, -218036735, 0, 0, -217972101, 0, 0, -217906566, 0, 0, -217841031, 0, 0, -217775495, 0, 0, -217709960, 0, 0, -217644425, 0, 0, -217578890, 0, 0, -217513355, 0, 0, -217447820, 0, 0, -217382285, 0, 0, -217316750, 0, 0, -217251215, 0, 0, -217185680, 0, 0, -217120144, 0, 0, -217054609, 0, 0, -216989074, 0, 0, -216923539, 0, 0, -216858004, 0, 0, -216792469, 0, 0, -216726934, 0, 0, -216661399, 0, 0, -216595864, 0, 0, -216530329, 0, 0, -216464793, 0, 0, -216399258, 0, 0, -216333723, 0, 0, -216268188, 0, 0, -216202653, 0, 0, -216137118, 0, 0, -216071583, 0, 0, -216006048, 0, 0, -215940513, 0, 0, -215874977, 0, 0, -215809442, 0, 0, -215743907, 0, 0, -215678372, 0, 0, -215612837, 0, 0, -215547302, 0, 0, -215481767, 0, 0, -215416232, 0, 0, -215350697, 0, 0, -215285162, 0, 0, -215219626, 0, 0, -215154091, 0, 0, -215088556, 0, 0, -215023021, 0, 0, -214957486, 0, 0, -214891951, 0, 0, -214826416, 0, 0, -214760881, 0, 0, -214695346, 0, 0, -214629810, 0, 0, -214564275, 0, 0, -214498740, 0, 0, -214433205, 0, 0, -214367670, 0, 0, -214302135, 0, 0, -214236600, 0, 0, -214171065, 0, 0, -214105530, 0, 0, -214039995, 0, 0, -213974459, 0, 0, -213908924, 0, 0, -213843389, 0, 0, -213777854, 0, 0, -213712319, 0, 0, -213646784, 0, 0, -213581249, 0, 0, -213515714, 0, 0, -213450179, 0, 0, -213384643, 0, 0, -213319108, 0, 0, -213253573, 0, 0, -213188038, 0, 0, -213122503, 0, 0, -213056968, 0, 0, -212991433, 0, 0, -212925898, 0, 0, -212860363, 0, 0, -212794828, 0, 0, -212729292, 0, 0, -212663757, 0, 0, -212598222, 0, 0, -212532687, 0, 0, -212467152, 0, 0, -212401617, 0, 0, -212336082, 0, 0, -212270547, 0, 0, -212205012, 0, 0, -212139476, 0, 0, -212073941, 0, 0, -212008406, 0, 0, -211942871, 0, 0, -211877336, 0, 0, -211811801, 0, 0, -211746266, 0, 0, -211680731, 0, 0, -211615196, 0, 0, -211549661, 0, 0, -211484125, 0, 0, -211418590, 0, 0, -211353055, 0, 0, -211287520, 0, 0, -211221985, 0, 0, -211156450, 0, 0, -211090915, 0, 0, -211025380, 0, 0, -210959845, 0, 0, -210894309, 0, 0, -210828774, 0, 0, -210763239, 0, 0, -210697704, 0, 0, -210632169, 0, 0, -210566634, 0, 0, -210501099, 0, 0, -210435564, 0, 0, -210370029, 0, 0, -210304494, 0, 0, -210238958, 0, 0, -210173423, 0, 0, -210107888, 0, 0, -210042353, 0, 0, -209976818, 0, 0, -201914552, 0, 0, -101842603, 0, 0, -85458295, 0, 0, -49938839, 0, 0, -41810676, 0, 0, -41745139, 0, 0, -41679602, 0, 0, -41614066, 0, 0, -41548529, 0, 0, -41482992, 0, 0, -41417455, 0, 0, -12517206, 0, 0, -2031581, 0, 0, -1769441, 0, 0, -1638386, 0, 0, -1572833, 0, 0, -1376253, 0, 0, -1376252, 0, 0, -1376251, 0, 0, -1179648, 0, 0, -1179647, 0, 0, -1048577, 0, 0, -983041, 0, 0, -917506, 0, 0, -851970, 0, 0, -786437, 0, 0, -786436, 0, 0, -720901, 0, 0, -720873, 0, 0, -655338, 0, 0, -524294, 0, 0, -458732, 0, 0, -327687, 0, 0, -393215, 0, 0, -393196, 0, 0, -327661, 0, 0, 655361, 0, 0, 720902, 0, 0, 917503, 0, 0, 851968, 0, 0 ) -script = null - -[node name="TouchScreenButton" type="TouchScreenButton" parent="."] -position = Vector2( 357.419, 254.128 ) -normal = SubResource( 18 ) -pressed = ExtResource( 5 ) -shape_visible = false -passby_press = true -script = null - -[node name="VisibilityNotifier2D" type="VisibilityNotifier2D" parent="."] -position = Vector2( 462.439, 44.7171 ) -scale = Vector2( 9.40949, 9.60972 ) -rect = Rect2( -10.387, -10, 29, 44 ) -script = null - -[node name="VisibilityEnabler2D" type="VisibilityEnabler2D" parent="."] -process_parent = true -physics_process_parent = true -script = null - -[node name="YSort" type="YSort" parent="."] -script = null diff --git a/AIO/AllNodes/3DALL.tscn b/AIO/AllNodes/3DALL.tscn deleted file mode 100644 index d82b40d..0000000 --- a/AIO/AllNodes/3DALL.tscn +++ /dev/null @@ -1,660 +0,0 @@ -[gd_scene load_steps=37 format=2] - -[ext_resource path="res://icon.png" type="Texture2D" id=50] - -[sub_resource type="StandardMaterial3D" id=1] - -[sub_resource type="SpriteFrames" id=2] -animations = [ { -"frames": [ ExtResource( 50 ), ExtResource( 50 ), ExtResource( 50 ) ], -"loop": true, -"name": @"default", -"speed": 5.0 -} ] - -[sub_resource type="BoxMesh" id=3] - -[sub_resource type="StandardMaterial3D" id=4] - -[sub_resource type="StandardMaterial3D" id=5] - -[sub_resource type="StandardMaterial3D" id=6] - -[sub_resource type="CapsuleMesh" id=7] -material = SubResource( 6 ) -radius = 1.272 -mid_height = 0.001 -radial_segments = 4 -rings = 2 - -[sub_resource type="CameraTexture" id=8] -camera_feed_id = 1 -which_feed = 1 - -[sub_resource type="StandardMaterial3D" id=9] -roughness_texture = SubResource( 8 ) -roughness_texture_channel = 1 - -[sub_resource type="StandardMaterial3D" id=10] - -[sub_resource type="StandardMaterial3D" id=11] -vertex_color_use_as_albedo = true - -[sub_resource type="StandardMaterial3D" id=12] - -[sub_resource type="StandardMaterial3D" id=13] - -[sub_resource type="StandardMaterial3D" id=14] -blend_mode = 1 -cull_mode = 1 -diffuse_mode = 1 -specular_mode = 1 - -[sub_resource type="BoxMesh" id=15] -material = SubResource( 14 ) -size = Vector3( 2.25, 1.56, 2.49 ) - -[sub_resource type="Skin" id=16] -bind_count = 10 -bind/0/name = @"" -bind/0/bone = -1 -bind/0/pose = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 ) -bind/1/name = @"" -bind/1/bone = -1 -bind/1/pose = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 ) -bind/2/name = @"" -bind/2/bone = -1 -bind/2/pose = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 ) -bind/3/name = @"" -bind/3/bone = -1 -bind/3/pose = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 ) -bind/4/name = @"" -bind/4/bone = -1 -bind/4/pose = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 ) -bind/5/name = @"" -bind/5/bone = -1 -bind/5/pose = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 ) -bind/6/name = @"" -bind/6/bone = -1 -bind/6/pose = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 ) -bind/7/name = @"" -bind/7/bone = -1 -bind/7/pose = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 ) -bind/8/name = @"" -bind/8/bone = -1 -bind/8/pose = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 ) -bind/9/name = @"" -bind/9/bone = -1 -bind/9/pose = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 ) - -[sub_resource type="StandardMaterial3D" id=17] - -[sub_resource type="BoxMesh" id=18] - -[sub_resource type="MultiMesh" id=19] -transform_format = 1 -instance_count = 3 -mesh = SubResource( 18 ) -buffer = PackedFloat32Array( 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0 ) - -[sub_resource type="ParticlesMaterial" id=20] -render_priority = 127 -emission_shape = 2 -emission_box_extents = Vector3( 1, 1, 1 ) -radial_accel = 6.0 -radial_accel_random = 1.0 -tangential_accel = 3.1 -tangential_accel_random = 1.0 - -[sub_resource type="BoxMesh" id=21] - -[sub_resource type="BakedLightmapData" id=22] -user_data = [ ] -probe_data = { -"bounds": AABB( 0, 0, 0, 0, 0, 0 ), -"bsp": PackedInt32Array( ), -"interior": false, -"points": PackedVector3Array( ), -"sh": PackedColorArray( ), -"tetrahedra": PackedInt32Array( ) -} - -[sub_resource type="BoxShape3D" id=23] -margin = 0.5 - -[sub_resource type="PhysicsMaterial" id=24] - -[sub_resource type="PhysicsMaterial" id=25] - -[sub_resource type="PhysicsMaterial" id=26] -friction = 0.53 - -[sub_resource type="AudioStreamGenerator" id=27] - -[sub_resource type="ConcavePolygonShape3D" id=28] -margin = 0.067 - -[sub_resource type="CapsuleMesh" id=29] - -[sub_resource type="MeshLibrary" id=30] -item/0/name = "" -item/0/mesh = SubResource( 29 ) -item/0/mesh_transform = null -item/0/shapes = [ ] -item/0/navmesh_transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 ) - -[sub_resource type="NavigationMesh" id=31] -polygons = [ ] -sample_partition_type/sample_partition_type = 2 -geometry/parsed_geometry_type = 1 -geometry/collision_mask = 2147483647 -cell/size = 0.5 -cell/height = 5.1 -agent/height = 4.2 -agent/radius = 5.8 -agent/max_climb = 6.2 -agent/max_slope = 0.0 -region/min_size = 15.6 -region/merge_size = 24.8 -edge/max_length = 17.4 -edge/max_error = 0.1 -polygon/verts_per_poly = 9.0 -detail/sample_distance = 0.0 -detail/sample_max_error = 6.7 -filter/low_hanging_obstacles = true -filter/ledge_spans = true -filter/filter_walkable_low_height_spans = true - -[sub_resource type="Curve3D" id=32] -bake_interval = 10.0 -_data = { -"points": PackedVector3Array( 0, 0, 0, 0, 0, 0, -4.21835, 8.31693, -11.5007, 0, 0, 0, 0, 0, 0, -18.4839, 0.381447, -2.2567, 0, 0, 0, 0, 0, 0, -9.25256, -1.66295, 1.34504, 0, 0, 0, 0, 0, 0, 14.3498, 1.51124, -0.660617, 0, 0, 0, 0, 0, 0, 16.5666, 7.48303, -8.42252, 0, 0, 0, 0, 0, 0, 5.21951, 11.8408, -15.3123, 0, 0, 0, 0, 0, 0, -6.34309, 13.0513, -18.0214, 0, 0, 0, 0, 0, 0, -22.2367, 9.90402, -15.3228, 0, 0, 0, 0, 0, 0, -5.97389, 1.40365, -2.43845, 0, 0, 0, 0, 0, 0, 1.22511, 4.12054, -5.38451, 0, 0, 0, 0, 0, 0, -4.21835, 8.31693, -11.5007 ), -"tilts": PackedFloat32Array( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ) -} - -[sub_resource type="BoxShape3D" id=33] -margin = 1.21 - -[sub_resource type="CapsuleShape3D" id=34] - -[sub_resource type="BoxMesh" id=35] - -[node name="3DALL" type="Node3D"] -script = null - -[node name="ARVROrigin" type="XROrigin3D" parent="."] -world_scale = 1.01 -script = null - -[node name="ARVRAnchor" type="XRAnchor3D" parent="ARVROrigin"] -anchor_id = 32 -script = null - -[node name="ARVRCamera_NOTHING" type="XRCamera3D" parent="ARVROrigin"] -h_offset = 0.159 -v_offset = -0.909 -doppler_tracking = 1 -projection = 1 -size = 91.71 -near = 2235.15 -far = 1.1 -script = null - -[node name="ARVRController" type="XRController3D" parent="ARVROrigin"] -controller_id = 3 -script = null - -[node name="Camera" type="Camera3D" parent="."] -h_offset = 0.032 -v_offset = 0.03 -doppler_tracking = 1 -projection = 1 -fov = 75.7 -size = 1.23 -near = 0.42 -far = 356.3 -script = null - -[node name="ClippedCamera" type="ClippedCamera3D" parent="."] -h_offset = 0.038 -v_offset = -0.146 -fov = 64.8 -size = 15954.2 -near = 0.45 -margin = 23.09 -script = null - -[node name="InterpolatedCamera" type="Node" parent="."] -script = null - -[node name="AnimatedSprite3D" type="AnimatedSprite3D" parent="."] -material_override = SubResource( 1 ) -offset = Vector2( 0.026, 0 ) -flip_h = true -flip_v = true -modulate = Color( 0.454902, 0.25098, 0.25098, 1 ) -opacity = 0.74 -pixel_size = 0.0526 -billboard = 1 -shaded = true -frames = SubResource( 2 ) -frame = 2 -playing = true -script = null - -[node name="Sprite3D" type="Sprite3D" parent="."] -flip_h = true -flip_v = true -texture = ExtResource( 50 ) -hframes = 13 -frame = 2 -script = null - -[node name="CPUParticles" type="CPUParticles3D" parent="."] -emitting = false -amount = 5 -lifetime = 1.83 -speed_scale = 2.68 -explosiveness = 0.24 -randomness = 0.87 -lifetime_randomness = 0.75 -mesh = SubResource( 3 ) -emission_shape = 1 -emission_sphere_radius = 1.0 -script = null - -[node name="CSGBox" type="CSGBox3D" parent="."] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 25.6943 ) -operation = 1 -invert_faces = true -material = SubResource( 4 ) -script = null - -[node name="CSGCylinder" type="CSGCylinder3D" parent="."] -transform = Transform( 1, 0, 0, 0, 0.745602, 0, 0, 0, 1, 0, -21.0098, 0 ) -invert_faces = true -radius = 123.75 -height = 45.8309 -sides = 3 -cone = true -material = SubResource( 5 ) -script = null - -[node name="CSGMesh" type="CSGMesh3D" parent="."] -transform = Transform( 1, 0, 0, 0, 3.78, 0, 0, 0, 7.64, 5.27772, 5.196, 0 ) -invert_faces = true -mesh = SubResource( 7 ) -material = SubResource( 9 ) -script = null - -[node name="CSGPolygon" type="CSGPolygon3D" parent="."] -polygon = PackedVector2Array( 1.3, 0.59, 1, 0.06, 1, -6.56, 0, 0, 0, 0, 0, 0 ) -depth = 1.123 -material = SubResource( 10 ) -script = null - -[node name="CSGSphere" type="CSGSphere3D" parent="."] -invert_faces = true -radius = 19.668 -radial_segments = 4 -rings = 3 -smooth_faces = false -material = SubResource( 11 ) -script = null - -[node name="CSGTorus" type="CSGTorus3D" parent="."] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.71423, -3.42086 ) -invert_faces = true -inner_radius = 0.001 -outer_radius = 19.109 -sides = 4 -ring_sides = 5 -material = SubResource( 12 ) -script = null - -[node name="CSGCombiner_NOTHING" type="CSGCombiner3D" parent="."] -operation = 1 -script = null - -[node name="CSGBox" type="CSGBox3D" parent="CSGCombiner_NOTHING"] -invert_faces = true -material = SubResource( 4 ) -script = null - -[node name="CSGBox2" type="CSGBox3D" parent="CSGCombiner_NOTHING"] -invert_faces = true -material = SubResource( 4 ) -script = null - -[node name="ImmediateGeometry" type="ImmediateGeometry3D" parent="."] -material_override = SubResource( 13 ) -extra_cull_margin = 0.08 -gi_mode = 1 -script = null - -[node name="MeshInstance" type="MeshInstance3D" parent="."] -mesh = SubResource( 15 ) -skin = SubResource( 16 ) -material/0 = SubResource( 17 ) -script = null - -[node name="MultiMeshInstance" type="MultiMeshInstance3D" parent="."] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 18.9485, 0 ) -multimesh = SubResource( 19 ) -script = null - -[node name="Particles" type="GPUParticles3D" parent="."] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -27.0754 ) -emitting = false -amount = 4 -lifetime = 1.42 -preprocess = 0.5 -speed_scale = 1.3 -explosiveness = 0.41 -randomness = 0.34 -fract_delta = false -local_coords = false -process_material = SubResource( 20 ) -draw_pass_1 = SubResource( 21 ) -script = null - -[node name="BakedLightmap" type="BakedLightmap" parent="."] -light_data = SubResource( 22 ) -script = null - -[node name="DirectionalLight" type="DirectionalLight3D" parent="."] -transform = Transform( 1, 0, 0, 0, 0.639291, -0.768965, 0, 0.768965, 0.639291, 0, 21.5838, 0 ) -light_energy = 7.54 -shadow_enabled = true -script = null - -[node name="SpotLight" type="SpotLight3D" parent="."] -transform = Transform( 1, 0, 0, 0, -0.171431, -0.985196, 0, 0.985196, -0.171431, 0, 0, -16.2155 ) -light_energy = 4.05 -light_negative = true -shadow_enabled = true -shadow_bias = 0.4 -script = null - -[node name="GIProbe" type="GIProbe" parent="."] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.945391, 1.15135, 1.78806 ) -extents = Vector3( 10, 10, 22.3077 ) -script = null - -[node name="ReflectionProbe" type="ReflectionProbe" parent="."] -intensity = 0.51 -max_distance = 1.7 -extents = Vector3( 1, 1.583, 1 ) -box_projection = true -script = null - -[node name="RootMotionView" type="RootMotionView" parent="."] -script = null - -[node name="Area" type="Area3D" parent="."] -gravity = 22.39 -linear_damp = 0.126 -monitoring = false -script = null - -[node name="CollisionShape" type="CollisionShape3D" parent="Area"] -shape = SubResource( 23 ) -script = null - -[node name="KinematicBody" type="KinematicBody3D" parent="."] -collision/safe_margin = 0.033 -script = null - -[node name="CollisionShape" type="CollisionShape3D" parent="KinematicBody"] -shape = SubResource( 23 ) -script = null - -[node name="PhysicalBone" type="PhysicalBone3D" parent="."] -mass = 1.21 -script = null - -[node name="CollisionShape" type="CollisionShape3D" parent="PhysicalBone"] -shape = SubResource( 23 ) -script = null - -[node name="RigidBody" type="RigidBody3D" parent="."] -mass = 1.19 -physics_material_override = SubResource( 24 ) -gravity_scale = 1.12 -axis_lock_linear_x = true -script = null - -[node name="CollisionShape" type="CollisionShape3D" parent="RigidBody"] -shape = SubResource( 23 ) -script = null - -[node name="VehicleBody" type="VehicleBody3D" parent="."] -physics_material_override = SubResource( 25 ) -engine_force = 16.41 -brake = 0.46 -steering = 0.17 -script = null - -[node name="CollisionShape" type="CollisionShape3D" parent="VehicleBody"] -shape = SubResource( 23 ) -script = null - -[node name="VehicleWheel4" type="VehicleWheel3D" parent="VehicleBody"] -engine_force = 5.60519e-45 -brake = 0.46 -script = null - -[node name="StaticBody" type="StaticBody3D" parent="."] -physics_material_override = SubResource( 26 ) -constant_linear_velocity = Vector3( 0.049, 0, 0 ) -script = null - -[node name="CollisionShape" type="CollisionShape3D" parent="StaticBody"] -shape = SubResource( 23 ) -script = null - -[node name="AudioStreamPlayer3D" type="AudioStreamPlayer3D" parent="."] -stream = SubResource( 27 ) -attenuation_model = 1 -unit_db = 0.031 -unit_size = 5.5 -max_db = 2.953 -pitch_scale = 1.42 -script = null - -[node name="BoneAttachment" type="BoneAttachment3D" parent="."] -script = null - -[node name="CollisionPolygon" type="CollisionPolygon3D" parent="."] -polygon = PackedVector2Array( 66.9045, 31.0067, 286.784, -62.3473, 22.8219, -35.2817, -25.9028, -19.5722, -43.33, 5.94586, -43.7357, 15.5874, -36.475, 6.06905, -45.3994, 19.6661 ) -script = null - -[node name="CollisionShape" type="CollisionShape3D" parent="."] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -26.583 ) -shape = SubResource( 28 ) -script = null - -[node name="GridMap" type="GridMap" parent="."] -mesh_library = SubResource( 30 ) -cell_size = Vector3( 2, 1.14, 3.08 ) -data = { -"cells": PackedInt32Array( 23, 1, 0, 25, 1, 0, 26, 1, 0, 18, 2, 0, 65523, 5, 0, 65524, 5, 0, 65530, 65515, 0, 65520, 65520, 0, 65519, 65521, 0, 65520, 65521, 0, 65519, 65522, 0, 65518, 65523, 0, 65523, 65524, 0, 65526, 65528, 0, 65513, 65533, 0 ) -} -script = null -__meta__ = { -"_editor_clip_": 0 -} - -[node name="Listener" type="Listener3D" parent="."] -current = true -script = null - -[node name="Navigation" type="Node" parent="."] -script = null - -[node name="NavigationMeshInstance" type="NavigationRegion3D" parent="Navigation"] -navmesh = SubResource( 31 ) -script = null - -[node name="NavigationMeshInstance" type="NavigationRegion3D" parent="."] -navmesh = SubResource( 31 ) -script = null - -[node name="Path" type="Path3D" parent="."] -curve = SubResource( 32 ) -script = null - -[node name="PathFollow" type="PathFollow3D" parent="Path"] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -4.21835, 8.31693, -11.5007 ) -script = null - -[node name="PathFollow" type="PathFollow3D" parent="."] -offset = 2.09 -h_offset = 0.101 -script = null - -[node name="Position3D_NOTHING" type="Position3D" parent="."] -script = null - -[node name="Camera_DEFAULT_CAMERA" type="Camera3D" parent="."] -current = true -script = null - -[node name="ProximityGroup" type="ProximityGroup3D" parent="."] -dispatch_mode = 1 -script = null - -[node name="RayCast" type="RayCast3D" parent="."] -script = null - -[node name="RemoteTransform" type="RemoteTransform3D" parent="."] -remote_path = NodePath("../Camera") -script = null - -[node name="Skeleton" type="Skeleton3D" parent="."] -script = null - -[node name="PhysicalBone" type="PhysicalBone3D" parent="Skeleton"] -script = null - -[node name="BoneAttachment" type="BoneAttachment3D" parent="Skeleton/PhysicalBone"] -transform = Transform( 1, -1.78814e-07, -1.78814e-07, -9.68575e-08, 1, -5.96046e-08, 0, 0, 1, 0, 0, 0 ) -script = null - -[node name="CollisionShape4" type="CollisionShape3D" parent="Skeleton/PhysicalBone"] -shape = SubResource( 33 ) -script = null - -[node name="PhysicalBone 3" type="PhysicalBone3D" parent="Skeleton"] -mass = 0.958163 -friction = 0.62 -bounce = 0.3 -gravity_scale = 0.6 -script = null - -[node name="CollisionShape" type="CollisionShape3D" parent="Skeleton/PhysicalBone 3"] -shape = SubResource( 33 ) -script = null - -[node name="SpringArm" type="SpringArm3D" parent="."] -shape = SubResource( 34 ) -script = null - -[node name="VehicleWheel" type="VehicleWheel3D" parent="."] -engine_force = 0.49 -brake = 0.74 -steering = -0.63 -script = null - -[node name="VisibilityNotifier" type="VisibilityNotifier3D" parent="."] -aabb = AABB( -1, -0.982, -1, 2, 2.078, 2 ) -script = null - -[node name="VisibilityEnabler" type="VisibilityEnabler3D" parent="."] -script = null - -[node name="Generic6DOFJoint" type="Generic6DOFJoint3D" parent="."] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 1.63619, -0.392871, 2.48948 ) -nodes/node_a = NodePath("../StaticBody") -nodes/node_b = NodePath("../PhysicalBone") -solver/priority = 5 -collision/exclude_nodes = false -linear_limit_x/lower_distance = 0.261 -angular_motor_z/enabled = true -angular_motor_z/target_velocity = 0.11 -angular_motor_z/force_limit = 300.5 -angular_spring_z/enabled = true -angular_spring_z/stiffness = 0.5 -angular_spring_z/damping = 0.64 -angular_spring_z/equilibrium_point = -0.9 -script = null - -[node name="HingeJoint" type="HingeJoint3D" parent="."] -nodes/node_a = NodePath("../StaticBody") -nodes/node_b = NodePath("../PhysicalBone") -params/bias = 0.99 -angular_limit/enable = true -angular_limit/upper = 162.0 -angular_limit/lower = -131.0 -angular_limit/bias = 0.67 -angular_limit/softness = 0.01 -angular_limit/relaxation = 3.6 -motor/enable = true -motor/target_velocity = -1.3 -motor/max_impulse = 30.2 -script = null - -[node name="SliderJoint" type="SliderJoint3D" parent="."] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 1.17785, 0.25203, 4.6063 ) -nodes/node_a = NodePath("../VehicleBody") -nodes/node_b = NodePath("../StaticBody") -linear_limit/upper_distance = 1.19 -linear_limit/lower_distance = -705.69 -linear_limit/softness = 1.07 -linear_limit/restitution = 1.12 -linear_limit/damping = 1.18 -linear_motion/softness = 1.14 -linear_motion/restitution = 0.97 -linear_motion/damping = 0.54 -linear_ortho/softness = 1.4 -linear_ortho/restitution = 1.19 -linear_ortho/damping = 1.28 -angular_limit/upper_angle = -28.8 -angular_limit/lower_angle = 38.8 -angular_motion/softness = 2.18 -angular_motion/restitution = 1.77 -angular_motion/damping = 4.88 -script = null - -[node name="PinJoint" type="PinJoint3D" parent="."] -nodes/node_a = NodePath("../KinematicBody") -nodes/node_b = NodePath("../StaticBody") -params/bias = 0.99 -params/damping = 7.3 -params/impulse_clamp = 7.2 -script = null - -[node name="ConeTwistJoint" type="ConeTwistJoint3D" parent="."] -nodes/node_a = NodePath("../PhysicalBone") -nodes/node_b = NodePath("../RigidBody") -solver/priority = 8 -twist_span = 9500.4 -bias = 0.46 -softness = 0.95 -relaxation = 0.83 -script = null - -[node name="OmniLight" type="OmniLight3D" parent="."] -light_energy = 1.61 -light_indirect_energy = 1.35 -light_specular = 0.68 -omni_range = 118.9 -omni_attenuation = 1.51572 -omni_shadow_mode = 0 -script = null - -[node name="SoftBody" type="SoftBody3D" parent="."] -mesh = SubResource( 35 ) -material/0 = null -pinned_points = [ ] -script = null diff --git a/AIO/AllNodes/ALL.tscn b/AIO/AllNodes/ALL.tscn deleted file mode 100644 index f4d37a6..0000000 --- a/AIO/AllNodes/ALL.tscn +++ /dev/null @@ -1,16 +0,0 @@ -[gd_scene load_steps=5 format=2] - -[ext_resource path="res://AIO/AllNodes/OtherALL.tscn" type="PackedScene" id=1] -[ext_resource path="res://AIO/AllNodes/2DALL.tscn" type="PackedScene" id=2] -[ext_resource path="res://AIO/AllNodes/ControlALL.tscn" type="PackedScene" id=4] -[ext_resource path="res://AIO/AllNodes/3DALL.tscn" type="PackedScene" id=5] - -[node name="ALL" type="Node"] - -[node name="2DALL" parent="." instance=ExtResource( 2 )] - -[node name="3DALL" parent="." instance=ExtResource( 5 )] - -[node name="ControlALL" parent="." instance=ExtResource( 4 )] - -[node name="OtherALL" parent="." instance=ExtResource( 1 )] diff --git a/AIO/AllNodes/ControlALL.tscn b/AIO/AllNodes/ControlALL.tscn deleted file mode 100644 index c761945..0000000 --- a/AIO/AllNodes/ControlALL.tscn +++ /dev/null @@ -1,447 +0,0 @@ -[gd_scene load_steps=3 format=2] - -[ext_resource path="res://icon.png" type="Texture2D" id=1] - -[sub_resource type="Theme" id=1] - -[node name="ControlALL" type="GridContainer"] -anchor_right = 1.0 -anchor_bottom = 1.0 -columns = 9 -script = null -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Popup" type="Popup" parent="."] -theme = SubResource( 1 ) -script = null - -[node name="WindowDialog" type="Node" parent="."] -script = null - -[node name="AcceptDialog" type="AcceptDialog" parent="."] -position = Vector2i( 0, 64 ) -dialog_text = "fqwfqwfqwf" -dialog_hide_on_ok = false -dialog_autowrap = true -script = null - -[node name="ConfirmationDialog" type="ConfirmationDialog" parent="."] -position = Vector2i( 0, 64 ) -dialog_text = "fas" -dialog_hide_on_ok = false -dialog_autowrap = true -script = null - -[node name="FileDialog" type="FileDialog" parent="."] -position = Vector2i( 0, 64 ) -size = Vector2i( 371, 122 ) -dialog_text = "sffasfasf" -dialog_hide_on_ok = true -dialog_autowrap = true -mode_overrides_title = false -access = 1 -filters = PackedStringArray( "", "as", "", "fasf", "", "s", "", "asfasfa", "sf", "", "" ) -show_hidden_files = true -current_dir = "user://" -current_file = "asf" -current_path = "user://asf" -script = null - -[node name="PopupDialog_NOTHING" type="Node" parent="."] -script = null - -[node name="PopupMenu" type="PopupMenu" parent="."] -items = [ ] -hide_on_item_selection = false -hide_on_checkable_item_selection = false -hide_on_state_item_selection = true -submenu_popup_delay = 5.32352e+07 -script = null - -[node name="PopupPanel_NOTHING" type="PopupPanel" parent="."] -script = null - -[node name="Button" type="Button" parent="."] -offset_right = 58.0 -offset_bottom = 40.0 -text = "asfasf" -flat = true -clip_text = true -align = 0 -script = null -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="CheckBox_NOTHING" type="CheckBox" parent="."] -offset_left = 62.0 -offset_right = 370.0 -offset_bottom = 40.0 -text = "safasf" -flat = true -clip_text = true -align = 2 -script = null - -[node name="CheckButton_NOTHING" type="CheckButton" parent="."] -offset_left = 374.0 -offset_right = 454.0 -offset_bottom = 40.0 -text = "asfq" -flat = true -clip_text = true -align = 1 -script = null - -[node name="ColorPickerButton" type="ColorPickerButton" parent="."] -offset_left = 458.0 -offset_right = 532.0 -offset_bottom = 40.0 -text = "asfasf" -flat = true -clip_text = true -align = 2 -color = Color( 0.639216, 0.576471, 0.576471, 1 ) -edit_alpha = false -script = null - -[node name="MenuButton" type="MenuButton" parent="."] -offset_left = 536.0 -offset_right = 580.0 -offset_bottom = 40.0 -icon = ExtResource( 1 ) -items = [ ] -switch_on_hover = true -script = null - -[node name="OptionButton" type="OptionButton" parent="."] -offset_left = 584.0 -offset_right = 645.0 -offset_bottom = 40.0 -icon = ExtResource( 1 ) -items = [ ] -script = null -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="ToolButton_NOTHING" type="Button" parent="."] -offset_left = 649.0 -offset_right = 695.0 -offset_bottom = 40.0 -text = "asfasf" -icon = ExtResource( 1 ) -clip_text = true -align = 2 -script = null - -[node name="LinkButton" type="LinkButton" parent="."] -offset_left = 699.0 -offset_right = 751.0 -offset_bottom = 40.0 -text = "asfqfqwf" -underline = 2 -structured_text_bidi_override_options = [ ] -script = null - -[node name="TextureButton" type="TextureButton" parent="."] -offset_left = 755.0 -offset_right = 767.0 -offset_bottom = 40.0 -expand = true -stretch_mode = 5 -script = null - -[node name="Container" type="Container" parent="."] -offset_top = 44.0 -offset_right = 58.0 -offset_bottom = 454.0 -script = null - -[node name="Control" type="Control" parent="Container"] -script = null - -[node name="Control2" type="Control" parent="Container"] -script = null - -[node name="ColorPicker" type="ColorPicker" parent="."] -offset_left = 62.0 -offset_top = 44.0 -offset_right = 370.0 -offset_bottom = 454.0 -alignment = 1 -edit_alpha = false -raw_mode = true -deferred_mode = true -presets_enabled = false -presets_visible = false -script = null -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="HBoxContainer_NOTHING" type="HBoxContainer" parent="."] -offset_left = 374.0 -offset_top = 44.0 -offset_right = 454.0 -offset_bottom = 454.0 -script = null -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="VBoxContainer_NOTHING" type="VBoxContainer" parent="."] -offset_left = 458.0 -offset_top = 44.0 -offset_right = 532.0 -offset_bottom = 454.0 -script = null -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="CenterContainer" type="CenterContainer" parent="."] -offset_left = 536.0 -offset_top = 44.0 -offset_right = 580.0 -offset_bottom = 454.0 -use_top_left = true -script = null -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="ScrollContainer" type="ScrollContainer" parent="."] -offset_left = 584.0 -offset_top = 44.0 -offset_right = 645.0 -offset_bottom = 454.0 -script = null - -[node name="GraphNode" type="GraphNode" parent="."] -offset_left = 649.0 -offset_top = 44.0 -offset_right = 695.0 -offset_bottom = 454.0 -script = null - -[node name="GridContainer" type="GridContainer" parent="."] -offset_left = 699.0 -offset_top = 44.0 -offset_right = 751.0 -offset_bottom = 454.0 -script = null - -[node name="HSplitContainer_NOTHING" type="HSplitContainer" parent="."] -offset_left = 755.0 -offset_top = 44.0 -offset_right = 767.0 -offset_bottom = 454.0 -script = null -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="VSplitContainer_NOTHING" type="VSplitContainer" parent="."] -offset_top = 458.0 -offset_right = 58.0 -offset_bottom = 490.0 -script = null - -[node name="MarginContainer_NOTHING" type="MarginContainer" parent="."] -offset_left = 62.0 -offset_top = 458.0 -offset_right = 370.0 -offset_bottom = 490.0 -script = null - -[node name="PanelContainer_NOTHING" type="PanelContainer" parent="."] -offset_left = 374.0 -offset_top = 458.0 -offset_right = 454.0 -offset_bottom = 490.0 -script = null - -[node name="TabContainer" type="TabContainer" parent="."] -offset_left = 458.0 -offset_top = 458.0 -offset_right = 532.0 -offset_bottom = 490.0 -script = null - -[node name="ViewportContainer" type="SubViewportContainer" parent="."] -offset_left = 536.0 -offset_top = 458.0 -offset_right = 580.0 -offset_bottom = 490.0 -script = null - -[node name="ColorRect" type="ColorRect" parent="."] -offset_left = 584.0 -offset_top = 458.0 -offset_right = 645.0 -offset_bottom = 490.0 -script = null - -[node name="GraphEdit" type="GraphEdit" parent="."] -offset_left = 649.0 -offset_top = 458.0 -offset_right = 695.0 -offset_bottom = 490.0 -script = null - -[node name="HScrollBar_NOTHING" type="HScrollBar" parent="."] -offset_left = 699.0 -offset_top = 458.0 -offset_right = 751.0 -offset_bottom = 470.0 -script = null - -[node name="VScrollBar_NOTHING" type="VScrollBar" parent="."] -offset_left = 755.0 -offset_top = 458.0 -offset_right = 767.0 -offset_bottom = 490.0 -script = null - -[node name="HSlider_NOTHING" type="HSlider" parent="."] -offset_top = 494.0 -offset_right = 58.0 -offset_bottom = 510.0 -script = null - -[node name="VSlider_NOTHING" type="VSlider" parent="."] -offset_left = 62.0 -offset_top = 494.0 -offset_right = 78.0 -offset_bottom = 518.0 -script = null - -[node name="ProgressBar" type="ProgressBar" parent="."] -offset_left = 374.0 -offset_top = 494.0 -offset_right = 454.0 -offset_bottom = 508.0 -script = null - -[node name="SpinBox" type="SpinBox" parent="."] -offset_left = 458.0 -offset_top = 494.0 -offset_right = 532.0 -offset_bottom = 518.0 -script = null - -[node name="TextureProgress" type="TextureProgressBar" parent="."] -offset_left = 536.0 -offset_top = 494.0 -offset_right = 580.0 -offset_bottom = 518.0 -script = null - -[node name="HSeparator" type="HSeparator" parent="."] -offset_left = 584.0 -offset_top = 494.0 -offset_right = 645.0 -offset_bottom = 518.0 -script = null - -[node name="VSeparator" type="VSeparator" parent="."] -offset_left = 649.0 -offset_top = 494.0 -offset_right = 695.0 -offset_bottom = 518.0 -script = null - -[node name="ItemList" type="ItemList" parent="."] -offset_left = 699.0 -offset_top = 494.0 -offset_right = 751.0 -offset_bottom = 518.0 -items = [ ] -script = null - -[node name="Label" type="Label" parent="."] -offset_left = 755.0 -offset_top = 499.0 -offset_right = 767.0 -offset_bottom = 513.0 -structured_text_bidi_override_options = [ ] -script = null - -[node name="LineEdit" type="LineEdit" parent="."] -offset_top = 522.0 -offset_right = 58.0 -offset_bottom = 546.0 -structured_text_bidi_override_options = [ ] -caret_blink = true -script = null - -[node name="NinePatchRect" type="NinePatchRect" parent="."] -offset_left = 62.0 -offset_top = 522.0 -offset_right = 370.0 -offset_bottom = 546.0 -script = null - -[node name="Panel_NOTHING" type="Panel" parent="."] -offset_left = 374.0 -offset_top = 522.0 -offset_right = 454.0 -offset_bottom = 546.0 -script = null - -[node name="ReferenceRect" type="ReferenceRect" parent="."] -offset_left = 458.0 -offset_top = 522.0 -offset_right = 532.0 -offset_bottom = 546.0 -script = null - -[node name="RichTextLabel" type="RichTextLabel" parent="."] -offset_left = 536.0 -offset_top = 522.0 -offset_right = 580.0 -offset_bottom = 546.0 -custom_effects = [ ] -structured_text_bidi_override_options = [ ] -script = null - -[node name="Tabs" type="Tabs" parent="."] -offset_left = 584.0 -offset_top = 522.0 -offset_right = 645.0 -offset_bottom = 546.0 -script = null - -[node name="TextEdit" type="TextEdit" parent="."] -offset_left = 649.0 -offset_top = 522.0 -offset_right = 695.0 -offset_bottom = 546.0 -structured_text_bidi_override_options = [ ] -script = null - -[node name="TextureRect" type="TextureRect" parent="."] -offset_left = 699.0 -offset_top = 522.0 -offset_right = 751.0 -offset_bottom = 546.0 -script = null - -[node name="Tree" type="Tree" parent="."] -offset_left = 755.0 -offset_top = 522.0 -offset_right = 767.0 -offset_bottom = 546.0 -script = null - -[node name="VideoPlayer" type="VideoPlayer" parent="."] -offset_top = 550.0 -offset_right = 58.0 -offset_bottom = 550.0 -script = null -__meta__ = { -"_edit_use_anchors_": false -} diff --git a/AIO/AllNodes/OtherALL.tscn b/AIO/AllNodes/OtherALL.tscn deleted file mode 100644 index c86b27f..0000000 --- a/AIO/AllNodes/OtherALL.tscn +++ /dev/null @@ -1,95 +0,0 @@ -[gd_scene load_steps=5 format=2] - -[sub_resource type="Animation" id=1] -resource_name = "New Anim" -tracks/0/type = "method" -tracks/0/path = NodePath("../Tween") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/keys = { -"times": PackedFloat32Array( 1.4, 4.6, 8.1 ), -"transitions": PackedFloat32Array( 1, 1, 1 ), -"values": [ { -"args": [ ], -"method": @"stop_all" -}, { -"args": [ ], -"method": @"resume_all" -}, { -"args": [ ], -"method": @"is_active" -} ] -} - -[sub_resource type="AnimationNodeBlendSpace1D" id=2] - -[sub_resource type="AudioStreamSample" id=3] - -[sub_resource type="Environment" id=4] - -[node name="OtherALL" type="Node"] -script = null - -[node name="AnimationPlayer" type="AnimationPlayer" parent="."] -root_node = NodePath("../AudioStreamPlayer") -"anims/New Anim" = SubResource( 1 ) -blend_times = [ ] -script = null - -[node name="AnimationTree" type="AnimationTree" parent="."] -tree_root = SubResource( 2 ) -anim_player = NodePath("../AnimationPlayer") -parameters/blend_position = 0 -script = null - -[node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="."] -stream = SubResource( 3 ) -volume_db = 0.066 -pitch_scale = 2.48 -script = null - -[node name="CanvasLayer" type="CanvasLayer" parent="."] -layer = 55 -offset = Vector2( 0.019, 0 ) -transform = Transform2D( 1, 0, 0, 1, 0.019, 0 ) -follow_viewport_enable = true -script = null - -[node name="ParallaxBackground" type="ParallaxBackground" parent="."] -scroll_offset = Vector2( 0.026, 0 ) -scroll_base_offset = Vector2( 0.038, 0 ) -scroll_base_scale = Vector2( 1, 1.045 ) -script = null - -[node name="HTTPRequest" type="HTTPRequest" parent="."] -use_threads = true -script = null - -[node name="ResourcePreloader" type="ResourcePreloader" parent="."] -resources = [ PackedStringArray( ), [ ] ] -script = null - -[node name="SkeletonIK" type="SkeletonIK3D" parent="."] -process_priority = 1 -interpolation = 0.942 -target = Transform( 2.49, 1.02, -0.07, 1.15, 1, -1.97, -0.7, -1.01, 2.42, -0.7, -0.59, -0.29 ) -magnet = Vector3( 2.8, -3.69, -0.95 ) -target_node = NodePath("../ResourcePreloader") -script = null - -[node name="Timer" type="Timer" parent="."] -script = null - -[node name="Tween" type="Tween" parent="."] -repeat = true -playback/repeat = true -script = null - -[node name="Viewport" type="SubViewport" parent="."] -script = null - -[node name="WorldEnvironment" type="WorldEnvironment" parent="."] -environment = SubResource( 4 ) -script = null diff --git a/All.tscn b/All.tscn index 0cf89fe..47649d3 100644 --- a/All.tscn +++ b/All.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=10 format=2] +[gd_scene load_steps=8 format=2] [ext_resource path="res://Nodes/Nodes.tscn" type="PackedScene" id=1] [ext_resource path="res://AIO/Operators/Operators.tscn" type="PackedScene" id=5] @@ -6,8 +6,6 @@ [ext_resource path="res://Rendering/Lights3D/Lights3D.tscn" type="PackedScene" id=7] [ext_resource path="res://Rendering/Lights2D/Lights2D.tscn" type="PackedScene" id=8] [ext_resource path="res://Physics/3D/Physics3D.tscn" type="PackedScene" id=9] -[ext_resource path="res://Text/Text.tscn" type="PackedScene" id=10] -[ext_resource path="res://AIO/AllNodes/ALL.tscn" type="PackedScene" id=11] [ext_resource path="res://ReparentingDeleting/ReparentingDeleting.tscn" type="PackedScene" id=12] [node name="All" type="Node"] @@ -24,14 +22,10 @@ [node name="Lights3D" parent="Rendering" instance=ExtResource( 7 )] -[node name="Text" parent="." instance=ExtResource( 10 )] - [node name="ReparentingDeleting" parent="." instance=ExtResource( 12 )] [node name="AIO" type="Node" parent="."] -[node name="ALL" parent="AIO" instance=ExtResource( 11 )] - -[node name="Node2D" parent="AIO" instance=ExtResource( 5 )] +[node name="Operators" parent="AIO" instance=ExtResource( 5 )] [node name="MainScenes" parent="." instance=ExtResource( 1 )] diff --git a/Autoload/Autoload.gd b/Autoload/Autoload.gd index 4270dea..4134574 100644 --- a/Autoload/Autoload.gd +++ b/Autoload/Autoload.gd @@ -14,46 +14,40 @@ var time_for_each_step : int = -1 # Each scene runs alone const alone_steps : Array = [ + "res://Nodes/Nodes.tscn", + "res://ReparentingDeleting/ReparentingDeleting.tscn", "res://Physics/2D/Physics2D.tscn", "res://Physics/3D/Physics3D.tscn", "res://Rendering/Lights2D/Lights2D.tscn", "res://Rendering/Lights3D/Lights3D.tscn", - "res://Nodes/Nodes.tscn", - "res://ReparentingDeleting/ReparentingDeleting.tscn", - "res://Text/Text.tscn", + "res://AutomaticBugs/FunctionExecutor.tscn", # Only Needs to be executed once, but this is workaround a little ] # All scenes run in one step # This should be put regression scripts which needs to run only once const all_in_one : Array = [ "res://AIO/Operators/Operators.tscn", -"res://AutomaticBugs/FunctionExecutor.tscn", -#"res://AIO/AllNodes/ALL.tscn", # Take too much time - opens ~ 20 seconds in CI inside xvfb-run ] -func _ready(): +func _init(): start_time = OS.get_ticks_msec() - var time_set : bool = false + # In case when user doesn't provide time + time_for_each_step = time_to_show / (alone_steps.size()) for argument in OS.get_cmdline_args(): if argument.is_valid_float(): # Ignore all non numeric arguments - time_set = true time_to_show = int(argument.to_float() * 1000) time_for_each_step = time_to_show / (alone_steps.size()) print("Time set to: " + str(time_to_show / 1000.0) + " seconds with "+ str(alone_steps.size()) + " steps, each step will take " + str(time_for_each_step / 1000.0) + " seconds.") break # We only need to take first argument - - # In case when user doesn't provide time - if !time_set: - time_for_each_step = time_to_show / (alone_steps.size()) - print("Default time - " + str(time_to_show / 1000.0) + " seconds with "+ str(alone_steps.size()) + " steps, each step will take " + str(time_for_each_step / 1000.0) + " seconds.") func _process(delta: float) -> void: var current_run_time : int = OS.get_ticks_msec() - start_time - while current_run_time > time_to_print_next_time: # This will allow to properly regulate time under heavy operations(e.g. Thread sanitizer) + # While loop instead if, will allow to properly flush results under heavy operations(e.g. Thread sanitizer) + while current_run_time > time_to_print_next_time: print("Test is running now " + str(int(time_to_print_next_time / 1000)) + " seconds") time_to_print_next_time += PRINT_TIME_EVERY_MILISECONDS diff --git a/AutomaticBugs/BasicData.gd b/AutomaticBugs/BasicData.gd index 7694f2e..749a252 100644 --- a/AutomaticBugs/BasicData.gd +++ b/AutomaticBugs/BasicData.gd @@ -1,5 +1,10 @@ extends Node +var regression_test_project : bool = true # Set it to true in RegressionTestProject + +# Contains info about disabled classes +# Also allows to get list of available classes + var properties_exceptions : Array = [ "user_data", "config_file", @@ -7,8 +12,7 @@ var properties_exceptions : Array = [ "", ] var function_exceptions : Array = [ - "play", - #GODOT 4.0 + #GODOT 4.0 "create_from_image", "set_point_position", "connect", # OTHER THINGS @@ -34,15 +38,20 @@ var function_exceptions : Array = [ "_activate", "add_node", #GH 46012 + + "_set_user_data", + "get_packet", # TODO "create_from_mesh", # They exists without assigment like Class.method, because they may be a parent of other objects and children also should have disabled child.method, its children also etc. which is too much to do + "connect_to_signal", # GH 47572 + "set_config_file", # GH 45997 + "class_get_property", # GH 47573 + "class_set_property", # GH 47573 "_editor_settings_changed",# GH 45979 "_submenu_timeout", # GH 45981 - "set_config_file", # GH 45997 "_gui_input", # GH 45998 "_unhandled_key_input", # GH 45998 - "navpoly_add", #GH 43288 "_thread_done", #GH 46000 "generate", #GH 46001 "_proximity_group_broadcast", #GH 46002 @@ -50,13 +59,9 @@ var function_exceptions : Array = [ "create_from", #GH 46004 "create_from_blend_shape", #GH 46004 "append_from", #GH 46004 - "get_column_width", #GH 46005 "_unhandled_input", # TODO "_input", # TODO "_set_tile_data", #GH 46015 - "_edit_set_state", #GH 46017 - "_edit_set_position", #GH 46018 - "_edit_set_rect", #GH 46018 "get", #GH 46019 "instance_has", #GH 46020 "get_var", #GH 46096 @@ -64,10 +69,7 @@ var function_exceptions : Array = [ "set_script", #GH 46120 "getvar", #GH 46019 "get_available_chars", #GH 46118 - "set_primary_interface", #GH 46180 - "add_feed", #GH 46181 "open_midi_inputs", #GH 46183 - "get_unix_time_from_datetime", #GH 46188 "set_icon", #GH 46189 "get_latin_keyboard_variant", #GH TODO Memory Leak "set_editor_hint", #GH 46252 @@ -76,17 +78,14 @@ var function_exceptions : Array = [ "_range_click_timeout", "draw", #GH 46648 "get_indexed", #GH 46019 - "set_RGB_img", #GH 46724 - "_set_RGB_img", #GH 46724 - "_set_YCbCr_img", #GH 46724 - "set_YCbCr_img", #GH 46724 - "set_YCbCr_imgs", #GH 46724 - "_set_YCbCr_imgs", #GH 46724 "_vp_input", # TODO "_vp_unhandled_input", # TODO "remove_joy_mapping", #GH 46754 "add_joy_mapping", #GH 46754 "add_vertex", #GH 47066 + "create_client", # TODO, strange memory leak + "create_shape_owner", #47135 + "shape_owner_get_owner", #47135 "collide", #GH 46137 "collide_and_get_contacts", #GH 46137 @@ -102,6 +101,7 @@ var function_exceptions : Array = [ "_update_inputs", # Cause big spam with add_input # Spam when i~1000 - change to specific "update_bitmask_region", + "set_enabled_inputs", # Slow Function "_update_sky", @@ -190,7 +190,14 @@ var function_exceptions : Array = [ "raise", "add_child", "add_child_below_node", + "add_sibling", ] +var exported : Array = [ + "get_bind_bone", + "get_bind_name", + "get_bind_pose", +] + # List of slow functions, which may frooze project(not simple executing each function alone) var slow_functions : Array = [ "interpolate_baked", @@ -249,9 +256,19 @@ var disabled_classes : Array = [ "ProjectSettings", # Don't mess with project settings, because they can broke entire your workflow "EditorSettings", # Also don't mess with editor settings "_OS", # This may sometimes crash compositor, but it should be tested manually sometimes + "GDScript", # Broke script - - # Godot 4.0 Leaks, crashes etc. + # This classes have problems with static/non static methods + "PhysicsDirectSpaceState", + "PhysicsDirectSpaceState2D", + "PhysicsDirectBodyState", + "PhysicsDirectBodyState2D", + "BulletPhysicsDirectSpaceState", + "InputDefault", + "IP_Unix", + "JNISingleton", + + # Godot 4.0 Leaks, crashes etc. "World3D", "GPUParticlesCollisionHeightField", #4.0 Crash "NavigationAgent2D", @@ -259,18 +276,51 @@ var disabled_classes : Array = [ "Image", "GIProbe", + # Just don't use these because they are not normal things "_Thread", "_Semaphore", "_Mutex", - - "Image", - - "PhysicalSkyMaterial", # Slow - "ProceduralSkyMaterial", # Slow - "PanoramaSkyMaterial", # Slow ] +# GH 47358 +func _init(): + function_exceptions.append_array(exported) + +# Checks if function can be executed +# Looks at its arguments an +func check_if_is_allowed(method_data : Dictionary) -> bool: + # Function is virtual, so we just skip it + if method_data.get("flags") == method_data.get("flags") | METHOD_FLAG_VIRTUAL: + return false + + for arg in method_data.get("args"): + var name_of_class : String = arg.get("class_name") + if name_of_class.is_empty(): + continue + if name_of_class in disabled_classes: + return false + if name_of_class.find("Server") != -1 && ClassDB.class_exists(name_of_class) && !ClassDB.is_parent_class(name_of_class,"Reference"): + return false + if name_of_class.find("Editor") != -1: # TODO not sure about it + return false + + #This is only for RegressionTestProject, because it needs for now clear visual info what is going on screen, but some nodes broke view + if regression_test_project: + if !ClassDB.is_parent_class(name_of_class, "Node") && !ClassDB.is_parent_class(name_of_class, "Reference"): + return false + + # In case of adding new type, this prevents from crashing due not recognizing this type + var t : int = arg.get("type") + if t == TYPE_CALLABLE: + return false + elif !(t == TYPE_NIL|| t == TYPE_MAX|| t == TYPE_AABB|| t == TYPE_ARRAY|| t == TYPE_BASIS|| t == TYPE_BOOL|| t == TYPE_COLOR|| t == TYPE_COLOR_ARRAY|| t == TYPE_DICTIONARY|| t == TYPE_INT|| t == TYPE_INT32_ARRAY|| t == TYPE_INT64_ARRAY|| t == TYPE_NODE_PATH|| t == TYPE_OBJECT|| t == TYPE_PLANE|| t == TYPE_QUAT|| t == TYPE_RAW_ARRAY|| t == TYPE_FLOAT|| t == TYPE_FLOAT32_ARRAY|| t == TYPE_FLOAT64_ARRAY|| t == TYPE_RECT2|| t == TYPE_RECT2I|| t == TYPE_RID|| t == TYPE_STRING|| t == TYPE_STRING_NAME|| t == TYPE_STRING_ARRAY|| t == TYPE_TRANSFORM|| t == TYPE_TRANSFORM2D|| t == TYPE_VECTOR2|| t == TYPE_VECTOR2I|| t == TYPE_VECTOR2_ARRAY|| t == TYPE_VECTOR3|| t == TYPE_VECTOR3I|| t == TYPE_VECTOR3_ARRAY): + print("----------------------------------------------------------- TODO - MISSING TYPE, ADD SUPPORT IT") + return false + + + return true + # Return all available classes to instance and test func get_list_of_available_classes(must_be_instantable : bool = true) -> Array: var full_class_list : Array = Array(ClassDB.get_class_list()) @@ -284,16 +334,18 @@ func get_list_of_available_classes(must_be_instantable : bool = true) -> Array: continue # if rr < 550: -# continue - +# continue + + #This is only for RegressionTestProject, because it needs for now clear visual info what is going on screen, but some nodes broke view + if regression_test_project: + if !ClassDB.is_parent_class(name_of_class, "Node") && !ClassDB.is_parent_class(name_of_class, "Reference"): + continue + if name_of_class.find("Server") != -1 && !ClassDB.is_parent_class(name_of_class,"Reference"): continue - if name_of_class.find("Editor") != -1 || name_of_class == "GLTFMesh": # TODO not sure about it, GLTFMesh is Editor node + if name_of_class.find("Editor") != -1: # TODO not sure about it continue -# Enable This for RegressionTestProject, to get visual info about what is going on the screen, because without it different nodes can broke view - if !ClassDB.is_parent_class(name_of_class, "Node") && !ClassDB.is_parent_class(name_of_class, "Reference"): - continue if !must_be_instantable || ClassDB.can_instance(name_of_class): classes.push_back(name_of_class) diff --git a/AutomaticBugs/FunctionExecutor.gd b/AutomaticBugs/FunctionExecutor.gd index 2e36cd8..3233602 100644 --- a/AutomaticBugs/FunctionExecutor.gd +++ b/AutomaticBugs/FunctionExecutor.gd @@ -1,21 +1,29 @@ extends Node +# Execute every object function + var debug_print: bool = true -var add_to_tree: bool = true # Adds nodes to tree +var add_to_tree: bool = false # Adds nodes to tree, freeze godot when removing a lot of nodes var use_parent_methods: bool = false # Allows Node2D use Node methods etc. - it is a little slow option which rarely shows var use_always_new_object: bool = true # Don't allow to "remeber" other function effects +var exiting: bool = true func _ready() -> void: - tests_all_functions() + if BasicData.regression_test_project: + tests_all_functions() + +func _process(_delta: float) -> void: + if !BasicData.regression_test_project: + tests_all_functions() + if exiting: + get_tree().quit() # Test all functions func tests_all_functions() -> void: for name_of_class in BasicData.get_list_of_available_classes(): - # Instance object to be able to execute on it specific functions and later delete to prevent memory leak if it is a Node var object: Object = ClassDB.instance(name_of_class) - assert(object != null) # This should be checked before when collectiong functions if add_to_tree: if object is Node: add_child(object) @@ -32,126 +40,37 @@ func tests_all_functions() -> void: method_list.remove(index) if debug_print: - print("############### CLASS ############### - " + name_of_class) + print("#################### " + name_of_class +" ####################") for _i in range(1): for method_data in method_list: - # Function is virtual, so we just skip it - if method_data.get("flags") == method_data.get("flags") | METHOD_FLAG_VIRTUAL: + if !BasicData.check_if_is_allowed(method_data): continue if debug_print: print(name_of_class + "." + method_data.get("name")) - var arguments: Array = return_for_all(method_data) + var arguments: Array = ParseArgumentType.parse_and_return_objects(method_data, debug_print) object.callv(method_data.get("name"), arguments) for argument in arguments: - if argument is Object: - assert(argument != null) - if argument is Node: - argument.queue_free() - elif argument is Object && !(argument is Reference): - argument.free() + if argument is Node: + argument.queue_free() + elif argument is Object && !(argument is Reference): + argument.free() if use_always_new_object: - if object is Object: - assert(object != null) - if object is Node: - object.queue_free() - elif object is Object && !(object is Reference): - object.free() + assert(object != null, "Object must be instantable") + if object is Node: + object.queue_free() + elif object is Object && !(object is Reference): + object.free() object = ClassDB.instance(name_of_class) + if add_to_tree: + if object is Node: + add_child(object) - if object is Node: # Just prevent memory leak + if object is Node: object.queue_free() elif object is Object && !(object is Reference): object.free() - - -func return_for_all(method_data: Dictionary) -> Array: - var arguments_array: Array = [] - - ValueCreator.number = 100 - ValueCreator.random = false - ValueCreator.should_be_always_valid = false - - for argument in method_data.get("args"): - var type = argument.get("type") - if type == TYPE_NIL: # Looks that this means VARIANT not null - arguments_array.push_back(false) # TODO Add some randomization -# assert(false) - elif type == TYPE_MAX: - assert(false) - elif type == TYPE_AABB: - arguments_array.push_back(ValueCreator.get_aabb()) - elif type == TYPE_ARRAY: - arguments_array.push_back(ValueCreator.get_array()) - elif type == TYPE_BASIS: - arguments_array.push_back(ValueCreator.get_basis()) - elif type == TYPE_BOOL: - arguments_array.push_back(ValueCreator.get_bool()) - elif type == TYPE_COLOR: - arguments_array.push_back(ValueCreator.get_color()) - elif type == TYPE_COLOR_ARRAY: - arguments_array.push_back(PackedColorArray([])) - elif type == TYPE_DICTIONARY: - arguments_array.push_back(ValueCreator.get_dictionary()) - elif type == TYPE_INT: - arguments_array.push_back(ValueCreator.get_int()) - elif type == TYPE_INT32_ARRAY: - arguments_array.push_back(PackedInt32Array([])) - elif type == TYPE_INT64_ARRAY: - arguments_array.push_back(PackedInt64Array([])) - elif type == TYPE_NODE_PATH: - arguments_array.push_back(ValueCreator.get_nodepath()) - elif type == TYPE_OBJECT: - arguments_array.push_back(ValueCreator.get_object(argument.get("class_name"))) - elif type == TYPE_PLANE: - arguments_array.push_back(ValueCreator.get_plane()) - elif type == TYPE_QUAT: - arguments_array.push_back(ValueCreator.get_quat()) - elif type == TYPE_RAW_ARRAY: - arguments_array.push_back(PackedByteArray([])) - elif type == TYPE_FLOAT: - arguments_array.push_back(ValueCreator.get_float()) - elif type == TYPE_FLOAT32_ARRAY: - arguments_array.push_back(PackedFloat32Array([])) - elif type == TYPE_FLOAT64_ARRAY: - arguments_array.push_back(PackedFloat64Array([])) - elif type == TYPE_RECT2: - arguments_array.push_back(ValueCreator.get_rect2()) - elif type == TYPE_RECT2I: - arguments_array.push_back(ValueCreator.get_rect2i()) - elif type == TYPE_RID: - arguments_array.push_back(RID()) - elif type == TYPE_STRING: - arguments_array.push_back(ValueCreator.get_string()) - elif type == TYPE_STRING_NAME: - arguments_array.push_back(StringName(ValueCreator.get_string())) - elif type == TYPE_STRING_ARRAY: - arguments_array.push_back(PackedStringArray([])) - elif type == TYPE_TRANSFORM: - arguments_array.push_back(ValueCreator.get_transform()) - elif type == TYPE_TRANSFORM2D: - arguments_array.push_back(ValueCreator.get_transform2D()) - elif type == TYPE_VECTOR2: - arguments_array.push_back(ValueCreator.get_vector2()) - elif type == TYPE_VECTOR2I: - arguments_array.push_back(ValueCreator.get_vector2i()) - elif type == TYPE_VECTOR2_ARRAY: - arguments_array.push_back(PackedVector2Array([])) - elif type == TYPE_VECTOR3: - arguments_array.push_back(ValueCreator.get_vector3()) - elif type == TYPE_VECTOR3I: - arguments_array.push_back(ValueCreator.get_vector3i()) - elif type == TYPE_VECTOR3_ARRAY: - arguments_array.push_back(PackedVector3Array([])) - elif type== TYPE_CALLABLE: - arguments_array.push_back(Callable(BoxMesh.new(),"Rar")) - else: - assert(false) # Missed some types, add it - - if debug_print: - print("Parameters " + str(arguments_array)) - return arguments_array diff --git a/AutomaticBugs/FunctionExecutor.tscn b/AutomaticBugs/FunctionExecutor.tscn index 98ff9eb..0c3453c 100644 --- a/AutomaticBugs/FunctionExecutor.tscn +++ b/AutomaticBugs/FunctionExecutor.tscn @@ -2,5 +2,5 @@ [ext_resource path="res://AutomaticBugs/FunctionExecutor.gd" type="Script" id=1] -[node name="FunctionExecutor" type="Node2D"] +[node name="FunctionExecutor" type="Node"] script = ExtResource( 1 ) diff --git a/AutomaticBugs/ParseArgumentType.gd b/AutomaticBugs/ParseArgumentType.gd new file mode 100644 index 0000000..f26124c --- /dev/null +++ b/AutomaticBugs/ParseArgumentType.gd @@ -0,0 +1,236 @@ +extends Node + +# Parse arguments and return needed info/objects etc. + +class SingleArgument: + var name: String # E.G. var roman, can be empty, so temp variable isn't created(nodes and objects must be created with temp_variable due to memory leaks) + var type: String # np. Vector2 or Object + var value: String # np. randi() % 100 or + var is_object: bool = false # Check if this is object e.g. Node not Vector2 + var is_only_object: bool = false # Only needs to freed with .free() + var is_only_reference: bool = false # Don't needs to be removed manually + var is_only_node: bool = false # Needs to be removed with .queue_free() + + +func create_gdscript_arguments(arguments: Array) -> Array: + var argument_array: Array = [] + + ValueCreator.number = 10 + ValueCreator.random = true + ValueCreator.should_be_always_valid = true # DO NOT CHANGE, BECAUSE NON VALID VALUES WILL SHOW GDSCRIPT ERRORS! + + var counter = 0 + for argument in arguments: + var typ = argument.get("type") + counter += 1 + var sa: SingleArgument = SingleArgument.new() + sa.name = "variable" + str(counter) + if typ == TYPE_NIL: # Looks that this means VARIANT not null + sa.type = "Variant" + sa.value = "false" + elif typ ==TYPE_AABB: + sa.type = "AABB" + sa.value = ValueCreator.get_aabb_string() + elif typ ==TYPE_ARRAY: + sa.type = "Array" + sa.value = "[]" + elif typ ==TYPE_BASIS: + sa.type = "Basis" + sa.value = ValueCreator.get_basis_string() + elif typ ==TYPE_BOOL: + sa.type = "bool" + sa.value = ValueCreator.get_bool_string().to_lower() + elif typ ==TYPE_COLOR: + sa.type = "Color" + sa.value = ValueCreator.get_color_string() + elif typ ==TYPE_COLOR_ARRAY: + sa.type = "PackedColorArray" + sa.value = "PackedColorArray([])" + elif typ ==TYPE_DICTIONARY: + sa.type = "Dictionary" + sa.value = "{}" # TODO Why not all use ValueCreator? + elif typ ==TYPE_INT: + sa.type = "int" + sa.value = ValueCreator.get_int_string() + elif typ ==TYPE_INT32_ARRAY: + sa.type = "PackedInt32Array" + sa.value = "PackedInt32Array([])" + elif typ ==TYPE_INT64_ARRAY: + sa.type = "PackedInt64Array" + sa.value = "PackedInt64Array([])" + elif typ ==TYPE_NODE_PATH: + sa.type = "NodePath" + sa.value = "NodePath(\".\")" + elif typ ==TYPE_OBJECT: + sa.type = ValueCreator.get_object_string(argument.get("class_name")) + sa.value = sa.type + ".new()" + + sa.is_object = true + if ClassDB.is_parent_class(sa.type, "Node"): + sa.is_only_node = true + elif ClassDB.is_parent_class(sa.type, "Reference"): + sa.is_only_reference = true + else: + sa.is_only_object = true + elif typ ==TYPE_PLANE: + sa.type = "Plane" + sa.value = ValueCreator.get_plane_string() + elif typ ==TYPE_QUAT: + sa.type = "Quat" + sa.value = ValueCreator.get_quat_string() + elif typ ==TYPE_RAW_ARRAY: + sa.type = "PackedByteArray" + sa.value = "PackedByteArray([])" + elif typ ==TYPE_FLOAT: + sa.type = "float" + sa.value = ValueCreator.get_float_string() + elif typ ==TYPE_FLOAT32_ARRAY: + sa.type = "PackedFloat32Array" + sa.value = "PackedFloat32Array([])" + elif typ ==TYPE_FLOAT64_ARRAY: + sa.type = "PackedFloat64Array" + sa.value = "PackedFloat64Array([])" + elif typ ==TYPE_RECT2: + sa.type = "Rect2" + sa.value = ValueCreator.get_rect2_string() + elif typ ==TYPE_RID: + sa.type = "RID" + sa.value = "RID()" + elif typ ==TYPE_STRING: + sa.type = "String" + sa.value = ValueCreator.get_string_string() + elif typ ==TYPE_STRING_NAME: + sa.type = "StringName" + sa.value = StringName(ValueCreator.get_string_string()) + elif typ ==TYPE_STRING_ARRAY: + sa.type = "PackedStringArray" + sa.value = "PackedStringArray([])" + elif typ ==TYPE_TRANSFORM: + sa.type = "Transform" + sa.value = ValueCreator.get_transform_string() + elif typ ==TYPE_TRANSFORM2D: + sa.type = "Transform2D" + sa.value = ValueCreator.get_transform2D_string() + elif typ ==TYPE_VECTOR2: + sa.type = "Vector2" + sa.value = ValueCreator.get_vector2_string() + elif typ ==TYPE_VECTOR2_ARRAY: + sa.type = "PackedVector2Array" + sa.value = "PackedVector2Array([])" + elif typ ==TYPE_VECTOR2I: + sa.type = "Vector2i" + sa.value = ValueCreator.get_vector2i_string() + elif typ ==TYPE_VECTOR3: + sa.type = "Vector3" + sa.value = ValueCreator.get_vector3_string() + elif typ ==TYPE_VECTOR3_ARRAY: + sa.type = "PackedVector3Array" + sa.value = "PackedVector3Array([])" + elif typ ==TYPE_VECTOR3I: + sa.type = "Vector3i" + sa.value = ValueCreator.get_vector3i_string() + elif typ ==TYPE_RECT2I: + sa.type = "Rect2i" + sa.value = ValueCreator.get_rect2i_string() + elif typ ==TYPE_CALLABLE: + sa.type= "Callable" + sa.value = """Callable(BoxMesh.new(),StringName("a"))""" + else: + print("Missing " + str(argument) ) + assert(false) # Missed some types, add it + + argument_array.append(sa) + + return argument_array + + +func parse_and_return_objects(method_data: Dictionary, debug_print: bool = false) -> Array: + var arguments_array: Array = [] + + if BasicData.regression_test_project: + ValueCreator.number = 100 + ValueCreator.random = false # Results in RegressionTestProject must be always reproducible + else: + ValueCreator.number = 1000 + ValueCreator.random = true + ValueCreator.should_be_always_valid = false + + for argument in method_data.get("args"): + var type = argument.get("type") + if type == TYPE_NIL: # Looks that this means VARIANT not null + arguments_array.push_back(false) # TODO Add some randomization +# assert(false) + elif type == TYPE_MAX: + assert(false) + elif type == TYPE_AABB: + arguments_array.push_back(ValueCreator.get_aabb()) + elif type == TYPE_ARRAY: + arguments_array.push_back(ValueCreator.get_array()) + elif type == TYPE_BASIS: + arguments_array.push_back(ValueCreator.get_basis()) + elif type == TYPE_BOOL: + arguments_array.push_back(ValueCreator.get_bool()) + elif type == TYPE_COLOR: + arguments_array.push_back(ValueCreator.get_color()) + elif type == TYPE_COLOR_ARRAY: + arguments_array.push_back(PackedColorArray([])) + elif type == TYPE_DICTIONARY: + arguments_array.push_back(ValueCreator.get_dictionary()) + elif type == TYPE_INT: + arguments_array.push_back(ValueCreator.get_int()) + elif type == TYPE_INT32_ARRAY: + arguments_array.push_back(PackedInt32Array([])) + elif type == TYPE_INT64_ARRAY: + arguments_array.push_back(PackedInt64Array([])) + elif type == TYPE_NODE_PATH: + arguments_array.push_back(ValueCreator.get_nodepath()) + elif type == TYPE_OBJECT: + arguments_array.push_back(ValueCreator.get_object(argument.get("class_name"))) + elif type == TYPE_PLANE: + arguments_array.push_back(ValueCreator.get_plane()) + elif type == TYPE_QUAT: + arguments_array.push_back(ValueCreator.get_quat()) + elif type == TYPE_RAW_ARRAY: + arguments_array.push_back(PackedByteArray([])) + elif type == TYPE_FLOAT: + arguments_array.push_back(ValueCreator.get_float()) + elif type == TYPE_FLOAT32_ARRAY: + arguments_array.push_back(PackedFloat32Array([])) + elif type == TYPE_FLOAT64_ARRAY: + arguments_array.push_back(PackedFloat64Array([])) + elif type == TYPE_RECT2: + arguments_array.push_back(ValueCreator.get_rect2()) + elif type == TYPE_RECT2I: + arguments_array.push_back(ValueCreator.get_rect2i()) + elif type == TYPE_RID: + arguments_array.push_back(RID()) + elif type == TYPE_STRING: + arguments_array.push_back(ValueCreator.get_string()) + elif type == TYPE_STRING_NAME: + arguments_array.push_back(StringName(ValueCreator.get_string())) + elif type == TYPE_STRING_ARRAY: + arguments_array.push_back(PackedStringArray([])) + elif type == TYPE_TRANSFORM: + arguments_array.push_back(ValueCreator.get_transform()) + elif type == TYPE_TRANSFORM2D: + arguments_array.push_back(ValueCreator.get_transform2D()) + elif type == TYPE_VECTOR2: + arguments_array.push_back(ValueCreator.get_vector2()) + elif type == TYPE_VECTOR2I: + arguments_array.push_back(ValueCreator.get_vector2i()) + elif type == TYPE_VECTOR2_ARRAY: + arguments_array.push_back(PackedVector2Array([])) + elif type == TYPE_VECTOR3: + arguments_array.push_back(ValueCreator.get_vector3()) + elif type == TYPE_VECTOR3I: + arguments_array.push_back(ValueCreator.get_vector3i()) + elif type == TYPE_VECTOR3_ARRAY: + arguments_array.push_back(PackedVector3Array([])) + elif type== TYPE_CALLABLE: + arguments_array.push_back(Callable(BoxMesh.new(),"Rar")) + else: + assert(false) # Missed some types, add it + + if debug_print: + print("Parameters " + str(arguments_array)) + return arguments_array diff --git a/AutomaticBugs/ValueCreator.gd b/AutomaticBugs/ValueCreator.gd index 06f8ec0..38a65d0 100644 --- a/AutomaticBugs/ValueCreator.gd +++ b/AutomaticBugs/ValueCreator.gd @@ -1,5 +1,6 @@ extends Node +# Creates random or not objects, variables etc. var number: float = 0.0 var random: bool = false var should_be_always_valid: bool = true # Generate only valid values e.g. to Node generate Node2D instead @@ -219,9 +220,9 @@ func get_Packed_color_array() -> PackedColorArray: func get_object(object_name: String) -> Object: - assert(ClassDB.class_exists(object_name)) - if object_name == "PhysicsDirectSpaceState" || object_name == "Physics2DDirectSpaceState": - return BoxMesh.new() + assert(ClassDB.class_exists(object_name), "Class doesn't exists.") + if object_name == "PhysicsDirectSpaceState3D" || object_name == "PhysicsDirectSpaceState2D" : + return BoxShape3D.new() var a = 0 if random: @@ -242,14 +243,14 @@ func get_object(object_name: String) -> Object: var to_use_classes = ClassDB.get_inheriters_from_class(object_name) to_use_classes.append(object_name) if !ClassDB.can_instance(object_name) && object_name in BasicData.disabled_classes: - assert(to_use_classes.size() > 0) + assert(to_use_classes.size() > 0, "Cannot find proper instantable child for ") while true: a += 1 if a > 50: # Object doesn't have children which can be instanced # This shouldn't happens, but sadly happen with e.g. SpatialGizmo - assert(false) + assert(false, "Cannot find proper instantable child for ") var choosen_class: String = to_use_classes[randi() % to_use_classes.size()] if ClassDB.can_instance(choosen_class) && !(choosen_class in BasicData.disabled_classes): return ClassDB.instance(choosen_class) @@ -257,7 +258,7 @@ func get_object(object_name: String) -> Object: while true: a += 1 if a > 50: - assert(false) + assert(false, "Cannot find proper instantable child for ") var choosen_class: String = classes[randi() % classes.size()] if ClassDB.can_instance(choosen_class) && !ClassDB.is_parent_class(choosen_class, object_name) && !(choosen_class in BasicData.disabled_classes): return ClassDB.instance(choosen_class) @@ -266,14 +267,14 @@ func get_object(object_name: String) -> Object: var to_use_classes = ClassDB.get_inheriters_from_class(object_name) to_use_classes.append(object_name) if !ClassDB.can_instance(object_name) && object_name in BasicData.disabled_classes: - assert(to_use_classes.size() > 0) + assert(to_use_classes.size() > 0, "Cannot find proper instantable child for ") while true: a += 1 if a > 50: # Object doesn't have children which can be instanced # This shouldn't happens, but sadly happen with e.g. SpatialGizmo - assert(false) + assert(false, "Cannot find proper instantable child for ") var choosen_class: String = to_use_classes[randi() % to_use_classes.size()] if ClassDB.can_instance(choosen_class) && !(choosen_class in BasicData.disabled_classes): return ClassDB.instance(choosen_class) @@ -283,14 +284,14 @@ func get_object(object_name: String) -> Object: return ClassDB.instance(object_name) else: # Found child of non instantable object var list_of_class = ClassDB.get_inheriters_from_class(object_name) - assert(list_of_class.size() > 0) # Number of inherited class of non instantable class must be greater than 0, otherwise this function would be useless + assert(list_of_class.size() > 0, "Cannot find proper instantable child for ") # Number of inherited class of non instantable class must be greater than 0, otherwise this function would be useless for i in list_of_class: if ClassDB.can_instance(i) && (ClassDB.is_parent_class(i, "Node") || ClassDB.is_parent_class(i, "Reference")): return ClassDB.instance(i) - assert(false) + assert(false, "Cannot find proper instantable child for ") - assert(false) - return BoxMesh.new() + assert(false, "Cannot find proper instantable child for ") + return BoxShape3D.new() # TODO Update this with upper implementation @@ -312,14 +313,14 @@ func get_object_string(object_name: String) -> String: var to_use_classes = ClassDB.get_inheriters_from_class(object_name) to_use_classes.append(object_name) if !ClassDB.can_instance(object_name): - assert(to_use_classes.size() > 0) + assert(to_use_classes.size() > 0, "Cannot find proper instantable child for ") while true: a += 1 if a > 30: # Object doesn't have children which can be instanced # This shouldn't happens, but sadly happen with e.g. SpatialGizmo - assert(false) + assert(false, "Cannot find proper instantable child for ") var choosen_class: String = to_use_classes[randi() % to_use_classes.size()] if ClassDB.can_instance(choosen_class): return choosen_class @@ -327,7 +328,7 @@ func get_object_string(object_name: String) -> String: while true: a += 1 if a > 30: - assert(false) + assert(false, "Cannot find proper instantable child for ") var choosen_class: String = classes[randi() % classes.size()] if !ClassDB.is_parent_class(choosen_class, object_name): return choosen_class @@ -336,14 +337,14 @@ func get_object_string(object_name: String) -> String: var to_use_classes = ClassDB.get_inheriters_from_class(object_name) to_use_classes.append(object_name) if !ClassDB.can_instance(object_name) && object_name in BasicData.disabled_classes: - assert(to_use_classes.size() > 0) + assert(to_use_classes.size() > 0, "Cannot find proper instantable child for ") while true: a += 1 if a > 50: # Object doesn't have children which can be instanced # This shouldn't happens, but sadly happen with e.g. SpatialGizmo - assert(false) + assert(false, "Cannot find proper instantable child for ") var choosen_class: String = to_use_classes[randi() % to_use_classes.size()] if ClassDB.can_instance(choosen_class) && !(choosen_class in BasicData.disabled_classes): return choosen_class @@ -353,11 +354,11 @@ func get_object_string(object_name: String) -> String: return object_name else: # Found child of non instantable object var list_of_class = ClassDB.get_inheriters_from_class(object_name) - assert(list_of_class.size() > 0) # Number of inherited class of non instantable class must be greater than 0, otherwise this function would be useless + assert(list_of_class.size() > 0, "Cannot find proper instantable child for ") # Number of inherited class of non instantable class must be greater than 0, otherwise this function would be useless for i in list_of_class: if ClassDB.can_instance(i) && (ClassDB.is_parent_class(i, "Node") || ClassDB.is_parent_class(i, "Reference")): return i - assert(false) + assert(false, "Cannot find proper instantable child for ") - assert(false) + assert(false, "Cannot find proper instantable child for ") return "BoxMesh" diff --git a/Nodes/Nodes.gd b/Nodes/Nodes.gd index 3409560..a14aa59 100644 --- a/Nodes/Nodes.gd +++ b/Nodes/Nodes.gd @@ -48,7 +48,7 @@ func _process(delta: float) -> void: if time_to_delete < 0: time_to_delete += TIME_TO_DELETE -# for i in get_children(): -# i.queue_free() -# -# _populate() + for i in get_children(): + i.queue_free() + + _populate() diff --git a/Physics/2D/Area2D.tscn b/Physics/2D/Area2D.tscn index 17cf7c9..b140e4b 100644 --- a/Physics/2D/Area2D.tscn +++ b/Physics/2D/Area2D.tscn @@ -1,22 +1,19 @@ [gd_scene load_steps=3 format=2] -[ext_resource path="res://icon.png" type="Texture2D" id=1] +[ext_resource path="res://icon.png" type="Texture" id=1] [ext_resource path="res://Physics/2D/Area2D.gd" type="Script" id=2] [node name="Area2D" type="Area2D"] script = ExtResource( 2 ) [node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="."] -polygon = PackedVector2Array( 4.018, -13.1782, -15.9057, 3.23778, 1.63277, 17.5492, 19.3115, 2.39594 ) -script = null +polygon = PoolVector2Array( 4.018, -13.1782, -15.9057, 3.23778, 1.63277, 17.5492, 19.3115, 2.39594 ) [node name="CollisionPolygon2D2" type="CollisionPolygon2D" parent="."] -polygon = PackedVector2Array( -4.58427, -16.8342, -20.5974, -4.94143, -8.23639, 16.784, 20.4187, 13.5065 ) -script = null +polygon = PoolVector2Array( -4.58427, -16.8342, -20.5974, -4.94143, -8.23639, 16.784, 20.4187, 13.5065 ) -[node name="Sprite" type="Sprite2D" parent="."] +[node name="Sprite" type="Sprite" parent="."] texture = ExtResource( 1 ) -script = null [connection signal="area_entered" from="." to="." method="_on_Area2D_area_entered"] [connection signal="body_entered" from="." to="." method="_on_Area2D_body_entered"] diff --git a/ReparentingDeleting/ReparentingDeleting.gd b/ReparentingDeleting/ReparentingDeleting.gd index ce3eafe..37b236e 100644 --- a/ReparentingDeleting/ReparentingDeleting.gd +++ b/ReparentingDeleting/ReparentingDeleting.gd @@ -60,14 +60,14 @@ func _process(delta: float) -> void: var random_node = find_node("Special Node " + str(randi() % number_of_nodes),true,false) parent_of_node.remove_child(choosen_node) -# if randi() % 10 == 0: # 10% chance to remove node with children -# var names_to_remove : Array = find_all_special_children_names(choosen_node) -# for name_to_remove in names_to_remove: -# var node : Node = ClassDB.instance(collected_nodes[randi() % collected_nodes.size()]) -# node.set_name(name_to_remove) -# add_child(node) -# choosen_node.queue_free() -# continue + if randi() % 6 == 0: # 16% chance to remove node with children + var names_to_remove : Array = find_all_special_children_names(choosen_node) + for name_to_remove in names_to_remove: + var node : Node = ClassDB.instance(collected_nodes[randi() % collected_nodes.size()]) + node.set_name(name_to_remove) + add_child(node) + choosen_node.queue_free() + continue if choosen_node.find_node(random_node.get_name(),true,false) != null: # Cannot set as node parent one of its child diff --git a/Text/Label.gd b/Text/Label.gd deleted file mode 100644 index 957e48d..0000000 --- a/Text/Label.gd +++ /dev/null @@ -1,18 +0,0 @@ -extends Label - -const TIME : float = 0.1 -var time_to_stop : float = TIME -var current_type : int = 0 - -func _process(delta: float) -> void: - time_to_stop -= delta - if time_to_stop < 0: - time_to_stop = TIME - - current_type += 1 - current_type %= 2 - - if current_type == 0: - set_text("ŚWIERSZCZ NAD GŻEGŻÓŁKĄ W ŻÓŁCI") - else: - text += "AQWAMARYNA" diff --git a/Text/Label.tscn b/Text/Label.tscn deleted file mode 100644 index f0d3d82..0000000 --- a/Text/Label.tscn +++ /dev/null @@ -1,12 +0,0 @@ -[gd_scene load_steps=2 format=2] - -[ext_resource path="res://Text/Label.gd" type="Script" id=1] - -[node name="Label" type="Label"] -margin_right = 83.0 -margin_bottom = 14.0 -text = "Stomatologia" -script = ExtResource( 1 ) -__meta__ = { -"_edit_use_anchors_": false -} diff --git a/Text/RichTextLabel.gd b/Text/RichTextLabel.gd deleted file mode 100644 index ff5699c..0000000 --- a/Text/RichTextLabel.gd +++ /dev/null @@ -1,18 +0,0 @@ -extends RichTextLabel - -const TIME : float = 0.1 -var time_to_stop : float = TIME -var current_type : int = 0 - -func _process(delta: float) -> void: - time_to_stop -= delta - if time_to_stop < 0: - time_to_stop = TIME - - current_type += 1 - current_type %= 2 - - if current_type == 0: - set_text("ŚWIERSZCZ NAD GŻEGŻÓŁKĄ W ŻÓŁCI, Świeci nad Źrebięciem w ciągu szeleszczącej burzy") - else: - text += "AQWAMARYNA JEST ZROBIONA Z KROMKI PO MAŚLE I NAD REDUNDANCJĄ TRZEBA ZROBIĆ DWIE ABY SIĘ NIE POŚLIZGNĄĆ" diff --git a/Text/RichTextLabel.tscn b/Text/RichTextLabel.tscn deleted file mode 100644 index badc963..0000000 --- a/Text/RichTextLabel.tscn +++ /dev/null @@ -1,15 +0,0 @@ -[gd_scene load_steps=2 format=2] - -[ext_resource path="res://Text/RichTextLabel.gd" type="Script" id=1] - -[node name="RichTextLabel" type="RichTextLabel"] -anchor_right = 1.0 -anchor_bottom = 1.0 -size_flags_horizontal = 3 -size_flags_vertical = 3 -bbcode_text = "Szyszka" -text = "Szyszka" -script = ExtResource( 1 ) -__meta__ = { -"_edit_use_anchors_": false -} diff --git a/Text/Text.tscn b/Text/Text.tscn deleted file mode 100644 index 65e2c6f..0000000 --- a/Text/Text.tscn +++ /dev/null @@ -1,27 +0,0 @@ -[gd_scene load_steps=3 format=2] - -[ext_resource path="res://Text/RichTextLabel.tscn" type="PackedScene" id=1] -[ext_resource path="res://Text/Label.tscn" type="PackedScene" id=2] - -[node name="Text" type="GridContainer"] -anchor_right = 1.0 -anchor_bottom = 1.0 -columns = 5 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Label" parent="." instance=ExtResource( 2 )] -margin_top = 293.0 -margin_bottom = 307.0 - -[node name="RichTextLabel" parent="." instance=ExtResource( 1 )] -anchor_right = 0.0 -anchor_bottom = 0.0 -margin_left = 87.0 -margin_right = 321.0 -margin_bottom = 600.0 -bbcode_text = "Roman -" -text = "Roman -" diff --git a/misc/check_ci_log.py b/misc/check_ci_log.py index 93fbbe7..19d0362 100755 --- a/misc/check_ci_log.py +++ b/misc/check_ci_log.py @@ -29,8 +29,6 @@ if ( print("FATAL ERROR: Godot has been crashed.") sys.exit(1) -sys.exit(0) - # Finding memory leaks in Godot is quite difficult, because we need to take into # account leaks also in external libraries. They are usually provided without # debugging symbols, so the leak report from it usually has only 2/3 lines, diff --git a/project.godot b/project.godot index 53879b2..7d0ceae 100644 --- a/project.godot +++ b/project.godot @@ -28,6 +28,7 @@ config/icon="res://icon.png" Autoload="*res://Autoload/Autoload.gd" ValueCreator="*res://AutomaticBugs/ValueCreator.gd" BasicData="*res://AutomaticBugs/BasicData.gd" +ParseArgumentType="*res://AutomaticBugs/ParseArgumentType.gd" [debug]