C.H.I.M.P handcannon redesign (#19004)

* Added basic alternative fire mode system for the CHIMP

* Redesign of the CHIMP handcannon
- the CHIMP now has an internal rechargable battery (10 shots at 100% charge)
- it has three alternative fire modes, one for each particle type, that its user can easily switch between
- syndicate scientists have access to an experimental version which can also fire omega particles (4 TC)
- each particle type now has a distinct color and damage type: delta (red): heat, epsilon (green): radiation, zeta (yellow): shock, omega (purple): heat + radiation. This affects A.P.E.s as well
- CHIMP particles now do 10 damage (up from 5)
- all CHIMP particle cartridges have been removed from the game (including the syndicate omega particle ammo pack)

* Code revisions

* Code revisions
- Removed changes to particle damage and damage types
- The experimental CHIMP was removed from the syndicate uplink and replaced with an upgrade kit, which when used on a standard CHIMP will convert it to an experimental one

* Code revisions
- Added a 2 second DoAfter for applying the upgrade kit

* Fixed spelling mistake

* Update projectiles.yml

Removed commented code

* Update Content.Server/Weapons/Ranged/Systems/AlternativeFireModesSystem.cs

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>

* Code revisions
- Implemented changes requested by EmoGarbage
- Removed UpgradeKitComponent in favor of using a construction graph
- Renamed AlternativeFireModesComponent.cs to BatteryWeaponFireModesComponent.cs

Textures
- Reverted omega particle to being a green color
- Epsilon particles are now a cyan color

* Added comments

* Revisions
- Moved BatteryWeaponFireModesComponent from Shared to Server
- Restricted access to this component to BatteryWeaponFireModesSystem
- Changed the CHIMP upgrade kit to a chip
- Updated the localization files to reflect this change

* Delete interaction-upgrade-kit-component.ftl

This file is no longer needed

* Update battery_guns.yml

Added new description for the experimental CHIMP

* Update battery_guns.yml

Updated experimental CHIMP description again...

* Fixed issue with ItemComponent

---------

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
This commit is contained in:
chromiumboy
2023-08-19 17:54:52 -05:00
committed by GitHub
parent a950b327be
commit 26eb71f1eb
23 changed files with 316 additions and 165 deletions

View File

@@ -89,21 +89,6 @@
- id: MagazineMagnumSubMachineGun
amount: 3
- type: entity
name: box of omega particle cartridges
parent: BoxMagazine
id: BoxMagazineChimpOmega
description: A box full of omega particle cartridges for the CHIMP.
components:
- type: StorageFill
contents:
- id: CartridgeAnomalousParticleOmega
amount: 10
- type: Sprite
layers:
- state: box_science
- state: omegacart
- type: entity
name: box of Vector (practice) magazines
parent: BoxMagazine

View File

@@ -955,10 +955,10 @@
- Mime
- type: listing
id: UplinkChimpAmmo
name: uplink-chimp-ammo-name
description: uplink-chimp-ammo-desc
productEntity: BoxMagazineChimpOmega
id: UplinkChimpUpgradeKit
name: uplink-chimp-upgrade-kit-name
description: uplink-chimp-upgrade-kit-desc
productEntity: WeaponPistolCHIMPUpgradeKit
cost:
Telecrystal: 4
categories:

View File

@@ -0,0 +1,14 @@
- type: entity
name: C.H.I.M.P. handcannon upgrade chip
parent: BaseItem
id: WeaponPistolCHIMPUpgradeKit
description: An experimental upgrade kit for the C.H.I.M.P.
components:
- type: Sprite
sprite: Objects/Misc/module.rsi
state: abductor_mod
- type: Item
size: 10
- type: Tag
tags:
- WeaponPistolCHIMPUpgradeKit

View File

@@ -59,76 +59,3 @@
components:
- type: CartridgeAmmo
proto: BulletMagnumAP
- type: entity
id: BaseAnomalousCartridge
parent: BaseCartridgeMagnum
description: Packs twice the punch of a standard A.P.E. particle.
abstract: true
components:
- type: Sprite
sprite: Objects/Weapons/Guns/Ammunition/Casings/anomalous_casing.rsi
layers:
- state: base
map: ["enum.AmmoVisualLayers.Base"]
- type: Tag
tags:
- Cartridge
- CartridgeCHIMP
- type: entity
id: CartridgeAnomalousParticleDelta
parent: BaseAnomalousCartridge
name: cartridge (delta particle)
components:
- type: Sprite
layers:
- state: base
map: ["enum.AmmoVisualLayers.Base"]
- state: overlay
color: crimson
- type: CartridgeAmmo
proto: AnomalousParticleDeltaStrong
- type: entity
id: CartridgeAnomalousParticleEpsilon
parent: BaseAnomalousCartridge
name: cartridge (epsilon particle)
components:
- type: Sprite
layers:
- state: base
map: ["enum.AmmoVisualLayers.Base"]
- state: overlay
color: plum
- type: CartridgeAmmo
proto: AnomalousParticleEpsilonStrong
- type: entity
id: CartridgeAnomalousParticleZeta
parent: BaseAnomalousCartridge
name: cartridge (zeta particle)
components:
- type: Sprite
layers:
- state: base
map: ["enum.AmmoVisualLayers.Base"]
- state: overlay
color: goldenrod
- type: CartridgeAmmo
proto: AnomalousParticleZetaStrong
- type: entity
id: CartridgeAnomalousParticleOmega
parent: BaseAnomalousCartridge
name: cartridge (omega particle)
description: An experimental and often dangerous particle.
components:
- type: Sprite
layers:
- state: base
map: ["enum.AmmoVisualLayers.Base"]
- state: overlay
color: green
- type: CartridgeAmmo
proto: AnomalousParticleOmegaStrong

View File

@@ -430,6 +430,63 @@
- type: StaticPrice
price: 63
- type: entity
name: C.H.I.M.P. handcannon
parent: BaseWeaponBatterySmall
id: WeaponPistolCHIMP
description: Just because it's a little C.H.I.M.P. doesn't mean it can't punch like an A.P.E.
components:
- type: Sprite
sprite: Objects/Weapons/Guns/Revolvers/chimp.rsi
layers:
- state: base
map: ["enum.GunVisualLayers.Base"]
- state: mag-unshaded-1
visible: false
map: ["enum.GunVisualLayers.MagUnshaded"]
shader: unshaded
- type: Appearance
- type: MagazineVisuals
magState: mag
steps: 3
zeroVisible: false
- type: Clothing
sprite: Objects/Weapons/Guns/Revolvers/chimp.rsi
- type: Gun
fireRate: 1.5
soundGunshot:
path: /Audio/Weapons/Guns/Gunshots/taser2.ogg
- type: ProjectileBatteryAmmoProvider
proto: AnomalousParticleDeltaStrong
fireCost: 100
- type: BatteryWeaponFireModes
fireModes:
- proto: AnomalousParticleDeltaStrong
fireCost: 100
- proto: AnomalousParticleEpsilonStrong
fireCost: 100
- proto: AnomalousParticleZetaStrong
fireCost: 100
- type: Construction
graph: UpgradeWeaponPistolCHIMP
node: start
- type: entity
name: experimental C.H.I.M.P. handcannon
parent: WeaponPistolCHIMP
id: WeaponPistolCHIMPUpgraded
description: This C.H.I.M.P. seems to have a greater punch than is usual...
components:
- type: BatteryWeaponFireModes
fireModes:
- proto: AnomalousParticleDeltaStrong
fireCost: 100
- proto: AnomalousParticleEpsilonStrong
fireCost: 100
- proto: AnomalousParticleOmegaStrong
fireCost: 100
- proto: AnomalousParticleZetaStrong
fireCost: 100
- type: entity
name: Eye of a behonker

View File

@@ -378,7 +378,7 @@
- type: Sprite
sprite: Objects/Weapons/Guns/Projectiles/magic.rsi
layers:
- state: magicm
- state: magicm_red
shader: unshaded
- type: Ammo
muzzleFlash: null
@@ -419,6 +419,10 @@
name: epsilon particles
noSpawn: true
components:
- type: Sprite
layers:
- state: magicm_cyan
shader: unshaded
- type: AnomalousParticle
particleType: Epsilon
@@ -440,9 +444,13 @@
name: zeta particles
noSpawn: true
components:
- type: Sprite
layers:
- state: magicm_yellow
shader: unshaded
- type: AnomalousParticle
particleType: Zeta
- type: entity
parent: AnomalousParticleZeta
id: AnomalousParticleZetaStrong
@@ -458,6 +466,7 @@
- type: entity
parent: AnomalousParticleDelta
id: AnomalousParticleOmegaStrong
name: omega particles
noSpawn: true
components:
- type: Sprite

View File

@@ -152,43 +152,4 @@
- type: RevolverAmmoProvider
capacity: 5
chambers: [ True, True, True, True, True ]
ammoSlots: [ null, null, null, null, null ]
- type: entity
id: WeaponPistolCHIMP
parent: BaseWeaponRevolver
name: C.H.I.M.P. handcannon
description: Just because it's a little C.H.I.M.P. doesn't mean it can't punch like an A.P.E.
components:
- type: Sprite
sprite: Objects/Weapons/Guns/Revolvers/chimp.rsi
layers:
- state: base
map: ["enum.GunVisualLayers.Base"]
- state: mag-unshaded-1
visible: false
map: ["enum.GunVisualLayers.MagUnshaded"]
shader: unshaded
- type: Appearance
- type: MagazineVisuals
magState: mag
steps: 3
zeroVisible: false
- type: Clothing
sprite: Objects/Weapons/Guns/Revolvers/chimp.rsi
- type: RevolverAmmoProvider
whitelist:
tags:
- CartridgeCHIMP
proto: CartridgeAnomalousParticleDelta #when revolvers stop sucking cock, make this spawn empty
capacity: 10
chambers: [ True, True, True, True, True, True, True, True, True, True ]
ammoSlots: [ null, null, null, null, null, null, null, null, null, null ]
soundEject:
path: /Audio/Weapons/Guns/MagOut/revolver_magout.ogg
soundInsert:
path: /Audio/Weapons/Guns/MagIn/revolver_magin.ogg
- type: Gun
fireRate: 1.5
soundGunshot:
path: /Audio/Weapons/Guns/Gunshots/taser2.ogg
ammoSlots: [ null, null, null, null, null ]

View File

@@ -239,9 +239,6 @@
- PowerCellMedium
- PowerCellHigh
- WeaponPistolCHIMP
- CartridgeAnomalousParticleDelta
- CartridgeAnomalousParticleEpsilon
- CartridgeAnomalousParticleZeta
- SynthesizerInstrument
- RPED
- ClothingShoesBootsMag

View File

@@ -0,0 +1,13 @@
- type: constructionGraph
id: UpgradeWeaponPistolCHIMP
start: start
graph:
- node: start
edges:
- to: upgraded
steps:
- tag: WeaponPistolCHIMPUpgradeKit
doAfter: 2
- node: upgraded
entity: WeaponPistolCHIMPUpgraded

View File

@@ -207,27 +207,6 @@
Steel: 10
Glass: 5
- type: latheRecipe
id: CartridgeAnomalousParticleDelta
result: CartridgeAnomalousParticleDelta
completetime: 2
materials:
Plastic: 25
- type: latheRecipe
id: CartridgeAnomalousParticleEpsilon
result: CartridgeAnomalousParticleEpsilon
completetime: 2
materials:
Plastic: 25
- type: latheRecipe
id: CartridgeAnomalousParticleZeta
result: CartridgeAnomalousParticleZeta
completetime: 2
materials:
Plastic: 25
- type: latheRecipe
id: TargetHuman
result: TargetHuman

View File

@@ -108,9 +108,6 @@
cost: 10000
recipeUnlocks:
- WeaponPistolCHIMP
- CartridgeAnomalousParticleDelta
- CartridgeAnomalousParticleEpsilon
- CartridgeAnomalousParticleZeta
technologyPrerequisites:
- BasicAnomalousResearch

View File

@@ -998,6 +998,9 @@
- type: Tag
id: WallmountSubstationElectronics
- type: Tag
id: WeaponPistolCHIMPUpgradeKit
- type: Tag
id: Window