Localize jobs (#8968)
* Localize job supervisors * Rename supervisors file * Localize job names * Remove localization for fallback job name * Use LocalizedName for Job * Fix job names case
This commit is contained in:
@@ -202,8 +202,8 @@ namespace Content.Client.LateJoin
|
|||||||
var jobLabel = new Label
|
var jobLabel = new Label
|
||||||
{
|
{
|
||||||
Text = job.Value != null ?
|
Text = job.Value != null ?
|
||||||
Loc.GetString("late-join-gui-job-slot-capped", ("jobName", prototype.Name), ("amount", job.Value)) :
|
Loc.GetString("late-join-gui-job-slot-capped", ("jobName", prototype.LocalizedName), ("amount", job.Value)) :
|
||||||
Loc.GetString("late-join-gui-job-slot-uncapped", ("jobName", prototype.Name))
|
Loc.GetString("late-join-gui-job-slot-uncapped", ("jobName", prototype.LocalizedName))
|
||||||
};
|
};
|
||||||
|
|
||||||
jobSelector.AddChild(jobLabel);
|
jobSelector.AddChild(jobLabel);
|
||||||
|
|||||||
@@ -192,7 +192,7 @@ namespace Content.Client.Preferences.UI
|
|||||||
var highPriorityJob = humanoid?.JobPriorities.SingleOrDefault(p => p.Value == JobPriority.High).Key;
|
var highPriorityJob = humanoid?.JobPriorities.SingleOrDefault(p => p.Value == JobPriority.High).Key;
|
||||||
if (highPriorityJob != null)
|
if (highPriorityJob != null)
|
||||||
{
|
{
|
||||||
var jobName = IoCManager.Resolve<IPrototypeManager>().Index<JobPrototype>(highPriorityJob).Name;
|
var jobName = IoCManager.Resolve<IPrototypeManager>().Index<JobPrototype>(highPriorityJob).LocalizedName;
|
||||||
description = $"{description}\n{jobName}";
|
description = $"{description}\n{jobName}";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -344,7 +344,7 @@ namespace Content.Client.Preferences.UI
|
|||||||
|
|
||||||
var firstCategory = true;
|
var firstCategory = true;
|
||||||
|
|
||||||
foreach (var job in prototypeManager.EnumeratePrototypes<JobPrototype>().OrderBy(j => j.Name))
|
foreach (var job in prototypeManager.EnumeratePrototypes<JobPrototype>().OrderBy(j => j.LocalizedName))
|
||||||
{
|
{
|
||||||
if(!job.SetPreference) { continue; }
|
if(!job.SetPreference) { continue; }
|
||||||
|
|
||||||
@@ -1033,7 +1033,7 @@ namespace Content.Client.Preferences.UI
|
|||||||
Children =
|
Children =
|
||||||
{
|
{
|
||||||
icon,
|
icon,
|
||||||
new Label {Text = job.Name, MinSize = (175, 0)},
|
new Label {Text = job.LocalizedName, MinSize = (175, 0)},
|
||||||
_optionButton
|
_optionButton
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -67,7 +67,7 @@ namespace Content.Server.Access.Systems
|
|||||||
_accessSystem.SetAccessToJob(uid, job, extended);
|
_accessSystem.SetAccessToJob(uid, job, extended);
|
||||||
|
|
||||||
// and also change job title on a card id
|
// and also change job title on a card id
|
||||||
_cardSystem.TryChangeJobTitle(uid, job.Name);
|
_cardSystem.TryChangeJobTitle(uid, job.LocalizedName);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -65,7 +65,7 @@ namespace Content.Server.GameTicking.Commands
|
|||||||
var jobPrototype = _prototypeManager.Index<JobPrototype>(id);
|
var jobPrototype = _prototypeManager.Index<JobPrototype>(id);
|
||||||
if(stationJobs.TryGetJobSlot(station, jobPrototype, out var slots) == false || slots == 0)
|
if(stationJobs.TryGetJobSlot(station, jobPrototype, out var slots) == false || slots == 0)
|
||||||
{
|
{
|
||||||
shell.WriteLine($"{jobPrototype.Name} has no available slots.");
|
shell.WriteLine($"{jobPrototype.LocalizedName} has no available slots.");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
ticker.MakeJoinGame(player, station, id);
|
ticker.MakeJoinGame(player, station, id);
|
||||||
|
|||||||
@@ -54,7 +54,7 @@ namespace Content.Server.GameTicking
|
|||||||
InitializeLobbyMusic();
|
InitializeLobbyMusic();
|
||||||
InitializeLobbyBackground();
|
InitializeLobbyBackground();
|
||||||
InitializeGamePreset();
|
InitializeGamePreset();
|
||||||
DebugTools.Assert(_prototypeManager.Index<JobPrototype>(FallbackOverflowJob).Name == Loc.GetString(FallbackOverflowJobName),
|
DebugTools.Assert(_prototypeManager.Index<JobPrototype>(FallbackOverflowJob).Name == FallbackOverflowJobName,
|
||||||
"Overflow role does not have the correct name!");
|
"Overflow role does not have the correct name!");
|
||||||
InitializeGameRules();
|
InitializeGameRules();
|
||||||
|
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ namespace Content.Server.Roles
|
|||||||
public Job(Mind.Mind mind, JobPrototype jobPrototype) : base(mind)
|
public Job(Mind.Mind mind, JobPrototype jobPrototype) : base(mind)
|
||||||
{
|
{
|
||||||
Prototype = jobPrototype;
|
Prototype = jobPrototype;
|
||||||
Name = jobPrototype.Name;
|
Name = jobPrototype.LocalizedName;
|
||||||
CanBeAntag = jobPrototype.CanBeAntag;
|
CanBeAntag = jobPrototype.CanBeAntag;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -40,7 +40,7 @@ namespace Content.Server.Roles
|
|||||||
if(Prototype.RequireAdminNotify)
|
if(Prototype.RequireAdminNotify)
|
||||||
chatMgr.DispatchServerMessage(session, Loc.GetString("job-greet-important-disconnect-admin-notify"));
|
chatMgr.DispatchServerMessage(session, Loc.GetString("job-greet-important-disconnect-admin-notify"));
|
||||||
|
|
||||||
chatMgr.DispatchServerMessage(session, Loc.GetString("job-greet-supervisors-warning", ("jobName", Name), ("supervisors", Prototype.Supervisors)));
|
chatMgr.DispatchServerMessage(session, Loc.GetString("job-greet-supervisors-warning", ("jobName", Name), ("supervisors", Loc.GetString(Prototype.Supervisors))));
|
||||||
|
|
||||||
if(Prototype.JoinNotifyCrew && Mind.CharacterName != null)
|
if(Prototype.JoinNotifyCrew && Mind.CharacterName != null)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -173,7 +173,7 @@ public sealed class StationSpawningSystem : EntitySystem
|
|||||||
var card = pdaComponent.ContainedID;
|
var card = pdaComponent.ContainedID;
|
||||||
var cardId = card.Owner;
|
var cardId = card.Owner;
|
||||||
_cardSystem.TryChangeFullName(cardId, characterName, card);
|
_cardSystem.TryChangeFullName(cardId, characterName, card);
|
||||||
_cardSystem.TryChangeJobTitle(cardId, jobPrototype.Name, card);
|
_cardSystem.TryChangeJobTitle(cardId, jobPrototype.LocalizedName, card);
|
||||||
|
|
||||||
var extendedAccess = false;
|
var extendedAccess = false;
|
||||||
if (station != null)
|
if (station != null)
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ namespace Content.Shared.GameTicking
|
|||||||
// But this is easier, and at least it isn't hardcoded.
|
// But this is easier, and at least it isn't hardcoded.
|
||||||
//TODO: Move these, they really belong in StationJobsSystem or a cvar.
|
//TODO: Move these, they really belong in StationJobsSystem or a cvar.
|
||||||
public const string FallbackOverflowJob = "Passenger";
|
public const string FallbackOverflowJob = "Passenger";
|
||||||
public const string FallbackOverflowJobName = "passenger";
|
public const string FallbackOverflowJobName = "job-name-passenger";
|
||||||
}
|
}
|
||||||
|
|
||||||
[Serializable, NetSerializable]
|
[Serializable, NetSerializable]
|
||||||
|
|||||||
@@ -26,6 +26,9 @@ namespace Content.Shared.Roles
|
|||||||
[DataField("name")]
|
[DataField("name")]
|
||||||
public string Name { get; } = string.Empty;
|
public string Name { get; } = string.Empty;
|
||||||
|
|
||||||
|
[ViewVariables(VVAccess.ReadOnly)]
|
||||||
|
public string LocalizedName => Loc.GetString(Name);
|
||||||
|
|
||||||
[DataField("joinNotifyCrew")]
|
[DataField("joinNotifyCrew")]
|
||||||
public bool JoinNotifyCrew { get; } = false;
|
public bool JoinNotifyCrew { get; } = false;
|
||||||
|
|
||||||
|
|||||||
39
Resources/Locale/en-US/job/job-names.ftl
Normal file
39
Resources/Locale/en-US/job/job-names.ftl
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
job-name-warden = warden
|
||||||
|
job-name-security = security officer
|
||||||
|
job-name-cadet = security cadet
|
||||||
|
job-name-hos = head of security
|
||||||
|
job-name-scientist = scientist
|
||||||
|
job-name-rd = research director
|
||||||
|
job-name-psychologist = psychologist
|
||||||
|
job-name-intern = medical intern
|
||||||
|
job-name-doctor = medical doctor
|
||||||
|
job-name-cmo = chief medical officer
|
||||||
|
job-name-chemist = chemist
|
||||||
|
job-name-assistant = technical assistant
|
||||||
|
job-name-engineer = station engineer
|
||||||
|
job-name-atmostech = atmospheric technician
|
||||||
|
job-name-hop = head of personnel
|
||||||
|
job-name-captain = captain
|
||||||
|
job-name-serviceworker = service worker
|
||||||
|
job-name-centcomoff = centcom official
|
||||||
|
job-name-reporter = reporter
|
||||||
|
job-name-musician = musician
|
||||||
|
job-name-librarian = librarian
|
||||||
|
job-name-lawyer = lawyer
|
||||||
|
job-name-mime = mime
|
||||||
|
job-name-ce = chief engineer
|
||||||
|
job-name-janitor = janitor
|
||||||
|
job-name-chaplain = chaplain
|
||||||
|
job-name-botanist = botanist
|
||||||
|
job-name-bartender = bartender
|
||||||
|
job-name-passenger = passenger
|
||||||
|
job-name-salvagespec = salvage specialist
|
||||||
|
job-name-qm = quartermaster
|
||||||
|
job-name-cargoteh = cargo technician
|
||||||
|
job-name-chef = chef
|
||||||
|
job-name-clown = clown
|
||||||
|
job-name-ertleader = ERT leader
|
||||||
|
job-name-ertengineer = ERT engineer
|
||||||
|
job-name-ertsecurity = ERT security
|
||||||
|
job-name-ertmedic = ERT medic
|
||||||
|
job-name-ertjanitor = ERT janitor
|
||||||
14
Resources/Locale/en-US/job/job-supervisors.ftl
Normal file
14
Resources/Locale/en-US/job/job-supervisors.ftl
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
job-supervisors-centcom = centcom official
|
||||||
|
job-supervisors-captain = the captain
|
||||||
|
job-supervisors-hop = the head of personnel
|
||||||
|
job-supervisors-hop-qm = the quartermaster and head of personnel
|
||||||
|
job-supervisors-hos = the head of security
|
||||||
|
job-supervisors-ce = the chief engineer
|
||||||
|
job-supervisors-cmo = the chief medical officer
|
||||||
|
job-supervisors-rd = the research director
|
||||||
|
job-supervisors-service = chefs, botanists, the bartender, and the head of personnel
|
||||||
|
job-supervisors-engineering = station engineers, atmospheric technicians, and the chief engineer
|
||||||
|
job-supervisors-medicine = medical doctors, chemists, and the chief medical officer
|
||||||
|
job-supervisors-security = security officers, the warden, and the head of security
|
||||||
|
job-supervisors-hire = whoever hires you
|
||||||
|
job-supervisors-everyone = absolutely everyone
|
||||||
@@ -1,11 +1,11 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: CargoTechnician
|
id: CargoTechnician
|
||||||
name: "cargo technician"
|
name: job-name-cargoteh
|
||||||
startingGear: CargoTechGear
|
startingGear: CargoTechGear
|
||||||
departments:
|
departments:
|
||||||
- Cargo
|
- Cargo
|
||||||
icon: "CargoTechnician"
|
icon: "CargoTechnician"
|
||||||
supervisors: "the quartermaster and head of personnel"
|
supervisors: job-supervisors-hop-qm
|
||||||
access:
|
access:
|
||||||
- Cargo
|
- Cargo
|
||||||
- Maintenance
|
- Maintenance
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: Quartermaster
|
id: Quartermaster
|
||||||
name: "quartermaster"
|
name: job-name-qm
|
||||||
weight: 10
|
weight: 10
|
||||||
startingGear: QuartermasterGear
|
startingGear: QuartermasterGear
|
||||||
departments:
|
departments:
|
||||||
- Cargo
|
- Cargo
|
||||||
icon: "QuarterMaster"
|
icon: "QuarterMaster"
|
||||||
supervisors: "the head of personnel"
|
supervisors: job-supervisors-hop
|
||||||
canBeAntag: false
|
canBeAntag: false
|
||||||
access:
|
access:
|
||||||
- Cargo
|
- Cargo
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: SalvageSpecialist
|
id: SalvageSpecialist
|
||||||
name: "salvage specialist"
|
name: job-name-salvagespec
|
||||||
icon: "ShaftMiner"
|
icon: "ShaftMiner"
|
||||||
startingGear: SalvageSpecialistGear
|
startingGear: SalvageSpecialistGear
|
||||||
departments:
|
departments:
|
||||||
- Cargo
|
- Cargo
|
||||||
supervisors: "the quartermaster and head of personnel"
|
supervisors: job-supervisors-hop-qm
|
||||||
access:
|
access:
|
||||||
- Cargo
|
- Cargo
|
||||||
- Salvage
|
- Salvage
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: Passenger
|
id: Passenger
|
||||||
name: "passenger"
|
name: job-name-passenger
|
||||||
startingGear: PassengerGear
|
startingGear: PassengerGear
|
||||||
departments:
|
departments:
|
||||||
- Civilian
|
- Civilian
|
||||||
icon: "Passenger"
|
icon: "Passenger"
|
||||||
supervisors: "absolutely everyone"
|
supervisors: job-supervisors-everyone
|
||||||
access:
|
access:
|
||||||
- Maintenance
|
- Maintenance
|
||||||
|
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: Bartender
|
id: Bartender
|
||||||
name: "bartender"
|
name: job-name-bartender
|
||||||
startingGear: BartenderGear
|
startingGear: BartenderGear
|
||||||
departments:
|
departments:
|
||||||
- Civilian
|
- Civilian
|
||||||
icon: "Bartender"
|
icon: "Bartender"
|
||||||
supervisors: "the head of personnel"
|
supervisors: job-supervisors-hop
|
||||||
access:
|
access:
|
||||||
- Service
|
- Service
|
||||||
- Maintenance
|
- Maintenance
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: Botanist
|
id: Botanist
|
||||||
name: "botanist"
|
name: job-name-botanist
|
||||||
startingGear: BotanistGear
|
startingGear: BotanistGear
|
||||||
departments:
|
departments:
|
||||||
- Civilian
|
- Civilian
|
||||||
icon: "Botanist"
|
icon: "Botanist"
|
||||||
supervisors: "the head of personnel"
|
supervisors: job-supervisors-hop
|
||||||
access:
|
access:
|
||||||
- Service
|
- Service
|
||||||
- Maintenance
|
- Maintenance
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: Chaplain
|
id: Chaplain
|
||||||
name: "chaplain"
|
name: job-name-chaplain
|
||||||
startingGear: ChaplainGear
|
startingGear: ChaplainGear
|
||||||
departments:
|
departments:
|
||||||
- Civilian
|
- Civilian
|
||||||
icon: "Chaplain"
|
icon: "Chaplain"
|
||||||
supervisors: "the head of personnel"
|
supervisors: job-supervisors-hop
|
||||||
access:
|
access:
|
||||||
- Chapel
|
- Chapel
|
||||||
- Maintenance
|
- Maintenance
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: Chef
|
id: Chef
|
||||||
name: "chef"
|
name: job-name-chef
|
||||||
startingGear: ChefGear
|
startingGear: ChefGear
|
||||||
departments:
|
departments:
|
||||||
- Civilian
|
- Civilian
|
||||||
icon: "Chef"
|
icon: "Chef"
|
||||||
supervisors: "the head of personnel"
|
supervisors: job-supervisors-hop
|
||||||
access:
|
access:
|
||||||
- Service
|
- Service
|
||||||
- Maintenance
|
- Maintenance
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: Clown
|
id: Clown
|
||||||
name: "clown"
|
name: job-name-clown
|
||||||
startingGear: ClownGear
|
startingGear: ClownGear
|
||||||
departments:
|
departments:
|
||||||
- Civilian
|
- Civilian
|
||||||
icon: "Clown"
|
icon: "Clown"
|
||||||
supervisors: "the head of personnel"
|
supervisors: job-supervisors-hop
|
||||||
access:
|
access:
|
||||||
- Theatre
|
- Theatre
|
||||||
- Maintenance
|
- Maintenance
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: Janitor
|
id: Janitor
|
||||||
name: "janitor"
|
name: job-name-janitor
|
||||||
startingGear: JanitorGear
|
startingGear: JanitorGear
|
||||||
departments:
|
departments:
|
||||||
- Civilian
|
- Civilian
|
||||||
icon: "Janitor"
|
icon: "Janitor"
|
||||||
supervisors: "the head of personnel"
|
supervisors: job-supervisors-hop
|
||||||
access:
|
access:
|
||||||
- Janitor
|
- Janitor
|
||||||
- Maintenance
|
- Maintenance
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: Lawyer
|
id: Lawyer
|
||||||
name: "lawyer"
|
name: job-name-lawyer
|
||||||
startingGear: LawyerGear
|
startingGear: LawyerGear
|
||||||
departments:
|
departments:
|
||||||
- Civilian
|
- Civilian
|
||||||
icon: "Lawyer"
|
icon: "Lawyer"
|
||||||
supervisors: "the head of personnel"
|
supervisors: job-supervisors-hop
|
||||||
access:
|
access:
|
||||||
- Service
|
- Service
|
||||||
- Brig
|
- Brig
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: Librarian
|
id: Librarian
|
||||||
name: "librarian"
|
name: job-name-librarian
|
||||||
startingGear: LibrarianGear
|
startingGear: LibrarianGear
|
||||||
departments:
|
departments:
|
||||||
- Civilian
|
- Civilian
|
||||||
icon: "Librarian"
|
icon: "Librarian"
|
||||||
supervisors: "the head of personnel"
|
supervisors: job-supervisors-hop
|
||||||
access:
|
access:
|
||||||
- Service
|
- Service
|
||||||
- Maintenance
|
- Maintenance
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: Mime
|
id: Mime
|
||||||
name: "mime"
|
name: job-name-mime
|
||||||
startingGear: MimeGear
|
startingGear: MimeGear
|
||||||
departments:
|
departments:
|
||||||
- Civilian
|
- Civilian
|
||||||
icon: "Mime"
|
icon: "Mime"
|
||||||
supervisors: "the head of personnel"
|
supervisors: job-supervisors-hop
|
||||||
access:
|
access:
|
||||||
- Theatre
|
- Theatre
|
||||||
- Maintenance
|
- Maintenance
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: Musician
|
id: Musician
|
||||||
name: "musician"
|
name: job-name-musician
|
||||||
startingGear: MusicianGear
|
startingGear: MusicianGear
|
||||||
departments:
|
departments:
|
||||||
- Civilian
|
- Civilian
|
||||||
icon: "Musician"
|
icon: "Musician"
|
||||||
supervisors: "whoever hires you"
|
supervisors: job-supervisors-hire
|
||||||
access:
|
access:
|
||||||
- Maintenance # TODO Remove maint access for all gimmick jobs once access work is completed
|
- Maintenance # TODO Remove maint access for all gimmick jobs once access work is completed
|
||||||
- Theatre
|
- Theatre
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: Reporter
|
id: Reporter
|
||||||
name: "reporter"
|
name: job-name-reporter
|
||||||
startingGear: ReporterGear
|
startingGear: ReporterGear
|
||||||
departments:
|
departments:
|
||||||
- Civilian
|
- Civilian
|
||||||
icon: "Reporter"
|
icon: "Reporter"
|
||||||
supervisors: "the head of personnel"
|
supervisors: job-supervisors-hop
|
||||||
access:
|
access:
|
||||||
- Service
|
- Service
|
||||||
- Maintenance
|
- Maintenance
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: ServiceWorker
|
id: ServiceWorker
|
||||||
name: "service worker"
|
name: job-name-serviceworker
|
||||||
startingGear: ServiceWorkerGear
|
startingGear: ServiceWorkerGear
|
||||||
departments:
|
departments:
|
||||||
- Civilian
|
- Civilian
|
||||||
icon: "ServiceWorker"
|
icon: "ServiceWorker"
|
||||||
supervisors: "chefs, botanists, the bartender, and the head of personnel"
|
supervisors: job-supervisors-service
|
||||||
canBeAntag: false
|
canBeAntag: false
|
||||||
access:
|
access:
|
||||||
- Service
|
- Service
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: Captain
|
id: Captain
|
||||||
name: "captain"
|
name: job-name-captain
|
||||||
weight: 20
|
weight: 20
|
||||||
startingGear: CaptainGear
|
startingGear: CaptainGear
|
||||||
departments:
|
departments:
|
||||||
@@ -8,7 +8,7 @@
|
|||||||
icon: "Captain"
|
icon: "Captain"
|
||||||
requireAdminNotify: true
|
requireAdminNotify: true
|
||||||
joinNotifyCrew: true
|
joinNotifyCrew: true
|
||||||
supervisors: "Nanotrasen officials"
|
supervisors: job-supervisors-centcom
|
||||||
canBeAntag: false
|
canBeAntag: false
|
||||||
accessGroups:
|
accessGroups:
|
||||||
- AllAccess
|
- AllAccess
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: CentralCommandOfficial
|
id: CentralCommandOfficial
|
||||||
name: "centcom official"
|
name: job-name-centcomoff
|
||||||
setPreference: false
|
setPreference: false
|
||||||
startingGear: CentcomGear
|
startingGear: CentcomGear
|
||||||
departments:
|
departments:
|
||||||
- Command
|
- Command
|
||||||
icon: "Nanotrasen"
|
icon: "Nanotrasen"
|
||||||
supervisors: "the head of security"
|
supervisors: job-supervisors-hos
|
||||||
canBeAntag: false
|
canBeAntag: false
|
||||||
accessGroups:
|
accessGroups:
|
||||||
- AllAccess
|
- AllAccess
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: HeadOfPersonnel
|
id: HeadOfPersonnel
|
||||||
name: "head of personnel"
|
name: job-name-hop
|
||||||
weight: 20
|
weight: 20
|
||||||
startingGear: HoPGear
|
startingGear: HoPGear
|
||||||
departments:
|
departments:
|
||||||
@@ -8,7 +8,7 @@
|
|||||||
- Civilian
|
- Civilian
|
||||||
icon: "HeadOfPersonnel"
|
icon: "HeadOfPersonnel"
|
||||||
requireAdminNotify: true
|
requireAdminNotify: true
|
||||||
supervisors: "the captain"
|
supervisors: job-supervisors-captain
|
||||||
canBeAntag: false
|
canBeAntag: false
|
||||||
access:
|
access:
|
||||||
- Command
|
- Command
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: AtmosphericTechnician
|
id: AtmosphericTechnician
|
||||||
name: "atmospheric technician"
|
name: job-name-atmostech
|
||||||
startingGear: AtmosphericTechnicianGear
|
startingGear: AtmosphericTechnicianGear
|
||||||
departments:
|
departments:
|
||||||
- Engineering
|
- Engineering
|
||||||
icon: "AtmosphericTechnician"
|
icon: "AtmosphericTechnician"
|
||||||
supervisors: "the chief engineer"
|
supervisors: job-supervisors-ce
|
||||||
canBeAntag: false
|
canBeAntag: false
|
||||||
access:
|
access:
|
||||||
- Maintenance
|
- Maintenance
|
||||||
- Engineering
|
- Engineering
|
||||||
@@ -16,11 +16,11 @@
|
|||||||
- type: startingGear
|
- type: startingGear
|
||||||
id: AtmosphericTechnicianGear
|
id: AtmosphericTechnicianGear
|
||||||
equipment:
|
equipment:
|
||||||
head:
|
head:
|
||||||
jumpsuit: ClothingUniformJumpsuitAtmos
|
jumpsuit: ClothingUniformJumpsuitAtmos
|
||||||
back: ClothingBackpackEngineeringFilled
|
back: ClothingBackpackEngineeringFilled
|
||||||
shoes: ClothingShoesColorWhite
|
shoes: ClothingShoesColorWhite
|
||||||
outerClothing:
|
outerClothing:
|
||||||
id: AtmosPDA
|
id: AtmosPDA
|
||||||
belt: ClothingBeltUtilityFilled
|
belt: ClothingBeltUtilityFilled
|
||||||
ears: ClothingHeadsetEngineering
|
ears: ClothingHeadsetEngineering
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: ChiefEngineer
|
id: ChiefEngineer
|
||||||
name: "chief engineer"
|
name: job-name-ce
|
||||||
weight: 10
|
weight: 10
|
||||||
startingGear: ChiefEngineerGear
|
startingGear: ChiefEngineerGear
|
||||||
departments:
|
departments:
|
||||||
@@ -8,7 +8,7 @@
|
|||||||
- Engineering
|
- Engineering
|
||||||
icon: "ChiefEngineer"
|
icon: "ChiefEngineer"
|
||||||
requireAdminNotify: true
|
requireAdminNotify: true
|
||||||
supervisors: "the captain"
|
supervisors: job-supervisors-captain
|
||||||
canBeAntag: false
|
canBeAntag: false
|
||||||
access:
|
access:
|
||||||
- Maintenance
|
- Maintenance
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: StationEngineer
|
id: StationEngineer
|
||||||
name: "station engineer"
|
name: job-name-engineer
|
||||||
startingGear: StationEngineerGear
|
startingGear: StationEngineerGear
|
||||||
departments:
|
departments:
|
||||||
- Engineering
|
- Engineering
|
||||||
icon: "StationEngineer"
|
icon: "StationEngineer"
|
||||||
supervisors: "the chief engineer"
|
supervisors: job-supervisors-ce
|
||||||
access:
|
access:
|
||||||
- Maintenance
|
- Maintenance
|
||||||
- Engineering
|
- Engineering
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: TechnicalAssistant
|
id: TechnicalAssistant
|
||||||
name: "technical assistant"
|
name: job-name-assistant
|
||||||
startingGear: TechnicalAssistantGear
|
startingGear: TechnicalAssistantGear
|
||||||
departments:
|
departments:
|
||||||
- Civilian
|
- Civilian
|
||||||
- Engineering
|
- Engineering
|
||||||
icon: "TechnicalAssistant"
|
icon: "TechnicalAssistant"
|
||||||
supervisors: "station engineers, atmospheric technicians, and the chief engineer"
|
supervisors: job-supervisors-engineering
|
||||||
canBeAntag: false
|
canBeAntag: false
|
||||||
access:
|
access:
|
||||||
- Maintenance
|
- Maintenance
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
# Leader
|
# Leader
|
||||||
- type: job
|
- type: job
|
||||||
id: ERTLeader
|
id: ERTLeader
|
||||||
name: "ERT leader"
|
name: job-name-ertleader
|
||||||
setPreference: false
|
setPreference: false
|
||||||
startingGear: ERTLeaderGearEVA
|
startingGear: ERTLeaderGearEVA
|
||||||
departments:
|
departments:
|
||||||
- Command
|
- Command
|
||||||
icon: "Nanotrasen"
|
icon: "Nanotrasen"
|
||||||
supervisors: "centcom official"
|
supervisors: job-supervisors-centcom
|
||||||
canBeAntag: false
|
canBeAntag: false
|
||||||
accessGroups:
|
accessGroups:
|
||||||
- AllAccess
|
- AllAccess
|
||||||
@@ -48,17 +48,17 @@
|
|||||||
# Engineer
|
# Engineer
|
||||||
- type: job
|
- type: job
|
||||||
id: ERTEngineer
|
id: ERTEngineer
|
||||||
name: "ERT engineer"
|
name: job-name-ertengineer
|
||||||
setPreference: false
|
setPreference: false
|
||||||
startingGear: ERTEngineerGearEVA
|
startingGear: ERTEngineerGearEVA
|
||||||
departments:
|
departments:
|
||||||
- Command
|
- Command
|
||||||
icon: "Nanotrasen"
|
icon: "Nanotrasen"
|
||||||
supervisors: "centcom official"
|
supervisors: job-supervisors-centcom
|
||||||
canBeAntag: false
|
canBeAntag: false
|
||||||
accessGroups:
|
accessGroups:
|
||||||
- AllAccess
|
- AllAccess
|
||||||
|
|
||||||
- type: startingGear
|
- type: startingGear
|
||||||
id: ERTEngineerGear
|
id: ERTEngineerGear
|
||||||
equipment:
|
equipment:
|
||||||
@@ -90,21 +90,21 @@
|
|||||||
ears: ClothingHeadsetAltCommand
|
ears: ClothingHeadsetAltCommand
|
||||||
belt: ClothingBeltChiefEngineerFilled
|
belt: ClothingBeltChiefEngineerFilled
|
||||||
pocket1: Flare
|
pocket1: Flare
|
||||||
|
|
||||||
# Security
|
# Security
|
||||||
- type: job
|
- type: job
|
||||||
id: ERTSecurity
|
id: ERTSecurity
|
||||||
name: "ERT security"
|
name: job-name-ertsecurity
|
||||||
setPreference: false
|
setPreference: false
|
||||||
startingGear: ERTEngineerGearEVA
|
startingGear: ERTEngineerGearEVA
|
||||||
departments:
|
departments:
|
||||||
- Command
|
- Command
|
||||||
icon: "Nanotrasen"
|
icon: "Nanotrasen"
|
||||||
supervisors: "centcom official"
|
supervisors: job-supervisors-centcom
|
||||||
canBeAntag: false
|
canBeAntag: false
|
||||||
accessGroups:
|
accessGroups:
|
||||||
- AllAccess
|
- AllAccess
|
||||||
|
|
||||||
- type: startingGear
|
- type: startingGear
|
||||||
id: ERTSecurityGear
|
id: ERTSecurityGear
|
||||||
equipment:
|
equipment:
|
||||||
@@ -136,21 +136,21 @@
|
|||||||
ears: ClothingHeadsetAltCommand
|
ears: ClothingHeadsetAltCommand
|
||||||
belt: ClothingBeltSecurityWebbing
|
belt: ClothingBeltSecurityWebbing
|
||||||
pocket1: Flare
|
pocket1: Flare
|
||||||
|
|
||||||
# Medical
|
# Medical
|
||||||
- type: job
|
- type: job
|
||||||
id: ERTMedical
|
id: ERTMedical
|
||||||
name: "ERT medic"
|
name: job-name-ertmedic
|
||||||
setPreference: false
|
setPreference: false
|
||||||
startingGear: ERTMedicalGearEVA
|
startingGear: ERTMedicalGearEVA
|
||||||
departments:
|
departments:
|
||||||
- Command
|
- Command
|
||||||
icon: "Nanotrasen"
|
icon: "Nanotrasen"
|
||||||
supervisors: "centcom official"
|
supervisors: job-supervisors-centcom
|
||||||
canBeAntag: false
|
canBeAntag: false
|
||||||
accessGroups:
|
accessGroups:
|
||||||
- AllAccess
|
- AllAccess
|
||||||
|
|
||||||
- type: startingGear
|
- type: startingGear
|
||||||
id: ERTMedicalGear
|
id: ERTMedicalGear
|
||||||
equipment:
|
equipment:
|
||||||
@@ -183,21 +183,21 @@
|
|||||||
belt: ClothingBeltMedicalFilled
|
belt: ClothingBeltMedicalFilled
|
||||||
pocket1: HandheldHealthAnalyzer
|
pocket1: HandheldHealthAnalyzer
|
||||||
pocket2: Flare
|
pocket2: Flare
|
||||||
|
|
||||||
# Janitor
|
# Janitor
|
||||||
- type: job
|
- type: job
|
||||||
id: ERTJanitor
|
id: ERTJanitor
|
||||||
name: "ERT janitor"
|
name: job-name-ertjanitor
|
||||||
setPreference: false
|
setPreference: false
|
||||||
startingGear: ERTJanitorGearEVA
|
startingGear: ERTJanitorGearEVA
|
||||||
departments:
|
departments:
|
||||||
- Command
|
- Command
|
||||||
icon: "Nanotrasen"
|
icon: "Nanotrasen"
|
||||||
supervisors: "centcom official"
|
supervisors: job-supervisors-centcom
|
||||||
canBeAntag: false
|
canBeAntag: false
|
||||||
accessGroups:
|
accessGroups:
|
||||||
- AllAccess
|
- AllAccess
|
||||||
|
|
||||||
- type: startingGear
|
- type: startingGear
|
||||||
id: ERTJanitorGear
|
id: ERTJanitorGear
|
||||||
equipment:
|
equipment:
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: Chemist
|
id: Chemist
|
||||||
name: "chemist"
|
name: job-name-chemist
|
||||||
startingGear: ChemistGear
|
startingGear: ChemistGear
|
||||||
departments:
|
departments:
|
||||||
- Medical
|
- Medical
|
||||||
icon: "Chemist"
|
icon: "Chemist"
|
||||||
supervisors: "the chief medical officer"
|
supervisors: job-supervisors-cmo
|
||||||
access:
|
access:
|
||||||
- Medical
|
- Medical
|
||||||
- Chemistry
|
- Chemistry
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
- type: job
|
- type: job
|
||||||
id: ChiefMedicalOfficer
|
id: ChiefMedicalOfficer
|
||||||
name: "chief medical officer"
|
name: job-name-cmo
|
||||||
weight: 10
|
weight: 10
|
||||||
startingGear: CMOGear
|
startingGear: CMOGear
|
||||||
departments:
|
departments:
|
||||||
@@ -10,7 +10,7 @@
|
|||||||
- Medical
|
- Medical
|
||||||
icon: "ChiefMedicalOfficer"
|
icon: "ChiefMedicalOfficer"
|
||||||
requireAdminNotify: true
|
requireAdminNotify: true
|
||||||
supervisors: "the captain"
|
supervisors: job-supervisors-captain
|
||||||
canBeAntag: false
|
canBeAntag: false
|
||||||
access:
|
access:
|
||||||
- Medical
|
- Medical
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: MedicalDoctor
|
id: MedicalDoctor
|
||||||
name: "medical doctor"
|
name: job-name-doctor
|
||||||
startingGear: DoctorGear
|
startingGear: DoctorGear
|
||||||
departments:
|
departments:
|
||||||
- Medical
|
- Medical
|
||||||
icon: "MedicalDoctor"
|
icon: "MedicalDoctor"
|
||||||
supervisors: "the chief medical officer"
|
supervisors: job-supervisors-cmo
|
||||||
access:
|
access:
|
||||||
- Medical
|
- Medical
|
||||||
- Maintenance
|
- Maintenance
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: MedicalIntern
|
id: MedicalIntern
|
||||||
name: "medical intern"
|
name: job-name-intern
|
||||||
startingGear: MedicalInternGear
|
startingGear: MedicalInternGear
|
||||||
departments:
|
departments:
|
||||||
- Civilian
|
- Civilian
|
||||||
- Medical
|
- Medical
|
||||||
icon: "MedicalIntern"
|
icon: "MedicalIntern"
|
||||||
supervisors: "medical doctors, chemists, and the chief medical officer"
|
supervisors: job-supervisors-medicine
|
||||||
canBeAntag: false
|
canBeAntag: false
|
||||||
access:
|
access:
|
||||||
- Medical
|
- Medical
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: Psychologist
|
id: Psychologist
|
||||||
name: "psychologist"
|
name: job-name-psychologist
|
||||||
startingGear: PsychologistGear
|
startingGear: PsychologistGear
|
||||||
departments:
|
departments:
|
||||||
- Medical
|
- Medical
|
||||||
icon: "Psychologist"
|
icon: "Psychologist"
|
||||||
supervisors: "the chief medical officer"
|
supervisors: job-supervisors-cmo
|
||||||
access:
|
access:
|
||||||
- Medical
|
- Medical
|
||||||
- Maintenance
|
- Maintenance
|
||||||
@@ -22,4 +22,4 @@
|
|||||||
ears: ClothingHeadsetMedical
|
ears: ClothingHeadsetMedical
|
||||||
innerclothingskirt: ClothingUniformJumpsuitPsychologist
|
innerclothingskirt: ClothingUniformJumpsuitPsychologist
|
||||||
satchel: ClothingBackpackSatchelMedicalFilled
|
satchel: ClothingBackpackSatchelMedicalFilled
|
||||||
duffelbag: ClothingBackpackDuffelMedicalFilled
|
duffelbag: ClothingBackpackDuffelMedicalFilled
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: ResearchDirector
|
id: ResearchDirector
|
||||||
name: "research director"
|
name: job-name-rd
|
||||||
weight: 10
|
weight: 10
|
||||||
startingGear: ResearchDirectorGear
|
startingGear: ResearchDirectorGear
|
||||||
departments:
|
departments:
|
||||||
@@ -8,7 +8,7 @@
|
|||||||
- Science
|
- Science
|
||||||
icon: "ResearchDirector"
|
icon: "ResearchDirector"
|
||||||
requireAdminNotify: true
|
requireAdminNotify: true
|
||||||
supervisors: "the captain"
|
supervisors: job-supervisors-captain
|
||||||
canBeAntag: false
|
canBeAntag: false
|
||||||
access:
|
access:
|
||||||
- Research
|
- Research
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: Scientist
|
id: Scientist
|
||||||
name: "scientist"
|
name: job-name-scientist
|
||||||
startingGear: ScientistGear
|
startingGear: ScientistGear
|
||||||
departments:
|
departments:
|
||||||
- Science
|
- Science
|
||||||
icon: "Scientist"
|
icon: "Scientist"
|
||||||
supervisors: "the research director"
|
supervisors: job-supervisors-rd
|
||||||
access:
|
access:
|
||||||
- Research
|
- Research
|
||||||
- Maintenance
|
- Maintenance
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: HeadOfSecurity
|
id: HeadOfSecurity
|
||||||
name: "head of security"
|
name: job-name-hos
|
||||||
weight: 10
|
weight: 10
|
||||||
startingGear: HoSGear
|
startingGear: HoSGear
|
||||||
departments:
|
departments:
|
||||||
@@ -8,7 +8,7 @@
|
|||||||
- Security
|
- Security
|
||||||
icon: "HeadOfSecurity"
|
icon: "HeadOfSecurity"
|
||||||
requireAdminNotify: true
|
requireAdminNotify: true
|
||||||
supervisors: "the captain"
|
supervisors: job-supervisors-captain
|
||||||
canBeAntag: false
|
canBeAntag: false
|
||||||
access:
|
access:
|
||||||
- HeadOfSecurity
|
- HeadOfSecurity
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: SecurityCadet
|
id: SecurityCadet
|
||||||
name: "security cadet"
|
name: job-name-cadet
|
||||||
startingGear: SecurityCadetGear
|
startingGear: SecurityCadetGear
|
||||||
departments:
|
departments:
|
||||||
- Civilian
|
- Civilian
|
||||||
- Security
|
- Security
|
||||||
icon: "SecurityCadet"
|
icon: "SecurityCadet"
|
||||||
supervisors: "security officers, the warden, and the head of security"
|
supervisors: job-supervisors-security
|
||||||
canBeAntag: false
|
canBeAntag: false
|
||||||
access:
|
access:
|
||||||
- Security
|
- Security
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: SecurityOfficer
|
id: SecurityOfficer
|
||||||
name: "security officer"
|
name: job-name-security
|
||||||
startingGear: SecurityOfficerGear
|
startingGear: SecurityOfficerGear
|
||||||
departments:
|
departments:
|
||||||
- Security
|
- Security
|
||||||
icon: "SecurityOfficer"
|
icon: "SecurityOfficer"
|
||||||
supervisors: "the head of security"
|
supervisors: job-supervisors-hos
|
||||||
canBeAntag: false
|
canBeAntag: false
|
||||||
access:
|
access:
|
||||||
- Security
|
- Security
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
- type: job
|
- type: job
|
||||||
id: Warden
|
id: Warden
|
||||||
name: "warden"
|
name: job-name-warden
|
||||||
startingGear: WardenGear
|
startingGear: WardenGear
|
||||||
departments:
|
departments:
|
||||||
- Security
|
- Security
|
||||||
icon: "Warden"
|
icon: "Warden"
|
||||||
supervisors: "the head of security"
|
supervisors: job-supervisors-hos
|
||||||
canBeAntag: false
|
canBeAntag: false
|
||||||
access:
|
access:
|
||||||
- Security
|
- Security
|
||||||
|
|||||||
Reference in New Issue
Block a user