if (!GameTicker.IsGameRuleAdded(ruleEnt, gameRule))
continue;
- var found = nukeops.OperativePlayers.Values.Any(v => v == opUid);
- if (found)
+ if (_mind.TryGetMind(opUid, out var mind, out _))
{
- comps = (nukeops, gameRule);
- return true;
+ var found = nukeops.OperativePlayers.Values.Any(v => v == mind);
+ if (found)
+ {
+ comps = (nukeops, gameRule);
+ return true;
+ }
}
}
//ok hardcoded value bad but so is everything else here
_roles.MindAddRole(mindId, new NukeopsRoleComponent { PrototypeId = NukeopsId }, mind);
+ if (mind.CurrentEntity != null)
+ {
+ foreach (var (nukeops, gameRule) in EntityQuery<NukeopsRuleComponent, GameRuleComponent>())
+ {
+ nukeops.OperativePlayers.Add(mind.CharacterName!, mind.CurrentEntity.GetValueOrDefault());
+ }
+ }
+
SetOutfitCommand.SetOutfit(mind.OwnedEntity.Value, "SyndicateOperativeGearFull", EntityManager);
}
- type: entity
parent: BaseItem
id: NukeOpsDeclarationOfWar
- name: the declaration of war
+ name: declaration of war
description: Use to send a declaration of hostilities to the target, delaying your shuttle departure while they prepare for your assault. Such a brazen move will attract the attention of powerful benefactors within the Syndicate, who will supply your team with a massive amount of bonus telecrystals. Must be used at start of mission, or your benefactors will lose interest.
components:
- type: Sprite