Skip to content

Commit

Permalink
Gyros & Thrusters (#858)
Browse files Browse the repository at this point in the history
* Update thrusters.yml

* Update thrusters.yml

* Update thrusters.yml

* Update thrusters.yml
  • Loading branch information
dvir001 authored Jan 24, 2024
1 parent 6278dc3 commit 0cb041d
Showing 1 changed file with 125 additions and 96 deletions.
221 changes: 125 additions & 96 deletions Resources/Prototypes/_NF/Entities/Structures/Shuttles/thrusters.yml
Original file line number Diff line number Diff line change
@@ -1,35 +1,22 @@
- type: entity
id: BaseThrusterSecurity
parent: BaseStructureDynamic
abstract: true
id: ThrusterSecurity
parent: Thruster
suffix: Security
components:
- type: AmbientSound
enabled: false
range: 4
volume: -4
sound:
path: /Audio/Effects/shuttle_thruster.ogg
- type: Transform
anchored: true
- type: Physics
bodyType: Static
- type: Rotatable
rotateWhileAnchored: true
- type: Thruster
damage:
types:
Heat: 40
thrusterIgnoreEmp: true
- type: InteractionOutline
- type: Sprite
- type: Appearance
- type: ThrusterVisuals
- type: ApcPowerReceiver
powerLoad: 1500
- type: ExtensionCableReceiver
- type: Damageable
damageContainer: Inorganic
damageModifierSet: Metallic
- type: Sprite
sprite: _NF/Structures/Shuttles/thrustersecurity.rsi
layers:
- state: base
map: ["enum.ThrusterVisualLayers.Base"]
- state: thrust
map: ["enum.ThrusterVisualLayers.ThrustOn"]
shader: unshaded
visible: false
- state: thrust_burn_unshaded
map: ["enum.ThrusterVisualLayers.ThrustingUnshaded"]
shader: unshaded
visible: false
offset: 0, 1
- type: Destructible
thresholds:
- trigger:
Expand All @@ -38,32 +25,12 @@
behaviors:
- !type:DoActsBehavior
acts: ["Destruction"]
- type: StaticPrice
price: 300
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeAabb
bounds: "-0.45,-0.45,0.45,0.45"
density: 60
mask:
- MachineMask
layer:
- MidImpassable
- LowImpassable
- BulletImpassable
placement:
mode: SnapgridCenter

- type: entity
id: ThrusterSecurity
name: security thruster
parent: [ BaseThrusterSecurity, ConstructibleMachine ]
id: ThrusterSecurityUnanchored
parent: ThrusterUnanchored
suffix: Unanchored, Security
components:
- type: Thruster
- type: Machine
board: ThrusterMachineCircuitboard
- type: Sprite
sprite: _NF/Structures/Shuttles/thrustersecurity.rsi
layers:
Expand All @@ -78,20 +45,60 @@
shader: unshaded
visible: false
offset: 0, 1
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 600 # Considering we need a lot of thrusters didn't want to make an individual one too tanky
behaviors:
- !type:DoActsBehavior
acts: ["Destruction"]

- type: entity
id: DebugThrusterSecurity
name: security thruster
parent: BaseThrusterSecurity
suffix: DEBUG
parent: DebugThruster
name: thruster
suffix: DEBUG, Security
components:
- type: Sprite
sprite: _NF/Structures/Shuttles/thrustersecurity.rsi
layers:
- state: base
map: ["enum.ThrusterVisualLayers.Base"]
- state: thrust
map: ["enum.ThrusterVisualLayers.ThrustOn"]
shader: unshaded
visible: false
- state: thrust_burn_unshaded
map: ["enum.ThrusterVisualLayers.ThrustingUnshaded"]
shader: unshaded
visible: false
offset: 0, 1
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 600 # Considering we need a lot of thrusters didn't want to make an individual one too tanky
behaviors:
- !type:DoActsBehavior
acts: ["Destruction"]

- type: entity
id: SmallThruster
parent: Thruster
suffix: Small
components:
- type: Thruster
requireSpace: false
baseThrust: 33
thrust: 33
damage:
types:
Heat: 40
- type: ApcPowerReceiver
needsPower: false
powerLoad: 0
powerLoad: 500
- type: Sprite
sprite: _NF/Structures/Shuttles/thrustersecurity.rsi
scale: 0.8, 0.8
sprite: Structures/Shuttles/thruster.rsi
layers:
- state: base
map: ["enum.ThrusterVisualLayers.Base"]
Expand All @@ -104,20 +111,15 @@
shader: unshaded
visible: false
offset: 0, 1
- type: StaticPrice
price: 100

- type: entity
id: GyroscopeSecurity
name: security gyroscope
parent: [ BaseThrusterSecurity, ConstructibleMachine ]
parent: Gyroscope
suffix: Security
components:
- type: Thruster
thrusterType: Angular
requireSpace: false
baseThrust: 2000
thrust: 2000
machinePartThrust: Manipulator
- type: Sprite
# Listen I'm not the biggest fan of the sprite but it was the most appropriate thing I could find.
sprite: _NF/Structures/Shuttles/gyroscope.rsi
snapCardinals: true
layers:
Expand All @@ -134,37 +136,61 @@
map: ["enum.ThrusterVisualLayers.ThrustingUnshaded"]
shader: unshaded
visible: false
- type: PointLight
radius: 1.3
energy: 0.8
enabled: false
mask: /Textures/Effects/LightMasks/cone.png
autoRot: true
offset: "0, 0.1" # shine from the top, not bottom of the computer
color: "#4246b3"
- type: Machine
board: GyroscopeMachineCircuitboard
- type: UpgradePowerDraw
powerDrawMultiplier: 0.75
scaling: Exponential
- type: StaticPrice
price: 2000

- type: entity
id: GyroscopeSecurityUnanchored
parent: GyroscopeUnanchored
components:
- type: Sprite
sprite: _NF/Structures/Shuttles/gyroscope.rsi
snapCardinals: true
layers:
- state: base
map: ["enum.ThrusterVisualLayers.Base"]
- state: thrust
map: ["enum.ThrusterVisualLayers.ThrustOn"]
shader: unshaded
visible: false
- state: thrust_burn_unshaded
map: ["enum.ThrusterVisualLayers.ThrustingUnshaded"]
shader: unshaded
visible: false

- type: entity
id: DebugGyroscopeSecurity
name: security gyroscope
parent: BaseThrusterSecurity
suffix: DEBUG
parent: DebugGyroscope
name: gyroscope
suffix: DEBUG, Security
components:
- type: Sprite
sprite: _NF/Structures/Shuttles/gyroscope.rsi
snapCardinals: true
layers:
- state: base
map: ["enum.ThrusterVisualLayers.Base"]
- state: thrust
map: ["enum.ThrusterVisualLayers.ThrustOn"]
shader: unshaded
visible: false
- state: thrust_burn_unshaded
map: ["enum.ThrusterVisualLayers.ThrustingUnshaded"]
shader: unshaded
visible: false

- type: entity
id: SmallGyroscopeSecurity
parent: GyroscopeSecurity
suffix: Security, Small
components:
- type: Thruster
thrusterType: Angular
requireSpace: false
baseThrust: 100
thrust: 100
baseThrust: 250
thrust: 250
- type: ApcPowerReceiver
needsPower: false
powerLoad: 0
powerLoad: 200
- type: Sprite
scale: 0.8, 0.8
sprite: _NF/Structures/Shuttles/gyroscope.rsi
snapCardinals: true
layers:
Expand All @@ -180,19 +206,20 @@
visible: false

- type: entity
id: SmallGyroscopeSecurity
name: security gyroscope
parent: BaseThrusterSecurity
suffix: small
id: SmallGyroscope
parent: Gyroscope
suffix: Small
components:
- type: Thruster
thrusterType: Angular
requireSpace: false
baseThrust: 250
thrust: 250
- type: ApcPowerReceiver
powerLoad: 200
- type: Sprite
scale: 0.8, 0.8
sprite: _NF/Structures/Shuttles/gyroscope.rsi
sprite: Structures/Shuttles/gyroscope.rsi
snapCardinals: true
layers:
- state: base
Expand All @@ -205,3 +232,5 @@
map: ["enum.ThrusterVisualLayers.ThrustingUnshaded"]
shader: unshaded
visible: false
- type: StaticPrice
price: 250

0 comments on commit 0cb041d

Please sign in to comment.