Merge pull request #107 from crystallpunk-14/ed-22-04-2024-weapon-update

Weapon update
This commit is contained in:
Ed
2024-04-22 23:55:52 +03:00
committed by GitHub
24 changed files with 171 additions and 15 deletions

View File

@@ -76,6 +76,9 @@ public sealed partial class ClothingComponent : Component
[DataField, ViewVariables(VVAccess.ReadWrite)]
public TimeSpan UnequipDelay = TimeSpan.Zero;
[DataField]
public bool BreakOnMove = true; //CrystallPunk weapon unequipping on move
}
[Serializable, NetSerializable]

View File

@@ -168,7 +168,7 @@ public abstract partial class InventorySystem
{
BlockDuplicate = true,
BreakOnHandChange = true,
BreakOnMove = true,
BreakOnMove = clothing.BreakOnMove, //CrystallPunk weapon unequipping on move
CancelDuplicate = true,
RequireCanInteract = true,
NeedHand = true
@@ -413,7 +413,7 @@ public abstract partial class InventorySystem
{
BlockDuplicate = true,
BreakOnHandChange = true,
BreakOnMove = true,
BreakOnMove = clothing.BreakOnMove, //CrystallPunk weapon unequipping on move
CancelDuplicate = true,
RequireCanInteract = true,
NeedHand = true

View File

@@ -19,6 +19,7 @@
unequipDelay: 0.25
sprite: _CP14/Objects/Weapons/Melee/Dagger/dagger.rsi
quickEquip: false
breakOnMove: false
slots:
- belt
- type: Sprite
@@ -32,7 +33,7 @@
damage:
types:
Slash: 5
Piercing: 5
Piercing: 3
soundHit:
collection: MetalThud
cPAnimationLength: 0.15

View File

@@ -23,8 +23,8 @@
wideAnimation: CP14WeaponArcSlash
damage:
types:
Slash: 10
Piercing: 5
Slash: 7
Piercing: 2
soundHit:
collection: MetalThud
cPAnimationLength: 0.25

View File

@@ -17,7 +17,7 @@
layers:
- state: icon
- type: MeleeWeapon
attackRate: 1.5
attackRate: 1.2
wideAnimationRotation: 225
wideAnimation: CP14WeaponArcSlash
cPAnimationLength: 0.18

View File

@@ -3,6 +3,7 @@
parent:
- BaseItem
- CP14BaseWeaponDestructible
- CP14BaseWeaponThrowable
name: mace
description: A heavy piece of metal on a long stick. What could be simpler than that?
components:
@@ -19,8 +20,16 @@
wideAnimation: CP14WeaponArcSlash
damage:
types:
Blunt: 25
Piercing: 5
Blunt: 18
Piercing: 4
soundHit:
collection: MetalThud
cPAnimationLength: 0.25
cPAnimationLength: 0.25
- type: DamageOtherOnHit
damage:
types:
Blunt: 10
- type: DamageOnLand
damage:
types:
Blunt: 10

View File

@@ -18,6 +18,7 @@
unequipDelay: 0.45
sprite: _CP14/Objects/Weapons/Melee/Sickle/sickle.rsi
quickEquip: false
breakOnMove: false
slots:
- belt
- type: Sprite
@@ -31,7 +32,7 @@
cPAnimationLength: 0.18
damage:
types:
Slash: 8
Piercing: 4
Slash: 5
Piercing: 3
soundHit:
collection: MetalThud

View File

@@ -17,12 +17,12 @@
layers:
- state: icon
- type: MeleeWeapon
attackRate: 1
attackRate: 0.8
wideAnimationRotation: -115
wideAnimation: CP14WeaponArcThrust
damage:
types:
Piercing: 24
Piercing: 19
soundHit:
collection: MetalThud
cPAnimationLength: 0.25

View File

@@ -16,13 +16,14 @@
unequipDelay: 1
sprite: _CP14/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword.rsi
quickEquip: false
breakOnMove: false
slots:
- back
- type: Icon
sprite: _CP14/Objects/Weapons/Melee/TwoHandedSword/twoHandedSword32.rsi
state: icon
- type: MeleeWeapon
attackRate: 0.5
attackRate: 0.7
wideAnimationRotation: 205
wideAnimation: CP14WeaponArcSlash
damage:

View File

@@ -0,0 +1,28 @@
- type: entity
parent: BaseArrow
id: CP14BaseCrossbolt
abstract: true
components:
- type: Tag
tags:
- CP14CrossbowBolt
- type: entity
id: CP14Crossbolt
parent: CP14BaseCrossbolt
name: crossbow bolt
description: Rod with a sharpened spike. No plumage, they're not bows.
components:
- type: Projectile
deleteOnCollide: false
onlyCollideWhenShot: true
damage:
types:
Piercing: 20
- type: Sprite
sprite: _CP14/Objects/Weapons/Ranged/Projectiles/crossbolt.rsi
layers:
- state: rod
- state: solution1
map: ["enum.SolutionContainerLayers.Fill"]
visible: false

View File

@@ -0,0 +1,54 @@
- type: entity
id: CP14BaseLightCrossbow
name: light crossbow
parent: BaseItem
description: a small, compact crossbow that is comfortable to hold with one hand. Not too strong on the back side.
components:
- type: Sprite
sprite: _CP14/Objects/Weapons/Ranged/light_crossbow.rsi
layers:
- state: unwielded
map: [ base ]
- type: Item
size: Small
- type: Clothing
equipDelay: 0.45
unequipDelay: 0.45
sprite: _CP14/Objects/Weapons/Ranged/light_crossbow.rsi
quickEquip: false
breakOnMove: false
slots:
- belt
- type: UseDelay
delay: 1
- type: Gun
fireRate: 1
minAngle: 15
maxAngle: 35
selectedMode: SemiAuto
availableModes:
- SemiAuto
soundGunshot:
collection: BulletMiss
soundEmpty: null
- type: ItemSlots
slots:
projectiles:
name: Projectiles
startingItem: null
insertSound: /Audio/Weapons/Guns/Misc/arrow_nock.ogg
whitelist:
tags:
- CP14CrossbowBolt
- type: ContainerContainer
containers:
projectiles: !type:ContainerSlot
- type: ContainerAmmoProvider
container: projectiles
- type: Appearance
- type: ItemMapper
mapLayers:
unwielded-arrow:
whitelist:
tags:
- CP14CrossbowBolt

View File

@@ -2,4 +2,7 @@
id: CP14Key
- type: Tag
id: CP14Coin
id: CP14Coin
- type: Tag
id: CP14CrossbowBolt

View File

@@ -0,0 +1,17 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
"copyright": "Created by TheShuEd (github) for CrystallPunk14",
"size": {
"x": 32,
"y": 32
},
"states": [
{
"name": "rod"
},
{
"name": "solution1"
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 142 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 132 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 454 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 460 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 581 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 583 B

View File

@@ -0,0 +1,39 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
"copyright": "Created by TheShuEd (github) for CrystallPunk14",
"size": {
"x": 32,
"y": 32
},
"states": [
{
"name": "unwielded"
},
{
"name": "unwielded-arrow"
},
{
"name": "wielded"
},
{
"name": "wielded-arrow"
},
{
"name": "equipped-BELT1",
"directions": 4
},
{
"name": "equipped-BELT2",
"directions": 4
},
{
"name": "inhand-left",
"directions": 4
},
{
"name": "inhand-right",
"directions": 4
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 147 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 345 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 145 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 357 B