Skip to content

Commit

Permalink
Merge branch '2024-12-27-DogTags' of https://github.com/dvir001/front…
Browse files Browse the repository at this point in the history
…ier-station-14 into 2024-12-27-DogTags
  • Loading branch information
whatston3 committed Dec 28, 2024
2 parents 3932e03 + cfd0df5 commit 5801821
Show file tree
Hide file tree
Showing 277 changed files with 2,931 additions and 326 deletions.
10 changes: 0 additions & 10 deletions Content.Server/Shipyard/Systems/ShipyardSystem.Consoles.cs
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@
using Content.Server.StationRecords.Systems;
using Content.Shared.Database;
using Content.Shared.Preferences;
using Content.Shared.Shuttles.Components;
using static Content.Shared.Shipyard.Components.ShuttleDeedComponent;
using Content.Server.Shuttles.Components;
using Content.Server.Station.Components;
Expand All @@ -38,7 +37,6 @@
using Content.Shared.UserInterface;
using Robust.Shared.Audio.Systems;
using Content.Shared.Access;
using Content.Shared.Tiles;
using Content.Server._NF.Smuggling.Components;
using Content.Shared._NF.ShuttleRecords;
using Content.Server.StationEvents.Components;
Expand Down Expand Up @@ -203,14 +201,6 @@ private void OnPurchaseMessage(EntityUid shipyardConsoleUid, ShipyardConsoleComp
shuttleStation = _station.InitializeNewStation(stationProto.Stations[vessel.ID], gridUids);
var metaData = MetaData((EntityUid)shuttleStation);
name = metaData.EntityName;
_shuttle.SetIFFColor(shuttleUid, new Color
{
R = 10,
G = 50,
B = 100,
A = 100
});
_shuttle.AddIFFFlag(shuttleUid, IFFFlags.IsPlayerShuttle);
}

