* Changeling WIP * UI * Pointers fix * Moved out abilities * Regenerate ability * Fixed Regenerate ability Prevent ghosting while regenerating * Cleanup * Base lesser form * Finished Lesser Form && Transform * Transform Sting * Blind Sting * Mute Sting Added OnExamine on absorbed human * Hallucination Sting Changeling Absorb and transfer absorbed entities to absorber * Cryogenic Sting * Adrenaline Sacs * Transform now uses Polymorph * Armblade, Shield, Armor * Tentacle Arm ability Tentacle Gun system * WIP with bugs * WiP bugs * fix implant transfer * Fixed bugs with shop transfer and actions transfer * Just in case * Vi sitter i ventrilo och spelar DotA * Fixes and proper LesserForm tracking * !!!!! * Fixed empty buttons * WIP Gamerule Ready - shop * nerf stun time cause its sucks * cleaning * just in case * Absorb DNA Objective. * Partial objectives with bugs * fix * fix pointer * Changeling objectives * Changeling objectives №2 * Admin verb, game rule * Fixed empty list check Icons for objectives * Changeling chat, changeling names etc. * fix some merge errors * - fix: Fixed all bugs with changeling --------- Co-authored-by: Y-Parvus <yevhen.parvus@gmail.com> Co-authored-by: Y-Parvus <61109031+Y-Parvus@users.noreply.github.com> Co-authored-by: HitPanda <104197232+EnefFlow@users.noreply.github.com> Co-authored-by: EnefFlow <regeto90@mail.ru>
36 lines
1.2 KiB
C#
36 lines
1.2 KiB
C#
using Content.Shared.Preferences;
|
|
using Content.Shared.Roles;
|
|
using Robust.Shared.Audio;
|
|
using Robust.Shared.Player;
|
|
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype;
|
|
|
|
namespace Content.Server.Changeling;
|
|
|
|
[RegisterComponent, Access(typeof(ChangelingRuleSystem))]
|
|
public sealed partial class ChangelingRuleComponent : Component
|
|
{
|
|
public readonly List<EntityUid> ChangelingMinds = new();
|
|
|
|
[DataField("changelingPrototypeId", customTypeSerializer: typeof(PrototypeIdSerializer<AntagPrototype>))]
|
|
public string ChangelingPrototypeId = "Changeling";
|
|
|
|
public int TotalChangelings => ChangelingMinds.Count;
|
|
|
|
public enum SelectionState
|
|
{
|
|
WaitingForSpawn = 0,
|
|
ReadyToSelect = 1,
|
|
SelectionMade = 2,
|
|
}
|
|
|
|
public SelectionState SelectionStatus = SelectionState.WaitingForSpawn;
|
|
public TimeSpan AnnounceAt = TimeSpan.Zero;
|
|
public Dictionary<ICommonSession, HumanoidCharacterProfile> StartCandidates = new();
|
|
|
|
/// <summary>
|
|
/// Path to antagonist alert sound.
|
|
/// </summary>
|
|
[DataField("greetSoundNotification")]
|
|
public SoundSpecifier GreetSoundNotification = new SoundPathSpecifier("/Audio/Ambience/Antag/changeling_start.ogg");
|
|
}
|