diff --git a/Items/Weapons/Sword.cs b/Items/Weapons/Sword.cs index 5f05551..b71f758 100644 --- a/Items/Weapons/Sword.cs +++ b/Items/Weapons/Sword.cs @@ -206,6 +206,11 @@ public partial class Sword : Weapon, IParryable this); } } + + if (Hitbox.Hits.Count > 0) + { + Character.ApplyImpulse(-Character.Target.Normalized() * Knockback); + } } public void AttemptParry(Weapon otherWeapon) diff --git a/Items/Weapons/Sword.tscn b/Items/Weapons/Sword.tscn index a0a541e..0af9b1c 100644 --- a/Items/Weapons/Sword.tscn +++ b/Items/Weapons/Sword.tscn @@ -103,6 +103,18 @@ tracks/5/keys = { "update": 1, "values": [true] } +tracks/6/type = "value" +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/path = NodePath("SwingSprite:position") +tracks/6/interp = 1 +tracks/6/loop_wrap = true +tracks/6/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector2(0, 0)] +} [sub_resource type="Animation" id="Animation_ameas"] resource_name = "anticipate" @@ -173,7 +185,7 @@ tracks/0/path = NodePath("Anchor:rotation") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { -"times": PackedFloat32Array(0, 0.15, 0.35), +"times": PackedFloat32Array(0, 0.1, 0.35), "transitions": PackedFloat32Array(1, 1, 1), "update": 1, "values": [-1.5708, 1.5708, 1.5708] @@ -209,10 +221,10 @@ tracks/3/path = NodePath("Anchor/Node2D:rotation") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/keys = { -"times": PackedFloat32Array(0, 0.15), -"transitions": PackedFloat32Array(1, 1), +"times": PackedFloat32Array(0.1), +"transitions": PackedFloat32Array(1), "update": 1, -"values": [0.0, 2.35619] +"values": [2.35619] } tracks/4/type = "method" tracks/4/imported = false @@ -235,10 +247,34 @@ tracks/5/path = NodePath("Anchor/Node2D/Sprite2D:visible") tracks/5/interp = 1 tracks/5/loop_wrap = true tracks/5/keys = { -"times": PackedFloat32Array(0, 0.35), -"transitions": PackedFloat32Array(1, 1), +"times": PackedFloat32Array(0, 0.1, 0.35), +"transitions": PackedFloat32Array(1, 1, 1), "update": 1, -"values": [true, false] +"values": [false, true, false] +} +tracks/6/type = "value" +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/path = NodePath("SwingSprite:modulate") +tracks/6/interp = 1 +tracks/6/loop_wrap = true +tracks/6/keys = { +"times": PackedFloat32Array(0, 0.2, 0.35), +"transitions": PackedFloat32Array(1, 1, 1), +"update": 0, +"values": [Color(2, 2, 2, 1), Color(2, 2, 2, 1), Color(2, 2, 2, 0)] +} +tracks/7/type = "value" +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/path = NodePath("SwingSprite:position") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/keys = { +"times": PackedFloat32Array(0, 0.2, 0.35), +"transitions": PackedFloat32Array(1, 1, 1), +"update": 0, +"values": [Vector2(0, 0), Vector2(0, 0), Vector2(2, 0)] } [sub_resource type="Animation" id="Animation_pclfs"]