if (TryComp<AccessComponent>(targetId, out var newCap))
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
using System.Diagnostics.CodeAnalysis;
using System.Linq;
using System.Numerics;
using Content.Server._NF.Shuttles.Components; // Frontier: NPC knockdown immunity
using Content.Server._NF.Shuttles.Components; // Frontier: FTL knockdown immunity
using Content.Server.Shuttles.Components;
using Content.Server.Shuttles.Events;
using Content.Server.Station.Events;
Expand Down Expand Up @@ -637,11 +637,9 @@ private void DoTheDinosaur(TransformComponent xform)
{
if (!_statusQuery.TryGetComponent(child, out var status))
continue;

if (HasComp<FTLKnockdownImmuneComponent>(child)) // Frontier: NPC knockdown immunity
continue; // Frontier: NPC knockdown immunity

_stuns.TryParalyze(child, _hyperspaceKnockdownTime, true, status);
if (!HasComp<FTLKnockdownImmuneComponent>(child)) // Frontier: FTL knockdown immunity
_stuns.TryParalyze(child, _hyperspaceKnockdownTime, true, status);

// If the guy we knocked down is on a spaced tile, throw them too
if (grid != null)
Expand Down
13 changes: 11 additions & 2 deletions Content.Server/_NF/GameRule/PointOfInterestPrototype.cs
Original file line number Diff line number Diff line change
@@ -1,19 +1,27 @@
using Content.Server.GameTicking.Presets;
using Robust.Shared.Prototypes;
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.Array;
using Robust.Shared.Utility;

namespace Content.Server._NF.GameRule;

/// <summary>
/// Describes information for a single point of interest to be spawned in the world
/// </summary>
[Prototype("pointOfInterest")]
[Prototype]
[Serializable]
public sealed partial class PointOfInterestPrototype : IPrototype
public sealed partial class PointOfInterestPrototype : IPrototype, IInheritingPrototype
{
[IdDataField]
public string ID { get; private set; } = default!;

[ParentDataField(typeof(AbstractPrototypeIdArraySerializer<PointOfInterestPrototype>))]
public string[]? Parents { get; private set; }

[NeverPushInheritance]
[AbstractDataField]
public bool Abstract { get; private set; }

/// <summary>
/// The name of this point of interest
/// </summary>
Expand Down Expand Up @@ -48,6 +56,7 @@ public sealed partial class PointOfInterestPrototype : IPrototype
/// Components to be added to any spawned grids.
/// </summary>
[DataField]
[AlwaysPushInheritance]
public ComponentRegistry AddComponents { get; set; } = new();

/// <summary>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
using Robust.Shared.Prototypes;
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype;

namespace Content.Server._NF.Shuttles.Components;

/// <summary>
Expand Down
27 changes: 18 additions & 9 deletions Content.Shared/Shipyard/Prototypes/VesselPrototype.cs
Original file line number Diff line number Diff line change
@@ -1,41 +1,49 @@
using Content.Shared.Guidebook;
using Robust.Shared.Prototypes;
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.Array;
using Robust.Shared.Utility;

namespace Content.Shared.Shipyard.Prototypes;

[Prototype("vessel")]
public sealed class VesselPrototype : IPrototype
[Prototype]
public sealed class VesselPrototype : IPrototype, IInheritingPrototype
{
[IdDataField]
public string ID { get; } = default!;

[ParentDataField(typeof(AbstractPrototypeIdArraySerializer<VesselPrototype>))]
public string[]? Parents { get; private set; }

[NeverPushInheritance]
[AbstractDataField]
public bool Abstract { get; private set; }

/// <summary>
/// Vessel name.
/// </summary>
[DataField("name")] public string Name = string.Empty;
[DataField] public string Name = string.Empty;

/// <summary>
/// Short description of the vessel.
/// </summary>
[DataField("description")] public string Description = string.Empty;
[DataField] public string Description = string.Empty;

/// <summary>
/// The price of the vessel
/// </summary>
[DataField("price", required: true)]
[DataField(required: true)]
public int Price;

/// <summary>
/// The size of the vessel. (e.g. Small, Medium, Large etc.)
/// </summary>
[DataField("category", required: true)]
[DataField(required: true)]
public VesselSize Category = VesselSize.Small;

/// <summary>
/// The shipyard listing that the vessel should be in. (e.g. Civilian, Syndicate, Contraband etc.)
/// </summary>
[DataField("group", required: true)]
[DataField(required: true)]
public ShipyardConsoleUiKey Group = ShipyardConsoleUiKey.Shipyard;

/// <summary>
Expand All @@ -53,7 +61,7 @@ public sealed class VesselPrototype : IPrototype
/// <summary>
/// The access required to buy the product. (e.g. Command, Mail, Bailiff, etc.)
/// </summary>
[DataField("access")]
[DataField]
public string Access = string.Empty;

/// Frontier - Add this field for the MapChecker script.
Expand All @@ -66,7 +74,7 @@ public sealed class VesselPrototype : IPrototype
/// <summary>
/// Relative directory path to the given shuttle, i.e. `/Maps/Shuttles/yourshittle.yml`
/// </summary>
[DataField("shuttlePath", required: true)]
[DataField(required: true)]
public ResPath ShuttlePath = default!;

/// <summary>
Expand All @@ -85,6 +93,7 @@ public sealed class VesselPrototype : IPrototype
/// Components to be added to any spawned grids.
/// </summary>
[DataField]
[AlwaysPushInheritance]
public ComponentRegistry AddComponents { get; set; } = new();
}

Expand Down
22 changes: 22 additions & 0 deletions Resources/Changelog/Frontier.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6122,3 +6122,25 @@ Entries:
message: Pirate PDAs now have the AstroNav program
id: 5614
time: '2024-12-26T21:07:18.0000000+00:00'
- author: whatston3
changes:
- type: Fix
message: The Menace now spawns with its IFF label hidden.
id: 5615
time: '2024-12-28T03:29:18.0000000+00:00'
- author: dvir001
changes:
- type: Add
message: Diona are now immune to the force of an FTL jump.
id: 5616
time: '2024-12-28T16:37:31.0000000+00:00'
- author: dvir001
changes:
- type: Add
message: Added the classic DeltaV Moth markings.
- type: Add
message: Added "Selene" wing customization option for moths
- type: Fix
message: Felinids and vulpkanin now have gasping sounds.
id: 5617
time: '2024-12-28T17:49:58.0000000+00:00'
6 changes: 6 additions & 0 deletions Resources/Locale/en-US/deltav/markings/moth.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
marking-MothWingsClassicSelene = Wings (Selene, Classic)
marking-MothWingsSelene-selene_primary = Primary
marking-MothWingsSelene-selene_secondary = Secondary
marking-MothWingsSelene-selene_tertiary = Tertiary
marking-MothWingsSelene = Wings (Selene)
150 changes: 150 additions & 0 deletions Resources/Locale/en-US/nyanotrasen/markings/moth.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,150 @@
marking-MothAntennasClassicAspen = Antennas (Aspen, Classic)
marking-MothAntennasClassicBrown = Antennas (Brown, Classic)
# Frontier: Deathshead < Death's-Head
marking-MothAntennasClassicDeathshead = Antennas (Death's-Head, Classic)
marking-MothAntennasClassicFeathery = Antennas (Feathery, Classic)
marking-MothAntennasClassicFirewatch = Antennas (Firewatch, Classic)
marking-MothAntennasClassicGothic = Antennas (Gothic, Classic)
marking-MothAntennasClassicJungle = Antennas (Jungle, Classic)
marking-MothAntennasClassicLovers = Antennas (Lovers, Classic)
marking-MothAntennasClassicMint = Antennas (Mint, Classic)
marking-MothAntennasClassicMoffra = Antennas (Moffra, Classic)
marking-MothAntennasClassicMoonfly = Antennas (Moonfly, Classic)
# Frontier: Oakworm < Oak Worm
marking-MothAntennasClassicOakworm = Antennas (Oak Worm, Classic)
marking-MothAntennasClassicPlain = Antennas (Plain, Classic)
marking-MothAntennasClassicPlasmafire = Antennas (Plasmafire, Classic)
marking-MothAntennasClassicPoison = Antennas (Poison, Classic)
marking-MothAntennasClassicReddish = Antennas (Reddish, Classic)
marking-MothAntennasClassicRegal = Antennas (Regal, Classic)
marking-MothAntennasClassicRosy = Antennas (Rosy, Classic)
marking-MothAntennasClassicRoyal = Antennas (Royal, Classic)
marking-MothAntennasClassicSnow = Antennas (Snow, Classic)
# Frontier: Whitefly < White Fly
marking-MothAntennasClassicWhitefly = Antennas (White Fly, Classic)
marking-MothAntennasClassicWitchking = Antennas (Witch King, Classic)
marking-MothWingsClassicAspen = Wings (Aspen, Classic)
marking-MothWingsClassicAtlas = Wings (Atlas, Classic)
marking-MothWingsClassicBrown = Wings (Brown, Classic)
# Frontier: Deathshead < Death's-Head
marking-MothWingsClassicDeathshead = Wings (Death's-Head, Classic)
marking-MothWingsClassicFeathery = Wings (Feathery, Classic)
marking-MothWingsClassicFirewatch = Wings (Firewatch, Classic)
marking-MothWingsClassicGothic = Wings (Gothic, Classic)
marking-MothWingsClassicJungle = Wings (Jungle, Classic)
marking-MothWingsClassicLovers = Wings (Lovers, Classic)
marking-MothWingsClassicLuna = Wings (Luna, Classic)
marking-MothWingsClassicMint = Wings (Mint, Classic)
marking-MothWingsClassicMonarch = Wings (Monarch, Classic)
marking-MothWingsClassicMoonfly = Wings (Moonfly, Classic)
marking-MothWingsClassicMoffra = Wings (Moffra, Classic)
# Frontier: Oakworm < Oak Worm
marking-MothWingsClassicOakworm = Wings (Oak Worm, Classic)
marking-MothWingsClassicPlain = Wings (Plain, Classic)
marking-MothWingsClassicPlasmafire = Wings (Plasmafire, Classic)
marking-MothWingsClassicPoison = Wings (Poison, Classic)
marking-MothWingsClassicRagged = Wings (Ragged, Classic)
marking-MothWingsClassicReddish = Wings (Reddish, Classic)
marking-MothWingsClassicRosy = Wings (Rosy, Classic)
marking-MothWingsClassicRoyal = Wings (Royal, Classic)
marking-MothWingsClassicSnow = Wings (Snow, Classic)
# Frontier: Whitefly < White Fly
marking-MothWingsClassicWhitefly = Wings (Whitefly, Classic)
marking-MothWingsClassicWitchking = Wings (Witch King, Classic)
# Frontier: Deathshead < Death's-Head
marking-MothHeadClassicDeathshead = Moth Head (Death's-Head, Classic)
marking-MothChestClassicDeathshead = Moth Chest (Death's-Head, Classic)
marking-MothLArmClassicDeathshead = Moth Left Arm (Death's-Head, Classic)
marking-MothRArmClassicDeathshead = Moth Right Arm (Death's-Head, Classic)
marking-MothLLegClassicDeathshead = Moth Left Leg (Death's-Head, Classic)
marking-MothRLegClassicDeathshead = Moth Right Leg (Death's-Head, Classic)
marking-MothHeadClassicFirewatch = Moth Head (Firewatch, Classic)
marking-MothChestClassicFirewatch = Moth Chest (Firewatch, Classic)
marking-MothLArmClassicFirewatch = Moth Left Arm (Firewatch, Classic)
marking-MothRArmClassicFirewatch = Moth Right Arm (Firewatch, Classic)
marking-MothLLegClassicFirewatch = Moth Left Leg (Firewatch, Classic)
marking-MothRLegClassicFirewatch = Moth Right Leg (Firewatch, Classic)
marking-MothHeadClassicGothic = Moth Head (Gothic, Classic)
marking-MothChestClassicGothic = Moth Chest (Gothic, Classic)
marking-MothLArmClassicGothic = Moth Left Arm (Gothic, Classic)
marking-MothRArmClassicGothic = Moth Right Arm (Gothic, Classic)
marking-MothLLegClassicGothic = Moth Left Leg (Gothic, Classic)
marking-MothRLegClassicGothic = Moth Right Leg (Gothic, Classic)
marking-MothHeadClassicJungle = Moth Head (Jungle, Classic)
marking-MothChestClassicJungle = Moth Chest (Jungle, Classic)
marking-MothLArmClassicJungle = Moth Left Arm (Jungle, Classic)
marking-MothRArmClassicJungle = Moth Right Arm (Jungle, Classic)
marking-MothLLegClassicJungle = Moth Left Leg (Jungle, Classic)
marking-MothRLegClassicJungle = Moth Right Leg (Jungle, Classic)
marking-MothHeadClassicLovers = Moth Head (Lovers, Classic)
marking-MothChestClassicLovers = Moth Chest (Lovers, Classic)
marking-MothLArmClassicLovers = Moth Left Arm (Lovers, Classic)
marking-MothRArmClassicLovers = Moth Right Arm (Lovers, Classic)
marking-MothLLegClassicLovers = Moth Left Leg (Lovers, Classic)
marking-MothRLegClassicLovers = Moth Right Leg (Lovers, Classic)
marking-MothHeadClassicMoonfly = Moth Head (Moonfly, Classic)
marking-MothChestClassicMoonfly = Moth Chest (Moonfly, Classic)
marking-MothLArmClassicMoonfly = Moth Left Arm (Moonfly, Classic)
marking-MothRArmClassicMoonfly = Moth Right Arm (Moonfly, Classic)
marking-MothLLegClassicMoonfly = Moth Left Leg (Moonfly, Classic)
marking-MothRLegClassicMoonfly = Moth Right Leg (Moonfly, Classic)
# Frontier: Oakworm < Oak Worm
marking-MothHeadClassicOakworm = Moth Head (Oak Worm, Classic)
marking-MothChestClassicOakworm = Moth Chest (Oak Worm, Classic)
marking-MothLArmClassicOakworm = Moth Left Arm (Oak Worm, Classic)
marking-MothRArmClassicOakworm = Moth Right Arm (Oak Worm, Classic)
marking-MothLLegClassicOakworm = Moth Left Leg (Oak Worm, Classic)
marking-MothRLegClassicOakworm = Moth Right Leg (Oak Worm, Classic)
marking-MothHeadClassicPoison = Moth Head (Poison, Classic)
marking-MothChestClassicPoison = Moth Chest (Poison, Classic)
marking-MothLArmClassicPoison = Moth Left Arm (Poison, Classic)
marking-MothRArmClassicPoison = Moth Right Arm (Poison, Classic)
marking-MothLLegClassicPoison = Moth Left Leg (Poison, Classic)
marking-MothRLegClassicPoison = Moth Right Leg (Poison, Classic)
marking-MothHeadClassicRagged = Moth Head (Ragged, Classic)
marking-MothChestClassicRagged = Moth Chest (Ragged, Classic)
marking-MothLArmClassicRagged = Moth Left Arm (Ragged, Classic)
marking-MothRArmClassicRagged = Moth Right Arm (Ragged, Classic)
marking-MothLLegClassicRagged = Moth Left Leg (Ragged, Classic)
marking-MothRLegClassicRagged = Moth Right Leg (Ragged, Classic)
marking-MothHeadClassicReddish = Moth Head (Reddish, Classic)
marking-MothChestClassicReddish = Moth Chest (Reddish, Classic)
marking-MothLArmClassicReddish = Moth Left Arm (Reddish, Classic)
marking-MothRArmClassicReddish = Moth Right Arm (Reddish, Classic)
marking-MothLLegClassicReddish = Moth Left Leg (Reddish, Classic)
marking-MothRLegClassicReddish = Moth Right Leg (Reddish, Classic)
marking-MothHeadClassicRoyal = Moth Head (Royal, Classic)
marking-MothChestClassicRoyal = Moth Chest (Royal, Classic)
marking-MothLArmClassicRoyal = Moth Left Arm (Royal, Classic)
marking-MothRArmClassicRoyal = Moth Right Arm (Royal, Classic)
marking-MothLLegClassicRoyal = Moth Left Leg (Royal, Classic)
marking-MothRLegClassicRoyal = Moth Right Leg (Royal, Classic)
# Frontier: Whitefly < White Fly
marking-MothHeadClassicWhitefly = Moth Head (White Fly, Classic)
marking-MothChestClassicWhitefly = Moth Chest (White Fly, Classic)
marking-MothLArmClassicWhitefly = Moth Left Arm (White Fly, Classic)
marking-MothRArmClassicWhitefly = Moth Right Arm (White Fly, Classic)
marking-MothLLegClassicWhitefly = Moth Left Leg (White Fly, Classic)
marking-MothRLegClassicWhitefly = Moth Right Leg (White Fly, Classic)
# Frontier: Witchking < Witch King
marking-MothHeadClassicWitchking = Moth Head (Witch King, Classic)
marking-MothChestClassicWitchking = Moth Chest (Witch King, Classic)
marking-MothLArmClassicWitchking = Moth Left Arm (Witch King, Classic)
marking-MothRArmClassicWitchking = Moth Right Arm (Witch King, Classic)
marking-MothLLegClassicWitchking = Moth Left Leg (Witch King, Classic)
marking-MothRLegClassicWitchking = Moth Right Leg (Witch King, Classic)
3 changes: 0 additions & 3 deletions Resources/Maps/_NF/Shuttles/BlackMarket/barnacle.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,9 +48,6 @@ entities:
bodyType: Dynamic
- type: Fixtures
fixtures: {}
- type: IFF
color: '#FFC000FF'
flags: HideLabel
- type: OccluderTree
- type: Shuttle
- type: GridPathfinding
Expand Down
2 changes: 0 additions & 2 deletions Resources/Maps/_NF/Shuttles/BlackMarket/bocakillo.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,6 @@ entities:
bodyType: Dynamic
- type: Fixtures
fixtures: {}
- type: IFF
flags: HideLabel
- type: OccluderTree
- type: SpreaderGrid
- type: Shuttle
Expand Down
2 changes: 0 additions & 2 deletions Resources/Maps/_NF/Shuttles/BlackMarket/falcon.yml
Original file line number Diff line number Diff line change
Expand Up @@ -68,8 +68,6 @@ entities:
bodyType: Dynamic
- type: Fixtures
fixtures: {}
- type: IFF
flags: HideLabel
- type: OccluderTree
- type: SpreaderGrid
- type: Shuttle
Expand Down
Loading

0 comments on commit 5801821

Please sign in to comment.