internal AI_StateMachine(NPC npc, Character player, CompanionMetaData metadata, IContentLoader loader, IModEvents events, IMonitor monitor) { this.npc = npc ?? throw new ArgumentNullException(nameof(npc)); this.player = player ?? throw new ArgumentNullException(nameof(player)); this.events = events ?? throw new ArgumentException(nameof(events)); this.Monitor = monitor ?? throw new ArgumentNullException(nameof(monitor)); this.metadata = metadata; this.loader = loader; }
public CompanionStateMachine(CompanionManager manager, NPC companion, CompanionMetaData metadata, IContentLoader loader, IReflectionHelper reflection, IMonitor monitor = null) { this.CompanionManager = manager; this.Companion = companion; this.Metadata = metadata; this.ContentLoader = loader; this.Monitor = monitor; this.Bag = new Chest(true); this.Reflection = reflection; }
public CompanionStateMachine(CompanionManager manager, NPC companion, CompanionMetaData metadata, IContentLoader loader, IReflectionHelper reflection, IMonitor monitor = null) { this.CompanionManager = manager; this.Companion = companion; this.Metadata = metadata; this.ContentLoader = loader; this.Monitor = monitor; this.Bag = new Chest(); this.Reflection = reflection; this.SpokenDialogues = new HashSet <string>(); this.Dialogues = new DialogueProvider(companion, loader); }
public CompanionStateMachine(string name, CompanionManager manager, CompanionMetaData metadata, IContentLoader loader, IReflectionHelper reflection, IMonitor monitor = null) : this(manager, null, metadata, loader, reflection, monitor) { this.Name = name; this.isVillager = true; this.ReloadNpc(); }