Fix export

This commit is contained in:
2025-03-31 01:18:36 -07:00
parent ffc3177244
commit 20dad3069a
15 changed files with 212 additions and 189 deletions

View File

@@ -95,7 +95,7 @@ public partial class Player : CharacterBody3D, IPlayer, IProvide<ISaveChunk<Play
private Dictionary<int, int> _expToNextLevel;
private IDamageCalculator _damageCalculator;
private DamageCalculator _damageCalculator;
#region Initialization
public void Initialize()
@@ -118,7 +118,7 @@ public partial class Player : CharacterBody3D, IPlayer, IProvide<ISaveChunk<Play
{
var container = new SimpleInjector.Container();
container.Register<IPlayerLogic, PlayerLogic>(Lifestyle.Singleton);
container.Verify();
//container.Verify();
Settings = new PlayerLogic.Settings() { RotationSpeed = PlayerStatResource.RotationSpeed, MoveSpeed = PlayerStatResource.MoveSpeed, Acceleration = PlayerStatResource.Acceleration };
Stats = new PlayerStatController();
@@ -218,10 +218,7 @@ public partial class Player : CharacterBody3D, IPlayer, IProvide<ISaveChunk<Play
}
else
{
var attackSpeed = ((Weapon)EquippedWeapon.Value).AttackSpeed;
AnimationPlayer.SetSpeedScale((float)attackSpeed);
AnimationPlayer.Play("attack");
_gameRepo.OnPlayerAttack();
PlayAttackAnimation();
}
})
.Handle((in PlayerLogic.Output.ThrowItem output) =>
@@ -321,7 +318,7 @@ public partial class Player : CharacterBody3D, IPlayer, IProvide<ISaveChunk<Play
transform.Basis = new Basis(Vector3.Up, Settings.RotationSpeed * -rawInput.X * delta) * transform.Basis;
var moveDirection = new Vector3(strafeRightInput - strafeLeftInput, 0, rawInput.Z).Normalized();
var velocity = Basis * moveDirection * Settings.MoveSpeed * Settings.Acceleration;
_knockbackStrength = _knockbackStrength * 0.9f;
_knockbackStrength *= 0.9f;
Transform = Transform with { Basis = transform.Basis };
Velocity = velocity + (_knockbackDirection * _knockbackStrength);
MoveAndSlide();
@@ -481,6 +478,17 @@ public partial class Player : CharacterBody3D, IPlayer, IProvide<ISaveChunk<Play
throwItem.GlobalRotation = GlobalRotation;
}
private void PlayAttackAnimation()
{
var attackSpeed = ((Weapon)EquippedWeapon.Value).AttackSpeed;
AnimationPlayer.SetSpeedScale((float)attackSpeed);
if (EquippedWeapon.Value.ItemName == "Atonement")
AnimationPlayer.Play("atonement_attack");
else
AnimationPlayer.Play("attack");
_gameRepo.OnPlayerAttack();
}
private void OnAnimationFinished(StringName animation)
{
PlayerLogic.Input(new PlayerLogic.Input.AttackAnimationFinished());

View File

@@ -1,4 +1,4 @@
[gd_scene load_steps=61 format=4 uid="uid://cfecvvav8kkp6"]
[gd_scene load_steps=62 format=4 uid="uid://cfecvvav8kkp6"]
[ext_resource type="Script" uid="uid://yxmiqy7i0t7r" path="res://src/player/Player.cs" id="1_xcol5"]
[ext_resource type="Script" uid="uid://6edayafleq8y" path="res://src/hitbox/Hitbox.cs" id="2_lb3qc"]
@@ -109,9 +109,14 @@ tracks/0/keys = {
"values": [10, 1, 11]
}
[sub_resource type="Animation" id="Animation_g183x"]
resource_name = "atonement_attack"
step = 0.0833333
[sub_resource type="AnimationLibrary" id="AnimationLibrary_w8l8m"]
_data = {
&"RESET": SubResource("Animation_hcjph"),
&"atonement_attack": SubResource("Animation_g183x"),
&"attack": SubResource("Animation_0jjwv"),
&"hit_wall": SubResource("Animation_es4xk")
}
@@ -539,7 +544,7 @@ flip_v = true
[node name="Camera" type="Node3D" parent="."]
[node name="Camera3D" type="Camera3D" parent="Camera"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.003, 1.52615, 0.482136)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.003, 1.62599, 0.482136)
cull_mask = 1048569
fov = 45.0
near = 0.001

View File

@@ -0,0 +1,37 @@
shader_type spatial;
render_mode unshaded;
// Handles the concentric ripples
uniform float frequency: hint_range(0, 15, 0.01) = 4.0;
uniform float amplitude: hint_range(0, 3, 0.1) = 2.0;
uniform float ripple_rate : hint_range(0, 20.0, 1) = 5;
uniform float blending : hint_range(0.0, 1.0, 0.01) = 1.0;
// Handles the waves themselves
uniform float wave_amplitude: hint_range(0.001, 0.1, 0.001) = 0.05;
uniform float wave_frequency: hint_range(0, 15, 0.01) = 4.0;
uniform sampler2D SCREEN_TEXTURE: hint_screen_texture, filter_linear_mipmap, repeat_disable;
vec2 wave(vec2 uv, float time) {
return vec2(
uv.x + sin(uv.y * wave_frequency + time) * wave_amplitude,
uv.y + sin(uv.x * wave_frequency + time) * wave_amplitude
);
}
void fragment() {
vec2 screen_pixel_size = 1.0 / VIEWPORT_SIZE;
vec2 center_position = -1.0 + 2.0 * UV;
float center_distance = length(center_position);
float ripple = sin(center_distance * -frequency * PI + ripple_rate * TIME) * amplitude / (center_distance + 1.0);
vec2 uv = FRAGCOORD.xy * screen_pixel_size + (center_position/center_distance) * ripple * wave_amplitude;
vec2 background_wave = wave(uv, TIME);
vec4 background_texture = texture(SCREEN_TEXTURE, background_wave) * sqrt(amplitude);
ALBEDO = background_texture.rgb;
ALPHA = blending;
}

View File

@@ -0,0 +1 @@
uid://oatmuwfkep0w