Files
crystall-punk-14/Content.Shared/_CP14/Demiplane/Components/CP14DemiplaneComponent.cs
Ed 5c4b5d1572 Demiplans expeditions (#523)
* simple expedition generation

* add simple test key

* expedition map component

* some funny procedural testing

* refactor expeditions from planetbiome to islanddungeons

* some work

* fix: grid dungeon, not map planet dungeon

* unhardcode map components

* finish T1 expedition generation

* Update preset.yml

* indestructable stone

* mob water occlusion

* caves T1 expedition

* Update CP14SpawnExpeditionJob.cs

* Delete shared MissionParams

* rename to demiplans

* pass mapid into job

* demiplan connections

* demiplan exits

* random entry points

* Update config.yml

* some cleanup and renaming

* radius one-time teleport

* rename connections to exitPoint

* merge entry and exit point into rift component

* demipan closing - all rifts deletion

* demiplanEEEEEE

* fixes

* delete floating visuals

* Update CP14DemiplaneTravelingSystem.cs

* intro and outro demiplan music

* rift cores and flashing

* pulling support

* pulling fix + generatordata fix?

* auto destrot demiplans??
2024-10-31 19:13:44 +03:00

39 lines
1.4 KiB
C#

using Robust.Shared.Audio;
namespace Content.Shared._CP14.Demiplane.Components;
/// <summary>
/// Designates this entity as holding a demiplane.
/// </summary>
[RegisterComponent, Access(typeof(CP14SharedDemiplaneSystem))]
public sealed partial class CP14DemiplaneComponent : Component
{
/// <summary>
/// All entities in the real world that are connected to this demiplane
/// </summary>
[ViewVariables(VVAccess.ReadOnly)]
[DataField]
public HashSet<Entity<CP14DemiplaneRiftComponent>> ExitPoints = new();
/// <summary>
/// All entities in the demiplane in which the objects entered in the demiplane appear
/// </summary>
[ViewVariables(VVAccess.ReadOnly)]
[DataField]
public HashSet<Entity<CP14DemiplaneRiftComponent>> EntryPoints = new();
/// <summary>
/// The sound of entering a demiplane, played locally to the player who entered it.
/// Consider more as an intro sound “You have entered the demiplane. Good luck.”
/// </summary>
[DataField("arrivalSound")]
public SoundSpecifier ArrivalSound = new SoundCollectionSpecifier("CP14DemiplaneIntro");
/// <summary>
/// The sound of exiting the demiplane, played locally to the player who exited the demiplane.
/// Consider it more as an ending sound
/// </summary>
[DataField("departureSound")]
public SoundSpecifier DepartureSound = new SoundCollectionSpecifier("CP14DemiplaneIntro");
}