Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 9d8877cc67 | |||
| fd7b55452b | |||
| 1cafe6e96d | |||
| ea8821b41a | |||
| 8338ce3dd9 | |||
| 39f45d418f | |||
| 4e756da1ba |
@@ -57,18 +57,18 @@ jobs:
|
|||||||
- name: Build Windows
|
- name: Build Windows
|
||||||
run: |
|
run: |
|
||||||
mkdir -v -p build/windows
|
mkdir -v -p build/windows
|
||||||
godot --headless --verbose --build-solutions --import --export-release "Windows Desktop" build/windows/${{ env.GAME_NAME }}.exe
|
godot --headless --verbose --build-solutions --export-release "Windows Desktop" build/windows/${{ env.GAME_NAME }}.exe
|
||||||
zip -r Windows.zip build/windows
|
zip -r Windows.zip build/windows
|
||||||
- name: Linux Build
|
# - name: Linux Build
|
||||||
run: |
|
# run: |
|
||||||
mkdir -v -p build/linux
|
# mkdir -v -p build/linux
|
||||||
godot --headless --verbose --export-release "Linux/X11" build/linux/${{ env.GAME_NAME }}.x86_64
|
# godot --headless --verbose --export-release "Linux/X11" build/linux/${{ env.GAME_NAME }}.x86_64
|
||||||
zip -r Linux.zip build/linux
|
# zip -r Linux.zip build/linux
|
||||||
- name: Mac Build
|
# - name: Mac Build
|
||||||
run: |
|
# run: |
|
||||||
mkdir -v -p build/mac
|
# mkdir -v -p build/mac
|
||||||
godot --headless --verbose --export-release "macOS" build/mac/${{ env.GAME_NAME }}.zip
|
# godot --headless --verbose --export-release "macOS" build/mac/${{ env.GAME_NAME }}.zip
|
||||||
zip -r Mac.zip build/mac
|
# zip -r Mac.zip build/mac
|
||||||
|
|
||||||
- name: Upload to Itch
|
- name: Upload to Itch
|
||||||
uses: KikimoraGames/itch-publish@v0.0.3
|
uses: KikimoraGames/itch-publish@v0.0.3
|
||||||
@@ -79,21 +79,21 @@ jobs:
|
|||||||
buildNumber: ${{ needs.BumpTag.outputs.tag_name }}
|
buildNumber: ${{ needs.BumpTag.outputs.tag_name }}
|
||||||
gameData: Windows.zip
|
gameData: Windows.zip
|
||||||
buildChannel: windows
|
buildChannel: windows
|
||||||
- name: Upload to Itch
|
# - name: Upload to Itch
|
||||||
uses: KikimoraGames/itch-publish@v0.0.3
|
# uses: KikimoraGames/itch-publish@v0.0.3
|
||||||
with:
|
# with:
|
||||||
butlerApiKey: ${{ secrets.BUTLER_TOKEN }}
|
# butlerApiKey: ${{ secrets.BUTLER_TOKEN }}
|
||||||
itchUsername: ${{ env.ITCHIO_USERNAME }}
|
# itchUsername: ${{ env.ITCHIO_USERNAME }}
|
||||||
itchGameId: ${{ env.ITCHIO_GAMEID }}
|
# itchGameId: ${{ env.ITCHIO_GAMEID }}
|
||||||
buildNumber: ${{ needs.BumpTag.outputs.tag_name }}
|
# buildNumber: ${{ needs.BumpTag.outputs.tag_name }}
|
||||||
gameData: Linux.zip
|
# gameData: Linux.zip
|
||||||
buildChannel: linux
|
# buildChannel: linux
|
||||||
- name: Upload to Itch
|
# - name: Upload to Itch
|
||||||
uses: KikimoraGames/itch-publish@v0.0.3
|
# uses: KikimoraGames/itch-publish@v0.0.3
|
||||||
with:
|
# with:
|
||||||
butlerApiKey: ${{ secrets.BUTLER_TOKEN }}
|
# butlerApiKey: ${{ secrets.BUTLER_TOKEN }}
|
||||||
itchUsername: ${{ env.ITCHIO_USERNAME }}
|
# itchUsername: ${{ env.ITCHIO_USERNAME }}
|
||||||
itchGameId: ${{ env.ITCHIO_GAMEID }}
|
# itchGameId: ${{ env.ITCHIO_GAMEID }}
|
||||||
buildNumber: ${{ needs.BumpTag.outputs.tag_name }}
|
# buildNumber: ${{ needs.BumpTag.outputs.tag_name }}
|
||||||
gameData: Mac.zip
|
# gameData: Mac.zip
|
||||||
buildChannel: mac
|
# buildChannel: mac
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
class_name SceneLoaderClass
|
|
||||||
extends Node
|
extends Node
|
||||||
|
class_name SceneLoaderClass
|
||||||
## Autoload class for loading scenes with an optional loading screen.
|
## Autoload class for loading scenes with an optional loading screen.
|
||||||
|
|
||||||
signal scene_loaded
|
signal scene_loaded
|
||||||
|
|||||||
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
@@ -5,11 +5,11 @@ bus/1/name = &"Music"
|
|||||||
bus/1/solo = false
|
bus/1/solo = false
|
||||||
bus/1/mute = false
|
bus/1/mute = false
|
||||||
bus/1/bypass_fx = false
|
bus/1/bypass_fx = false
|
||||||
bus/1/volume_db = -6.5788474
|
bus/1/volume_db = -15.794972
|
||||||
bus/1/send = &"Master"
|
bus/1/send = &"Master"
|
||||||
bus/2/name = &"SFX"
|
bus/2/name = &"SFX"
|
||||||
bus/2/solo = false
|
bus/2/solo = false
|
||||||
bus/2/mute = false
|
bus/2/mute = false
|
||||||
bus/2/bypass_fx = false
|
bus/2/bypass_fx = false
|
||||||
bus/2/volume_db = -10.074136
|
bus/2/volume_db = -8.798218
|
||||||
bus/2/send = &"Master"
|
bus/2/send = &"Master"
|
||||||
|
|||||||
@@ -72,11 +72,11 @@ script_export_mode=2
|
|||||||
|
|
||||||
custom_template/debug=""
|
custom_template/debug=""
|
||||||
custom_template/release=""
|
custom_template/release=""
|
||||||
debug/export_console_wrapper=1
|
debug/export_console_wrapper=2
|
||||||
binary_format/embed_pck=false
|
binary_format/embed_pck=false
|
||||||
texture_format/s3tc_bptc=true
|
texture_format/s3tc_bptc=true
|
||||||
texture_format/etc2_astc=false
|
texture_format/etc2_astc=false
|
||||||
shader_baker/enabled=false
|
shader_baker/enabled=true
|
||||||
binary_format/architecture="x86_64"
|
binary_format/architecture="x86_64"
|
||||||
codesign/enable=false
|
codesign/enable=false
|
||||||
codesign/timestamp=true
|
codesign/timestamp=true
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ volumetric_fog_anisotropy = 0.6
|
|||||||
[node name="Main" type="Node3D"]
|
[node name="Main" type="Node3D"]
|
||||||
|
|
||||||
[node name="Player" parent="." instance=ExtResource("1_2vsi6")]
|
[node name="Player" parent="." instance=ExtResource("1_2vsi6")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -9.21207, 64.344444, -41.363285)
|
transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, -13.104848, -53.52949, 71.105316)
|
||||||
|
|
||||||
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
|
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
|
||||||
environment = SubResource("Environment_1bvp3")
|
environment = SubResource("Environment_1bvp3")
|
||||||
|
|||||||
31
menus/scenes/menus/main_menu/new_main_menu.tscn
Normal file
31
menus/scenes/menus/main_menu/new_main_menu.tscn
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
[gd_scene load_steps=3 format=3 uid="uid://br8shfwk2lne0"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://brrt2uj47cmld" path="res://systems/ui/grab_focus.gd" id="1_c6nmr"]
|
||||||
|
[ext_resource type="Script" uid="uid://ckywnolvqy6w1" path="res://systems/ui/new_main_menu.gd" id="1_vi8ha"]
|
||||||
|
|
||||||
|
[node name="NewMainMenu" type="Control"]
|
||||||
|
layout_mode = 3
|
||||||
|
anchors_preset = 15
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
script = ExtResource("1_vi8ha")
|
||||||
|
game_scene_path = "uid://dmkw8cmalm5k"
|
||||||
|
|
||||||
|
[node name="Menus" type="MarginContainer" parent="."]
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = 15
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
|
||||||
|
[node name="StartGameButton" type="Button" parent="Menus"]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 4
|
||||||
|
size_flags_vertical = 4
|
||||||
|
text = "Start game"
|
||||||
|
script = ExtResource("1_c6nmr")
|
||||||
|
|
||||||
|
[connection signal="pressed" from="Menus/StartGameButton" to="." method="on_new_game"]
|
||||||
@@ -212,6 +212,7 @@ one_shot = true
|
|||||||
ignore_time_scale = true
|
ignore_time_scale = true
|
||||||
|
|
||||||
[node name="StateChartDebugger" parent="." instance=ExtResource("24_q5h8a")]
|
[node name="StateChartDebugger" parent="." instance=ExtResource("24_q5h8a")]
|
||||||
|
visible = false
|
||||||
offset_left = 1524.0
|
offset_left = 1524.0
|
||||||
offset_top = 1.0
|
offset_top = 1.0
|
||||||
offset_right = -8.0
|
offset_right = -8.0
|
||||||
@@ -251,15 +252,24 @@ expand_mode = 2
|
|||||||
|
|
||||||
[node name="DashCooldownIndicator" type="ColorRect" parent="UI"]
|
[node name="DashCooldownIndicator" type="ColorRect" parent="UI"]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
|
anchors_preset = 15
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
offset_left = 910.0
|
offset_left = 910.0
|
||||||
offset_top = 549.0
|
offset_top = 549.0
|
||||||
offset_right = 1010.0
|
offset_right = -910.0
|
||||||
offset_bottom = 559.0
|
offset_bottom = -521.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
|
||||||
[node name="CenterContainer" type="CenterContainer" parent="UI"]
|
[node name="CenterContainer" type="CenterContainer" parent="UI"]
|
||||||
custom_minimum_size = Vector2(1920, 1080)
|
custom_minimum_size = Vector2(1920, 1080)
|
||||||
offset_right = 1919.0
|
anchors_preset = 15
|
||||||
offset_bottom = 1080.0
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
offset_right = -1.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
|
||||||
[node name="CenterIcon" type="TextureRect" parent="UI/CenterContainer"]
|
[node name="CenterIcon" type="TextureRect" parent="UI/CenterContainer"]
|
||||||
material = SubResource("CanvasItemMaterial_2q0ik")
|
material = SubResource("CanvasItemMaterial_2q0ik")
|
||||||
|
|||||||
@@ -532,7 +532,7 @@ public partial class PlayerController : CharacterBody3D
|
|||||||
|
|
||||||
public Vector3 ComputeHVelocity(float delta, float accelerationFactor, float decelerationFactor, Vector3? direction = null)
|
public Vector3 ComputeHVelocity(float delta, float accelerationFactor, float decelerationFactor, Vector3? direction = null)
|
||||||
{
|
{
|
||||||
var dir = direction ?? HeadSystem.Transform.Basis * _inputMove;
|
var dir = direction ?? Transform.Basis * HeadSystem.Transform.Basis * _inputMove;
|
||||||
|
|
||||||
var acceleration = dir.Length() > 0 ? accelerationFactor : decelerationFactor;
|
var acceleration = dir.Length() > 0 ? accelerationFactor : decelerationFactor;
|
||||||
|
|
||||||
@@ -875,7 +875,7 @@ public partial class PlayerController : CharacterBody3D
|
|||||||
|
|
||||||
public Vector3 GetInputGlobalHDirection()
|
public Vector3 GetInputGlobalHDirection()
|
||||||
{
|
{
|
||||||
var direction = HeadSystem.Transform.Basis * _inputMove;
|
var direction = Transform.Basis * HeadSystem.Transform.Basis * _inputMove;
|
||||||
return new Vector3(direction.X, 0, direction.Z).Normalized();
|
return new Vector3(direction.X, 0, direction.Z).Normalized();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -154,7 +154,9 @@ copy_path="res://scenes"
|
|||||||
|
|
||||||
[physics]
|
[physics]
|
||||||
|
|
||||||
|
common/physics_jitter_fix=0.0
|
||||||
3d/physics_engine="Jolt Physics"
|
3d/physics_engine="Jolt Physics"
|
||||||
|
common/physics_interpolation=true
|
||||||
|
|
||||||
[rendering]
|
[rendering]
|
||||||
|
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ namespace Movementtests.systems;
|
|||||||
public partial class HeadSystem : Node3D
|
public partial class HeadSystem : Node3D
|
||||||
{
|
{
|
||||||
private Camera3D _camera;
|
private Camera3D _camera;
|
||||||
|
private Marker3D _cameraAnchor;
|
||||||
|
|
||||||
[Export(PropertyHint.Range, "0,10,0.1,or_greater")]
|
[Export(PropertyHint.Range, "0,10,0.1,or_greater")]
|
||||||
public float LookSensitivity { get; set; } = 1f;
|
public float LookSensitivity { get; set; } = 1f;
|
||||||
@@ -14,6 +15,7 @@ public partial class HeadSystem : Node3D
|
|||||||
{
|
{
|
||||||
Input.SetMouseMode(Input.MouseModeEnum.Captured);
|
Input.SetMouseMode(Input.MouseModeEnum.Captured);
|
||||||
_camera = GetNode<Camera3D>("CameraSmooth/Camera3D");
|
_camera = GetNode<Camera3D>("CameraSmooth/Camera3D");
|
||||||
|
_cameraAnchor = GetNode<Marker3D>("CameraAnchor");
|
||||||
}
|
}
|
||||||
|
|
||||||
public void LookAround(Vector2 lookDir, float sensitivitMultiplier = 1f)
|
public void LookAround(Vector2 lookDir, float sensitivitMultiplier = 1f)
|
||||||
@@ -23,11 +25,12 @@ public partial class HeadSystem : Node3D
|
|||||||
RotateY(angleForHorizontalRotation);
|
RotateY(angleForHorizontalRotation);
|
||||||
|
|
||||||
// Vertical movement of head
|
// Vertical movement of head
|
||||||
Vector3 currentCameraRotation = _camera.Rotation;
|
Vector3 currentCameraRotation = _cameraAnchor.Rotation;
|
||||||
currentCameraRotation.X += Convert.ToSingle(lookDir.Y * LookSensitivity * sensitivitMultiplier);
|
currentCameraRotation.X += Convert.ToSingle(lookDir.Y * LookSensitivity * sensitivitMultiplier);
|
||||||
currentCameraRotation.X = Mathf.Clamp(currentCameraRotation.X, Mathf.DegToRad(-90f), Mathf.DegToRad(90f));
|
currentCameraRotation.X = Mathf.Clamp(currentCameraRotation.X, Mathf.DegToRad(-90f), Mathf.DegToRad(90f));
|
||||||
|
_cameraAnchor.Rotation = currentCameraRotation;
|
||||||
|
|
||||||
_camera.Rotation = currentCameraRotation;
|
_camera.GlobalTransform = _cameraAnchor.GetGlobalTransformInterpolated();
|
||||||
}
|
}
|
||||||
|
|
||||||
public Vector3 GetForwardHorizontalVector()
|
public Vector3 GetForwardHorizontalVector()
|
||||||
|
|||||||
@@ -16,8 +16,8 @@ script = ExtResource("1_8abgy")
|
|||||||
[node name="CameraSmooth" type="Node3D" parent="."]
|
[node name="CameraSmooth" type="Node3D" parent="."]
|
||||||
|
|
||||||
[node name="Camera3D" type="Camera3D" parent="CameraSmooth"]
|
[node name="Camera3D" type="Camera3D" parent="CameraSmooth"]
|
||||||
transform = Transform3D(0.15, 0, 0, 0, 0.15, 0, 0, 0, 0.15, 0, 0, 0)
|
|
||||||
current = true
|
current = true
|
||||||
|
fov = 90.0
|
||||||
|
|
||||||
[node name="CLVignette(Layer_1)" type="CanvasLayer" parent="CameraSmooth/Camera3D"]
|
[node name="CLVignette(Layer_1)" type="CanvasLayer" parent="CameraSmooth/Camera3D"]
|
||||||
|
|
||||||
@@ -57,3 +57,5 @@ mouse_filter = 2
|
|||||||
[node name="RayCast3D" type="RayCast3D" parent="CameraSmooth/Camera3D"]
|
[node name="RayCast3D" type="RayCast3D" parent="CameraSmooth/Camera3D"]
|
||||||
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, -0.64723)
|
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, -0.64723)
|
||||||
visible = false
|
visible = false
|
||||||
|
|
||||||
|
[node name="CameraAnchor" type="Marker3D" parent="."]
|
||||||
|
|||||||
4
systems/ui/grab_focus.gd
Normal file
4
systems/ui/grab_focus.gd
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
extends Control
|
||||||
|
|
||||||
|
func _ready() -> void:
|
||||||
|
grab_focus()
|
||||||
1
systems/ui/grab_focus.gd.uid
Normal file
1
systems/ui/grab_focus.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://brrt2uj47cmld
|
||||||
6
systems/ui/new_main_menu.gd
Normal file
6
systems/ui/new_main_menu.gd
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
extends Control
|
||||||
|
|
||||||
|
@export_file("*.tscn") var game_scene_path : String
|
||||||
|
|
||||||
|
func on_new_game() -> void:
|
||||||
|
SceneLoader.load_scene(game_scene_path)
|
||||||
1
systems/ui/new_main_menu.gd.uid
Normal file
1
systems/ui/new_main_menu.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://ckywnolvqy6w1
|
||||||
Reference in New Issue
Block a user