Power Cell Refactor (#5943)

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
This commit is contained in:
Leon Friedrich
2022-01-05 17:20:25 +13:00
committed by GitHub
parent 4eddefdda1
commit 0aa4f9efbe
37 changed files with 673 additions and 987 deletions

View File

@@ -69,6 +69,6 @@
# so hardsuit helmet just have small battery inside
- type: HandheldLight
- type: PowerCellSlot
startingCellType: PowerCellHardsuitHelmet
canRemoveCell: false
showVerb: false
cellSlot:
startingItem: PowerCellHardsuitHelmet # self recharging
locked: true # no need to recharge manually

View File

@@ -22,7 +22,8 @@
actions:
- actionType: ToggleLight
- type: PowerCellSlot
startingCellType: PowerCellSmallHigh
cellSlot:
startingItem: PowerCellSmallHigh
- type: entity
parent: ClothingHeadHatHardhatBase

View File

@@ -5,6 +5,7 @@
abstract: true
components:
- type: HandheldLight
- type: PowerCellSlot
- type: ItemActions
actions:
- actionType: ToggleLight

View File

@@ -2,10 +2,11 @@
# Power cells
- type: entity
id: PowerCellBase
id: PowerCellSmallBase
abstract: true
parent: BaseItem
components:
- type: Battery
- type: PowerCell
- type: Sprite
netsync: false
@@ -23,18 +24,10 @@
- ReagentId: Licoxide
Quantity: 5
- type: entity
id: PowerCellSmallBase
abstract: true
parent: PowerCellBase
components:
- type: PowerCell
cellSize: Small
- type: entity
id: PowerCellMediumBase
abstract: true
parent: PowerCellBase
parent: PowerCellSmallBase
components:
- type: PowerCell
cellSize: Medium
@@ -42,7 +35,7 @@
- type: entity
id: PowerCellLargeBase
abstract: true
parent: PowerCellBase
parent: PowerCellSmallBase
components:
- type: PowerCell
cellSize: Large
@@ -57,10 +50,9 @@
sprite: Objects/Power/PowerCells/potato_battery.rsi
layers:
- state: potato_battery
- type: PowerCell
- type: Battery
maxCharge: 360
startingCharge: 360
updateVisual: false
- type: entity
name: small standard power cell
@@ -72,7 +64,7 @@
sprite: Objects/Power/PowerCells/power_cell_small_st.rsi
layers:
- state: s_st
- type: PowerCell
- type: Battery
maxCharge: 360
startingCharge: 360
- type: Appearance
@@ -80,7 +72,6 @@
- type: PowerCellVisualizer
prefix: s_st
- type: entity
name: small high-capacity power cell
description: A rechargeable standardized power cell, size S. This is the popular and reliable version.
@@ -91,7 +82,7 @@
sprite: Objects/Power/PowerCells/power_cell_small_hi.rsi
layers:
- state: s_hi
- type: PowerCell
- type: Battery
maxCharge: 720
startingCharge: 720
- type: Appearance
@@ -99,7 +90,6 @@
- type: PowerCellVisualizer
prefix: s_hi
- type: entity
name: small super-capacity power cell
description: A rechargeable standardized power cell, size S. This premium high-capacity brand stores up to 50% more energy than the competition.
@@ -110,7 +100,7 @@
sprite: Objects/Power/PowerCells/power_cell_small_sup.rsi
layers:
- state: s_sup
- type: PowerCell
- type: Battery
maxCharge: 1080
startingCharge: 1080
- type: Appearance
@@ -129,7 +119,7 @@
sprite: Objects/Power/PowerCells/power_cell_small_hy.rsi
layers:
- state: s_hy
- type: PowerCell
- type: Battery
maxCharge: 1800
startingCharge: 1800
- type: Appearance
@@ -147,7 +137,7 @@
sprite: Objects/Power/PowerCells/power_cell_small_autorecharge.rsi
layers:
- state: s_ar
- type: PowerCell
- type: Battery
maxCharge: 50
startingCharge: 50
- type: BatterySelfRecharger
@@ -168,7 +158,7 @@
sprite: Objects/Power/PowerCells/power_cell_small_autorecharge.rsi
layers:
- state: s_ar
- type: PowerCell
- type: Battery
maxCharge: 600 #lights drain 3/s but recharge of 2 makes this 1/s. Therefore 600 is 10 minutes of light.
startingCharge: 600
- type: BatterySelfRecharger
@@ -179,7 +169,6 @@
- type: PowerCellVisualizer
prefix: s_ar
- type: entity
name: medium standard power cell
description: A rechargeable standardized power cell, size M. This is the cheapest kind you can find.
@@ -190,7 +179,7 @@
sprite: Objects/Power/PowerCells/power_cell_medium_st.rsi
layers:
- state: m_st
- type: PowerCell
- type: Battery
maxCharge: 2160
startingCharge: 2160
- type: Appearance
@@ -208,10 +197,9 @@
sprite: Objects/Power/PowerCells/power_cell_medium_hi.rsi
layers:
- state: m_hi
- type: PowerCell
- type: Battery
maxCharge: 2880
startingCharge: 2880
powerCellSize: Medium
- type: Appearance
visuals:
- type: PowerCellVisualizer
@@ -227,7 +215,7 @@
sprite: Objects/Power/PowerCells/power_cell_medium_sup.rsi
layers:
- state: m_sup
- type: PowerCell
- type: Battery
maxCharge: 3600
startingCharge: 3600
- type: Appearance
@@ -245,7 +233,7 @@
sprite: Objects/Power/PowerCells/power_cell_medium_hy.rsi
layers:
- state: m_hy
- type: PowerCell
- type: Battery
maxCharge: 5400
startingCharge: 5400
- type: Appearance
@@ -263,7 +251,7 @@
sprite: Objects/Power/PowerCells/power_cell_large_st.rsi
layers:
- state: l_st
- type: PowerCell
- type: Battery
maxCharge: 9000
startingCharge: 9000
- type: Appearance
@@ -281,7 +269,7 @@
sprite: Objects/Power/PowerCells/power_cell_large_hi.rsi
layers:
- state: l_hi
- type: PowerCell
- type: Battery
maxCharge: 18000
startingCharge: 18000
- type: Appearance
@@ -299,7 +287,7 @@
sprite: Objects/Power/PowerCells/power_cell_large_sup.rsi
layers:
- state: l_sup
- type: PowerCell
- type: Battery
maxCharge: 54000
startingCharge: 54000
- type: Appearance
@@ -317,7 +305,7 @@
sprite: Objects/Power/PowerCells/power_cell_large_hy.rsi
layers:
- state: l_hy
- type: PowerCell
- type: Battery
maxCharge: 72000
startingCharge: 72000
- type: Appearance

View File

@@ -12,7 +12,8 @@
actions:
- actionType: ToggleLight
- type: PowerCellSlot
startingCellType: PowerCellSmallHigh
cellSlot:
startingItem: PowerCellSmallHigh
- type: Sprite
sprite: Objects/Tools/flashlight.rsi
layers:
@@ -39,7 +40,8 @@
description: A robust flashlight used by security.
components:
- type: PowerCellSlot
startingCellType: PowerCellSmallSuper
cellSlot:
startingItem: PowerCellSmallSuper
- type: Sprite
sprite: Objects/Tools/seclite.rsi
layers:

View File

@@ -27,7 +27,8 @@
visuals:
- type: LanternVisualizer
- type: PowerCellSlot
startingCellType: PowerCellSmallHigh
cellSlot:
startingItem: PowerCellSmallHigh
- type: entity
name: extra-bright lantern

View File

@@ -16,16 +16,11 @@
- Single
soundGunshot:
path: /Audio/Weapons/Guns/Gunshots/laser.ogg
- type: PowerCellSlot
cellSlot:
ejectOnUse: true
insertSound: /Audio/Weapons/Guns/MagIn/revolver_magin.ogg
ejectSound: /Audio/Weapons/Guns/MagOut/revolver_magout.ogg
soundOptions:
volume: -2
startingItem: PowerCellSmallStandard
whitelist:
components:
- Battery
- type: Appearance
visuals:
- type: MagVisualizer
@@ -148,16 +143,12 @@
ammoPrototype: RedHeavyLaser
soundGunshot:
path: /Audio/Weapons/Guns/Gunshots/laser_cannon.ogg
- type: PowerCellSlot
cellSlot:
ejectOnUse: true
insertSound: /Audio/Weapons/Guns/MagIn/revolver_magin.ogg
ejectSound: /Audio/Weapons/Guns/MagOut/revolver_magout.ogg
soundOptions:
volume: -2
startingItem: PowerCellSmallSuper
whitelist:
components:
- Battery
- type: entity
name: x-ray cannon
@@ -182,16 +173,12 @@
ammoPrototype: XrayLaser
soundGunshot:
path: /Audio/Weapons/Guns/Gunshots/laser3.ogg
- type: PowerCellSlot
cellSlot:
ejectOnUse: true
insertSound: /Audio/Weapons/Guns/MagIn/revolver_magin.ogg
ejectSound: /Audio/Weapons/Guns/MagOut/revolver_magout.ogg
soundOptions:
volume: -2
startingItem: PowerCellSmallSuper
whitelist:
components:
- Battery
- type: Appearance
visuals:
- type: MagVisualizer
@@ -231,16 +218,12 @@
ammoPrototype: BulletTaser
soundGunshot:
path: /Audio/Weapons/Guns/Gunshots/taser.ogg
- type: PowerCellSlot
descFormatString : "" # empty string for no examine-text (cell is not ejectable)
cellSlot:
insertSound: /Audio/Weapons/Guns/MagIn/revolver_magin.ogg
ejectSound: /Audio/Weapons/Guns/MagOut/revolver_magout.ogg
soundOptions:
volume: -2
locked: true
startingItem: PowerCellSmallStandard
whitelist:
components:
- Battery
- type: Appearance
visuals:
- type: MagVisualizer

View File

@@ -17,7 +17,8 @@
arc: default
- type: PowerCellSlot
slotSize: Medium
startingCellType: PowerCellMediumHigh
cellSlot:
startingItem: PowerCellMediumHigh
- type: ItemCooldown
- type: Clothing
sprite: Objects/Weapons/Melee/stunbaton.rsi

View File

@@ -9,8 +9,13 @@
- type: Icon
sprite: Structures/Power/cell_recharger.rsi
state: empty
- type: PowerCellCharger
transfer_efficiency: 0.85
- type: Charger
chargerSlot:
ejectOnInteract: true
name: Power cell # used for verbs: "Eject > Power cell "
whitelist:
components:
- PowerCell
- type: ApcPowerReceiver
- type: ExtensionCableReceiver
- type: Appearance
@@ -23,6 +28,7 @@
- type: entity
name: recharger
id: WeaponCapacitorRecharger
parent: PowerCellRecharger
components:
- type: Sprite
netsync: false
@@ -31,20 +37,18 @@
- type: Icon
sprite: Structures/Power/recharger.rsi
state: empty
- type: WeaponCapacitorCharger
transfer_efficiency: 0.85
- type: ApcPowerReceiver
- type: ExtensionCableReceiver
- type: Appearance
visuals:
- type: PowerChargerVisualizer
- type: Anchorable
- type: Clickable
- type: InteractionOutline
- type: Charger
chargerSlot:
ejectOnInteract: true
whitelist:
components:
- PowerCell
- PowerCellSlot
- type: entity
name: wall recharger
id: WallWeaponCapacitorRecharger
parent: PowerCellRecharger
components:
- type: Sprite
netsync: false
@@ -53,12 +57,11 @@
- type: Icon
sprite: Structures/Power/wall_recharger.rsi
state: empty
- type: WeaponCapacitorCharger
transfer_efficiency: 0.95
- type: ApcPowerReceiver
- type: ExtensionCableReceiver
- type: Appearance
visuals:
- type: PowerChargerVisualizer
- type: Clickable
- type: InteractionOutline
- type: Charger
transferEfficiency: 0.95
chargerSlot:
ejectOnInteract: true
whitelist:
components:
- PowerCell
- PowerCellSlot