Skip to content

Commit

Permalink
Hotfix add debug info to traitor activation (space-wizards#33119)
Browse files Browse the repository at this point in the history
* Add debug messages to traitor activation

* more debug
  • Loading branch information
Errant-4 authored and ss14-Starlight committed Nov 4, 2024
1 parent 4152f6f commit f94f3c3
Show file tree
Hide file tree
Showing 2 changed files with 35 additions and 0 deletions.
4 changes: 4 additions & 0 deletions Content.Server/Antag/AntagSelectionSystem.cs
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ public override void Initialize()
{
base.Initialize();

Log.Level = LogLevel.Debug;

SubscribeLocalEvent<GhostRoleAntagSpawnerComponent, TakeGhostRoleEvent>(OnTakeGhostRole);

SubscribeLocalEvent<AntagSelectionComponent, ObjectivesTextGetInfoEvent>(OnObjectivesTextGetInfo);
Expand Down Expand Up @@ -360,6 +362,8 @@ public void MakeAntag(Entity<AntagSelectionComponent> ent, ICommonSession? sessi
_role.MindAddRoles(curMind.Value, def.MindRoles, null, true);
ent.Comp.SelectedMinds.Add((curMind.Value, Name(player)));
SendBriefing(session, def.Briefing);

Log.Debug($"Selected {ToPrettyString(curMind)} as antagonist: {ToPrettyString(ent)}");
}

var afterEv = new AfterAntagEntitySelectedEvent(session, player, ent, def);
Expand Down
31 changes: 31 additions & 0 deletions Content.Server/GameTicking/Rules/TraitorRuleSystem.cs
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,8 @@ public override void Initialize()
{
base.Initialize();

Log.Level = LogLevel.Debug;

SubscribeLocalEvent<TraitorRuleComponent, AfterAntagEntitySelectedEvent>(AfterEntitySelected);
SubscribeLocalEvent<TraitorRuleComponent, ObjectivesTextPrependEvent>(OnObjectivesTextPrepend);
}
Expand All @@ -53,6 +55,7 @@ protected override void Added(EntityUid uid, TraitorRuleComponent component, Gam

private void AfterEntitySelected(Entity<TraitorRuleComponent> ent, ref AfterAntagEntitySelectedEvent args)
{
Log.Debug($"AfterAntagEntitySelected {ToPrettyString(ent)}");
MakeTraitor(args.EntityUid, ent);
}

Expand All @@ -78,14 +81,22 @@ public string[] GenerateTraitorCodewords(TraitorRuleComponent component)

public bool MakeTraitor(EntityUid traitor, TraitorRuleComponent component)
{
Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - start");

//Grab the mind if it wasn't provided
if (!_mindSystem.TryGetMind(traitor, out var mindId, out var mind))
{
Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - failed, no Mind found");
return false;
}

var briefing = "";

if (component.GiveCodewords)
{
Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - added codewords flufftext to briefing");
briefing = Loc.GetString("traitor-role-codewords-short", ("codewords", string.Join(", ", component.Codewords)));
}

var issuer = _random.Pick(_prototypeManager.Index(component.ObjectiveIssuers).Values);

Expand All @@ -94,6 +105,7 @@ public bool MakeTraitor(EntityUid traitor, TraitorRuleComponent component)

if (component.GiveUplink)
{
Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - Uplink start");
// Calculate the amount of currency on the uplink.
var startingBalance = component.StartingBalance;
if (_jobs.MindTryGetJob(mindId, out var prototype))
Expand All @@ -105,18 +117,27 @@ public bool MakeTraitor(EntityUid traitor, TraitorRuleComponent component)
}

// Choose and generate an Uplink, and return the uplink code if applicable
Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - Uplink request start");
var uplinkParams = RequestUplink(traitor, startingBalance, briefing);
code = uplinkParams.Item1;
briefing = uplinkParams.Item2;
Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - Uplink request completed");
}

string[]? codewords = null;
if (component.GiveCodewords)
{
Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - set codewords from component");
codewords = component.Codewords;
}

if (component.GiveBriefing)
{
_antag.SendBriefing(traitor, GenerateBriefing(codewords, code, issuer), null, component.GreetSoundNotification);
Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - Sent the Briefing");
}

Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - Adding TraitorMind");
component.TraitorMinds.Add(mindId);

// Assign briefing
Expand All @@ -126,9 +147,14 @@ public bool MakeTraitor(EntityUid traitor, TraitorRuleComponent component)
_roleSystem.MindHasRole<TraitorRoleComponent>(mindId, out var traitorRole);
if (traitorRole is not null)
{
Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - Add traitor briefing components");
AddComp<RoleBriefingComponent>(traitorRole.Value.Owner);
Comp<RoleBriefingComponent>(traitorRole.Value.Owner).Briefing = briefing;
}
else
{
Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - did not get traitor briefing");
}

// Send codewords to only the traitor client
var color = TraitorCodewordColor; // Fall back to a dark red Syndicate color if a prototype is not found
Expand All @@ -137,9 +163,11 @@ public bool MakeTraitor(EntityUid traitor, TraitorRuleComponent component)
_roleCodewordSystem.SetRoleCodewords(codewordComp, "traitor", component.Codewords.ToList(), color);

// Change the faction
Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - Change faction");
_npcFaction.RemoveFaction(traitor, component.NanoTrasenFaction, false);
_npcFaction.AddFaction(traitor, component.SyndicateFaction);

Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - Finished");
return true;
}

Expand All @@ -148,10 +176,12 @@ public bool MakeTraitor(EntityUid traitor, TraitorRuleComponent component)
var pda = _uplink.FindUplinkTarget(traitor);
Note[]? code = null;

Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - Uplink add");
var uplinked = _uplink.AddUplink(traitor, startingBalance, pda, true);

if (pda is not null && uplinked)
{
Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - Uplink is PDA");
// Codes are only generated if the uplink is a PDA
code = EnsureComp<RingerUplinkComponent>(pda.Value).Code;

Expand All @@ -163,6 +193,7 @@ public bool MakeTraitor(EntityUid traitor, TraitorRuleComponent component)
}
else if (pda is null && uplinked)
{
Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - Uplink is implant");
briefing += "\n" + Loc.GetString("traitor-role-uplink-implant-short");
}

Expand Down

0 comments on commit f94f3c3

Please sign in to comment.