Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ghost locator maints loot #32323

Merged
merged 9 commits into from
Oct 18, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions Content.Shared/Ghost/SpectralComponent.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
using Robust.Shared.GameStates;

namespace Content.Shared.Ghost;

/// <summary>
/// Marker component to identify "ghostly" entities.
/// </summary>
[RegisterComponent, NetworkedComponent]
public sealed partial class SpectralComponent : Component { }
Original file line number Diff line number Diff line change
Expand Up @@ -288,6 +288,7 @@
- id: ResearchDisk5000
- id: PetCarrier
- id: DrinkMopwataBottleRandom
- id: SpectralLocator
- id: LidSalami
weight: 0.05

Expand Down
1 change: 1 addition & 0 deletions Resources/Prototypes/Entities/Mobs/NPCs/revenant.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
components:
- type: Input
context: "ghost"
- type: Spectral
- type: MovementSpeedModifier
baseWalkSpeed: 6
baseSprintSpeed: 6
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
- type: entity
parent: [MobObserver, InventoryBase]
parent: [MobObserverBase, InventoryBase]
id: AdminObserver
name: admin observer
categories: [ HideSpawnMenu ]
Expand Down
11 changes: 10 additions & 1 deletion Resources/Prototypes/Entities/Mobs/Player/observer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,11 +28,13 @@
layer:
- GhostImpassable

# shared parent between aghosts, replay spectators and normal observers
- type: entity
parent:
- Incorporeal
- BaseMob
id: MobObserver
id: MobObserverBase
abstract: true
name: observer
description: Boo!
categories: [ HideSpawnMenu ]
Expand Down Expand Up @@ -61,6 +63,13 @@
tags:
- BypassInteractionRangeChecks

# proto for player ghosts specifically
- type: entity
parent: MobObserverBase
id: MobObserver
components:
- type: Spectral

- type: entity
id: ActionGhostBoo
name: Boo!
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
- type: entity
parent: MobObserver
parent: MobObserverBase
id: ReplayObserver
categories: [ HideSpawnMenu ]
save: false
Expand Down
58 changes: 58 additions & 0 deletions Resources/Prototypes/Entities/Objects/Fun/spectral_locator.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
- type: entity
id: SpectralLocatorUnpowered
parent: BaseItem
name: spectral locator
description: Appears to be a modified anomaly locator. Seems very old.
suffix: Unpowered
components:
- type: Sprite
sprite: Objects/Fun/spectrallocator.rsi
layers:
- state: icon
- state: screen
shader: unshaded
visible: false
map: ["enum.ToggleVisuals.Layer"]
- type: Appearance
- type: GenericVisualizer
visuals:
enum.ToggleVisuals.Toggled:
enum.ToggleVisuals.Layer:
True: { visible: true }
False: { visible: false }
- type: ItemToggle
- type: ProximityBeeper
- type: ProximityDetector
range: 12
criteria:
components:
- Spectral # reacts to AI eye, intentional
- type: Beeper
isMuted: true
minBeepInterval: 0.25
maxBeepInterval: 0.5
beepSound:
path: "/Audio/Items/locator_beep.ogg"
params:
maxDistance: 1
volume: -8

- type: entity
id: SpectralLocator
parent: [ SpectralLocatorUnpowered, PowerCellSlotSmallItem ]
suffix: Powered
components:
- type: PowerCellDraw
drawRate: 1
useRate: 0
- type: ToggleCellDraw

- type: entity
id: SpectralLocatorEmpty
parent: SpectralLocator
suffix: Empty
components:
- type: ItemSlots
slots:
cell_slot:
name: power-cell-slot-component-slot-name-default
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
33 changes: 33 additions & 0 deletions Resources/Textures/Objects/Fun/spectrallocator.rsi/meta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
{
"version": 1,
"license": "CC0-1.0",
"copyright": "Originally created by EmoGarbage404 (github) for Space Station 14, modified by Ilya246 (github) for Space Station 14.",
"size": {
"x": 32,
"y": 32
},
"states": [
{
"name": "icon"
},
{
"name": "inhand-left",
"directions": 4
},
{
"name": "inhand-right",
"directions": 4
},
{
"name": "screen",
"delays": [
[
0.2,
0.2,
0.2,
0.2
]
]
}
]
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading