Guildmaster YML implementation + Clothing pack (#832)
* banker clothing resprite * dinazewwr * commandant cape resprite * guildmaster cloak * Guildmaster loadout * guildmaster job icon * key locks work * map update * guildmaster keys * guildmaster stamp * update guildmaster house * track demiplanes * player death track * localization * guildmaster objective * Update empire_orders.yml * fix * fix map
@@ -2,11 +2,9 @@ using System.Linq;
|
||||
using System.Threading;
|
||||
using Content.Server._CP14.Demiplane.Components;
|
||||
using Content.Server._CP14.Demiplane.Jobs;
|
||||
using Content.Server._CP14.RoundEnd;
|
||||
using Content.Server.GameTicking;
|
||||
using Content.Shared._CP14.Demiplane.Components;
|
||||
using Content.Shared._CP14.Demiplane.Prototypes;
|
||||
using Content.Shared._CP14.MagicManacostModify;
|
||||
using Content.Shared.Examine;
|
||||
using Content.Shared.Interaction.Events;
|
||||
using Content.Shared.Verbs;
|
||||
@@ -158,6 +156,8 @@ public sealed partial class CP14DemiplaneSystem
|
||||
|
||||
SpawnRandomDemiplane(generator.Comp.Location.Value, generator.Comp.SelectedModifiers, out var demiplane, out var mapId);
|
||||
|
||||
_statistic.TrackAdd(generator.Comp.Statistic, 1);
|
||||
|
||||
//Admin log needed
|
||||
EnsureComp<CP14DemiplaneDestroyWithoutStabilizationComponent>(demiplane);
|
||||
|
||||
|
||||
@@ -81,10 +81,20 @@ public sealed partial class CP14DemiplaneSystem
|
||||
if (TryTeleportOutDemiplane(demiplane, uid))
|
||||
{
|
||||
if (!safe)
|
||||
{
|
||||
var ev = new CP14DemiplaneUnsafeExit();
|
||||
RaiseLocalEvent(uid, ev);
|
||||
|
||||
_body.GibBody(uid);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
QueueDel(demiplane);
|
||||
}
|
||||
}
|
||||
|
||||
public sealed class CP14DemiplaneUnsafeExit : EntityEventArgs
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
using Content.Server._CP14.RoundStatistic;
|
||||
using Content.Server.Flash;
|
||||
using Content.Server.Procedural;
|
||||
using Content.Shared._CP14.Demiplane;
|
||||
@@ -25,6 +26,7 @@ public sealed partial class CP14DemiplaneSystem : CP14SharedDemiplaneSystem
|
||||
[Dependency] private readonly FlashSystem _flash = default!;
|
||||
[Dependency] private readonly IGameTiming _timing = default!;
|
||||
[Dependency] private readonly SharedPopupSystem _popup = default!;
|
||||
[Dependency] private readonly CP14RoundStatTrackerSystem _statistic = default!;
|
||||
|
||||
public override void Initialize()
|
||||
{
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using Content.Shared._CP14.Demiplane.Prototypes;
|
||||
using Content.Shared._CP14.RoundStatistic;
|
||||
using Robust.Shared.Prototypes;
|
||||
|
||||
namespace Content.Server._CP14.Demiplane.Components;
|
||||
@@ -23,4 +24,7 @@ public sealed partial class CP14DemiplaneGeneratorDataComponent : Component
|
||||
|
||||
[DataField(required: true)]
|
||||
public Dictionary<ProtoId<CP14DemiplaneModifierCategoryPrototype>, float> Limits;
|
||||
|
||||
[DataField]
|
||||
public ProtoId<CP14RoundStatTrackerPrototype> Statistic = "DemiplaneOpen";
|
||||
}
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
using Content.Server._CP14.Objectives.Systems;
|
||||
using Content.Shared._CP14.RoundStatistic;
|
||||
using Content.Shared.Destructible.Thresholds;
|
||||
using Robust.Shared.Prototypes;
|
||||
using Robust.Shared.Utility;
|
||||
|
||||
namespace Content.Server._CP14.Objectives.Components;
|
||||
|
||||
[RegisterComponent, Access(typeof(CP14StatisticRangeConditionSystem))]
|
||||
public sealed partial class CP14StatisticRangeConditionComponent : Component
|
||||
{
|
||||
[DataField(required: true)]
|
||||
public ProtoId<CP14RoundStatTrackerPrototype> Statistic;
|
||||
|
||||
[DataField(required: true)]
|
||||
public MinMax Range;
|
||||
|
||||
[DataField(required: true)]
|
||||
public LocId ObjectiveText;
|
||||
|
||||
[DataField(required: true)]
|
||||
public LocId ObjectiveDescription;
|
||||
|
||||
[DataField(required: true)]
|
||||
public SpriteSpecifier? ObjectiveSprite;
|
||||
}
|
||||
@@ -38,5 +38,5 @@ public sealed partial class CP14TownSendConditionComponent : Component
|
||||
public LocId ObjectiveText;
|
||||
|
||||
[DataField(required: true)]
|
||||
public LocId DescriptionText;
|
||||
public LocId ObjectiveDescription;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,54 @@
|
||||
using Content.Server._CP14.Objectives.Components;
|
||||
using Content.Server._CP14.RoundStatistic;
|
||||
using Content.Shared.Objectives.Components;
|
||||
using Content.Shared.Objectives.Systems;
|
||||
using Robust.Shared.Prototypes;
|
||||
using Robust.Shared.Random;
|
||||
|
||||
namespace Content.Server._CP14.Objectives.Systems;
|
||||
|
||||
public sealed class CP14StatisticRangeConditionSystem : EntitySystem
|
||||
{
|
||||
[Dependency] private readonly IRobustRandom _random = default!;
|
||||
[Dependency] private readonly IPrototypeManager _proto = default!;
|
||||
[Dependency] private readonly MetaDataSystem _metaData = default!;
|
||||
[Dependency] private readonly SharedObjectivesSystem _objectives = default!;
|
||||
[Dependency] private readonly CP14RoundStatTrackerSystem _statistic = default!;
|
||||
|
||||
public override void Initialize()
|
||||
{
|
||||
base.Initialize();
|
||||
|
||||
SubscribeLocalEvent<CP14StatisticRangeConditionComponent, ObjectiveAfterAssignEvent>(OnAfterAssign);
|
||||
SubscribeLocalEvent<CP14StatisticRangeConditionComponent, ObjectiveGetProgressEvent>(OnGetProgress);
|
||||
}
|
||||
|
||||
private void OnAfterAssign(Entity<CP14StatisticRangeConditionComponent> condition, ref ObjectiveAfterAssignEvent args)
|
||||
{
|
||||
var title = Loc.GetString(condition.Comp.ObjectiveText,
|
||||
("min", condition.Comp.Range.Min),
|
||||
("max", condition.Comp.Range.Max));
|
||||
|
||||
var description = Loc.GetString(condition.Comp.ObjectiveDescription,
|
||||
("min", condition.Comp.Range.Min),
|
||||
("max", condition.Comp.Range.Max));
|
||||
|
||||
_metaData.SetEntityName(condition.Owner, title, args.Meta);
|
||||
_metaData.SetEntityDescription(condition.Owner, description, args.Meta);
|
||||
if (condition.Comp.ObjectiveSprite is not null)
|
||||
_objectives.SetIcon(condition.Owner, condition.Comp.ObjectiveSprite, args.Objective);
|
||||
}
|
||||
|
||||
private void OnGetProgress(Entity<CP14StatisticRangeConditionComponent> ent, ref ObjectiveGetProgressEvent args)
|
||||
{
|
||||
var statValue = _statistic.GetTrack(ent.Comp.Statistic);
|
||||
|
||||
if (statValue is null || statValue > ent.Comp.Range.Max || statValue < ent.Comp.Range.Min)
|
||||
{
|
||||
args.Progress = 0;
|
||||
return;
|
||||
}
|
||||
|
||||
args.Progress = 1;
|
||||
}
|
||||
}
|
||||
@@ -26,7 +26,6 @@ public sealed class CP14TownSendConditionSystem : EntitySystem
|
||||
_stealQuery = GetEntityQuery<StealTargetComponent>();
|
||||
_stackQuery = GetEntityQuery<StackComponent>();
|
||||
|
||||
SubscribeLocalEvent<CP14TownSendConditionComponent, ObjectiveAssignedEvent>(OnAssigned);
|
||||
SubscribeLocalEvent<CP14TownSendConditionComponent, ObjectiveAfterAssignEvent>(OnAfterAssign);
|
||||
SubscribeLocalEvent<CP14TownSendConditionComponent, ObjectiveGetProgressEvent>(OnGetProgress);
|
||||
|
||||
@@ -72,12 +71,6 @@ public sealed class CP14TownSendConditionSystem : EntitySystem
|
||||
}
|
||||
}
|
||||
|
||||
private void OnAssigned(Entity<CP14TownSendConditionComponent> condition, ref ObjectiveAssignedEvent args)
|
||||
{
|
||||
//TODO: Add ability to create mindfree objectives to Wizden
|
||||
//condition.Comp.CollectionSize = _random.Next(condition.Comp.MinCollectionSize, condition.Comp.MaxCollectionSize);
|
||||
}
|
||||
|
||||
//Set the visual, name, icon for the objective.
|
||||
private void OnAfterAssign(Entity<CP14TownSendConditionComponent> condition, ref ObjectiveAfterAssignEvent args)
|
||||
{
|
||||
@@ -86,7 +79,7 @@ public sealed class CP14TownSendConditionSystem : EntitySystem
|
||||
var group = _proto.Index(condition.Comp.CollectGroup);
|
||||
|
||||
var title = Loc.GetString(condition.Comp.ObjectiveText, ("itemName", Loc.GetString(group.Name)), ("count", condition.Comp.CollectionSize));
|
||||
var description = Loc.GetString(condition.Comp.DescriptionText, ("itemName", Loc.GetString(group.Name)), ("count", condition.Comp.CollectionSize));
|
||||
var description = Loc.GetString(condition.Comp.ObjectiveDescription, ("itemName", Loc.GetString(group.Name)), ("count", condition.Comp.CollectionSize));
|
||||
|
||||
_metaData.SetEntityName(condition.Owner, title, args.Meta);
|
||||
_metaData.SetEntityDescription(condition.Owner, description, args.Meta);
|
||||
|
||||
@@ -0,0 +1,71 @@
|
||||
using System.Text;
|
||||
using Content.Server.GameTicking;
|
||||
using Content.Shared._CP14.RoundStatistic;
|
||||
using Content.Shared.GameTicking;
|
||||
using Robust.Shared.Prototypes;
|
||||
|
||||
namespace Content.Server._CP14.RoundStatistic;
|
||||
|
||||
public sealed partial class CP14RoundStatTrackerSystem : EntitySystem
|
||||
{
|
||||
[Dependency] private readonly IPrototypeManager _proto = default!;
|
||||
|
||||
private readonly Dictionary<ProtoId<CP14RoundStatTrackerPrototype>, int> _tracking = new();
|
||||
|
||||
public override void Initialize()
|
||||
{
|
||||
base.Initialize();
|
||||
InitializeDemiplaneDeath();
|
||||
|
||||
SubscribeLocalEvent<RoundRestartCleanupEvent>(OnRoundReset);
|
||||
SubscribeLocalEvent<RoundEndTextAppendEvent>(OnRoundEndTextAppend);
|
||||
ClearStatistic();
|
||||
}
|
||||
|
||||
private void OnRoundReset(RoundRestartCleanupEvent ev)
|
||||
{
|
||||
ClearStatistic();
|
||||
}
|
||||
|
||||
private void OnRoundEndTextAppend(RoundEndTextAppendEvent ev)
|
||||
{
|
||||
//TODO: Move to separate UI Text block
|
||||
var sb = new StringBuilder();
|
||||
|
||||
sb.Append($"[head=3]{Loc.GetString("cp14-tracker-header")}[/head] \n");
|
||||
foreach (var pair in _tracking)
|
||||
{
|
||||
if (!_proto.TryIndex(pair.Key, out var indexedTracker))
|
||||
continue;
|
||||
|
||||
sb.Append($"- {Loc.GetString(indexedTracker.Text)}: {pair.Value}\n");
|
||||
}
|
||||
ev.AddLine(sb.ToString());
|
||||
}
|
||||
|
||||
private void ClearStatistic()
|
||||
{
|
||||
_tracking.Clear();
|
||||
|
||||
foreach (var statTracker in _proto.EnumeratePrototypes<CP14RoundStatTrackerPrototype>())
|
||||
{
|
||||
_tracking.Add(statTracker.ID, 0);
|
||||
}
|
||||
}
|
||||
|
||||
public void TrackAdd(ProtoId<CP14RoundStatTrackerPrototype> proto, int dif)
|
||||
{
|
||||
_tracking[proto] += Math.Max(dif, 0);
|
||||
}
|
||||
|
||||
public int? GetTrack(ProtoId<CP14RoundStatTrackerPrototype> proto)
|
||||
{
|
||||
if (!_tracking.TryGetValue(proto, out var stat))
|
||||
{
|
||||
Log.Error($"Failed to get round statistic: {proto}");
|
||||
return null;
|
||||
}
|
||||
|
||||
return stat;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
using Content.Shared._CP14.RoundStatistic;
|
||||
using Robust.Shared.Prototypes;
|
||||
|
||||
namespace Content.Server._CP14.RoundStatistic.DemiplaneDeath;
|
||||
|
||||
/// <summary>
|
||||
/// Tracks the destruction or full-blown death of this entity.
|
||||
/// </summary>
|
||||
[RegisterComponent]
|
||||
public sealed partial class CP14DeathDemiplaneStatisticComponent : Component
|
||||
{
|
||||
[DataField]
|
||||
public ProtoId<CP14RoundStatTrackerPrototype> Statistic = "DemiplaneDeaths";
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
using Content.Server._CP14.Demiplane;
|
||||
using Content.Server._CP14.RoundStatistic.DemiplaneDeath;
|
||||
using Content.Shared._CP14.Demiplane.Components;
|
||||
using Content.Shared.GameTicking;
|
||||
|
||||
namespace Content.Server._CP14.RoundStatistic;
|
||||
|
||||
public sealed partial class CP14RoundStatTrackerSystem
|
||||
{
|
||||
private void InitializeDemiplaneDeath()
|
||||
{
|
||||
SubscribeLocalEvent<PlayerSpawnCompleteEvent>(OnSpawnComplete);
|
||||
SubscribeLocalEvent<CP14DeathDemiplaneStatisticComponent, EntityTerminatingEvent>(OnEntityTerminated);
|
||||
SubscribeLocalEvent<CP14DeathDemiplaneStatisticComponent, CP14DemiplaneUnsafeExit>(OnDemiplaneUnsafeExit);
|
||||
}
|
||||
|
||||
private void OnSpawnComplete(PlayerSpawnCompleteEvent ev)
|
||||
{
|
||||
EnsureComp<CP14DeathDemiplaneStatisticComponent>(ev.Mob);
|
||||
}
|
||||
|
||||
private void OnDemiplaneUnsafeExit(Entity<CP14DeathDemiplaneStatisticComponent> ent, ref CP14DemiplaneUnsafeExit args)
|
||||
{
|
||||
TrackAdd(ent.Comp.Statistic, 1);
|
||||
}
|
||||
|
||||
//For round remove variants, like gibs or chasm falls
|
||||
private void OnEntityTerminated(Entity<CP14DeathDemiplaneStatisticComponent> ent, ref EntityTerminatingEvent args)
|
||||
{
|
||||
if (!HasComp<CP14DemiplaneComponent>(Transform(ent).MapUid))
|
||||
return;
|
||||
|
||||
TrackAdd(ent.Comp.Statistic, 1);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
using Robust.Shared.Prototypes;
|
||||
|
||||
namespace Content.Shared._CP14.RoundStatistic;
|
||||
|
||||
[Prototype("statisticTracker")]
|
||||
public sealed partial class CP14RoundStatTrackerPrototype : IPrototype
|
||||
{
|
||||
[IdDataField] public string ID { get; } = default!;
|
||||
|
||||
[DataField(required: true)]
|
||||
public LocId Text;
|
||||
}
|
||||
@@ -42,6 +42,14 @@ cp14-loadout-guard-spells = Guard's spells
|
||||
cp14-loadout-bank-head = Bank employee hat
|
||||
cp14-loadout-commandant-head = Commandant's hat
|
||||
cp14-loadout-commandant-cloak = Commandant's cloak
|
||||
cp14-loadout-banker-outer = Banker's waistcoat
|
||||
cp14-loadout-bank-shirt = Bank Employee shirt
|
||||
cp14-loadout-bank-pants = Bank Employee pants
|
||||
cp14-loadout-bank-shoes = Bank Employee shoes
|
||||
|
||||
# Guildmaster
|
||||
|
||||
cp14-loadout-guildmaster-cloak = Guildmaster cloak
|
||||
cp14-loadout-guildmaster-shirt = Guildmaster shirt
|
||||
cp14-loadout-guildmaster-pants = Guildmaster pants
|
||||
cp14-loadout-guildmaster-shoes = Guildmaster shoes
|
||||
@@ -14,9 +14,11 @@ cp14-lock-shape-tavern-dorm5 = tavern room №5
|
||||
|
||||
cp14-lock-shape-alchemist1 = alchemist's lab №1
|
||||
cp14-lock-shape-alchemist2 = alchemist's lab №2
|
||||
cp14-lock-shape-alchemist3 = alchemist's lab №3
|
||||
|
||||
cp14-lock-shape-blacksmith1 = forge №1
|
||||
cp14-lock-shape-blacksmith2 = forge №2
|
||||
cp14-lock-shape-blacksmith3 = forge №3
|
||||
|
||||
cp14-lock-shape-personalhouse1 = house №1
|
||||
cp14-lock-shape-personalhouse2 = house №2
|
||||
@@ -33,9 +35,12 @@ cp14-lock-shape-personalhouse12 = house №12
|
||||
cp14-lock-shape-personalhouse13 = house №13
|
||||
cp14-lock-shape-personalhouse14 = house №14
|
||||
cp14-lock-shape-personalhouse15 = house №15
|
||||
cp14-lock-shape-personalhouse16 = house №16
|
||||
|
||||
cp14-lock-shaper-guard-entrance = barracks, entrance
|
||||
cp14-lock-shaper-guard-staff = barracks
|
||||
cp14-lock-shaper-guard-commander = guardhouse
|
||||
cp14-lock-shaper-guard-weapon-storage = weapons storage
|
||||
cp14-lock-shape-guildmaster = guildmaster
|
||||
|
||||
cp14-lock-shape-guildmaster = guildmaster
|
||||
cp14-lock-shape-demiplane-crystal = demiplane crystal
|
||||
@@ -4,4 +4,7 @@ cp14-objective-town-send-title = Extract { $count } { $itemName }
|
||||
cp14-objective-town-send-desc = Your task is to mine and ship { $count } { $itemName } to the city on a merchant ship.
|
||||
|
||||
cp14-objective-bank-earning-title = Accumulate in the vault{ $coins }
|
||||
cp14-objective-bank-earning-desc = There must be at least{ $coins } in the bank vault. You can use any methods of earning money that do not violate the law.
|
||||
cp14-objective-bank-earning-desc = There must be at least{ $coins } in the bank vault. You can use any methods of earning money that do not violate the law.
|
||||
|
||||
cp14-objective-no-demiplane-death-title = Prevent deaths in the demiplanes
|
||||
cp14-objective-no-demiplane-death-desc = I need to control the work of the adventurers so they don't die in the demiplanes. No more {$max} deaths!
|
||||
@@ -3,4 +3,5 @@ cp14-stamp-salary = Intendant of the Guard
|
||||
cp14-stamp-denied = Denied
|
||||
cp14-stamp-approved = Approved
|
||||
cp14-stamp-bank = Commandant
|
||||
cp14-stamp-guard-commander = Guard commander
|
||||
cp14-stamp-guard-commander = Guard commander
|
||||
cp14-stamp-guildmaster = Guildmaster
|
||||
@@ -0,0 +1,4 @@
|
||||
cp14-tracker-header = Round statistic:
|
||||
|
||||
cp14-tracker-demiplane-open = Demiplanes opened
|
||||
cp14-tracker-demiplane-deaths = Players died in demiplanes
|
||||
@@ -44,6 +44,14 @@ cp14-loadout-guard-spells = Заклинания стражи
|
||||
cp14-loadout-bank-head = Шляпа работника банка
|
||||
cp14-loadout-commandant-head = Шляпа коменданта
|
||||
cp14-loadout-commandant-cloak = Накидка коменданта
|
||||
cp14-loadout-banker-outer = Жилет банкира
|
||||
cp14-loadout-bank-shirt = Рубашка работника банка
|
||||
cp14-loadout-bank-pants = Штаны работника банка
|
||||
cp14-loadout-bank-shoes = Ботинки работника банка
|
||||
|
||||
# Guildmaster
|
||||
|
||||
cp14-loadout-guildmaster-cloak = Накидка гильдмастера
|
||||
cp14-loadout-guildmaster-shirt = Рубашка гильдмастера
|
||||
cp14-loadout-guildmaster-pants = Штаны гильдмастера
|
||||
cp14-loadout-guildmaster-shoes = Ботинки гильдмастера
|
||||
@@ -14,9 +14,11 @@ cp14-lock-shape-tavern-dorm5 = комната таверны №5
|
||||
|
||||
cp14-lock-shape-alchemist1 = лаборатория алхимика №1
|
||||
cp14-lock-shape-alchemist2 = лаборатория алхимика №2
|
||||
cp14-lock-shape-alchemist3 = лаборатория алхимика №3
|
||||
|
||||
cp14-lock-shape-blacksmith1 = кузня №1
|
||||
cp14-lock-shape-blacksmith2 = кузня №2
|
||||
cp14-lock-shape-blacksmith3 = кузня №3
|
||||
|
||||
cp14-lock-shape-personalhouse1 = дом №1
|
||||
cp14-lock-shape-personalhouse2 = дом №2
|
||||
@@ -33,9 +35,12 @@ cp14-lock-shape-personalhouse12 = дом №12
|
||||
cp14-lock-shape-personalhouse13 = дом №13
|
||||
cp14-lock-shape-personalhouse14 = дом №14
|
||||
cp14-lock-shape-personalhouse15 = дом №15
|
||||
cp14-lock-shape-personalhouse16 = дом №16
|
||||
|
||||
cp14-lock-shaper-guard-entrance = казармы, вход
|
||||
cp14-lock-shaper-guard-staff = казармы
|
||||
cp14-lock-shaper-guard-commander = дом главы стражи
|
||||
cp14-lock-shaper-guard-weapon-storage = хранилище оружия
|
||||
cp14-lock-shape-guildmaster = гильдмастер
|
||||
|
||||
cp14-lock-shape-guildmaster = гильдмастер
|
||||
cp14-lock-shape-demiplane-crystal = кристалл демиплана
|
||||
@@ -4,4 +4,7 @@ cp14-objective-town-send-title = Добыть { $count } { $itemName }
|
||||
cp14-objective-town-send-desc = Ваша задача - добыть и отправить { $count } { $itemName } в город на торговом корабле.
|
||||
|
||||
cp14-objective-bank-earning-title = Накопить в хранилище{ $coins }
|
||||
cp14-objective-bank-earning-desc = В банковском хранилище должно находиться не меньше{ $coins }. Вы можете использовать любые методы заработка, не нарушающие закон.
|
||||
cp14-objective-bank-earning-desc = В банковском хранилище должно находиться не меньше{ $coins }. Вы можете использовать любые методы заработка, не нарушающие закон.
|
||||
|
||||
cp14-objective-no-demiplane-death-title = Не допустить смертей в демипланах
|
||||
cp14-objective-no-demiplane-death-desc = Мне нужно контролировать работу авантюристов, чтобы они не погибали в демипланах. Не больше {$max} смертей!
|
||||
@@ -3,4 +3,5 @@ cp14-stamp-salary = Интендант гвардии
|
||||
cp14-stamp-denied = Отказано
|
||||
cp14-stamp-approved = Утверждено
|
||||
cp14-stamp-bank = Комендант
|
||||
cp14-stamp-guard-commander = Командир стражи
|
||||
cp14-stamp-guard-commander = Командир стражи
|
||||
cp14-stamp-guildmaster = Гильдмастер
|
||||
@@ -0,0 +1,4 @@
|
||||
cp14-tracker-header = Статистика раунда:
|
||||
|
||||
cp14-tracker-demiplane-open = Открыто демипланов
|
||||
cp14-tracker-demiplane-deaths = Умерло игроков в демипланах
|
||||
@@ -80,6 +80,7 @@
|
||||
- id: CP14StampDenied
|
||||
- id: CP14StampApproved
|
||||
- id: CP14StampCommandant
|
||||
- id: CP14PaperFolderBlue
|
||||
|
||||
- type: entity
|
||||
parent: CP14SafeVault
|
||||
@@ -167,4 +168,17 @@
|
||||
- id: CP14EnergyCrystalSmall
|
||||
- id: CP14CrystalLampBlueEmpty
|
||||
- id: CP14StampGuardCommander
|
||||
- id: CP14BookImperialLawsHandBook
|
||||
- id: CP14BookImperialLawsHandBook
|
||||
|
||||
- type: entity
|
||||
parent: CP14WoodenCloset
|
||||
id: CP14WoodenClosetGuildmasterFilled
|
||||
suffix: Guildmaster, Filled
|
||||
components:
|
||||
- type: StorageFill
|
||||
contents:
|
||||
- id: CP14StampGuildmaster
|
||||
- id: HandLabeler #TODO custom cp14 labeler
|
||||
- id: CP14StampDenied
|
||||
- id: CP14StampApproved
|
||||
- id: CP14PaperFolderBlue
|
||||
@@ -94,4 +94,18 @@
|
||||
- id: CP14ClothingShirtGuardsChainmailShirtB
|
||||
prob: 0.7
|
||||
- id: CP14ClothingCloakGuardCommander
|
||||
prob: 1
|
||||
prob: 1
|
||||
|
||||
- type: entity
|
||||
parent: CP14WoodenCabinet
|
||||
id: CP14WoodenCabinetGuildmaster
|
||||
suffix: Guildmaster, Filled
|
||||
components:
|
||||
- type: StorageFill
|
||||
contents:
|
||||
- id: CP14ClothingCloakGuildmasterCape
|
||||
prob: 1
|
||||
- id: CP14ClothingShirtGuildmasterVest
|
||||
prob: 0.6
|
||||
- id: CP14ClothingShirtGuildmasterVest2
|
||||
prob: 0.6
|
||||
@@ -1,12 +1,11 @@
|
||||
- type: entity
|
||||
parent:
|
||||
- CP14ClothingCloakBase
|
||||
- ClothingSlotBase
|
||||
id: CP14ClothingCloakCommandantJacket
|
||||
name: commandant's jacket
|
||||
description: the colors white and gold tell you that you're looking at a higher power.
|
||||
id: CP14ClothingCloakCommandantJacket #TODO: Rename from Jacket to Cape
|
||||
name: commandant's cape
|
||||
description: The colors white and gold tell you that you're looking at a higher power.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _CP14/Clothing/Cloak/Roles/Bank/commandant_jacket.rsi
|
||||
sprite: _CP14/Clothing/Cloak/Roles/Bank/commandant_cape.rsi
|
||||
- type: Clothing
|
||||
sprite: _CP14/Clothing/Cloak/Roles/Bank/commandant_jacket.rsi
|
||||
sprite: _CP14/Clothing/Cloak/Roles/Bank/commandant_cape.rsi
|
||||
@@ -0,0 +1,11 @@
|
||||
- type: entity
|
||||
parent:
|
||||
- CP14ClothingCloakBase
|
||||
id: CP14ClothingCloakGuildmasterCape
|
||||
name: guildmaster cape
|
||||
description: The colors green and gold tell you that you're looking at a higher power.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _CP14/Clothing/Cloak/Roles/Mercenary/guildmaster_cape.rsi
|
||||
- type: Clothing
|
||||
sprite: _CP14/Clothing/Cloak/Roles/Mercenary/guildmaster_cape.rsi
|
||||
@@ -0,0 +1,22 @@
|
||||
- type: entity
|
||||
parent:
|
||||
- ClothingSlotBase
|
||||
- CP14ClothingOuterClothingBase
|
||||
id: CP14ClothingOuterClothingBankerWaistCoat
|
||||
name: "banker's waistcoat"
|
||||
description: Stylish waistcoat made of expensive leather. A special uniform for bank employees that makes customers feel like beggars.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _CP14/Clothing/OuterClothing/Roles/Bank/vest_banker.rsi
|
||||
- type: Clothing
|
||||
sprite: _CP14/Clothing/OuterClothing/Roles/Bank/vest_banker.rsi
|
||||
|
||||
- type: entity
|
||||
parent: CP14ClothingOuterClothingBankerWaistCoat
|
||||
id: CP14ClothingOuterClothingBankerWaistCoatOpen
|
||||
name: "open banker's waistcoat"
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _CP14/Clothing/OuterClothing/Roles/Bank/vest_banker_open.rsi
|
||||
- type: Clothing
|
||||
sprite: _CP14/Clothing/OuterClothing/Roles/Bank/vest_banker_open.rsi
|
||||
@@ -147,25 +147,6 @@
|
||||
- type: Clothing
|
||||
sprite: _CP14/Clothing/Shirt/Roles/General/white_collar.rsi
|
||||
|
||||
- type: entity
|
||||
parent: CP14ClothingShirtBase
|
||||
id: CP14ClothingShirtCottonWhiteGreenVest
|
||||
name: cotton white green vest shirt
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _CP14/Clothing/Shirt/Roles/General/white_green_vest.rsi
|
||||
- type: Clothing
|
||||
sprite: _CP14/Clothing/Shirt/Roles/General/white_green_vest.rsi
|
||||
|
||||
- type: entity
|
||||
parent: CP14ClothingShirtCottonWhiteGreenVest
|
||||
id: CP14ClothingShirtCottonWhiteGreenVest2
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _CP14/Clothing/Shirt/Roles/General/white_green_vest2.rsi
|
||||
- type: Clothing
|
||||
sprite: _CP14/Clothing/Shirt/Roles/General/white_green_vest2.rsi
|
||||
|
||||
- type: entity
|
||||
parent: CP14ClothingShirtBase
|
||||
id: CP14ClothingShirtCottonYellow
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
- type: entity
|
||||
parent: CP14ClothingShirtBase
|
||||
id: CP14ClothingShirtGuildmasterVest
|
||||
name: cotton white green vest shirt
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _CP14/Clothing/Shirt/Roles/Mercenary/guildmaster_vest.rsi
|
||||
- type: Clothing
|
||||
sprite: _CP14/Clothing/Shirt/Roles/Mercenary/guildmaster_vest.rsi
|
||||
|
||||
- type: entity
|
||||
parent: CP14ClothingShirtGuildmasterVest
|
||||
id: CP14ClothingShirtGuildmasterVest2
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _CP14/Clothing/Shirt/Roles/Mercenary/guildmaster_vest2.rsi
|
||||
- type: Clothing
|
||||
sprite: _CP14/Clothing/Shirt/Roles/Mercenary/guildmaster_vest2.rsi
|
||||
@@ -96,8 +96,7 @@
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: green
|
||||
- state: adventurer #TODO
|
||||
color: red
|
||||
- state: guildmaster
|
||||
|
||||
# Artisans
|
||||
|
||||
|
||||
@@ -337,15 +337,24 @@
|
||||
- map: [ "enum.HumanoidVisualLayers.LArm" ]
|
||||
- map: [ "enum.HumanoidVisualLayers.RLeg" ]
|
||||
- map: [ "enum.HumanoidVisualLayers.LLeg" ]
|
||||
- map: [ "shirt" ]
|
||||
- map: [ "pants" ]
|
||||
- shader: StencilClear
|
||||
sprite: _CP14/Mobs/Species/Human/parts.rsi
|
||||
state: l_leg
|
||||
- shader: StencilMask
|
||||
map: [ "enum.HumanoidVisualLayers.StencilMask" ]
|
||||
sprite: Mobs/Customization/masking_helpers.rsi
|
||||
state: unisex_full
|
||||
visible: false
|
||||
- map: [ "enum.HumanoidVisualLayers.LFoot" ]
|
||||
- map: [ "enum.HumanoidVisualLayers.RFoot" ]
|
||||
- map: [ "shoes" ]
|
||||
- map: [ "shirt" ]
|
||||
- map: [ "pants" ]
|
||||
- map: [ "enum.HumanoidVisualLayers.LHand" ]
|
||||
- map: [ "enum.HumanoidVisualLayers.RHand" ]
|
||||
- map: [ "gloves" ]
|
||||
- map: [ "shoes" ]
|
||||
- map: [ "ears" ]
|
||||
- map: [ "outerClothing" ]
|
||||
- map: [ "cloak" ]
|
||||
- map: [ "eyes" ]
|
||||
- map: [ "belt1" ]
|
||||
|
||||
@@ -132,17 +132,18 @@
|
||||
sprite: Mobs/Customization/masking_helpers.rsi
|
||||
state: unisex_full
|
||||
visible: false
|
||||
- map: [ "shirt" ]
|
||||
- map: [ "pants" ]
|
||||
- map: [ "enum.HumanoidVisualLayers.LFoot" ]
|
||||
- map: [ "enum.HumanoidVisualLayers.RFoot" ]
|
||||
- map: [ "shoes" ]
|
||||
- map: [ "shirt" ]
|
||||
- map: [ "pants" ]
|
||||
- map: [ "enum.HumanoidVisualLayers.LHand" ]
|
||||
- map: [ "enum.HumanoidVisualLayers.RHand" ]
|
||||
- map: [ "enum.HumanoidVisualLayers.HeadSide" ] # Bark Before clothing
|
||||
- map: [ "enum.HumanoidVisualLayers.HeadTop" ] # Bark Before clothing
|
||||
- map: [ "gloves" ]
|
||||
- map: [ "shoes" ]
|
||||
- map: [ "ears" ]
|
||||
- map: [ "outerClothing" ]
|
||||
- map: [ "cloak" ]
|
||||
- map: [ "eyes" ]
|
||||
- map: [ "belt1" ]
|
||||
|
||||
@@ -69,4 +69,17 @@
|
||||
stampedColor: "#436a92"
|
||||
stampState: "guard_on_paper"
|
||||
- type: Sprite
|
||||
state: guard
|
||||
state: guard
|
||||
|
||||
- type: entity
|
||||
id: CP14StampGuildmaster
|
||||
parent: CP14StampBase
|
||||
name: guildmaster stamp
|
||||
suffix: DO NOT MAP
|
||||
components:
|
||||
- type: Stamp
|
||||
stampedName: cp14-stamp-guildmaster
|
||||
stampedColor: "#115c41"
|
||||
stampState: "guildmaster_on_paper"
|
||||
- type: Sprite
|
||||
state: guildmaster
|
||||
@@ -0,0 +1,15 @@
|
||||
- type: entity
|
||||
parent: CP14BaseKey
|
||||
id: CP14KeyGuildmaster
|
||||
suffix: Guildmaster
|
||||
components:
|
||||
- type: CP14Key
|
||||
autoGenerateShape: Guildmaster
|
||||
|
||||
- type: entity
|
||||
parent: CP14BaseKey
|
||||
id: CP14KeyDemiplaneCrystal
|
||||
suffix: Demiplane Crystal
|
||||
components:
|
||||
- type: CP14Key
|
||||
autoGenerateShape: DemiplaneCrystal
|
||||
@@ -124,3 +124,13 @@
|
||||
- id: CP14KeyGuard
|
||||
- id: CP14KeyGuardCommander
|
||||
#- id: CP14KeyGuardWeaponStorage
|
||||
|
||||
- type: entity
|
||||
parent: CP14BaseKeyRing
|
||||
id: CP14KeyRingGuildmaster
|
||||
suffix: Guildmaster
|
||||
components:
|
||||
- type: StorageFill
|
||||
contents:
|
||||
- id: CP14KeyGuildmaster
|
||||
- id: CP14KeyDemiplaneCrystal
|
||||
|
||||
@@ -89,4 +89,52 @@
|
||||
suffix: PersonalHouse10
|
||||
components:
|
||||
- type: CP14Key
|
||||
autoGenerateShape: PersonalHouse10
|
||||
autoGenerateShape: PersonalHouse10
|
||||
|
||||
- type: entity
|
||||
parent: CP14BaseKey
|
||||
id: CP14KeyPersonalHouse11
|
||||
suffix: PersonalHouse11
|
||||
components:
|
||||
- type: CP14Key
|
||||
autoGenerateShape: PersonalHouse11
|
||||
|
||||
- type: entity
|
||||
parent: CP14BaseKey
|
||||
id: CP14KeyPersonalHouse12
|
||||
suffix: PersonalHouse12
|
||||
components:
|
||||
- type: CP14Key
|
||||
autoGenerateShape: PersonalHouse12
|
||||
|
||||
- type: entity
|
||||
parent: CP14BaseKey
|
||||
id: CP14KeyPersonalHouse13
|
||||
suffix: PersonalHouse13
|
||||
components:
|
||||
- type: CP14Key
|
||||
autoGenerateShape: PersonalHouse13
|
||||
|
||||
- type: entity
|
||||
parent: CP14BaseKey
|
||||
id: CP14KeyPersonalHouse14
|
||||
suffix: PersonalHouse14
|
||||
components:
|
||||
- type: CP14Key
|
||||
autoGenerateShape: PersonalHouse14
|
||||
|
||||
- type: entity
|
||||
parent: CP14BaseKey
|
||||
id: CP14KeyPersonalHouse15
|
||||
suffix: PersonalHouse15
|
||||
components:
|
||||
- type: CP14Key
|
||||
autoGenerateShape: PersonalHouse15
|
||||
|
||||
- type: entity
|
||||
parent: CP14BaseKey
|
||||
id: CP14KeyPersonalHouse16
|
||||
suffix: PersonalHouse16
|
||||
components:
|
||||
- type: CP14Key
|
||||
autoGenerateShape: PersonalHouse16
|
||||
@@ -32,4 +32,21 @@
|
||||
- CP14WoodenDoorTavernAlchemy2
|
||||
- CP14WoodenDoorMirrored
|
||||
id: CP14WoodenDoorTavernAlchemyMirrored2
|
||||
suffix: Alchemy 2, Mirrored
|
||||
suffix: Alchemy 2, Mirrored
|
||||
|
||||
- type: entity
|
||||
parent: CP14WoodenDoor
|
||||
id: CP14WoodenDoorTavernAlchemy3
|
||||
suffix: Alchemy 3
|
||||
components:
|
||||
- type: CP14Lock
|
||||
autoGenerateShape: Alchemy3
|
||||
- type: Lock
|
||||
locked: true
|
||||
|
||||
- type: entity
|
||||
parent:
|
||||
- CP14WoodenDoorTavernAlchemy3
|
||||
- CP14WoodenDoorMirrored
|
||||
id: CP14WoodenDoorTavernAlchemyMirrored3
|
||||
suffix: Alchemy 3, Mirrored
|
||||
@@ -30,4 +30,21 @@
|
||||
- CP14IronDoorBlacksmith2
|
||||
- CP14IronDoorMirrored
|
||||
id: CP14IronDoorMirroredBlacksmith2
|
||||
suffix: Blacksmith 2, Mirrored
|
||||
suffix: Blacksmith 2, Mirrored
|
||||
|
||||
- type: entity
|
||||
parent: CP14IronDoor
|
||||
id: CP14IronDoorBlacksmith3
|
||||
suffix: Blacksmith 3
|
||||
components:
|
||||
- type: CP14Lock
|
||||
autoGenerateShape: Blacksmith3
|
||||
- type: Lock
|
||||
locked: true
|
||||
|
||||
- type: entity
|
||||
parent:
|
||||
- CP14IronDoorBlacksmith3
|
||||
- CP14IronDoorMirrored
|
||||
id: CP14IronDoorMirroredBlacksmith3
|
||||
suffix: Blacksmith 3, Mirrored
|
||||
@@ -17,5 +17,15 @@
|
||||
components:
|
||||
- type: CP14Lock
|
||||
autoGenerateShape: Guildmaster
|
||||
- type: Lock
|
||||
locked: true
|
||||
|
||||
- type: entity
|
||||
parent: CP14FenceIronGrilleGate
|
||||
id: CP14FenceIronGrilleGateDemiplaneCrystal
|
||||
suffix: DemiplaneCrystal
|
||||
components:
|
||||
- type: CP14Lock
|
||||
autoGenerateShape: DemiplaneCrystal
|
||||
- type: Lock
|
||||
locked: true
|
||||
@@ -147,5 +147,15 @@
|
||||
components:
|
||||
- type: CP14Lock
|
||||
autoGenerateShape: PersonalHouse15
|
||||
- type: Lock
|
||||
locked: true
|
||||
|
||||
- type: entity
|
||||
parent: CP14WoodenDoor
|
||||
id: CP14WoodenDoorPersonalHouse16
|
||||
suffix: PersonalHouse16
|
||||
components:
|
||||
- type: CP14Lock
|
||||
autoGenerateShape: PersonalHouse16
|
||||
- type: Lock
|
||||
locked: true
|
||||
@@ -17,9 +17,20 @@
|
||||
CP14Bank:
|
||||
- CP14BankEarningObjectiveGroup
|
||||
- type: CP14PersonalObjectivesRule
|
||||
departmentObjectives:
|
||||
CP14Mercenary:
|
||||
roleObjectives:
|
||||
CP14Guildmaster:
|
||||
- CP14GuildmasterNoDemiplaneObjectiveGroup
|
||||
CP14Adventurer:
|
||||
- CP14PersonalCurrencyCollectObjectiveGroup
|
||||
CP14Alchemist:
|
||||
- CP14PersonalCurrencyCollectObjectiveGroup
|
||||
CP14Apprentice:
|
||||
- CP14PersonalCurrencyCollectObjectiveGroup
|
||||
CP14Blacksmith:
|
||||
- CP14PersonalCurrencyCollectObjectiveGroup
|
||||
CP14Innkeeper:
|
||||
- CP14PersonalCurrencyCollectObjectiveGroup
|
||||
|
||||
|
||||
- type: entity
|
||||
id: CP14SociopathsRule
|
||||
|
||||
@@ -13,29 +13,25 @@
|
||||
equipment:
|
||||
head: CP14ClothingHeadBowler
|
||||
|
||||
- type: loadoutGroup
|
||||
id: CP14CommandantHead
|
||||
name: cp14-loadout-commandant-head
|
||||
loadouts:
|
||||
- CP14ClothingHeadBowlerGolden
|
||||
|
||||
- type: loadout
|
||||
id: CP14ClothingHeadBowlerGolden
|
||||
equipment:
|
||||
head: CP14ClothingHeadBowlerGolden
|
||||
|
||||
# Cloak
|
||||
# OuterClothing
|
||||
|
||||
- type: loadoutGroup
|
||||
id: CP14CommandantCloak
|
||||
name: cp14-loadout-commandant-cloak
|
||||
id: CP14BankOuterClothing
|
||||
name: cp14-loadout-banker-outer
|
||||
minLimit: 0
|
||||
loadouts:
|
||||
- CP14ClothingCloakCommandantJacket
|
||||
- CP14ClothingOuterClothingBankerWaistCoat
|
||||
- CP14ClothingOuterClothingBankerWaistCoatOpen
|
||||
|
||||
- type: loadout
|
||||
id: CP14ClothingCloakCommandantJacket
|
||||
id: CP14ClothingOuterClothingBankerWaistCoat
|
||||
equipment:
|
||||
cloak: CP14ClothingCloakCommandantJacket
|
||||
outerClothing: CP14ClothingOuterClothingBankerWaistCoat
|
||||
|
||||
- type: loadout
|
||||
id: CP14ClothingOuterClothingBankerWaistCoatOpen
|
||||
equipment:
|
||||
outerClothing: CP14ClothingOuterClothingBankerWaistCoatOpen
|
||||
|
||||
# Shirt
|
||||
|
||||
|
||||
26
Resources/Prototypes/_CP14/Loadouts/Jobs/commandant.yml
Normal file
@@ -0,0 +1,26 @@
|
||||
|
||||
# Head
|
||||
|
||||
- type: loadoutGroup
|
||||
id: CP14CommandantHead
|
||||
name: cp14-loadout-commandant-head
|
||||
loadouts:
|
||||
- CP14ClothingHeadBowlerGolden
|
||||
|
||||
- type: loadout
|
||||
id: CP14ClothingHeadBowlerGolden
|
||||
equipment:
|
||||
head: CP14ClothingHeadBowlerGolden
|
||||
|
||||
# Cloak
|
||||
|
||||
- type: loadoutGroup
|
||||
id: CP14CommandantCloak
|
||||
name: cp14-loadout-commandant-cloak
|
||||
loadouts:
|
||||
- CP14ClothingCloakCommandantJacket
|
||||
|
||||
- type: loadout
|
||||
id: CP14ClothingCloakCommandantJacket
|
||||
equipment:
|
||||
cloak: CP14ClothingCloakCommandantJacket
|
||||
@@ -275,8 +275,6 @@
|
||||
- CP14ClothingShirtCottonWhiteBrownVest2
|
||||
- CP14ClothingShirtCottonWhiteBrownVest3
|
||||
- CP14ClothingShirtCottonWhiteCollar
|
||||
- CP14ClothingShirtCottonWhiteGreenVest
|
||||
- CP14ClothingShirtCottonWhiteGreenVest2
|
||||
- CP14ClothingShirtCottonYellow
|
||||
- CP14ClothingShirtCottonYellowCollar
|
||||
|
||||
@@ -350,16 +348,6 @@
|
||||
equipment:
|
||||
shirt: CP14ClothingShirtCottonWhiteCollar
|
||||
|
||||
- type: loadout
|
||||
id: CP14ClothingShirtCottonWhiteGreenVest
|
||||
equipment:
|
||||
shirt: CP14ClothingShirtCottonWhiteGreenVest
|
||||
|
||||
- type: loadout
|
||||
id: CP14ClothingShirtCottonWhiteGreenVest2
|
||||
equipment:
|
||||
shirt: CP14ClothingShirtCottonWhiteGreenVest2
|
||||
|
||||
- type: loadout
|
||||
id: CP14ClothingShirtCottonYellow
|
||||
equipment:
|
||||
|
||||
50
Resources/Prototypes/_CP14/Loadouts/Jobs/guildmaster.yml
Normal file
@@ -0,0 +1,50 @@
|
||||
|
||||
# Head
|
||||
|
||||
# Cloak
|
||||
|
||||
- type: loadoutGroup
|
||||
id: CP14GuildmasterCloak
|
||||
name: cp14-loadout-guildmaster-cloak
|
||||
loadouts:
|
||||
- CP14ClothingCloakGuildmasterCape
|
||||
|
||||
- type: loadout
|
||||
id: CP14ClothingCloakGuildmasterCape
|
||||
equipment:
|
||||
cloak: CP14ClothingCloakGuildmasterCape
|
||||
|
||||
# Shirt
|
||||
|
||||
- type: loadoutGroup
|
||||
id: CP14GuildmasterShirt
|
||||
name: cp14-loadout-guildmaster-shirt
|
||||
loadouts:
|
||||
- CP14ClothingShirtGuildmasterVest
|
||||
- CP14ClothingShirtGuildmasterVest2
|
||||
|
||||
- type: loadout
|
||||
id: CP14ClothingShirtGuildmasterVest
|
||||
equipment:
|
||||
shirt: CP14ClothingShirtGuildmasterVest
|
||||
|
||||
- type: loadout
|
||||
id: CP14ClothingShirtGuildmasterVest2
|
||||
equipment:
|
||||
shirt: CP14ClothingShirtGuildmasterVest2
|
||||
|
||||
# Pants
|
||||
|
||||
- type: loadoutGroup
|
||||
id: CP14GuildmasterPants
|
||||
name: cp14-loadout-guildmaster-pants
|
||||
loadouts:
|
||||
- CP14ClothingPantsAristocratic
|
||||
|
||||
# Shoes
|
||||
|
||||
- type: loadoutGroup
|
||||
id: CP14GuildmasterShoes
|
||||
name: cp14-loadout-guildmaster-shoes
|
||||
loadouts:
|
||||
- CP14ShoesAristocraticBlack
|
||||
@@ -108,17 +108,31 @@
|
||||
- CP14CommandantHead
|
||||
- CP14GeneralEyes
|
||||
- CP14CommandantCloak
|
||||
- CP14BankOuterClothing
|
||||
- CP14BankShirt
|
||||
- CP14BankPants
|
||||
- CP14BankShoes
|
||||
- CP14GeneralBack
|
||||
- CP14GeneralTrinkets
|
||||
|
||||
- type: roleLoadout
|
||||
id: JobCP14Guildmaster
|
||||
groups:
|
||||
- CP14GeneralSpells
|
||||
- CP14GeneralEyes
|
||||
- CP14GuildmasterCloak
|
||||
- CP14GuildmasterShirt
|
||||
- CP14GuildmasterPants
|
||||
- CP14GuildmasterShoes
|
||||
- CP14GeneralBack
|
||||
- CP14GeneralTrinkets
|
||||
|
||||
- type: roleLoadout
|
||||
id: JobCP14Banker
|
||||
groups:
|
||||
- CP14GeneralSpells
|
||||
- CP14BankHead
|
||||
- CP14BankOuterClothing
|
||||
- CP14GeneralEyes
|
||||
- CP14BankShirt
|
||||
- CP14BankPants
|
||||
|
||||
@@ -67,37 +67,56 @@
|
||||
complexity: 3
|
||||
name: cp14-lock-shape-tavern-dorm5
|
||||
|
||||
# Mercenary
|
||||
# Artisans
|
||||
|
||||
- type: CP14LockType
|
||||
id: Alchemy1
|
||||
group: Alchemist
|
||||
complexity: 3
|
||||
complexity: 4
|
||||
name: cp14-lock-shape-alchemist1
|
||||
|
||||
- type: CP14LockType
|
||||
id: Alchemy2
|
||||
group: Alchemist
|
||||
complexity: 3
|
||||
complexity: 4
|
||||
name: cp14-lock-shape-alchemist2
|
||||
|
||||
- type: CP14LockType
|
||||
id: Alchemy3
|
||||
group: Alchemist
|
||||
complexity: 4
|
||||
name: cp14-lock-shape-alchemist3
|
||||
|
||||
- type: CP14LockType
|
||||
id: Blacksmith1
|
||||
group: Blacksmith
|
||||
complexity: 3
|
||||
complexity: 4
|
||||
name: cp14-lock-shape-blacksmith1
|
||||
|
||||
- type: CP14LockType
|
||||
id: Blacksmith2
|
||||
group: Blacksmith
|
||||
complexity: 3
|
||||
complexity: 4
|
||||
name: cp14-lock-shape-blacksmith2
|
||||
|
||||
- type: CP14LockType
|
||||
id: Blacksmith3
|
||||
group: Blacksmith
|
||||
complexity: 4
|
||||
name: cp14-lock-shape-blacksmith3
|
||||
|
||||
# Mercenary
|
||||
|
||||
- type: CP14LockType
|
||||
id: Guildmaster
|
||||
complexity: 5
|
||||
name: cp14-lock-shape-guildmaster
|
||||
|
||||
- type: CP14LockType
|
||||
id: DemiplaneCrystal
|
||||
complexity: 5
|
||||
name: cp14-lock-shape-demiplane-crystal
|
||||
|
||||
# Personal house
|
||||
|
||||
- type: CP14LockType
|
||||
@@ -190,6 +209,12 @@
|
||||
complexity: 3
|
||||
name: cp14-lock-shape-personalhouse15
|
||||
|
||||
- type: CP14LockType
|
||||
id: PersonalHouse16
|
||||
group: PersonalHouse
|
||||
complexity: 3
|
||||
name: cp14-lock-shape-personalhouse16
|
||||
|
||||
# Guard
|
||||
|
||||
- type: CP14LockType
|
||||
|
||||
@@ -28,13 +28,18 @@
|
||||
mapNameTemplate: "Comoss island"
|
||||
- type: StationJobs
|
||||
availableJobs:
|
||||
CP14Apprentice: [ 5, 5 ]
|
||||
#Mercenary
|
||||
CP14Guildmaster: [1, 1]
|
||||
CP14Adventurer: [ -1, -1 ]
|
||||
#Artisans
|
||||
CP14Apprentice: [ 5, 5 ]
|
||||
CP14Alchemist: [ 2, 2 ]
|
||||
CP14Blacksmith: [ 2, 2 ]
|
||||
CP14Innkeeper: [ 3, 4 ]
|
||||
#Bank
|
||||
CP14Commandant: [1, 1]
|
||||
CP14Banker: [3, 4]
|
||||
#Guard
|
||||
CP14Guard: [8, 8]
|
||||
CP14GuardCommander: [1, 1]
|
||||
- type: CP14StationZLevels
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
minCollectionSize: 5
|
||||
maxCollectionSize: 10
|
||||
objectiveText: cp14-objective-town-send-title
|
||||
descriptionText: cp14-objective-town-send-desc
|
||||
objectiveDescription: cp14-objective-town-send-desc
|
||||
- type: Objective
|
||||
|
||||
- type: entity
|
||||
@@ -87,4 +87,25 @@
|
||||
id: CP14BankEarningObjectiveGroup
|
||||
weights:
|
||||
CP14TownBankEarningObjectiveMedium: 0.6
|
||||
CP14TownBankEarningObjectiveBig: 0.3
|
||||
CP14TownBankEarningObjectiveBig: 0.3
|
||||
|
||||
# No Demiplane death objective
|
||||
- type: entity
|
||||
parent: CP14BaseTownObjective
|
||||
id: CP14GuildmasterNoDemiplaneDeathObjective
|
||||
components:
|
||||
- type: CP14StatisticRangeCondition
|
||||
statistic: DemiplaneDeaths
|
||||
range:
|
||||
min: 0
|
||||
max: 3 #TODO Adaptive to player count
|
||||
objectiveText: cp14-objective-no-demiplane-death-title
|
||||
objectiveDescription: cp14-objective-no-demiplane-death-desc
|
||||
objectiveSprite:
|
||||
sprite: /Textures/_CP14/Objects/ModularTools/Blade/Shovel/metall_shovel.rsi
|
||||
state: tool
|
||||
|
||||
- type: weightedRandom
|
||||
id: CP14GuildmasterNoDemiplaneObjectiveGroup
|
||||
weights:
|
||||
CP14GuildmasterNoDemiplaneDeathObjective: 1
|
||||
@@ -36,4 +36,4 @@
|
||||
- type: weightedRandom
|
||||
id: CP14PersonalCurrencyCollectObjectiveGroup
|
||||
weights:
|
||||
CP14PersonalCurrencyCollectObjective: 1
|
||||
CP14PersonalCurrencyCollectObjective: 1
|
||||
@@ -28,4 +28,4 @@
|
||||
- CP14EnergyCrystalSmall
|
||||
equipment:
|
||||
belt1: CP14WalletFilledTest
|
||||
keys: CP14KeyRingInnkeeper
|
||||
keys: CP14KeyRingGuildmaster
|
||||
7
Resources/Prototypes/_CP14/stat_trackers.yml
Normal file
@@ -0,0 +1,7 @@
|
||||
- type: statisticTracker
|
||||
id: DemiplaneOpen
|
||||
text: cp14-tracker-demiplane-open
|
||||
|
||||
- type: statisticTracker
|
||||
id: DemiplaneDeaths
|
||||
text: cp14-tracker-demiplane-deaths
|
||||
|
After Width: | Height: | Size: 1.3 KiB |
|
After Width: | Height: | Size: 634 B |
|
Before Width: | Height: | Size: 916 B |
|
Before Width: | Height: | Size: 453 B |
|
After Width: | Height: | Size: 1.2 KiB |
|
After Width: | Height: | Size: 644 B |
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"version": 1,
|
||||
"license": "CC-BY-SA-4.0",
|
||||
"copyright": "Created by TheShuEd",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
},
|
||||
"states": [
|
||||
{
|
||||
"name": "icon"
|
||||
},
|
||||
{
|
||||
"name": "equipped-CLOAK",
|
||||
"directions": 4
|
||||
}
|
||||
]
|
||||
}
|
||||
|
After Width: | Height: | Size: 823 B |
|
After Width: | Height: | Size: 369 B |
|
After Width: | Height: | Size: 482 B |
|
After Width: | Height: | Size: 470 B |
@@ -0,0 +1,26 @@
|
||||
{
|
||||
"version": 1,
|
||||
"license": "All right reserved",
|
||||
"copyright": "Created by dinazewwr",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
},
|
||||
"states": [
|
||||
{
|
||||
"name": "icon"
|
||||
},
|
||||
{
|
||||
"name": "equipped-OUTERCLOTHING",
|
||||
"directions": 4
|
||||
},
|
||||
{
|
||||
"name": "inhand-left",
|
||||
"directions": 4
|
||||
},
|
||||
{
|
||||
"name": "inhand-right",
|
||||
"directions": 4
|
||||
}
|
||||
]
|
||||
}
|
||||
|
After Width: | Height: | Size: 708 B |
|
After Width: | Height: | Size: 338 B |
|
After Width: | Height: | Size: 482 B |
|
After Width: | Height: | Size: 470 B |
@@ -0,0 +1,26 @@
|
||||
{
|
||||
"version": 1,
|
||||
"license": "All right reserved",
|
||||
"copyright": "Created by dinazewwr",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
},
|
||||
"states": [
|
||||
{
|
||||
"name": "icon"
|
||||
},
|
||||
{
|
||||
"name": "equipped-OUTERCLOTHING",
|
||||
"directions": 4
|
||||
},
|
||||
{
|
||||
"name": "inhand-left",
|
||||
"directions": 4
|
||||
},
|
||||
{
|
||||
"name": "inhand-right",
|
||||
"directions": 4
|
||||
}
|
||||
]
|
||||
}
|
||||
|
Before Width: | Height: | Size: 547 B After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 341 B After Width: | Height: | Size: 502 B |
|
After Width: | Height: | Size: 482 B |
|
After Width: | Height: | Size: 488 B |
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"version": 1,
|
||||
"license": "All right reserved",
|
||||
"copyright": "Created by KBAS5",
|
||||
"copyright": "Created by dinazewwr",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
@@ -13,6 +13,14 @@
|
||||
{
|
||||
"name": "equipped-SHIRT",
|
||||
"directions": 4
|
||||
},
|
||||
{
|
||||
"name": "inhand-left",
|
||||
"directions": 4
|
||||
},
|
||||
{
|
||||
"name": "inhand-right",
|
||||
"directions": 4
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 532 B After Width: | Height: | Size: 532 B |
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 541 B After Width: | Height: | Size: 541 B |
BIN
Resources/Textures/_CP14/Markers/jobs.rsi/guildmaster.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
@@ -31,6 +31,9 @@
|
||||
{
|
||||
"name": "guard_commander"
|
||||
},
|
||||
{
|
||||
"name": "guildmaster"
|
||||
},
|
||||
{
|
||||
"name": "workman"
|
||||
}
|
||||
|
||||
|
After Width: | Height: | Size: 153 B |
@@ -36,6 +36,9 @@
|
||||
{
|
||||
"name": "guard_on_paper"
|
||||
},
|
||||
{
|
||||
"name": "guildmaster_on_paper"
|
||||
},
|
||||
{
|
||||
"name": "denied_on_paper"
|
||||
},
|
||||
|
||||
|
Before Width: | Height: | Size: 303 B After Width: | Height: | Size: 297 B |
|
Before Width: | Height: | Size: 305 B After Width: | Height: | Size: 294 B |
|
After Width: | Height: | Size: 331 B |
@@ -18,6 +18,9 @@
|
||||
},
|
||||
{
|
||||
"name": "guard"
|
||||
},
|
||||
{
|
||||
"name": "guildmaster"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||