From 492176a8c3fac3544b65601ac756b71861ba260a Mon Sep 17 00:00:00 2001 From: Ed <96445749+TheShuEd@users.noreply.github.com> Date: Fri, 5 Apr 2024 20:19:33 +0300 Subject: [PATCH] =?UTF-8?q?=D0=90=D0=BF=D0=B4=D0=B5=D0=B9=D1=82=20=D0=B1?= =?UTF-8?q?=D0=BB=D0=B8=D0=B6=D0=BD=D0=B5=D0=B3=D0=BE=20=D0=B1=D0=BE=D1=8F?= =?UTF-8?q?=20(#37)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Dagger update * Light weapons * HandheldAxe update * Update handheldAxe.yml * +sickle +dart * two handed update * add Link LightHammer sprite * pipi * . Add Weapons prototypes * fixes --- .../Components/WeaponArcVisualsComponent.cs | 2 + .../Melee/MeleeWeaponSystem.Effects.cs | 71 +++++++++++- .../Weapons/Melee/MeleeWeaponComponent.cs | 20 +++- .../Weapons/Melee/SharedMeleeWeaponSystem.cs | 10 +- .../_CP14/Entities/Effects/weapon_arc.yml | 7 ++ .../Entities/Objects/Weapons/Melee/base.yml | 103 +++++++++--------- .../Entities/Objects/Weapons/Melee/dagger.yml | 34 ++++++ .../Objects/Weapons/Melee/handheldAxe.yml | 42 +++++++ .../Objects/Weapons/Melee/lightHammer.yml | 35 ++++++ .../Entities/Objects/Weapons/Melee/sickle.yml | 27 +++++ .../Objects/Weapons/Melee/twoHandedSword.yml | 46 ++++++-- .../Mobs/Species/Human/parts.rsi/l_foot.png | Bin 404 -> 400 bytes .../Mobs/Species/Human/parts.rsi/r_foot.png | Bin 365 -> 365 bytes .../Weapons/Melee/Dagger/dagger.rsi/icon.png | Bin 0 -> 342 bytes .../Melee/Dagger/dagger.rsi/inhand-left.png | Bin 0 -> 374 bytes .../Melee/Dagger/dagger.rsi/inhand-right.png | Bin 0 -> 397 bytes .../Weapons/Melee/Dagger/dagger.rsi/meta.json | 22 ++++ .../HandheldAxe/handheldAxe.rsi/icon.png | Bin 0 -> 324 bytes .../handheldAxe.rsi/inhand-left.png | Bin 0 -> 557 bytes .../handheldAxe.rsi/inhand-right.png | Bin 0 -> 572 bytes .../HandheldAxe/handheldAxe.rsi/meta.json | 22 ++++ .../HandheldSpear/handheldSpear.rsi/icon.png | Bin 0 -> 279 bytes .../handheldSpear.rsi/inhand-left.png | Bin 0 -> 565 bytes .../handheldSpear.rsi/inhand-right.png | Bin 0 -> 577 bytes .../HandheldSpear/handheldSpear.rsi/meta.json | 22 ++++ .../LightHammer/lightHammer.rsi/icon.png | Bin 0 -> 313 bytes .../lightHammer.rsi/inhand-left.png | Bin 0 -> 615 bytes .../lightHammer.rsi/inhand-right.png | Bin 0 -> 588 bytes .../LightHammer/lightHammer.rsi/meta.json | 22 ++++ .../Weapons/Melee/Sickle/sickle.rsi/icon.png | Bin 0 -> 352 bytes .../Melee/Sickle/sickle.rsi/inhand-left.png | Bin 0 -> 526 bytes .../Melee/Sickle/sickle.rsi/inhand-right.png | Bin 0 -> 545 bytes .../Weapons/Melee/Sickle/sickle.rsi/meta.json | 22 ++++ .../twoHandedSword.rsi/equipped-BACKPACK.png | Bin 0 -> 841 bytes .../twoHandedSword.rsi/icon.png | Bin 0 -> 465 bytes .../twoHandedSword.rsi/inhand-left.png | Bin 0 -> 1161 bytes .../twoHandedSword.rsi/inhand-right.png | Bin 0 -> 1134 bytes .../twoHandedSword.rsi/meta.json | 34 ++++++ .../wielded-inhand-left.png | Bin 0 -> 1066 bytes .../wielded-inhand-right.png | Bin 0 -> 1101 bytes .../twoHandedSword32.rsi/icon.png | Bin 0 -> 432 bytes .../twoHandedSword32.rsi/meta.json | 14 +++ .../zweichhender.rsi/equipped-BACKPACK.png | Bin .../zweichhender.rsi/icon.png | Bin .../zweichhender.rsi/inhand-left.png | Bin .../zweichhender.rsi/inhand-right.png | Bin .../zweichhender.rsi/meta.json | 0 .../zweichhender.rsi/wielded-inhand-left.png | Bin 0 -> 596 bytes .../zweichhender.rsi/wielded-inhand-right.png | Bin 0 -> 536 bytes .../zweichhender.rsi/wielded-inhand-left.png | Bin 586 -> 0 bytes .../zweichhender.rsi/wielded-inhand-right.png | Bin 598 -> 0 bytes 51 files changed, 489 insertions(+), 66 deletions(-) create mode 100644 Resources/Prototypes/_CP14/Entities/Effects/weapon_arc.yml create mode 100644 Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/dagger.yml create mode 100644 Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/handheldAxe.yml create mode 100644 Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/lightHammer.yml create mode 100644 Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/sickle.yml create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/Dagger/dagger.rsi/icon.png create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/Dagger/dagger.rsi/inhand-left.png create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/Dagger/dagger.rsi/inhand-right.png create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/Dagger/dagger.rsi/meta.json create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/HandheldAxe/handheldAxe.rsi/icon.png create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/HandheldAxe/handheldAxe.rsi/inhand-left.png create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/HandheldAxe/handheldAxe.rsi/inhand-right.png create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/HandheldAxe/handheldAxe.rsi/meta.json create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/HandheldSpear/handheldSpear.rsi/icon.png create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/HandheldSpear/handheldSpear.rsi/inhand-left.png create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/HandheldSpear/handheldSpear.rsi/inhand-right.png create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/HandheldSpear/handheldSpear.rsi/meta.json create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/LightHammer/lightHammer.rsi/icon.png create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/LightHammer/lightHammer.rsi/inhand-left.png create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/LightHammer/lightHammer.rsi/inhand-right.png create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/LightHammer/lightHammer.rsi/meta.json create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/Sickle/sickle.rsi/icon.png create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/Sickle/sickle.rsi/inhand-left.png create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/Sickle/sickle.rsi/inhand-right.png create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/Sickle/sickle.rsi/meta.json create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword.rsi/equipped-BACKPACK.png create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword.rsi/icon.png create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword.rsi/inhand-left.png create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword.rsi/inhand-right.png create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword.rsi/meta.json create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword.rsi/wielded-inhand-left.png create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword.rsi/wielded-inhand-right.png create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword32.rsi/icon.png create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword32.rsi/meta.json rename Resources/Textures/CrystallPunk/Objects/Weapons/Melee/{ => TwoHandedSword}/zweichhender.rsi/equipped-BACKPACK.png (100%) rename Resources/Textures/CrystallPunk/Objects/Weapons/Melee/{ => TwoHandedSword}/zweichhender.rsi/icon.png (100%) rename Resources/Textures/CrystallPunk/Objects/Weapons/Melee/{ => TwoHandedSword}/zweichhender.rsi/inhand-left.png (100%) rename Resources/Textures/CrystallPunk/Objects/Weapons/Melee/{ => TwoHandedSword}/zweichhender.rsi/inhand-right.png (100%) rename Resources/Textures/CrystallPunk/Objects/Weapons/Melee/{ => TwoHandedSword}/zweichhender.rsi/meta.json (100%) create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/zweichhender.rsi/wielded-inhand-left.png create mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/zweichhender.rsi/wielded-inhand-right.png delete mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/zweichhender.rsi/wielded-inhand-left.png delete mode 100644 Resources/Textures/CrystallPunk/Objects/Weapons/Melee/zweichhender.rsi/wielded-inhand-right.png diff --git a/Content.Client/Weapons/Melee/Components/WeaponArcVisualsComponent.cs b/Content.Client/Weapons/Melee/Components/WeaponArcVisualsComponent.cs index d0f95f7069..eb8672965b 100644 --- a/Content.Client/Weapons/Melee/Components/WeaponArcVisualsComponent.cs +++ b/Content.Client/Weapons/Melee/Components/WeaponArcVisualsComponent.cs @@ -18,4 +18,6 @@ public enum WeaponArcAnimation : byte None, Thrust, Slash, + //CrystallPunk Melee upgrade + CPSlashLight } diff --git a/Content.Client/Weapons/Melee/MeleeWeaponSystem.Effects.cs b/Content.Client/Weapons/Melee/MeleeWeaponSystem.Effects.cs index 0f2f98e764..7e9c5e94c3 100644 --- a/Content.Client/Weapons/Melee/MeleeWeaponSystem.Effects.cs +++ b/Content.Client/Weapons/Melee/MeleeWeaponSystem.Effects.cs @@ -14,6 +14,8 @@ public sealed partial class MeleeWeaponSystem private const string SlashAnimationKey = "melee-slash"; private const string ThrustAnimationKey = "melee-thrust"; + private const string CPSlashLightAnimationKey = "cp-melee-slash-light"; //CrystallPunk Melee upgrade + /// /// Does all of the melee effects for a player that are predicted, i.e. character lunge and weapon animation. /// @@ -42,6 +44,10 @@ public sealed partial class MeleeWeaponSystem return; } + var length = 1f; //CrystallPunk Melee upgrade + var scale = 1f; //CrystallPunk Melee upgrade + var offset = -1f; //CrystallPunk Melee upgrade + var spriteRotation = Angle.Zero; if (arcComponent.Animation != WeaponArcAnimation.None && TryComp(weapon, out MeleeWeaponComponent? meleeWeaponComponent)) @@ -54,9 +60,14 @@ public sealed partial class MeleeWeaponSystem if (meleeWeaponComponent.SwingLeft) angle *= -1; + + length = meleeWeaponComponent.CPAnimationLength; //CrystallPunk Melee upgrade + scale = meleeWeaponComponent.CPAnimationScale; //CrystallPunk Melee upgrade + offset = meleeWeaponComponent.CPAnimationOffset; //CrystallPunk Melee upgrade } sprite.NoRotation = true; sprite.Rotation = localPos.ToWorldAngle(); + sprite.Scale = new Vector2(scale); //CrystallPunk Melee upgrade var distance = Math.Clamp(localPos.Length() / 2f, 0.2f, 1f); var xform = _xformQuery.GetComponent(animationUid); @@ -84,6 +95,15 @@ public sealed partial class MeleeWeaponSystem if (arcComponent.Fadeout) _animation.Play(animationUid, GetFadeAnimation(sprite, 0f, 0.15f), FadeAnimationKey); break; + //CrystallPunk MeleeUpgrade + case WeaponArcAnimation.CPSlashLight: + _animation.Play(animationUid, CPGetSlashLightAnimation(sprite, angle, spriteRotation, length, offset), CPSlashLightAnimationKey); + TransformSystem.SetParent(animationUid, xform, user, userXform); + if (arcComponent.Fadeout) + _animation.Play(animationUid, GetFadeAnimation(sprite, length * 0.5f, length + 0.15f), FadeAnimationKey); + + break; + //CrystallPunk MeleeUpgrade end } } @@ -184,7 +204,7 @@ public sealed partial class MeleeWeaponSystem /// private Animation GetLungeAnimation(Vector2 direction) { - const float length = 0.1f; + const float length = 0.2f; // 0.1 original, CrystallPunk update return new Animation { @@ -198,11 +218,58 @@ public sealed partial class MeleeWeaponSystem InterpolationMode = AnimationInterpolationMode.Linear, KeyFrames = { - new AnimationTrackProperty.KeyFrame(direction.Normalized() * 0.15f, 0f), + new AnimationTrackProperty.KeyFrame(Vector2.Zero, 0f), //CrystallPunk MeleeUpgrade + new AnimationTrackProperty.KeyFrame(direction.Normalized() * 0.15f, length/2), //CrystallPunk MeleeUpgrade new AnimationTrackProperty.KeyFrame(Vector2.Zero, length) } } } }; } + + //CrystallPunk MeleeUpgrade start + private Animation CPGetSlashLightAnimation(SpriteComponent sprite, Angle arc, Angle spriteRotation, float length, float offset = -1f) + { + var startRotation = sprite.Rotation + (arc * 0.5f); + var endRotation = sprite.Rotation - (arc * 0.5f); + + var startRotationOffset = startRotation.RotateVec(new Vector2(0f, offset)); + var endRotationOffset = endRotation.RotateVec(new Vector2(0f, offset)); + + startRotation += spriteRotation; + endRotation += spriteRotation; + sprite.NoRotation = true; + + return new Animation() + { + Length = TimeSpan.FromSeconds(length + 0.05f), + AnimationTracks = + { + new AnimationTrackComponentProperty() + { + ComponentType = typeof(SpriteComponent), + Property = nameof(SpriteComponent.Rotation), + KeyFrames = + { + new AnimationTrackProperty.KeyFrame(Angle.Lerp(startRotation,endRotation,0.0f), length * 0.0f), + new AnimationTrackProperty.KeyFrame(Angle.Lerp(startRotation,endRotation,1.0f), length * 0.6f), + new AnimationTrackProperty.KeyFrame(Angle.Lerp(startRotation,endRotation,0.8f), length * 1.0f), + } + }, + new AnimationTrackComponentProperty() + { + ComponentType = typeof(SpriteComponent), + Property = nameof(SpriteComponent.Offset), + KeyFrames = + { + new AnimationTrackProperty.KeyFrame(Vector2.Lerp(startRotationOffset,endRotationOffset,0.0f), length * 0.0f), + new AnimationTrackProperty.KeyFrame(Vector2.Lerp(startRotationOffset,endRotationOffset,1.0f), length * 0.6f), + new AnimationTrackProperty.KeyFrame(Vector2.Lerp(startRotationOffset,endRotationOffset,0.8f), length * 1.0f), + } + }, + } + }; + } + //CrystallPunk MeleeUpgrade end + } diff --git a/Content.Shared/Weapons/Melee/MeleeWeaponComponent.cs b/Content.Shared/Weapons/Melee/MeleeWeaponComponent.cs index 2027c2d2c6..29b25e73e3 100644 --- a/Content.Shared/Weapons/Melee/MeleeWeaponComponent.cs +++ b/Content.Shared/Weapons/Melee/MeleeWeaponComponent.cs @@ -114,11 +114,29 @@ public sealed partial class MeleeWeaponComponent : Component public bool SwingLeft; /// - /// CrystallPunk Melee improvment. Allows each attack to take turns being either left or right + /// CrystallPunk Melee upgrade. Allows each attack to take turns being either left or right /// [DataField] public bool CPSwingBeverage = true; + /// + /// CrystallPunk Melee upgrade. Modifier of wide attack animation speed + /// + [DataField] + public float CPAnimationLength = 0.5f; + + /// + /// CrystallPunk Melee upgrade. Scale arc (for small knife ex.) + /// + [DataField] + public float CPAnimationScale = 1f; + + /// + /// CrystallPunk Melee upgrade. how far away from the player the animation should be played. + /// + [DataField] + public float CPAnimationOffset = -1f; + // Sounds /// diff --git a/Content.Shared/Weapons/Melee/SharedMeleeWeaponSystem.cs b/Content.Shared/Weapons/Melee/SharedMeleeWeaponSystem.cs index 8fe0dc6e59..6effb8b82f 100644 --- a/Content.Shared/Weapons/Melee/SharedMeleeWeaponSystem.cs +++ b/Content.Shared/Weapons/Melee/SharedMeleeWeaponSystem.cs @@ -385,6 +385,11 @@ public abstract class SharedMeleeWeaponSystem : EntitySystem var ev = new AttemptMeleeEvent(); RaiseLocalEvent(weaponUid, ref ev); + //CrystallPun melee improvment + if (weapon.CPSwingBeverage) + weapon.SwingLeft = !weapon.SwingLeft; + //CrystallPun melee improvment end + if (ev.Cancelled) { if (ev.Message != null) @@ -428,11 +433,6 @@ public abstract class SharedMeleeWeaponSystem : EntitySystem var attackEv = new MeleeAttackEvent(weaponUid); RaiseLocalEvent(user, ref attackEv); - //CrystallPun melee improvment - if (weapon.CPSwingBeverage) - weapon.SwingLeft = !weapon.SwingLeft; - //CrystallPun melee improvment end - weapon.Attacking = true; return true; } diff --git a/Resources/Prototypes/_CP14/Entities/Effects/weapon_arc.yml b/Resources/Prototypes/_CP14/Entities/Effects/weapon_arc.yml new file mode 100644 index 0000000000..d9103eaf62 --- /dev/null +++ b/Resources/Prototypes/_CP14/Entities/Effects/weapon_arc.yml @@ -0,0 +1,7 @@ +- type: entity + id: CPWeaponArcSlashLight + parent: WeaponArcStatic + noSpawn: true + components: + - type: WeaponArcVisuals + animation: CPSlashLight \ No newline at end of file diff --git a/Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/base.yml b/Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/base.yml index 01e9806cef..a9b28c2539 100644 --- a/Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/base.yml +++ b/Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/base.yml @@ -1,57 +1,62 @@ -# Simple melee weapons - -# Battle Staff -# Mace -# Stick -# Dagger -# Spear -# Light Hammer -# Throwing spear -# Hand axe -# Sickle - -# Military melee weapons - -# Halberd -# Battle pick -# Warhammer -# Battle axe -# Glaive +- type: entity + id: CPBaseWeaponChemical + abstract: true + components: + - type: SolutionContainerManager + solutions: + melee: + maxVol: 4 + - type: MeleeChemicalInjector + solution: melee + - type: RefillableSolution + solution: melee + - type: InjectableSolution + solution: melee + - type: SolutionInjectOnEmbed + transferAmount: 2 + solution: melee + - type: SolutionTransfer + maxTransferAmount: 2 - type: entity - name: двуручный меч + id: CPBaseWeaponThrowable abstract: true - parent: BaseItem - id: CPBaseTwoHandedSword - description: Мощное оружие, требующее огромной силы и умения для эффективного использования. - components: - - type: Sharp - - type: MeleeWeapon - attackRate: 0.75 + components: + - type: DamageOtherOnHit damage: types: - Slash: 10 - Structural: 5 - soundHit: - collection: MetalThud - - type: Wieldable - - type: IncreaseDamageOnWield + Piercing: 10 + - type: DamageOnLand damage: types: - Slash: 30 - Structural: 5 - - type: Item - size: Ginormous + Piercing: 10 + - type: Fixtures + fixtures: + fix1: + shape: !type:PolygonShape + vertices: + - -0.40,-0.30 + - -0.30,-0.40 + - 0.40,0.30 + - 0.30,0.40 + density: 10 + mask: + - ItemMask + restitution: 0.3 + friction: 0.2 + +- type: entity + id: CPBaseWeaponLight + abstract: true + components: + - type: MeleeWeapon + resetOnHandSelected: false + +- type: entity + id: CPBaseWeaponShort + abstract: true + components: + - type: MeleeWeapon + range: 1.0 # 1.5 standart + cPAnimationOffset: -0.75 -# Long spear -# Long sword -# Whip -# Short sword -# Hammer -# Morgenstern -# Pika -# Rapier -# Axe -# Scimitar -# Trident -# Chain \ No newline at end of file diff --git a/Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/dagger.yml b/Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/dagger.yml new file mode 100644 index 0000000000..6b5060f1bf --- /dev/null +++ b/Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/dagger.yml @@ -0,0 +1,34 @@ +- type: entity + name: кинжал + parent: + - BaseItem + - CPBaseWeaponChemical + - CPBaseWeaponThrowable + - CPBaseWeaponLight + - CPBaseWeaponShort + id: CPBaseDagger + description: Небольшое острое лезвие, сгодится и для ближнего боя, и как метательное оружие. + components: + - type: Item + storedRotation: -45 + - type: Sprite + sprite: CrystallPunk/Objects/Weapons/Melee/Dagger/dagger.rsi + layers: + - state: icon + - type: Sharp + - type: MeleeWeapon + attackRate: 1.8 + wideAnimationRotation: 225 + wideAnimation: CPWeaponArcSlashLight + damage: + types: + Slash: 5 + Piercing: 5 + soundHit: + collection: MetalThud + cPAnimationLength: 0.15 + - type: EmbeddableProjectile + offset: 0.15,0.15 + removalTime: 1 + - type: ThrowingAngle + angle: 225 \ No newline at end of file diff --git a/Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/handheldAxe.yml b/Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/handheldAxe.yml new file mode 100644 index 0000000000..a7d58e676f --- /dev/null +++ b/Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/handheldAxe.yml @@ -0,0 +1,42 @@ +- type: entity + name: ручной топор + parent: + - BaseItem + - CPBaseWeaponChemical + - CPBaseWeaponThrowable + - CPBaseWeaponLight + id: CPBaseHandheldAxe + description: Небольшой, надежный топорик. + components: + - type: Item + size: Normal + - type: Sprite + sprite: CrystallPunk/Objects/Weapons/Melee/HandheldAxe/handheldAxe.rsi + layers: + - state: icon + - type: Sharp + - type: MeleeWeapon + attackRate: 1.4 + range: 1.2 + wideAnimationRotation: 225 + wideAnimation: CPWeaponArcSlashLight + damage: + types: + Slash: 10 + Piercing: 5 + soundHit: + collection: MetalThud + cPAnimationLength: 0.25 + - type: EmbeddableProjectile + offset: 0.15,0.15 + removalTime: 1.5 + - type: DamageOtherOnHit + damage: + types: + Slash: 5 + Piercing: 5 + - type: DamageOnLand + damage: + types: + Slash: 5 + Piercing: 5 \ No newline at end of file diff --git a/Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/lightHammer.yml b/Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/lightHammer.yml new file mode 100644 index 0000000000..1d696d1eec --- /dev/null +++ b/Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/lightHammer.yml @@ -0,0 +1,35 @@ +- type: entity + name: легкий молот + parent: + - BaseItem + - CPBaseWeaponChemical + - CPBaseWeaponThrowable + - CPBaseWeaponLight + - CPBaseWeaponShort + id: CPBaseLightHammer + description: Небольшое молоток. Хорош как для плотнических работ, так и для проламывания черепов. + components: + - type: Item + storedRotation: -45 + - type: Sprite + sprite: CrystallPunk/Objects/Weapons/Melee/LightHammer/lightHammer.rsi + layers: + - state: icon + - type: MeleeWeapon + attackRate: 1.5 + wideAnimationRotation: 225 + wideAnimation: CPWeaponArcSlashLight + cPAnimationLength: 0.18 + damage: + types: + Blunt: 10 + soundHit: + collection: MetalThud + - type: DamageOtherOnHit + damage: + types: + Blunt: 10 + - type: DamageOnLand + damage: + types: + Blunt: 10 \ No newline at end of file diff --git a/Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/sickle.yml b/Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/sickle.yml new file mode 100644 index 0000000000..ae0bc6f099 --- /dev/null +++ b/Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/sickle.yml @@ -0,0 +1,27 @@ +- type: entity + name: серп + parent: + - BaseItem + - CPBaseWeaponChemical + - CPBaseWeaponLight + - CPBaseWeaponShort + id: CPBaseSickle + description: Изначально разработанное как оружие против травы, серп внезапно показал себя хорош и в более кровавой жатве. + components: + - type: Item + storedRotation: -45 + - type: Sprite + sprite: CrystallPunk/Objects/Weapons/Melee/Sickle/sickle.rsi + layers: + - state: icon + - type: MeleeWeapon + attackRate: 1.5 + wideAnimationRotation: 225 + wideAnimation: CPWeaponArcSlashLight + cPAnimationLength: 0.18 + damage: + types: + Slash: 8 + Piercing: 4 + soundHit: + collection: MetalThud \ No newline at end of file diff --git a/Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/twoHandedSword.yml b/Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/twoHandedSword.yml index 4d50550d63..7525b3cdac 100644 --- a/Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/twoHandedSword.yml +++ b/Resources/Prototypes/_CP14/Entities/Objects/Weapons/Melee/twoHandedSword.yml @@ -1,17 +1,45 @@ - - type: entity - name: цвайхендер - parent: CPBaseTwoHandedSword - id: CPZweichender + name: двуручный меч #ToDo - сделать базовый двуручник + parent: + - BaseItem + - CPBaseWeaponChemical + id: CPBaseTwoHandedSword + description: Мощное оружие, требующее огромной силы и умения для эффективного использования. components: - - type: MeleeWeapon - wideAnimationRotation: 225 - type: Sprite - sprite: CrystallPunk/Objects/Weapons/Melee/zweichhender.rsi + sprite: CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword.rsi state: icon - type: Clothing - sprite: CrystallPunk/Objects/Weapons/Melee/zweichhender.rsi + sprite: CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword.rsi quickEquip: false slots: - back - #TODO двуручный хват требует перчаток чтобы не получать урона самому \ No newline at end of file + - type: Icon + sprite: CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword32.rsi + state: icon + - type: Sharp + - type: MeleeWeapon + attackRate: 0.5 + wideAnimationRotation: 205 + wideAnimation: CPWeaponArcSlashLight + damage: + types: + Slash: 5 + Blunt: 3 + Structural: 5 + soundHit: + collection: MetalThud + cPAnimationLength: 0.8 + - type: Wieldable + - type: IncreaseDamageOnWield + damage: + types: + Slash: 20 + Blunt: 10 + Structural: 5 + - type: Item + size: Ginormous + - type: ClothingSpeedModifier + walkModifier: 0.9 + sprintModifier: 0.8 + - type: HeldSpeedModifier \ No newline at end of file diff --git a/Resources/Textures/CrystallPunk/Mobs/Species/Human/parts.rsi/l_foot.png b/Resources/Textures/CrystallPunk/Mobs/Species/Human/parts.rsi/l_foot.png index de5511c6a465d23e9783a8616b28a9180e459a41..e1281e49318dfcdbcdebb8b694e6505da69f1288 100644 GIT binary patch delta 360 zcmbQjJb`(FVZE29i(^Q|oVT|Oy_pInj(?25==~wcrsZ3f!Ai}*kGwlVoY(33tvh(J zfaSZ}tenE>3)lojVnPaR__!{{HQe5>c~bGhpZ1s<`^WV^Y|H;Y-}%y#lK}<}SlQSc zOg1nAqPKq6E9w%;{`$1;`@^&u}_O5pBC3gdK&S6FRwP+v_E9ss$+#hT2u9& zE{WZ1xBrA&@84Wzx5FPlJyq45b8cJjpNn7L_MSVZKW%HyhD%FNg_fqiiT3Xg+x>s< zxsxw9szkoDgW1bqcJ*D!S(Too?GjUU-ms}={`>7}{MndUzAJ5G#0*b~nNfQ;e*6;olcnt7XXaoH@u`J(pWe)0roT;G!Bg`3 z)xcK)4@*EsT`bsB=$2FdW^2{qGtcF<)9b&+AKL$o^V!1``^pNl2#`ZOUHx3vIVCg! E0PK6NVgLXD delta 364 zcmbQhJcW6JVZEQHi(^Q|oVT|&dL0fBVSBLuk+R7)6OlVt7mCf*$$iPaV@312SgTUe zCTD?9Ec+URV|TGTwhMSDct@X*VDieWX~;S5$ZI7cRlJbpU%t)Z`bpLP%Y+*`kbzm^ zjA<=_I*B6PZ+9fkn3nT<=BFE>fQR9_w)IPve}Kabo@)^^qX z=ZSJY{`xa_$d?#NH%(`6$k?eRwe#B3ucCeaew*X8MCLWTyqwJ1VDo2HX4KY< zH@EEC-PsuyJo(m%WVeR??LyU_N0)Tn7+H5aGI-p(FYrTdSF_xyG7hh8hbNyDNj-4g zZ$sGnl^sibC6=jfd+ar9nULE?9{0z0E-!x~e1q-qmL=9N7Os39`PTk&_$_9JhGpxL z_wQ@Z*y;43dd7LNoyK0fljZx4O;VAs&$|C#AV6;Zw&GObw+^#UGXR07tDnm{r-UW| D`01-* diff --git a/Resources/Textures/CrystallPunk/Mobs/Species/Human/parts.rsi/r_foot.png b/Resources/Textures/CrystallPunk/Mobs/Species/Human/parts.rsi/r_foot.png index 947a8d91f8f4c0e0715a590151b4fe4ff9454bdc..a3b7199ca62a8b35225239a06c910f1a7ad09b55 100644 GIT binary patch delta 316 zcmaFM^pgmwC=cM~KOk@wEc64cHejdJba^c#ArwrDm^Y`&ht@k_j>bv}uWx=KI*InR7UVM!&G!4YJ15 L)z4*}Q$iB}==Yio delta 316 zcmaFM^pDjuM+gBKUpU%DBx_~PD6CF>66)~|i>`|Bd{ z$Jfn0gVx`jv~~091N`-Z+vWC_dHZ`?0Zk?z(T=w!b=YWyK}tA8+pWKIaunpSCqJRn6q3Y{|FWp9(U&=YuTq MboFyt=akR{01&m4;Q#;t diff --git a/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/Dagger/dagger.rsi/icon.png b/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/Dagger/dagger.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..c53ab373dfadfbebf857c2afcf3174b361db124b GIT binary patch literal 342 zcmV-c0jd6pP)Px$5J^NqR9J=Wlrc-gKorOSwotI4i6CN!P;lzlrDVvIFVNlDFO$^|Q0RAvQ>SJz zW@`<%xKvyu$`NpA#X@{ey5=r-2Sx5Tzk9zwckdlwu~;ns8O}L1)pShC8DougCnm&Y z`3lY}L{Ze(zpGoGWe=$9Zy`CL@dke7t~(HxYYV_wL7Z0rASKrlKt&EHZUJKjZMQG2 z<7jTwy(0!sT2PB6u zyc$z**2krPilNg306e~Z;C8ic9Ypxx&2&odp9fU?FJ#Y8+WrrrMyBL|zzi&|BXaB7 oh+HVZ=-k6(>=}_;ES96-2Mqvvx5om?aR2}S07*qoM6N<$f>Py?TL1t6 literal 0 HcmV?d00001 diff --git a/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/Dagger/dagger.rsi/inhand-left.png b/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/Dagger/dagger.rsi/inhand-left.png new file mode 100644 index 0000000000000000000000000000000000000000..526f55eabbcda8f228dda0b815d11a9a48ee640d GIT binary patch literal 374 zcmV-+0g3*JP)Px$FiAu~RCt{2+A&VUPz-=!!x=JEEJ!^=P(-EgLe)#roliiXCAQxk1Y7_`ilVd-DpS=#zT;lH+>Y{hrvU%}00000007`*3ZA&=w3zjTgwP+jfrfJp9UP4Sl=ee&e`X0v+%JXVd-;+sF zD{d$Uvjz%3X3{P!taW5nyCN)vq6WLk-53zwd&mHzK{E$R83 zb7|*|q=o3t8k?CL17S}w$*ekpJJ=JQYH1ZN9>?cR2Gy3dbj@ri49RDvx95)H>@ z_WhnJno-=nxU{hDv%>19yC&_;j{R43?q$+PHK6$uvrd&t=Ss9LoF}_o#UkV6)yKgv z9seFXxc9HGn5^8}ldpfb$Lv3&#i_Hs=I?c&AAX5VnZHYa+dRXKlURh)x6S_}{ZG}z pP;hCj*}kRAuJ2y)T^$&-d;AOgx`{ctRMgY literal 0 HcmV?d00001 diff --git a/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/Dagger/dagger.rsi/meta.json b/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/Dagger/dagger.rsi/meta.json new file mode 100644 index 0000000000..b62fe4c329 --- /dev/null +++ b/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/Dagger/dagger.rsi/meta.json @@ -0,0 +1,22 @@ +{ + "version": 1, + "license": "CC-BY-NC-SA-3.0", + "copyright": "Created by TheShuEd (Discord) for CrystallPunk", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/HandheldAxe/handheldAxe.rsi/icon.png b/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/HandheldAxe/handheldAxe.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..8cbe8383876a3bc02a3edd3cf717aa6e6d3cd2a8 GIT binary patch literal 324 zcmV-K0lWT*P)Px#{z*hZR9J=W(y?m8Fc1dd-(3P-0_`4%7Y`LJ0Zp3v0C|86n*0QXJWv-sh$ao) z0$#GXU^JDZv>sC0T@0Z1+&{J9;)eCmJ1<-0DxZ; W#C1F)YxxlX0000Px$=Sf6CRCt{2+C59dKpY0}rz(Ot3KF{r1-If9C}wi#;F91dZuT1#LGTmwTj=V1 z`2tRHaVpt_f=dl@Lpz92D1V2VT1wwEcd^yyx0J&5dcC(mpFcoEL_|bHL`1ZNYOX8w zYDH}Hy=J3R8@iqTZx3N{^=d^LzW3u5YxthE6(6@@qtkAuk8Y=rdbJ|ETkE(EqrxJe zyFELWY70JwR4v^uWb)m&F< zt}9w=(OOU3+De6@wU#(;N*p&usc?0Vz$m3cDV6qz@1y8pV!I&l3rdCJc}GZ+w(VgJ z<@OYCoFby=0YTu;+}=sjMyvHax1A~0Cm;y?LaX(>(5j|w^OV~T_|B^4wfecr>rx{k zA|fIpA|fIpn#K6PuW2YcFA7^0#s`?@fxsXW1O}6_bAE|ZX&>eC;ZjYC@n~!`*i0wm z2|b)*kPiJzN`(@~&8fj?R$1x^tcIhb!KmXDjfb8M-;>w(ex`Z?>*+A?_2W&Q|M5bK zEcFD|FQn03kaYsmBeZgb6sB^)w17gX&{zS*YRurLIBv@LU6QqyU}ehWfWZ+;k~SQt vXzY=i%Oz-1T0oJ${>fT`d01;eL}bVZcEH+CAL7G;00000NkvXXu0mjfs+k}@P)Px$_DMuRRCt{2+A(X}Koke?zvB=H9g@M6tCxTwTgYTEc*@`*i!^slzJZrQKY^jp zuaIn^v$SL^6qF^CxGhEC#TDfOHY5ZL=4D7vD6vISTXHP(|E+gE-+R*C8NUOFh=_=Y zh=_G+9gQ)fbtqbg;(2~)*L|Aj`J#0w#+aEg zC8vPvI+Y-}f>QP6&ahyv>r|qsk2oI8Y@a#?<9L85>ce%NwO9gHR!q+lV6(Mu{_A0` z%i1R*A|fIpA|fIpnxzzfecN&!0DSd>T<4rw9DOfZhZ047++KW#4f@ybyTZP2xLyt7-y$L(sa>r(4bl&UASyrRo=3k_@&vHxic zvo0UZE1iU*6R^-8VAtkpvne+iCwC0e7ZB!Esv@oD`I4@~=QU;?4ZLn2y} z6C_v{Cy4YkP2`h!nR#=zdHz3R0|SGaUtc;MJv}=o=J8d0es=c1|9m?`o2oAz4^K{3 z=P@)i{POX~y`2C5zrVZtyZ*s}#{b^abbj{x^7_V1N=f?k|LXU6o`bubc#01F;W-y< z{%A}4D!zuuKksh)vjIU{^7nipllfYF3dfUHSu_ZBYZft>>ZqM&ys~A63j2jaNsDA0 zyt_YIHOPr2mmc`T(f(gNzb?h%>qF_Yx^0YNDSdMc?3tUbm=CvzK7SeI+1nIoz~yGf az`#@1yi-=?%X^^b7(8A5T-G@yGywoYm~lb? literal 0 HcmV?d00001 diff --git a/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/HandheldSpear/handheldSpear.rsi/inhand-left.png b/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/HandheldSpear/handheldSpear.rsi/inhand-left.png new file mode 100644 index 0000000000000000000000000000000000000000..94354796abb3f9bc431d36f8dd77821bdf785377 GIT binary patch literal 565 zcmV-50?Pe~P)Px$?@2^KRCt{2n!jtpP!Pw@QYds0baD}#EQDqf1gETpfJ2w8Ejanl2rfd0to;Kz zDs~EVtWBX#LYG28K??TS<#i~6LrW8L_g+r#Gl%2e-S_>--2n)KAP9mWFd_^*J?geK zhOJ`^Bc^$rE&=Mcy|Bb}qoG^1I!g8d0FJN>nd1HP%eD*lz|KAZGX+TYk+Tm#pa2Rd z0qC;NVhi|=s~4*^M6+oD+ctUtD4b*m)i$7jYzz2~%OVIQ0VtiGpxB{0`L`hnz}@qt z0PwSbEOt!X`(#^Sv07(ZKp1#rC;v8N0oXXcs|u>+B6OM+T&I44^c}FP3Y1d%>Fffo zZtwYDsjXUFhk=($1#vtvc7u?=1UtM#<~K zjQtD^#}On|!QPTr6$pYL2!bF8`$W>W&Q!a`5 zXrvIDYsK~Y10Bbc#C?HX@Ew=Djh>lJAh7M4m?6kDEV54pM)p~Z$^FGaPmYFxha!Ep z3NST6l1r3Qy4N2Z=D`Pm+hk?81@>}+Bn{GH7jXFoIZx${YO$L$00000NkvXXu0mjf D-dFY- literal 0 HcmV?d00001 diff --git a/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/HandheldSpear/handheldSpear.rsi/inhand-right.png b/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/HandheldSpear/handheldSpear.rsi/inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..a8b0fecf1fafa261367d1851420afe78105f60f2 GIT binary patch literal 577 zcmV-H0>1r;P)Px$`$)3?# z_ZMjvBf@;SM(@E|bQxk==6A)T#_o7P>i!}wxBmf~u0aFU76JY5E^Hh_i zxG7L-2zawVTWxlzS*=rd7Ig!7vp{1jO98UPpT)@p#EFxPsD?oC`igfQsiU0{A{!vQ z!OO=)%JEM#BSbd9V!KDH%`UZqvJ}n;r@j=AHbB_>GC%!0jWVi~3X#_wZ2*~jKlJeQ zs!eb15XLy(gWPp&qSDmo`;(*p<=+HUN(Izul=)SZvEkUGPXWf5^!fv3dOsAE0=5ek z@oNZRjLC59iK<1sbL)Ko000005GCpUd)}Q~6ovhFlx+W96xXrIsM|`mD*Tg7JFm@Z zojksMq4_e!fs`-W+A9h*E)SLk#3&E@{gCq%M%FTfa+ zN~wVEZ;QyA1zK*l=`7vg62}n6nE3uA-}@81-VU?=4AscGv6|Xh;aI0IR3&Q)z&SerWG?9I8e3m3 P00000NkvXXu0mjfmh}T& literal 0 HcmV?d00001 diff --git a/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/HandheldSpear/handheldSpear.rsi/meta.json b/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/HandheldSpear/handheldSpear.rsi/meta.json new file mode 100644 index 0000000000..b62fe4c329 --- /dev/null +++ b/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/HandheldSpear/handheldSpear.rsi/meta.json @@ -0,0 +1,22 @@ +{ + "version": 1, + "license": "CC-BY-NC-SA-3.0", + "copyright": "Created by TheShuEd (Discord) for CrystallPunk", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/LightHammer/lightHammer.rsi/icon.png b/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/LightHammer/lightHammer.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..fb47e9ba92ccdd329d658325e67cee36c575e838 GIT binary patch literal 313 zcmV-90mlA`P)Px#^GQTOR9J=Wkg;mQP!xv$6vbWiQHs!^q|#m70+P+mmnn1+6eIW=79j;8CIwN! z4#C0D>*A*1fey#%f`dqsOC8GjwtKnfejf)A1VIoCAR^vuV%BHRvH7FZ;9E0)7D7b4 zS}oXf?E43}Zkv@#n21=ZBvZhHsoZmHF0SWjG+XHQhA5Y-P%7cK_in0?f@#2Fe*yr6 zfp3L@kJpzc9#5wDnnkJRa|gI?o9n+ZKI0<>QDo_REgy~g)~$I>sz=x42O|7zw+I72 z*B_c(8>sA-_&$`3<(UI6*B(aZ@=QF|o>@oSReTwsBLqPZgnz{udhc=RQH^hL00000 LNkvXXu0mjfbh?MH literal 0 HcmV?d00001 diff --git a/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/LightHammer/lightHammer.rsi/inhand-left.png b/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/LightHammer/lightHammer.rsi/inhand-left.png new file mode 100644 index 0000000000000000000000000000000000000000..6ae6bd6ed439bb47c64adce8a24e88964e61a7ac GIT binary patch literal 615 zcmV-t0+{`YP)Px%AxT6*RCt{2+COL$Q5*;G@0nI&D|8UV$suIzWTg;j8&upv+o2G!2Ua2|g5c=p zAY=^$A)uH-mrjDX2}(-9#ZGO;kRfTFlE5v-^86Ei4&`dh^;;G4Juq``x|E z1-=g;A|fIpA|fIRAlpvK!qT#ssC~{vQ4{Lb>S-_GNkFsQ7pIc<9FM{ z(mbr=r}XdM)RX|gO!Oi?jz+Pz_R6YM$`Xl0J>RRf7RPB~e(?^*n>#2}Dn{4ltLxLV zqEt<~x4J8zj7zDsb?Ep|&{|8Wv?cju+|%TTNAr?T#zku_nQYG2i{Q&!z-{XD^T)V) zX~Hvp^Tk_hWxZfIP7}c1Z-F1{@`Y`uB$LgFQnh278mh*-4Rv!wL_|bHL_|bHL}yky z5j!ya0K6e+5DYvVebX4hWV?lQA|_YH&+lh~z~2xwNQ?!LZZNtX8bfj8JpiCP6+RQR z)^b!X*lVqWKF=rPl1{|>s%_+aK&RZxRXn(V_t0Fh7oCrgdzRqq_n#=1Ti6bb^;Og8 z1#sgq$7y0^z3|`LKN5*r?k<>_yN%KIE&$;5=4NmoE!$4@bX?{ro#zOG_(n1AG|v$P zic&SnWOD=AS)oBJ$Zw6tw`X7KYXAQQ5fKsf0571Ft?B>(002ovPDHLkV1fhJ BCJF!m literal 0 HcmV?d00001 diff --git a/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/LightHammer/lightHammer.rsi/inhand-right.png b/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/LightHammer/lightHammer.rsi/inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..da084c186dea8ced429d4000a08b41b6ccabd6be GIT binary patch literal 588 zcmV-S0<-;zP)Px%21!IgRCt{2+QCcPP#g#FZ?uErMR0f*XLe(&}7 z$l)7+h=_=Yh=_3xkDts)yWSzf#J( zPWf-9(`n7UF66Ru{Hux6FQ0KZI228_J@EasiM_@dEJK%#8)GPymNm!u>izC5cz@rP zOlC|o&AdD~w^6q10Dza3iq<-9vgnzNG)8Y>?cHmPjEutnM_-_n633~@-O2ljZTWvu zN=dc4BbK4JuFo=bsaAKye?I!j!eUXBQeqjptUsUj*66(jZr>cn*8H3|_!?^L8Pm)Q z0GynB!|cjO?cs~H;A8DLHCb3Jiu+JMX=_dWxNssOA|fIpA|fIpimRYt#xnGlkh2?7 z{~r=9e{kvMlt+y-lc z`aPx$8c9S!R9J=Wl(A~VFc60SmOvqc0*Plsri@)OdCFsC@YMInly~Ub#Sd~*pTJ8O z6^y2Gla@drs6&u3Nd}#)IMDi=gpuz5@0WbQ$jE=^sc!*hc9-9>EDNq1ZNLj#Ytb|f z03gqED5XS3q6{#z^TNg$lx5l0AtKi`B1t1yTx;#Bs=A843lX_n*V7xVwIiaS!Xf*f zCE~s#V~pfjI(+;oYl;%6>pG>j+<=e%E{`je)UR8V0B}yhS_@`QVkBxv_!&?X1(Z^~ zhRr1A(EDzGUhH?Vx-H@>0D$@QrCoQ&@F2Xc*REKu9`^`;4#!m5a#D8>2ov~o-2;IM yd~7#PoldE>!wuw%8D3X2e13lo`^$}t48bofzJvcsSNXO80000Px$$Vo&&RCt{2+P_NzVHgMS$B4KlA)!$S4hbZuo19K?35150o1KCP>c40dT!aQ2 zS{fRH#-hzX;Ccg<19w3eA>Uk{hB!Gi%pdoj_v-gE3O>B=^FHtU!aXk$000000002Q zRVka}vSo4Dad*NFs6r{5h)}K}iMlzrLwE z98uk|7fyndl7(Op;nqL)v1scjWm0{q5E7_IN%BZ_n?N#`dA zOUKggFq(QqLE$7-3;xP)ZJSNS8-k6v1y-^33DC~uHrUGZVB;Q90KnS(0LK;uzceCI Qa{vGU07*qoM6N<$f)DlW9smFU literal 0 HcmV?d00001 diff --git a/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/Sickle/sickle.rsi/inhand-right.png b/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/Sickle/sickle.rsi/inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..0e8509ed9ab840ec3082b1251ee7850d20c90f47 GIT binary patch literal 545 zcmV++0^a?JP)Px$+et)0RCt{2+PzA{P!tF7QxU0?P{C0UiU|FfGIeU9i%@XrUh|P5)XlI86UPxyujF~BKcKIl zU%%p!>hbh|8-~seL+6aKv47&K{RhSvZ@1rwi0JeBipm+Hk}%vtj6b;`|rv(;y1#f!GG8&ZVYm=HBUXYybcN00000001x~zD+X5 zCV$75WZ}9#*4CWpP!$U~x;#9hawZ|YP4}-i7$j@*>2%giw5DqOBELf)-S5C+^F=B^5G|Dwk_{Q=c0d8tLvZf<2hZYr)@W93YOwl_D(dH`YG6Gt?Emc9UUu^&JP+wdonun3Ab jH}T#cl~ZK^upIsXPx&14%?dRCt{2+&^pEKo|z_M{z@O2OFHsDi#43VuIJYi@;MM#a#j!L`r8v!QY_J zxl18)77ra8IvX_Q6PQ9e$Y2EBG6Zj);GRw-DXS3fsdldXy2ZgY)oFsc@!^aTL?dU=L@3+)>XfaiG*unC0cd5%o=_g_Qffsk$YF0Y*^ibQ2LLmbBldasT4 z!}<&?f+&i_hc|E0*xy64S|eF3jqOoZ?}UrO^E@YgDr-D@YOHMrASGF?(b(U^m+#+T zYBS~%loCaen9XJYfOfl$!^1=Ee{nQhklw12T|Hl1fSfVER`ilYHNIbPT+tECY0Q z(zZB`@2*ev!9rO8eBUqK`Y#1R;KXqZU=s|LlmwuRoA0)C5Xhp@XjIz$j);heh=_=Y zh=_=Yh=_=Y=&!tmJ@{^DPBzP~?K~A_*O&o0s3<&DQPh{6(`~i{Diw@>{>b%OCNtoX zRFz$024plI^aWPckI8DCd-em&fXpgqL%e(Syf8%vcTyOJLY6wqtMu>n>mdJRiaA|j%!crth#Wp~0R3fz^E(nk@@g6xzP>zL2yD!yvxC<#EB3w7wG zbO~Z0vdbL+S-xfVr~W==lRE(EGA=<7@Tp)%N|qoFzC|qGLPSJFL_|bH^xyam68Px$i%CR5RA_25hLg*L@DMAK=boEa60fbIMCSRa0;hSW+b0^nA zCLcg>5F|ntw}KrM5j+khA(OUn&W(ZdP04a{{{KJsBmopfQ4~cv9OoQy)ERITITWtu zfer*X=O~IIwt8L#w43J=;Z;BsMVL;f003+45l2mL0*a!bx_M4IImDboSYrH(w);U4 zU^1DoJ-3qtI60PnKv|Z}&JThB+wGRMzV`%Xvl;8yiVCRRuc}JKeZX@9-0lN{0^07U zX)5AAAe=x|Rn4`8`+$&u_U4gv9}rByhx>rQo7lt&h2s&z;Q+U*6@VTJI6FPT=Ia{( zaQFBi`nke7LS;x1=LC!fcal-c7_#15Tu9ph}fY-}w z0Dv(@boNCsaYF0mg7VB#dzJQvtMd!Gna>H>B~p)8FEDY^H189(EfkJNcz*lfDz`T* z0!*AxI2_>q<;nY@Wf9Po`z+*{rFw<-mR@ZeMNt$*`A_@+fAxu`2ybek00000NkvXX Hu0mjfc_+!e literal 0 HcmV?d00001 diff --git a/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword.rsi/inhand-left.png b/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword.rsi/inhand-left.png new file mode 100644 index 0000000000000000000000000000000000000000..ca04c44c6a611651560a1492a5f2cefbaa3013bc GIT binary patch literal 1161 zcmV;41a|w0P)Px(LrFwIRCt{2oWE-nK@`Wor-Ep)E6Fv1W8oIz3ens(2Cp~{1S>HR5mE&#tkRqz ze}LGlX>3iCB48!44J;`R6yZ?LA|M-B7HrPIZ4rqgV<8haAtvT_=FLpy_x;a zd-G#&zJMm;I2O8on-bmqIH&7}J% zXObicf;cKt);*~e;b8fpXsh-~SQ3U| z$@VgoZy!}#$pirGFG=~84^>-91pw?_4N1B19okCB1(1Ar_6$F3K9*i87YNS0I{uM8ZBGGQQ z$+M9(V5iX#lQkc~xWDiF+b`dccYJ+*TIAy{&$h+K%^{Y0J<_(223wz>767o;P4>Q{ z?(k6@6y?;?tk%TcYd5Ue2LNXG0>*G15#A1S6-Ra`R)l^OEhIU1PD09Y>o! z0s#IDfbE@Kqq|{a0(7@FOWQlU#@ zrY5LE+r#o~Tgas;!!QiPFbu;m48t%C!!QiPFm7Pm#S2PC?Yq)9VlLa$6rqT(kWv9$ z_Xrw=qP{}P-wC_y5i|-#eT9??;Ic>1D5&ri((NDHp(YLk<-j%;SjfGA3XEjH`uwz@@P$xC-dyU*%#70G7E%GiFf6UlPmAQ+kTR?i zz6`(Ps(%S(#pQ?mrubD(!h2y?%iS0O_pVA1e&aSW-L z^LEaDZy86CD!ExsY}e;|Z_d2?U1Ik6we|b6vp;_0cJL8k zY1+llRnq%gGWD^e0LSq{jok`|3uSbbCU7c<+xI1}((~wi9MR2@!er6Md^d0Us!H9G z-LVV$5`-8h?M^Ey+T?PP-SlK(up471gW2+Vi78r(m|_`rMjtX@IsbXX?CV|6D+SsV z87{ao?qWE3H$R(IW#Z%IJxrI3u9U`Vf8OtM{70bmgv6}Z2Y(AV3Us7c9i4Z(_{=ex z;~VR)^H27%70KimNkG<=om$Hmyoi5SA6dt^E_0#hiIbK5PtP?+vF^3EJ9pQ$M{4PEj-P%- zg@ugw%gZ+&3(=UO3 zOIWOejc>*ud7`jEPjy>?=?=GSZ%d}GX>|;F=69|>kW%Fe;=V9*mSA}E>qBqJO zTHWd)6~wvWT1H3f%Pz0|*ESnPv*xdv6MM6EiZQ_B@9TP*AW)*C*pI?FNse z4P)c1mN`DGpW?*;WT`nmt)KF1{wJ$FB|c53{%cHS*ac)YUi$CxvfS|sP^H7m`YBNi zvOtv%Z&6qciOGF7?u{*ndR$f>e6r~I#Z_+XUhNy!a6E}jxWayBTEn-QSu)3E7&RRP z6(R)<{hcElYt02Dv;>@wFd67VfaT!^Yt8cKPD& zb60v!9Qw}mm51TS`$eIDt2oR9c;ppDFR%iYv}xVg`r%TUBKHLrkErswUw?gg`<+2+ zv2w&&O7w2APo|M);d@9HE^}-8^wM#e4wXe+R uY?yj;)uxSsaf;#!#mUNTi4v&jA5*i`qh%gXW21ou2!p4qpUXO@geCym#sLuk literal 0 HcmV?d00001 diff --git a/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword.rsi/meta.json b/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword.rsi/meta.json new file mode 100644 index 0000000000..b15d485d5d --- /dev/null +++ b/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword.rsi/meta.json @@ -0,0 +1,34 @@ +{ + "version": 1, + "license": "CC-BY-NC-SA-3.0", + "copyright": "Created by TheShuEd (Github) for CrystallPunk", + "size": { + "x": 48, + "y": 48 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + }, + { + "name": "wielded-inhand-left", + "directions": 4 + }, + { + "name": "wielded-inhand-right", + "directions": 4 + }, + { + "name": "equipped-BACKPACK", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword.rsi/wielded-inhand-left.png b/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword.rsi/wielded-inhand-left.png new file mode 100644 index 0000000000000000000000000000000000000000..7ff45246f30c75f22033246b2fe84452f2e16e39 GIT binary patch literal 1066 zcmV+_1l9YAP)Px&eZR@^^mvLr>+&8_A9zRCrzmxt||A^(~Wms!*R&PQr&g1ZGww~}oxd&=Ln}so^ zy$nTB1ZypnQV7FPq9_7@YX@WCaKbPY{{)Uw3II@E`L^dNKiFKAm7SNjasaO54~EYz z&E;~rBagl_z+c<^;9cmz^&<oWk;>*WDjd!f6x;<~Pjub(_=7mOU8Hu3A5Hxs$e#FwCZ z8_#gDw+&#r;RC(PPZ);MIKM=r{t@2?0WJU>oi@=BK`ECP*8l?mzrTH($h9Xr09tFQ z)oQql>4$$6zuRXEXumTSQYkb5G|n&EpLNUUk6$g!M#oVpmzVWIL8{fN9Bi)2EHqkx8I|!pFv9?qcV;K5>L0W4` zr_(q-J_f*^xp55@p4M7imngvS<1lc5TI-HKtQdYg1`5%Ie{ymHVD#@>sn?A`#`R@4 kU9E4Je)tTYi0Ib&7e)iLz)#rn(*OVf07*qoM6N<$g14siZ~y=R literal 0 HcmV?d00001 diff --git a/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword.rsi/wielded-inhand-right.png b/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword.rsi/wielded-inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..02d29ae95dcd6ac722277af1dfb8ddaec15d52d5 GIT binary patch literal 1101 zcmV-T1hV^yP)Px(2T4RhRCt{2+_7sLR~!fM?}eH|F()HwDI5=ULo5)e@>HTpC0mh62?RVCgNK5_ z5ZwR3(AAVu2$&4@qCrz=h@lWL92q<&#Mpy7T;LF7k%aXyg(A@F;6C*vE2(sScRGdd z2ZWJj?%w@=@Apnfem{VSh=_=Yh=_=Yh=_=Yh=_=Y(&lKRrsh3{|FjT;oKn41HhL|0 zOdjk*L@txWX%caKab}r3UgQLf&+2-qthOo@wN6sjrv20cg ztHTS*e(^c7OLvg9EUZ@r-rsu!$8jKpfa|(OXV5I#?Y05{DJAwFK1ANO@zbkU76ACZ zujVnfSWc*u@%`6dLgX@dfA0|h;N`&q0HE6+05D(9llZ=`Y}*EK6Zjwq002S=JYN3} z-9P`r>ATChO^VOrIHl*8aiDUDW!@B0b>^s&#+ z&mn{WfZ@-1R$^Ez2?*P6dKQ|s;qz)?RW(k22Y}&h1V(3SKA(>ioJOOe9LE_xmr?>q zU(my1O~9m^@9Dcs%XM7<|ISnZBTGYgt)3=mjYdNOfDV56SZNG;SZW3rP6lujL?Hx% zAV90t0sw4oZr&QN4!$<&Z_+H4gPoKN03S`nqDuXR=wys10r)f$v2Yi#=t~X}5fKp) z5fKp)5fKp)5fKp)5fKp)5fKs5rzO$tJx3cgwcYe0o%8VUaAa%J&d!d}vFn}|QO6fm z>>IVirsh=fdDuuU~J&0-sj^m)&xdL$0P$Oz@h&UWyoDD0X zu(OYFpNlvc?U;46QB(C&S=CEr)$I?U9{`ZGMq_+@ab_J~oLOlKzNYU1tyT-3=f&FC z$yf#Kt*t4M%OJaSg>HZF!CpY?RiSFNTIzxx7VZZ2>)u|hH)dlM@bjBD){D~s-xOCq z+K4HQ?aRiATn6`_JhvRjLEg5JU5c-@UaDte8f;Z6DsS8PqjMEYhp$AsCN8pWe}J}> zxSLzK)y0JpQZJR2=XuKWJY_lwT!Np|>E3g|?WR&uu>xkKE5TGF zKvuwvbR`5q0Nb|zcO|d_A{y^a8nqHw0TH>bYXw07DW#E0posL_({{V9qI_<|CCC6B zczth}<+Cm(z>x9TKW!420E6`R*2Q8Gz;sDq0t}n=p9h$Ln1mCN#CO_6L=pTA8hXPa T|2?O)00000NkvXXu0mjf@`3$I literal 0 HcmV?d00001 diff --git a/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword32.rsi/icon.png b/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword32.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..0204d4beefbb597cc08cbd576ac2a6dcb84437de GIT binary patch literal 432 zcmV;h0Z;ykP)Px$YDq*vR9J=Gmb*&CKp2IOi%T#?gpe`>5`+{6+19D%0feoDRKCEzgm02&>aA=S zQuzRag&+~q*e#es5y9U=CIkzeTN3befn?5i{>u>Hze)%}D(@}kG#>>(2tjciE5Gj) zU}ξS?Z_Vbf30NmW)SzYH^EohpCLf`A3_pk3Z-fF5! zPF2ZC0@QU)LI`4MuKe5eo0QA9+pGxyp3g4<0E{uK-W!RfIqf!Us!C47Rh�r)PAv zS`qMF5!sqa#L~PscPZs92z?KaFK@2>)c{zUQ@C8<_UXa-&?y0om0n3z$w{u@Y?^f1 ar`8uFHi@R{c%4!J0000Px%4oO5oRCt{2+CNAeQ5*;G-xZM%5dUZgd~-_Ml$_ul*c-rXbc zdqe;L0000005Gf^r^Z>d`y!1-l=8ZR%W9xg6BAi9OCxDCQYhG#QXUrywv}|Cje3)( zCMW6pw=dmu2R}Va|K8sDWJNyM$L-y{F(G65QKKCr0lx1WH|KIWtJn1~-}iZQW6L;K zF52B^N{jDlZf1t+A66rSxw^h4BBEC>$9r}2S5AK)8^?O0^zlgWLc9H|XJh@YN72EY zU;d%1n;UAMoJ8K&Z-yK7CMS6dg285L@9Q2DJq|RB_On`BQlWz<8uEbx0000000000 z0000C3n2uDi<$o&T^Vwm8Yd}}Nhw)M$+vg+k;#x!4tIhY^(L2#cB0^e!ifkbBbRQ3mGN_pJroYBS6Vd8qeRw|V&A~V>y&m*7DC+;V40(3!iX?e-gJ49a3z9Ax_ z>4mrCOwaS~?&l|$rgb8SqLZ<{_K{kx)?iBDVM=+dlo$KGrb!6FLI~qCkW#Yix<#m{x!^ph~CSAEd>E*`-JF1*9) i*?SiM%m4rYAkG6HdnKqYb5pqh0000Px$(n&-?RCt{2+P`bUKoke?*HVfUO4Y9Y6GU7coLo9}lTL1~Axmb#!L0~I{3|*M zAw!`{r3jrQ+)#>C3SDa~fgo94hmw#VT1=wx2j9=)kh^#HUM`1lM+5)>000000Q;_9 zZ*Y|M$8m!Tp+_1hE%|IVQu~uQ!G+MdP$(Wn8fitQWxItvKRb;)#(nqB*QZ=6y78`W zZfR;5zBaxBbUQsBPbTy_cqAgC;Yjxd%ja@5pU;_y+~1%~CgbZ9Y!`g)C4|nOA8*SZ z$8vRfK}1Af-#;`pjL>sm0mhRFO=mN=W35`@ho^yW!sGFKqzMGu|F?S9v8rTAVecFE z&VM-4lLsdv()!v?e*Z+#H^JD!cew}v000000000000016XIeI^s(QEwD#PcOP;#ba zvuW8ZgwAn})MZIw=R|6w$6iqdC*w`tNjgd5Ub3Wcxm0B5Y;q?AC$lK&bzY*VRV%Ej z>RMwa)@rslnzW-{Z?G&WEQB6fRa#%;)DCKE)rxPRRdsyU1IJRr_q@rq{NamhE1)+SF~fy>RgVJOKaz alKBPsHCqq%DE_nn0000e6mDB;h@Kac4z+sCvW2crdr9Oo+rWVBE4pLp@1!Axe= z1uHptRcFj{x~`_jq_|}d&$BbJYi@MD4R-nQU(H+HcJFr;zQeMDKD{~cogFV8|7&;cubgPVzh3hAE7z5eb!!t$cEw8M+^i4`J#)YQ|I0k1g%>Mg zD(-GFf3uTu{U^~EN25$-cxGnITG9Js+p}rC0Y`;HZ2}=40Fw=yR5H&6o!Y*;K&b6u zOrhtj;z`eB+7!im^&jtKTzz$!*IKL6-LcA&do4o0Shc>kF@I3D`sB82vf)ZC29q?k zs_q^tJ?<_$Eojp|$;VfJ?#thrvGn@u&Cl6njti=1o-33&D`hCd6B$2e>#H9tl5I|W z|GRV1(ka)}t*(~r6}-l&7;*otqe-rVCcplIeQiNfiY*V8ch%ZRPJ8<7*YP_`qF;#z zx>hOAtM<42o$fVliRJ3EflJ>Cu3BXN|GY2*LxL?o*At(MAKmtM0R6(38sVAd>&u`8 WWOG1$cqw=?h~??(=d#Wzp$Pz1#RKX9 diff --git a/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/zweichhender.rsi/wielded-inhand-right.png b/Resources/Textures/CrystallPunk/Objects/Weapons/Melee/zweichhender.rsi/wielded-inhand-right.png deleted file mode 100644 index 91c02785e5d3b3c28951762186b56ecb069d5d8f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 598 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-D%zzj?YihE&XX zd&}N~DNu&}L%yJ*W5_mFfh{6}kHq+Vbsq*yHo1FEOE0f6P=KXX;L){fH$*y|FHCB= zB63_=Nkw;&u4&VRY1d0Wy?e8%d|76VefQzL_1|}YujAOyE+7a7f$NQXN>^UqcmMSR zrx{VgrCs$UA*=s3Oh4Fa@bpj30{`q~@>SLUSFo2=WCT?AHDB4c)?Y(nMgR6ao7#$& zCS@mcJ7~?E)|w<3zB8D?;oq$-ywBvNo!5p&~Feiac(Ig%K`0qt=%9=;)q$ym?OU!PY}_uQAPeyZ^TB{*9}XF761~ zzhT$EKU;79dcZKj_GH=9pX^^IFL-`%wR0?Tx!%6+UUz8SFm zdTMCb)ozKrrZYGlZ17RN{5G=x zw)p?mXWmTvvrWiaSN$Q|+*_~aUNfm&!FlfV+O_k(>HnJvjFO47{bes2y(^CJ%>gC{ gzSIcMG+$o^Eg+i%h(X{|@MI9>>FVdQ&MBb@0NtnyH~;_u