* Add NPC faction tags Some stuff isn't easy to represent by the existence of components so tags are intended to provide that functionality for AI usage. I was 50/50 on having all tags in the 1 component or splitting it into 2. I'm leaning towards 2. This would be for stuff like say "CanMimic" so the mimic knows it's allowed to look like a specific prototype, or something like "smg" on a gun so it can say smg-specific barks for instance (as currently smgs and pistols look the same from a component perspective). This also means combat behaviors aren't hardcoded per faction, plus it makes it easy to update faction relations during events. * Factions command Update faction relationships via commands. * Remove command TODO * Woops Forgot to commit these items * Serializer writing and parsing * linq me up fam Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
22 lines
678 B
C#
22 lines
678 B
C#
using Content.Server.AI.Utility.Actions;
|
|
using Content.Server.AI.Utility.ExpandableActions.Combat.Melee;
|
|
using Robust.Shared.Interfaces.GameObjects;
|
|
|
|
namespace Content.Server.AI.Utility.BehaviorSets
|
|
{
|
|
public sealed class SpirateBehaviorSet : BehaviorSet
|
|
{
|
|
public SpirateBehaviorSet(IEntity owner) : base(owner)
|
|
{
|
|
Actions = new IAiUtility[]
|
|
{
|
|
// TODO: Reload Ballistic
|
|
// TODO: Ideally long-term we should just store the weapons in backpack
|
|
new EquipMeleeExp(),
|
|
new PickUpMeleeWeaponExp(),
|
|
new MeleeAttackNearbyExp(),
|
|
};
|
|
}
|
|
}
|
|
}
|