diff --git a/entities/player/Player.tscn b/entities/player/Player.tscn index b3f054b..a5e6134 100644 --- a/entities/player/Player.tscn +++ b/entities/player/Player.tscn @@ -30,10 +30,10 @@ far = 250.0 [node name="Node2D" type="Node2D" parent="."] [node name="HSlider" type="HSlider" parent="Node2D"] -margin_left = 108.021 -margin_top = 10.4773 -margin_right = 460.021 -margin_bottom = 43.4773 +margin_left = 55.1043 +margin_top = 556.023 +margin_right = 407.104 +margin_bottom = 589.023 min_value = 15.0 max_value = 150.0 value = 97.0 @@ -42,21 +42,46 @@ __meta__ = { } [node name="Label" type="Label" parent="Node2D"] -margin_left = 70.7272 -margin_top = 20.9431 -margin_right = 125.727 -margin_bottom = 43.9431 +margin_left = 18.1098 +margin_top = 566.168 +margin_right = 73.1096 +margin_bottom = 589.168 text = "FOV:" __meta__ = { "_edit_use_anchors_": false } [node name="fps_num" type="Label" parent="Node2D"] -margin_left = 466.032 -margin_top = 20.0198 -margin_right = 535.032 -margin_bottom = 59.0198 +margin_left = 412.154 +margin_top = 565.536 +margin_right = 481.154 +margin_bottom = 604.536 text = "placehold" __meta__ = { "_edit_use_anchors_": false } + +[node name="CanvasLayer" type="CanvasLayer" parent="."] +pause_mode = 2 +layer = 50 + +[node name="Pause" type="Control" parent="CanvasLayer"] +anchor_right = 1.0 +anchor_bottom = 1.0 +margin_left = -0.920593 +margin_top = 22.8412 +margin_right = -0.920593 +margin_bottom = 5.84125 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="Background" type="ColorRect" parent="CanvasLayer/Pause"] +pause_mode = 1 +anchor_right = 1.0 +anchor_bottom = 1.0 +margin_top = 558.0 +color = Color( 0.0627451, 0.0627451, 0.0627451, 0.639216 ) +__meta__ = { +"_edit_use_anchors_": false +} diff --git a/entities/player/player_controller.gd b/entities/player/player_controller.gd index 07bfbcb..3aa2290 100644 --- a/entities/player/player_controller.gd +++ b/entities/player/player_controller.gd @@ -29,6 +29,8 @@ export(int) var jump_height = 10 export(int) var fly_speed = 10 export(int) var fly_accel = 4 var flying := false +# Pause + ################################################## @@ -88,6 +90,7 @@ func walk(delta: float) -> void: # Apply Gravity velocity.y -= gravity * delta + # Sprint var _speed: int if (Input.is_action_pressed("move_sprint") and can_sprint() and move_axis.x >= 0.5): diff --git a/git-structure.txt b/git-structure.txt new file mode 100644 index 0000000..7e953a9 --- /dev/null +++ b/git-structure.txt @@ -0,0 +1,5 @@ +main branch = ready for release, has some features from pre-release, but more refined and functional +pre-release branch = more features, but really buggy. testing is allowed, for players! + + +minimal64 - superv \ No newline at end of file diff --git a/project.godot b/project.godot index 6abba91..a2a739d 100644 --- a/project.godot +++ b/project.godot @@ -1124,6 +1124,21 @@ mouse_input={ "events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":true,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777244,"unicode":0,"echo":false,"script":null) ] } +pause={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777238,"unicode":0,"echo":false,"script":null) + ] +} +unpause={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":79,"unicode":0,"echo":false,"script":null) + ] +} +unpauseo={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":79,"unicode":0,"echo":false,"script":null) + ] +} [layer_names] diff --git a/scenes/s_main/S_Main.tscn b/scenes/s_main/S_Main.tscn index c1e322a..abe69ec 100644 --- a/scenes/s_main/S_Main.tscn +++ b/scenes/s_main/S_Main.tscn @@ -1,45 +1,75 @@ -[gd_scene load_steps=12 format=2] +[gd_scene load_steps=13 format=2] [ext_resource path="res://scenes/s_main/default_env.tres" type="Environment" id=1] [ext_resource path="res://scenes/s_main/s_main.gd" type="Script" id=2] [ext_resource path="res://entities/player/Player.tscn" type="PackedScene" id=3] [ext_resource path="res://scenes/assets/ladder/Ladder.tscn" type="PackedScene" id=4] [ext_resource path="res://scenes/assets/fps_counter/FPS_Counter.tscn" type="PackedScene" id=5] -[ext_resource path="res://scenes/s_main/materials/dark.material" type="Material" id=6] [ext_resource path="res://scenes/s_main/materials/blue.material" type="Material" id=7] [sub_resource type="CubeMesh" id=1] size = Vector3( 1, 1, 1 ) -[sub_resource type="ConvexPolygonShape" id=2] +[sub_resource type="ShaderMaterial" id=2] + +[sub_resource type="ConvexPolygonShape" id=3] points = PoolVector3Array( -0.5, 0.5, 0.5, 0.5, 0.5, -0.5, 0.5, 0.5, 0.5, -0.5, 0.5, -0.5, -0.5, -0.5, 0.5, 0.5, -0.5, -0.5, 0.5, -0.5, 0.5, -0.5, -0.5, -0.5, 0.5, 0.5, 0.5, -0.5, 0.5, -0.5, 0.5, 0.5, -0.5, -0.5, 0.5, 0.5, 0.5, -0.5, 0.5, -0.5, -0.5, -0.5, 0.5, -0.5, -0.5, -0.5, -0.5, 0.5, 0.5, 0.5, 0.5, -0.5, -0.5, 0.5, -0.5, 0.5, 0.5, 0.5, -0.5, 0.5, 0.5, 0.5, -0.5, -0.5, -0.5, -0.5, -0.5, 0.5, -0.5, 0.5, -0.5, -0.5 ) -[sub_resource type="CubeMesh" id=3] +[sub_resource type="CubeMesh" id=4] size = Vector3( 1, 1, 1 ) -[sub_resource type="ConvexPolygonShape" id=4] +[sub_resource type="ConvexPolygonShape" id=5] points = PoolVector3Array( -0.5, 0.5, 0.5, 0.5, 0.5, -0.5, 0.5, 0.5, 0.5, -0.5, 0.5, -0.5, -0.5, -0.5, 0.5, 0.5, -0.5, -0.5, 0.5, -0.5, 0.5, -0.5, -0.5, -0.5, 0.5, 0.5, 0.5, -0.5, 0.5, -0.5, 0.5, 0.5, -0.5, -0.5, 0.5, 0.5, 0.5, -0.5, 0.5, -0.5, -0.5, -0.5, 0.5, -0.5, -0.5, -0.5, -0.5, 0.5, 0.5, 0.5, 0.5, -0.5, -0.5, 0.5, -0.5, 0.5, 0.5, 0.5, -0.5, 0.5, 0.5, 0.5, -0.5, -0.5, -0.5, -0.5, -0.5, 0.5, -0.5, 0.5, -0.5, -0.5 ) +[sub_resource type="Animation" id=6] +resource_name = "SunRotate" +length = 12.0 +loop = true +tracks/0/type = "value" +tracks/0/path = NodePath(".:rotation_degrees") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 12 ), +"transitions": PoolRealArray( 1, 1 ), +"update": 0, +"values": [ Vector3( -90, 165, -180 ), Vector3( 270, 165, -180 ) ] +} +tracks/1/type = "value" +tracks/1/path = NodePath(".:light_energy") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0, 3, 9 ), +"transitions": PoolRealArray( 1, 1, 1 ), +"update": 0, +"values": [ 1.0, 0.0, 0.0 ] +} + [node name="S_Main" type="Spatial"] script = ExtResource( 2 ) [node name="ArenaGeometry" type="Spatial" parent="."] [node name="Floor1" type="MeshInstance" parent="ArenaGeometry"] -transform = Transform( 40, 0, 0, 0, -6.51683e-06, -1, 0, 40, -1.62921e-07, 0.0313206, 9.53674e-07, 0.00365067 ) +transform = Transform( 40, 0, 0, 0, -6.51683e-06, -1, 0, 40, -1.62921e-07, 0.0192173, 9.53674e-07, 0.0214922 ) use_in_baked_light = true mesh = SubResource( 1 ) -material/0 = ExtResource( 6 ) +material/0 = SubResource( 2 ) [node name="StaticBody" type="StaticBody" parent="ArenaGeometry/Floor1"] [node name="CollisionShape" type="CollisionShape" parent="ArenaGeometry/Floor1/StaticBody"] -shape = SubResource( 2 ) +shape = SubResource( 3 ) [node name="Slope1" type="MeshInstance" parent="ArenaGeometry"] transform = Transform( 12, 0, 0, 0, 3.74016, -0.226577, 0, 8.02083, 0.105654, -13.502, 1.517, 0.041 ) use_in_baked_light = true -mesh = SubResource( 3 ) +mesh = SubResource( 4 ) material/0 = ExtResource( 7 ) [node name="StaticBody" type="StaticBody" parent="ArenaGeometry/Slope1"] @@ -47,79 +77,79 @@ transform = Transform( 1, 0, 0, 0, 1, 9.31323e-10, 0, -9.53674e-07, 1, 0, 0, 0 ) [node name="CollisionShape" type="CollisionShape" parent="ArenaGeometry/Slope1/StaticBody"] transform = Transform( 1, 0, 0, 0, 1, 0, 0, -9.53674e-07, 1, 0, 0, 0 ) -shape = SubResource( 2 ) +shape = SubResource( 3 ) [node name="SlopeWall1" type="MeshInstance" parent="ArenaGeometry"] transform = Transform( -1.18125e-06, -2.40367e-07, 0.25, -3.38095, 3.16392, 1.39296e-15, -7.25046, -1.47536, -4.07302e-08, -7.63, 0.147, 1.08 ) use_in_baked_light = true -mesh = SubResource( 3 ) +mesh = SubResource( 4 ) material/0 = ExtResource( 7 ) [node name="BigCube1" type="MeshInstance" parent="ArenaGeometry"] transform = Transform( -1.74846e-07, 12, -1.31134e-07, 0, -5.24537e-07, -3, -4, -5.24537e-07, 5.73206e-15, -13.5, 2, 6 ) use_in_baked_light = true -mesh = SubResource( 3 ) +mesh = SubResource( 4 ) material/0 = ExtResource( 7 ) [node name="StaticBody" type="StaticBody" parent="ArenaGeometry/BigCube1"] [node name="CollisionShape" type="CollisionShape" parent="ArenaGeometry/BigCube1/StaticBody"] -shape = SubResource( 2 ) +shape = SubResource( 3 ) [node name="BigCube2" type="MeshInstance" parent="ArenaGeometry"] transform = Transform( -1.74846e-07, 12, -1.31134e-07, 0, -5.24537e-07, -3, -4, -5.24537e-07, 5.73206e-15, 13.5, 2, -7.44552 ) use_in_baked_light = true -mesh = SubResource( 3 ) +mesh = SubResource( 4 ) material/0 = ExtResource( 7 ) [node name="StaticBody" type="StaticBody" parent="ArenaGeometry/BigCube2"] [node name="CollisionShape" type="CollisionShape" parent="ArenaGeometry/BigCube2/StaticBody"] -shape = SubResource( 2 ) +shape = SubResource( 3 ) [node name="Wall1" type="MeshInstance" parent="ArenaGeometry"] transform = Transform( 1, 0, 0, 0, -1.74846e-06, -6, 0, 40, -2.62268e-07, -19.5, 3.5, 0 ) use_in_baked_light = true -mesh = SubResource( 3 ) +mesh = SubResource( 4 ) material/0 = ExtResource( 7 ) [node name="StaticBody" type="StaticBody" parent="ArenaGeometry/Wall1"] [node name="CollisionShape" type="CollisionShape" parent="ArenaGeometry/Wall1/StaticBody"] -shape = SubResource( 4 ) +shape = SubResource( 5 ) [node name="Wall2" type="MeshInstance" parent="ArenaGeometry"] transform = Transform( 1, 0, 0, 0, -1.74846e-06, -6, 0, 40, -2.62268e-07, 19.5, 3.5, 0 ) use_in_baked_light = true -mesh = SubResource( 3 ) +mesh = SubResource( 4 ) material/0 = ExtResource( 7 ) [node name="StaticBody" type="StaticBody" parent="ArenaGeometry/Wall2"] [node name="CollisionShape" type="CollisionShape" parent="ArenaGeometry/Wall2/StaticBody"] -shape = SubResource( 4 ) +shape = SubResource( 5 ) [node name="Wall3" type="MeshInstance" parent="ArenaGeometry"] transform = Transform( -4.37114e-08, 40, -2.62268e-07, 0, -1.74846e-06, -6, -1, -1.74846e-06, 1.14641e-14, 0, 3.5, 19.5 ) use_in_baked_light = true -mesh = SubResource( 3 ) +mesh = SubResource( 4 ) material/0 = ExtResource( 7 ) [node name="StaticBody" type="StaticBody" parent="ArenaGeometry/Wall3"] [node name="CollisionShape" type="CollisionShape" parent="ArenaGeometry/Wall3/StaticBody"] -shape = SubResource( 4 ) +shape = SubResource( 5 ) [node name="Wall4" type="MeshInstance" parent="ArenaGeometry"] transform = Transform( -4.37114e-08, 40, -2.62268e-07, 0, -1.74846e-06, -6, -1, -1.74846e-06, 1.14641e-14, 0, 3.5, -19.5 ) use_in_baked_light = true -mesh = SubResource( 3 ) +mesh = SubResource( 4 ) material/0 = ExtResource( 7 ) [node name="StaticBody" type="StaticBody" parent="ArenaGeometry/Wall4"] [node name="CollisionShape" type="CollisionShape" parent="ArenaGeometry/Wall4/StaticBody"] -shape = SubResource( 4 ) +shape = SubResource( 5 ) [node name="Lighting" type="Spatial" parent="."] @@ -127,10 +157,18 @@ shape = SubResource( 4 ) environment = ExtResource( 1 ) [node name="DirectionalLight" type="DirectionalLight" parent="Lighting"] -transform = Transform( 0.965926, 0.198266, 0.166365, -2.09447e-07, -0.642788, 0.766044, 0.258818, -0.739942, -0.620885, 2.17494, 9.39172, -2.14115 ) -light_energy = 2.0 +transform = Transform( 0.965926, 3.37365e-07, -0.258819, -3.25841e-07, 1, 8.74227e-08, 0.258819, -1.10091e-10, 0.965925, 2.17494, 9.39172, -2.14115 ) +light_energy = 0.0 shadow_enabled = true -shadow_color = Color( 0.6, 0.6, 0.6, 1 ) + +[node name="AnimationPlayer" type="AnimationPlayer" parent="Lighting/DirectionalLight"] +autoplay = "SunRotate" +anims/SunRotate = SubResource( 6 ) + +[node name="Spatial" type="Spatial" parent="Lighting/DirectionalLight"] +transform = Transform( 0.965926, -3.25841e-07, 0.258819, 3.37365e-07, 1, -1.10099e-10, -0.258819, 8.74228e-08, 0.965926, -0.397392, -1.39189, -0.361859 ) + +[node name="CSGBox" type="CSGBox" parent="Lighting/DirectionalLight/Spatial"] [node name="Player" parent="." instance=ExtResource( 3 )] transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3, 0 ) @@ -139,12 +177,16 @@ transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3, 0 ) transform = Transform( -4.37114e-08, 0, 7, 0, 1.51, 0, -1, 0, -3.0598e-07, 13.25, 2, -5.25 ) [node name="FPS_Counter" parent="." instance=ExtResource( 5 )] +margin_left = 3.95751 +margin_top = 8.57983 +margin_right = 103.958 +margin_bottom = 30.5798 [node name="Label" type="Label" parent="."] -margin_left = 3.13708 -margin_top = 548.663 -margin_right = 356.137 -margin_bottom = 596.663 +margin_left = 7.89392 +margin_top = 31.358 +margin_right = 360.894 +margin_bottom = 79.358 text = "Made with <3 by the Mimimal64 Team This software is open-source and licensed under GPLv3 fork SuperV on https://tildegit.org/minimal64/superv" diff --git a/scenes/s_main/s_main.gd b/scenes/s_main/s_main.gd index 5926cf4..c957e7b 100644 --- a/scenes/s_main/s_main.gd +++ b/scenes/s_main/s_main.gd @@ -11,6 +11,7 @@ var mouse_mode: String = "CAPTURED" ################################################## func _ready() -> void: + print("SuperV Debug Terminal") if fast_close: print("** Fast Close enabled in the 's_main.gd' script **") print("** 'Esc' to close 'Shift + F1' to release mouse **") diff --git a/screenshots/4272021-SUN.PNG b/screenshots/4272021-SUN.PNG new file mode 100644 index 0000000..81484d1 Binary files /dev/null and b/screenshots/4272021-SUN.PNG differ diff --git a/screenshots/4272021.PNG b/screenshots/4272021.PNG new file mode 100644 index 0000000..a5aba94 Binary files /dev/null and b/screenshots/4272021.PNG differ diff --git a/textures/stone.png b/textures/stone.png new file mode 100644 index 0000000..d8241af Binary files /dev/null and b/textures/stone.png differ diff --git a/textures/stone.png.import b/textures/stone.png.import new file mode 100644 index 0000000..2df10cc --- /dev/null +++ b/textures/stone.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/stone.png-8c1f7be2f21757cdaab7a85691789596.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://textures/stone.png" +dest_files=[ "res://.import/stone.png-8c1f7be2f21757cdaab7a85691789596.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0