/// <summary>
 /// Constructor
 /// </summary>
 /// <param name="templatePlaceholderResolver">Template placeholder resolver</param>
 /// <param name="cachedDbAccess">Gecachter Datenzugriff</param>
 /// <param name="dailyRoutineFunctionNameGenerator">Daily routine function name generator</param>
 /// <param name="dailyRoutineFunctionRenderer">Daily routine function renderer</param>
 /// <param name="defaultTemplateProvider">Default template provider</param>
 /// <param name="localizerFactory">Localizer Factory</param>
 public NpcDailyRoutineExportValueCollector(IExportTemplatePlaceholderResolver templatePlaceholderResolver, IExportCachedDbAccess cachedDbAccess, IDailyRoutineFunctionNameGenerator dailyRoutineFunctionNameGenerator,
                                            IDailyRoutineFunctionRenderer dailyRoutineFunctionRenderer, ICachedExportDefaultTemplateProvider defaultTemplateProvider, IStringLocalizerFactory localizerFactory)
 {
     _templatePlaceholderResolver = templatePlaceholderResolver;
     _cachedDbAccess = cachedDbAccess;
     _dailyRoutineFunctionNameGenerator = dailyRoutineFunctionNameGenerator;
     _dailyRoutineFunctionRenderer      = dailyRoutineFunctionRenderer;
     _defaultTemplateProvider           = defaultTemplateProvider;
     _localizerFactory = localizerFactory;
 }
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="errorCollection">Error Collection</param>
        /// <param name="defaultTemplateProvider">Default Template Provider</param>
        /// <param name="cachedDbAccess">Cached Db Access</param>
        /// <param name="dailyRoutineEventPlaceholderResolver">Daily routine event placeholder resolver</param>
        /// <param name="languageKeyGenerator">Language Key Generator</param>
        /// <param name="localizerFactory">Localizer Factory</param>
        /// <param name="exportSettings">Export Settings</param>
        /// <param name="project">Project</param>
        public ExportDialogActionRenderer(ExportPlaceholderErrorCollection errorCollection, ICachedExportDefaultTemplateProvider defaultTemplateProvider, IExportCachedDbAccess cachedDbAccess, IDailyRoutineEventPlaceholderResolver dailyRoutineEventPlaceholderResolver,
                                          ILanguageKeyGenerator languageKeyGenerator, IStringLocalizerFactory localizerFactory, ExportSettings exportSettings, GoNorthProject project) :
            base(errorCollection, localizerFactory)
        {
            _defaultTemplateProvider = defaultTemplateProvider;
            _languageKeyGenerator    = languageKeyGenerator;
            _localizer      = localizerFactory.Create(typeof(ExportDialogActionRenderer));
            _exportSettings = exportSettings;
            _project        = project;

            _actionRenderes = new Dictionary <ActionType, IActionRenderer>();
            _actionRenderes.Add(ActionType.ChangePlayerValue, new NpcValueChangeRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true));
            _actionRenderes.Add(ActionType.ChangeNpcValue, new NpcValueChangeRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false));
            _actionRenderes.Add(ActionType.SpawnItemInPlayerInventory, new InventoryActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true, false, false));
            _actionRenderes.Add(ActionType.TransferItemToPlayerInventory, new InventoryActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true, true, false));
            _actionRenderes.Add(ActionType.RemoveItemFromPlayerInventory, new InventoryActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true, false, true));
            _actionRenderes.Add(ActionType.SpawnItemInNpcInventory, new InventoryActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false, false, false));
            _actionRenderes.Add(ActionType.TransferItemToNpcInventory, new InventoryActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false, true, false));
            _actionRenderes.Add(ActionType.RemoveItemFromNpcInventory, new InventoryActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false, false, true));
            _actionRenderes.Add(ActionType.ChangeQuestValue, new QuestValueChangeRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory));
            _actionRenderes.Add(ActionType.ChangeQuestState, new SetQuestStateActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory));
            _actionRenderes.Add(ActionType.AddQuestText, new AddQuestTextRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory));
            _actionRenderes.Add(ActionType.Wait, new WaitActionRenderer(defaultTemplateProvider, localizerFactory));
            _actionRenderes.Add(ActionType.ChangePlayerState, new ChangeNpcStateActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true));
            _actionRenderes.Add(ActionType.ChangeNpcState, new ChangeNpcStateActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false));
            _actionRenderes.Add(ActionType.PlayerLearnSkill, new LearnForgetSkillActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true, true));
            _actionRenderes.Add(ActionType.PlayerForgetSkill, new LearnForgetSkillActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true, false));
            _actionRenderes.Add(ActionType.NpcLearnSkill, new LearnForgetSkillActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false, true));
            _actionRenderes.Add(ActionType.NpcForgetSkill, new LearnForgetSkillActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false, false));
            _actionRenderes.Add(ActionType.ChangePlayerSkillValue, new SkillValueChangeRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true));
            _actionRenderes.Add(ActionType.ChangeNpcSkillValue, new SkillValueChangeRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false));
            _actionRenderes.Add(ActionType.PersistDialogState, new PersistDialogStateActionRenderer(defaultTemplateProvider));
            _actionRenderes.Add(ActionType.OpenShop, new OpenShopActionRenderer(defaultTemplateProvider));
            _actionRenderes.Add(ActionType.PlayNpcAnimation, new PlayAnimationActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false));
            _actionRenderes.Add(ActionType.PlayPlayerAnimation, new PlayAnimationActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true));
            _actionRenderes.Add(ActionType.CodeAction, new CodeActionRenderer(defaultTemplateProvider, localizerFactory));
            _actionRenderes.Add(ActionType.ShowFloatingTextAboveNpc, new ShowFloatingTextAboveNpcActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false));
            _actionRenderes.Add(ActionType.ShowFloatingTextAbovePlayer, new ShowFloatingTextAboveNpcActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true));
            _actionRenderes.Add(ActionType.ShowFloatingTextAboveChooseNpc, new ShowFloatingTextAboveChooseNpcActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory));
            _actionRenderes.Add(ActionType.FadeToBlack, new FadeToFromBlackRenderer(defaultTemplateProvider, localizerFactory, true));
            _actionRenderes.Add(ActionType.FadeFromBlack, new FadeToFromBlackRenderer(defaultTemplateProvider, localizerFactory, false));
            _actionRenderes.Add(ActionType.SetGameTime, new SetGameTimeActionRenderer(defaultTemplateProvider, cachedDbAccess, localizerFactory));
            _actionRenderes.Add(ActionType.DisableDailyRoutineEvent, new SetDailyRoutineEventState(defaultTemplateProvider, cachedDbAccess, dailyRoutineEventPlaceholderResolver, languageKeyGenerator, localizerFactory, true));
            _actionRenderes.Add(ActionType.EnableDailyRoutineEvent, new SetDailyRoutineEventState(defaultTemplateProvider, cachedDbAccess, dailyRoutineEventPlaceholderResolver, languageKeyGenerator, localizerFactory, false));
            _actionRenderes.Add(ActionType.TeleportNpc, new MoveNpcActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true, false, false));
            _actionRenderes.Add(ActionType.TeleportPlayer, new MoveNpcActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true, true, false));
            _actionRenderes.Add(ActionType.TeleportChooseNpc, new MoveNpcActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true, false, true));
            _actionRenderes.Add(ActionType.WalkNpcToMarker, new MoveNpcActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false, false, false));
            _actionRenderes.Add(ActionType.WalkChooseNpcToMarker, new MoveNpcActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false, false, true));
            _actionRenderes.Add(ActionType.TeleportNpcToNpc, new MoveNpcToNpcActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true, false));
            _actionRenderes.Add(ActionType.TeleportChooseNpcToNpc, new MoveNpcToNpcActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true, true));
            _actionRenderes.Add(ActionType.WalkNpcToNpc, new MoveNpcToNpcActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false, false));
            _actionRenderes.Add(ActionType.WalkChooseNpcToNpc, new MoveNpcToNpcActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false, true));
        }
Example #3
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="defaultTemplateProvider">Default Template Provider</param>
 /// <param name="cachedDbAccess">Cached Db Access</param>
 /// <param name="languageKeyGenerator">Language Key Generator</param>
 /// <param name="conditionRenderer">Condition Renderer</param>
 /// <param name="stringLocalizerFactory">String Localizer Factor</param>
 public ExportDialogRenderer(ICachedExportDefaultTemplateProvider defaultTemplateProvider, IExportCachedDbAccess cachedDbAccess, ILanguageKeyGenerator languageKeyGenerator,
                             IConditionRenderer conditionRenderer, IStringLocalizerFactory stringLocalizerFactory)
 {
     _defaultTemplateProvider = defaultTemplateProvider;
     _cachedDbAccess          = cachedDbAccess;
     _languageKeyGenerator    = languageKeyGenerator;
     _conditionRenderer       = conditionRenderer;
     _stringLocalizerFactory  = stringLocalizerFactory;
     _localizer     = _stringLocalizerFactory.Create(typeof(ExportDialogRenderer));
     _stepRenderers = new List <IExportDialogStepRenderer>();
 }
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="errorCollection">Error Collection</param>
 /// <param name="defaultTemplateProvider">Default Template Provider</param>
 /// <param name="languageKeyGenerator">Language Key Generator</param>
 /// <param name="conditionRenderer">Condition Renderer</param>
 /// <param name="localizerFactory">Localizer Factory</param>
 /// <param name="exportSettings">Export Settings</param>
 /// <param name="project">Project</param>
 public ExportDialogConditionRenderer(ExportPlaceholderErrorCollection errorCollection, ICachedExportDefaultTemplateProvider defaultTemplateProvider, ILanguageKeyGenerator languageKeyGenerator,
                                      IConditionRenderer conditionRenderer, IStringLocalizerFactory localizerFactory, ExportSettings exportSettings, GoNorthProject project) :
     base(errorCollection, localizerFactory)
 {
     _defaultTemplateProvider = defaultTemplateProvider;
     _languageKeyGenerator    = languageKeyGenerator;
     _conditionRenderer       = conditionRenderer;
     _localizer      = localizerFactory.Create(typeof(ExportDialogConditionRenderer));
     _exportSettings = exportSettings;
     _project        = project;
 }
Example #5
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="defaultTemplateProvider">Default Template Provider</param>
        /// <param name="cachedDbAccess">Cached Db Access</param>
        /// <param name="languageKeyGenerator">Language Key Generator</param>
        /// <param name="localizerFactory">Localizer Factory</param>
        /// <param name="isPlayer">True if the action is for the player, else false</param>
        /// <param name="isTransfer">True if the action is for a transfer, false for spawn</param>
        public InventoryActionRenderer(ICachedExportDefaultTemplateProvider defaultTemplateProvider, IExportCachedDbAccess cachedDbAccess, ILanguageKeyGenerator languageKeyGenerator, IStringLocalizerFactory localizerFactory,
                                       bool isPlayer, bool isTransfer)
        {
            _defaultTemplateProvider = defaultTemplateProvider;
            _cachedDbAccess          = cachedDbAccess;
            _localizer = localizerFactory.Create(typeof(InventoryActionRenderer));
            _flexFieldPlaceholderResolver = new FlexFieldExportTemplatePlaceholderResolver(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, FlexField_Item_Prefix);

            _isPlayer   = isPlayer;
            _isTransfer = isTransfer;
        }
Example #6
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="defaultTemplateProvider">Default Template Provider</param>
 /// <param name="cachedDbAccess">Cached Db Access</param>
 /// <param name="languageKeyGenerator">Language Key Generator</param>
 /// <param name="conditionRenderer">Condition Renderer</param>
 /// <param name="dailyRoutineEventPlaceholderResolver">Daily routine event placeholder resolver</param>
 /// <param name="stringLocalizerFactory">String Localizer Factor</param>
 public NodeGraphBaseRenderer(ICachedExportDefaultTemplateProvider defaultTemplateProvider, IExportCachedDbAccess cachedDbAccess, ILanguageKeyGenerator languageKeyGenerator,
                              IConditionRenderer conditionRenderer, IDailyRoutineEventPlaceholderResolver dailyRoutineEventPlaceholderResolver, IStringLocalizerFactory stringLocalizerFactory)
 {
     _defaultTemplateProvider = defaultTemplateProvider;
     _cachedDbAccess          = cachedDbAccess;
     _languageKeyGenerator    = languageKeyGenerator;
     _conditionRenderer       = conditionRenderer;
     _dailyRoutineEventPlaceholderResolver = dailyRoutineEventPlaceholderResolver;
     _stringLocalizerFactory = stringLocalizerFactory;
     _stepRenderers          = new List <IExportDialogStepRenderer>();
 }
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="defaultTemplateProvider">Default Template Provider</param>
 /// <param name="cachedDbAccess">Cached Db Access</param>
 /// <param name="legacyEventPlaceholderResolver">Legacy daily routine event placeholder resolver</param>
 /// <param name="eventContentPlaceholderResolver">Daily routine event content palceholder resolver</param>
 /// <param name="dailyRoutineFunctionRenderer">Daily routine function renderer</param>
 /// <param name="languageKeyGenerator">Language Key Generator</param>
 /// <param name="localizerFactory">Localizer Factory</param>
 public NpcDailyRoutineExportPlaceholderResolver(ICachedExportDefaultTemplateProvider defaultTemplateProvider, IExportCachedDbAccess cachedDbAccess, ILegacyDailyRoutineEventPlaceholderResolver legacyEventPlaceholderResolver,
                                                 ILegacyDailyRoutineEventContentPlaceholderResolver eventContentPlaceholderResolver, IDailyRoutineFunctionRenderer dailyRoutineFunctionRenderer, ILanguageKeyGenerator languageKeyGenerator,
                                                 IStringLocalizerFactory localizerFactory) : base(localizerFactory.Create(typeof(NpcDailyRoutineExportPlaceholderResolver)))
 {
     _defaultTemplateProvider         = defaultTemplateProvider;
     _cachedDbAccess                  = cachedDbAccess;
     _eventPlaceholderResolver        = legacyEventPlaceholderResolver;
     _eventContentPlaceholderResolver = eventContentPlaceholderResolver;
     _dailyRoutineFunctionRenderer    = dailyRoutineFunctionRenderer;
     _languageKeyGenerator            = languageKeyGenerator;
 }
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="defaultTemplateProvider">Default Template Provider</param>
        /// <param name="cachedDbAccess">Cached Db Access</param>
        /// <param name="languageKeyGenerator">Language Key Generator</param>
        /// <param name="localizerFactory">Localizer Factory</param>
        /// <param name="isTeleport">true if the movement is a teleporation, else false</param>
        /// <param name="isPlayer">true if the player is moved, else false</param>
        /// <param name="isPickedNpc">true if the npc was picked, else false</param>
        public MoveNpcActionRenderer(ICachedExportDefaultTemplateProvider defaultTemplateProvider, IExportCachedDbAccess cachedDbAccess, ILanguageKeyGenerator languageKeyGenerator, IStringLocalizerFactory localizerFactory, bool isTeleport, bool isPlayer, bool isPickedNpc)
        {
            _defaultTemplateProvider = defaultTemplateProvider;
            _cachedDbAccess          = cachedDbAccess;
            _localizer = localizerFactory.Create(typeof(MoveNpcActionRenderer));
            _flexFieldPlaceholderResolver = new FlexFieldExportTemplatePlaceholderResolver(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, FlexField_Npc_Prefix);

            _isTeleport  = isTeleport;
            _isPlayer    = isPlayer;
            _isPickedNpc = isPickedNpc;
        }
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="nodeGraphExporter">Node Graph Exporter</param>
 /// <param name="exportSnippetFunctionNameGenerator">Export Snippet node graph function name generator</param>
 /// <param name="nodeGraphRenderer">Node Graph Renderer</param>
 /// <param name="defaultTemplateProvider">Default Template Provider</param>
 /// <param name="cachedDbAccess">Cached Db Access</param>
 /// <param name="languageKeyGenerator">Language Key Generator</param>
 /// <param name="localizerFactory">Localizer Factory</param>
 public ExportSnippetTemplatePlaceholderResolver(INodeGraphExporter nodeGraphExporter, IExportSnippetNodeGraphFunctionGenerator exportSnippetFunctionNameGenerator, IExportSnippetNodeGraphRenderer nodeGraphRenderer,
                                                 ICachedExportDefaultTemplateProvider defaultTemplateProvider, IExportCachedDbAccess cachedDbAccess, ILanguageKeyGenerator languageKeyGenerator,
                                                 IStringLocalizerFactory localizerFactory)
     : base(localizerFactory.Create(typeof(ExportSnippetTemplatePlaceholderResolver)))
 {
     _nodeGraphExporter = nodeGraphExporter;
     _exportSnippetNodeGraphGenerator = exportSnippetFunctionNameGenerator;
     _nodeGraphRenderer       = nodeGraphRenderer;
     _defaultTemplateProvider = defaultTemplateProvider;
     _cachedDbAccess          = cachedDbAccess;
     _languageKeyGenerator    = languageKeyGenerator;
     _renderedNodeGraphs      = new Dictionary <string, ExportNodeGraphRenderResult>();
 }
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="cachedDbAccess">Cached Db Access</param>
 /// <param name="languageKeyGenerator">Language Key Generator</param>
 /// <param name="taleDbAccess">Dialog Db Access</param>
 /// <param name="dialogParser">Dialog Parser</param>
 /// <param name="dialogFunctionGenerator">Dialog Function Generator</param>
 /// <param name="dialogRenderer">Dialog Renderer</param>
 /// <param name="defaultTemplateProvider">Default Template provider</param>
 /// <param name="localizerFactory">Localizer Factory</param>
 public DialogExportTemplatePlaceholderResolver(IExportCachedDbAccess cachedDbAccess, ILanguageKeyGenerator languageKeyGenerator, ITaleDbAccess taleDbAccess, IExportDialogParser dialogParser,
                                                IExportDialogFunctionGenerator dialogFunctionGenerator, IExportDialogRenderer dialogRenderer, ICachedExportDefaultTemplateProvider defaultTemplateProvider,
                                                IStringLocalizerFactory localizerFactory) :
     base(localizerFactory.Create(typeof(DialogExportTemplatePlaceholderResolver)))
 {
     _cachedDbAccess          = cachedDbAccess;
     _languageKeyGenerator    = languageKeyGenerator;
     _taleDbAccess            = taleDbAccess;
     _dialogParser            = dialogParser;
     _dialogFunctionGenerator = dialogFunctionGenerator;
     _defaultTemplateProvider = defaultTemplateProvider;
     _dialogRenderer          = dialogRenderer;
 }
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="exportCachedDbAccess">Export cached Db access</param>
        /// <param name="errorCollection">Error Collection</param>
        /// <param name="defaultTemplateProvider">Default Template Provider</param>
        /// <param name="dailyRoutineFunctionNameGenerator">Daily routine function name generator</param>
        /// <param name="scribanLanguageKeyGenerator">Scriban Language key generator</param>
        /// <param name="localizerFactory">Localizer Factory</param>
        /// <param name="exportSettings">Export Settings</param>
        /// <param name="project">Project</param>
        public ExportReferenceRenderer(IExportCachedDbAccess exportCachedDbAccess, ExportPlaceholderErrorCollection errorCollection, ICachedExportDefaultTemplateProvider defaultTemplateProvider, IDailyRoutineFunctionNameGenerator dailyRoutineFunctionNameGenerator,
                                       IScribanLanguageKeyGenerator scribanLanguageKeyGenerator, IStringLocalizerFactory localizerFactory, ExportSettings exportSettings, GoNorthProject project)
        {
            _errorCollection         = errorCollection;
            _defaultTemplateProvider = defaultTemplateProvider;
            _exportCachedDbAccess    = exportCachedDbAccess;
            _localizer = localizerFactory.Create(typeof(ExportReferenceRenderer));
            _project   = project;

            _renderers = new Dictionary <ExportTemplateRenderingEngine, IReferenceStepRenderer> {
                { ExportTemplateRenderingEngine.Scriban, new ScribanReferenceStepRenderer(exportCachedDbAccess, dailyRoutineFunctionNameGenerator, exportSettings, errorCollection, scribanLanguageKeyGenerator, localizerFactory) }
            };
        }
        /// <summary>
        /// Returns the item compare operator from the template of the condition
        /// </summary>
        /// <param name="defaultTemplateProvider">Default template provider</param>
        /// <param name="project">Project</param>
        /// <param name="conditionOperator">Condition Operator</param>
        /// <param name="errorCollection">Error Collection</param>
        /// <returns>Condition Operator</returns>
        public static async Task <string> GetGameTimeCompareOperatorFromTemplate(ICachedExportDefaultTemplateProvider defaultTemplateProvider, GoNorthProject project, int conditionOperator, ExportPlaceholderErrorCollection errorCollection)
        {
            switch (conditionOperator)
            {
            case GameTimeConditionData.Operator_Before:
                return((await defaultTemplateProvider.GetDefaultTemplateByType(project.Id, TemplateType.GeneralCompareOperatorLess)).Code);

            case GameTimeConditionData.Operator_After:
                return((await defaultTemplateProvider.GetDefaultTemplateByType(project.Id, TemplateType.GeneralCompareOperatorBigger)).Code);
            }

            errorCollection.AddDialogUnknownConditionOperator(conditionOperator.ToString());
            return("");
        }
        /// <summary>
        /// Returns the item compare operator from the template of the condition
        /// </summary>
        /// <param name="defaultTemplateProvider">Default template provider</param>
        /// <param name="project">Project</param>
        /// <param name="compareOperator">Compare Operator</param>
        /// <param name="errorCollection">Error Collection</param>
        /// <returns>Condition Operator</returns>
        public static async Task <string> GetItemCompareOperatorFromTemplate(ICachedExportDefaultTemplateProvider defaultTemplateProvider, GoNorthProject project, int compareOperator, ExportPlaceholderErrorCollection errorCollection)
        {
            switch (compareOperator)
            {
            case InventoryConditionData.CompareOperator_AtLeast:
                return((await defaultTemplateProvider.GetDefaultTemplateByType(project.Id, TemplateType.GeneralCompareOperatorBiggerOrEqual)).Code);

            case InventoryConditionData.CompareOperator_AtMaximum:
                return((await defaultTemplateProvider.GetDefaultTemplateByType(project.Id, TemplateType.GeneralCompareOperatorLessOrEqual)).Code);
            }

            errorCollection.AddDialogUnknownConditionOperator(compareOperator.ToString());
            return("");
        }
        /// <summary>
        /// Returns the group operator from the template of the condition
        /// </summary>
        /// <param name="defaultTemplateProvider">Default template provider</param>
        /// <param name="project">Project</param>
        /// <param name="groupOperator">Group Operator</param>
        /// <param name="errorCollection">Error Collection</param>
        /// <returns>Group Operator</returns>
        public static async Task <string> GetGroupOperatorFromTemplate(ICachedExportDefaultTemplateProvider defaultTemplateProvider, GoNorthProject project, int groupOperator, ExportPlaceholderErrorCollection errorCollection)
        {
            switch (groupOperator)
            {
            case ExportConstants.GroupOperator_And:
                return((await defaultTemplateProvider.GetDefaultTemplateByType(project.Id, TemplateType.GeneralLogicAnd)).Code);

            case ExportConstants.GroupOperator_Or:
                return((await defaultTemplateProvider.GetDefaultTemplateByType(project.Id, TemplateType.GeneralLogicOr)).Code);
            }

            errorCollection.AddDialogUnknownGroupOperator(groupOperator);
            return("");
        }
Example #15
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="templatePlaceholderResolver">Template placeholder resolver</param>
 /// <param name="exportCachedDbAccess">Export cached database access</param>
 /// <param name="defaultTemplateProvider">Default template provider</param>
 /// <param name="taleDbAccess">Dialog database access</param>
 /// <param name="languageKeyGenerator">Language key generator</param>
 /// <param name="dialogParser">Dialog Parser</param>
 /// <param name="dialogFunctionGenerator">Dialog Function Generator</param>
 /// <param name="dialogRenderer">Dialog Renderer</param>
 /// <param name="localizerFactory">Localizer Factory</param>
 public DialogValueCollector(IExportTemplatePlaceholderResolver templatePlaceholderResolver, IExportCachedDbAccess exportCachedDbAccess, ICachedExportDefaultTemplateProvider defaultTemplateProvider, ITaleDbAccess taleDbAccess,
                             IScribanLanguageKeyGenerator languageKeyGenerator, IExportDialogParser dialogParser, IExportDialogFunctionGenerator dialogFunctionGenerator, IExportDialogRenderer dialogRenderer,
                             IStringLocalizerFactory localizerFactory)
 {
     _templatePlaceholderResolver = templatePlaceholderResolver;
     _exportCachedDbAccess        = exportCachedDbAccess;
     _defaultTemplateProvider     = defaultTemplateProvider;
     _taleDbAccess            = taleDbAccess;
     _languageKeyGenerator    = languageKeyGenerator;
     _dialogParser            = dialogParser;
     _dialogFunctionGenerator = dialogFunctionGenerator;
     _dialogRenderer          = dialogRenderer;
     _localizerFactory        = localizerFactory;
 }
Example #16
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="exportCachedDbAccess">Export cached Db access</param>
        /// <param name="errorCollection">Error Collection</param>
        /// <param name="defaultTemplateProvider">Default Template Provider</param>
        /// <param name="languageKeyGenerator">Language Key Generator</param>
        /// <param name="conditionRenderer">Condition Renderer</param>
        /// <param name="localizerFactory">Localizer Factory</param>
        /// <param name="exportSettings">Export Settings</param>
        /// <param name="project">Project</param>
        public ExportDialogConditionRenderer(IExportCachedDbAccess exportCachedDbAccess, ExportPlaceholderErrorCollection errorCollection, ICachedExportDefaultTemplateProvider defaultTemplateProvider, ILanguageKeyGenerator languageKeyGenerator,
                                             IConditionRenderer conditionRenderer, IStringLocalizerFactory localizerFactory, ExportSettings exportSettings, GoNorthProject project)
        {
            _errorCollection         = errorCollection;
            _defaultTemplateProvider = defaultTemplateProvider;
            _conditionRenderer       = conditionRenderer;
            _exportSettings          = exportSettings;
            _localizer = localizerFactory.Create(typeof(ExportDialogConditionRenderer));
            _project   = project;

            _renderers = new Dictionary <ExportTemplateRenderingEngine, IConditionStepRenderer> {
                { ExportTemplateRenderingEngine.Legacy, new LegacyConditionStepRenderer(languageKeyGenerator, exportSettings, errorCollection, conditionRenderer, localizerFactory, project) },
                { ExportTemplateRenderingEngine.Scriban, new ScribanConditionStepRenderer(exportCachedDbAccess, exportSettings, errorCollection, conditionRenderer, localizerFactory, project) }
            };
        }
Example #17
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="exportCachedDbAccess">Export cached Db access</param>
        /// <param name="errorCollection">Error Collection</param>
        /// <param name="defaultTemplateProvider">Default Template Provider</param>
        /// <param name="languageKeyGenerator">Language Key Generator</param>
        /// <param name="scribanLanguageKeyGenerator">Scriban Language key generator</param>
        /// <param name="localizerFactory">Localizer Factory</param>
        /// <param name="exportSettings">Export Settings</param>
        /// <param name="project">Project</param>
        /// <param name="isPlayerLine">true if its a player line, else false</param>
        public ExportDialogTextLineRenderer(IExportCachedDbAccess exportCachedDbAccess, ExportPlaceholderErrorCollection errorCollection, ICachedExportDefaultTemplateProvider defaultTemplateProvider, ILanguageKeyGenerator languageKeyGenerator,
                                            IScribanLanguageKeyGenerator scribanLanguageKeyGenerator, IStringLocalizerFactory localizerFactory, ExportSettings exportSettings, GoNorthProject project,
                                            bool isPlayerLine)
        {
            _errorCollection         = errorCollection;
            _defaultTemplateProvider = defaultTemplateProvider;
            _localizer    = localizerFactory.Create(typeof(ExportDialogTextLineRenderer));
            _project      = project;
            _isPlayerLine = isPlayerLine;

            _renderers = new Dictionary <ExportTemplateRenderingEngine, ITextLineRenderer> {
                { ExportTemplateRenderingEngine.Legacy, new LegacyTextLineRenderer(languageKeyGenerator, exportSettings, errorCollection, localizerFactory, isPlayerLine) },
                { ExportTemplateRenderingEngine.Scriban, new ScribanTextLineRenderer(exportCachedDbAccess, exportSettings, errorCollection, scribanLanguageKeyGenerator, localizerFactory, isPlayerLine) }
            };
        }
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="defaultTemplateProvider">Default Template Provider</param>
        /// <param name="cachedDbAccess">Cached Db Access</param>
        /// <param name="languageKeyGenerator">Language Key Generator</param>
        /// <param name="languageKeyDbAccess">Language Key Db Access</param>
        /// <param name="taleDbAccess">Dialog Db Access</param>
        /// <param name="dialogParser">Dialog Parser</param>
        /// <param name="dialogFunctionGenerator">Dialog Function Generator</param>
        /// <param name="dialogRenderer">Dialog Renderer</param>
        /// <param name="localizerFactory">Localizer Factory</param>
        public ExportTemplatePlaceholderResolver(ICachedExportDefaultTemplateProvider defaultTemplateProvider, IExportCachedDbAccess cachedDbAccess, ILanguageKeyGenerator languageKeyGenerator, ILanguageKeyDbAccess languageKeyDbAccess,
                                                 ITaleDbAccess taleDbAccess, IExportDialogParser dialogParser, IExportDialogFunctionGenerator dialogFunctionGenerator, IExportDialogRenderer dialogRenderer, IStringLocalizerFactory localizerFactory)
        {
            _localizerFactory = localizerFactory;


            _exportTemplatePlaceholderResolvers = new List <IExportTemplateTopicPlaceholderResolver>();

            // Order of exporting is determined by the order in which these are  added, thats why the order is important
            _exportTemplatePlaceholderResolvers.Add(new NpcInventoryExportTemplatePlaceholderResolver(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory));
            _exportTemplatePlaceholderResolvers.Add(new NpcSkillExportTemplatePlaceholderResolver(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory));
            _exportTemplatePlaceholderResolvers.Add(new FlexFieldExportTemplatePlaceholderResolver(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory));
            _exportTemplatePlaceholderResolvers.Add(new DialogExportTemplatePlaceholderResolver(cachedDbAccess, languageKeyGenerator, taleDbAccess, dialogParser, dialogFunctionGenerator, dialogRenderer, localizerFactory));
            _exportTemplatePlaceholderResolvers.Add(new LanguageKeyTemplatePlaceholderResolver(defaultTemplateProvider, cachedDbAccess, languageKeyDbAccess, localizerFactory));
        }
Example #19
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="defaultTemplateProvider">Default Template Provider</param>
 /// <param name="cachedDbAccess">Cached Db Access</param>
 /// <param name="languageKeyGenerator">Language Key Generator</param>
 /// <param name="scribanLanguageKeyGenerator">Scriban language key generator</param>
 /// <param name="conditionRenderer">Condition Renderer</param>
 /// <param name="legacyDailyRoutineEventPlaceholderResolver">Daily routine event placeholder resolver</param>
 /// <param name="dailyRoutineFunctionNameGenerator">Daily routine function name generator</param>
 /// <param name="actionTranslator">Action translator</param>
 /// <param name="stringLocalizerFactory">String Localizer Factor</param>
 public NodeGraphBaseRenderer(ICachedExportDefaultTemplateProvider defaultTemplateProvider, IExportCachedDbAccess cachedDbAccess, ILanguageKeyGenerator languageKeyGenerator, IScribanLanguageKeyGenerator scribanLanguageKeyGenerator,
                              IConditionRenderer conditionRenderer, ILegacyDailyRoutineEventPlaceholderResolver legacyDailyRoutineEventPlaceholderResolver, IDailyRoutineFunctionNameGenerator dailyRoutineFunctionNameGenerator,
                              IActionTranslator actionTranslator, IStringLocalizerFactory stringLocalizerFactory)
 {
     _defaultTemplateProvider     = defaultTemplateProvider;
     _cachedDbAccess              = cachedDbAccess;
     _languageKeyGenerator        = languageKeyGenerator;
     _scribanLanguageKeyGenerator = scribanLanguageKeyGenerator;
     _conditionRenderer           = conditionRenderer;
     _legacyDailyRoutineEventPlaceholderResolver = legacyDailyRoutineEventPlaceholderResolver;
     _dailyRoutineFunctionNameGenerator          = dailyRoutineFunctionNameGenerator;
     _actionTranslator       = actionTranslator;
     _stringLocalizerFactory = stringLocalizerFactory;
     _errorCollection        = null;
     _stepRenderers          = new List <IExportDialogStepRenderer>();
 }
Example #20
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="defaultTemplateProvider">Default Template Provider</param>
        /// <param name="cachedDbAccess">Cached Db Access</param>
        /// <param name="languageKeyGenerator">Language Key Generator</param>
        /// <param name="languageKeyDbAccess">Language Key Db Access</param>
        /// <param name="scribanLanguageKeyGenerator">Scriban Language key generator</param>
        /// <param name="taleDbAccess">Dialog Db Access</param>
        /// <param name="dialogParser">Dialog Parser</param>
        /// <param name="dialogFunctionGenerator">Dialog Function Generator</param>
        /// <param name="dialogRenderer">Dialog Renderer</param>
        /// <param name="legacyDailyRoutineEventPlaceholderResolver">Legacy Daily routine event placeholder resolver</param>
        /// <param name="legacyDailyRoutineEventContentPlaceholderResolver">Legacy Daily routine event content placeholder resolver</param>
        /// <param name="dailyRoutineFunctionNameGenerator">Daily routine function name generator</param>
        /// <param name="dailyRoutineFunctionRenderer">Daily routine function renderer</param>
        /// <param name="nodeGraphExporter">Node Graph Exporter</param>
        /// <param name="exportSnippetFunctionRenderer">Export snippet function renderer</param>
        /// <param name="stateMachineFunctionNameGenerator">State machine function name generator</param>
        /// <param name="stateMachineFunctionRenderer">State machine function renderer</param>
        /// <param name="localizerFactory">Localizer Factory</param>
        public ExportTemplatePlaceholderResolver(ICachedExportDefaultTemplateProvider defaultTemplateProvider, IExportCachedDbAccess cachedDbAccess, ILanguageKeyGenerator languageKeyGenerator, IScribanLanguageKeyGenerator scribanLanguageKeyGenerator,
                                                 ILanguageKeyDbAccess languageKeyDbAccess, ITaleDbAccess taleDbAccess, IExportDialogParser dialogParser, IExportDialogFunctionGenerator dialogFunctionGenerator, IExportDialogRenderer dialogRenderer,
                                                 ILegacyDailyRoutineEventPlaceholderResolver legacyDailyRoutineEventPlaceholderResolver, ILegacyDailyRoutineEventContentPlaceholderResolver legacyDailyRoutineEventContentPlaceholderResolver,
                                                 IDailyRoutineFunctionNameGenerator dailyRoutineFunctionNameGenerator, IDailyRoutineFunctionRenderer dailyRoutineFunctionRenderer, INodeGraphExporter nodeGraphExporter,
                                                 IExportSnippetFunctionRenderer exportSnippetFunctionRenderer, IStateMachineFunctionNameGenerator stateMachineFunctionNameGenerator, IStateMachineFunctionRenderer stateMachineFunctionRenderer,
                                                 IStringLocalizerFactory localizerFactory)
        {
            dialogRenderer.SetExportTemplatePlaceholderResolver(this);

            _renderingEngine = new Dictionary <ExportTemplateRenderingEngine, IExportTemplatePlaceholderRenderingEngine>();
            _renderingEngine.Add(ExportTemplateRenderingEngine.Legacy, new LegacyExportTemplatePlaceholderRenderingEngine(this, defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, languageKeyDbAccess, taleDbAccess, dialogParser,
                                                                                                                          dialogFunctionGenerator, dialogRenderer, legacyDailyRoutineEventPlaceholderResolver, legacyDailyRoutineEventContentPlaceholderResolver,
                                                                                                                          dailyRoutineFunctionRenderer, nodeGraphExporter, exportSnippetFunctionRenderer, localizerFactory));
            _renderingEngine.Add(ExportTemplateRenderingEngine.Scriban, new ScribanExportTemplatePlaceholderRenderingEngine(this, cachedDbAccess, taleDbAccess, defaultTemplateProvider, scribanLanguageKeyGenerator, dialogParser, dialogFunctionGenerator,
                                                                                                                            dialogRenderer, dailyRoutineFunctionNameGenerator, dailyRoutineFunctionRenderer, exportSnippetFunctionRenderer, stateMachineFunctionNameGenerator,
                                                                                                                            stateMachineFunctionRenderer, languageKeyDbAccess, localizerFactory));
        }
Example #21
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="defaultTemplateProvider">Default Template Provider</param>
        /// <param name="cachedDbAccess">Cached Db Access</param>
        /// <param name="languageKeyGenerator">Language Key Generator</param>
        /// <param name="localizerFactory">Localizer Factory</param>
        public ConditionRenderer(ICachedExportDefaultTemplateProvider defaultTemplateProvider, IExportCachedDbAccess cachedDbAccess, ILanguageKeyGenerator languageKeyGenerator, IStringLocalizerFactory localizerFactory)
        {
            _defaultTemplateProvider = defaultTemplateProvider;

            _elementRenderes = new Dictionary <ConditionType, IConditionElementRenderer>();
            _elementRenderes.Add(ConditionType.Group, new GroupConditionResolver(this, defaultTemplateProvider, localizerFactory));
            _elementRenderes.Add(ConditionType.PlayerValueCondition, new NpcValueConditionResolver(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true));
            _elementRenderes.Add(ConditionType.NpcValueCondition, new NpcValueConditionResolver(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false));
            _elementRenderes.Add(ConditionType.PlayerInventoryCondition, new InventoryConditionResolver(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true));
            _elementRenderes.Add(ConditionType.NpcInventoryCondition, new InventoryConditionResolver(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false));
            _elementRenderes.Add(ConditionType.ChooseQuestValueCondition, new QuestValueConditionResolver(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory));
            _elementRenderes.Add(ConditionType.QuestStateCondition, new QuestStateConditionResolver(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory));
            _elementRenderes.Add(ConditionType.NpcAliveStateCondition, new NpcAliveStateConditionResolver(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory));
            _elementRenderes.Add(ConditionType.GameTimeCondition, new GameTimeConditionResolver(defaultTemplateProvider, localizerFactory));
            _elementRenderes.Add(ConditionType.PlayerSkillValueCondition, new SkillValueConditionResolver(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true));
            _elementRenderes.Add(ConditionType.NpcSkillValueCondition, new SkillValueConditionResolver(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false));
            _elementRenderes.Add(ConditionType.PlayerLearnedSkillCondition, new LearnedSkillConditionResolver(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true, true));
            _elementRenderes.Add(ConditionType.PlayerNotLearnedSkillCondition, new LearnedSkillConditionResolver(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true, false));
            _elementRenderes.Add(ConditionType.NpcLearnedSkillCondition, new LearnedSkillConditionResolver(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false, true));
            _elementRenderes.Add(ConditionType.NpcNotLearnedSkillCondition, new LearnedSkillConditionResolver(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false, false));
        }
Example #22
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="defaultTemplateProvider">Default Template Provider</param>
 /// <param name="localizerFactory">Localizer Factory</param>
 public CodeActionRenderer(ICachedExportDefaultTemplateProvider defaultTemplateProvider, IStringLocalizerFactory localizerFactory)
 {
     _defaultTemplateProvider = defaultTemplateProvider;
     _localizer = localizerFactory.Create(typeof(CodeActionRenderer));
 }
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="defaultTemplateProvider">Default Template Provider</param>
 /// <param name="cachedDbAccess">Cached Db Access</param>
 /// <param name="languageKeyGenerator">Language Key Generator</param>
 /// <param name="localizerFactory">Localizer Factory</param>
 /// <param name="isPlayer">true if the action is rendered for the player, else false</param>
 public ShowFloatingTextAboveNpcActionRenderer(ICachedExportDefaultTemplateProvider defaultTemplateProvider, IExportCachedDbAccess cachedDbAccess, ILanguageKeyGenerator languageKeyGenerator, IStringLocalizerFactory localizerFactory, bool isPlayer) :
     base(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory)
 {
     _isPlayer = isPlayer;
 }
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="defaultTemplateProvider">Default Template Provider</param>
 /// <param name="cachedDbAccess">Cached Db Access</param>
 /// <param name="languageKeyGenerator">Language Key Generator</param>
 /// <param name="localizerFactory">Localizer Factory</param>
 /// <param name="isPlayer">True if the action is for the player, else false</param>
 /// <param name="isPickNpc">True if the action is for a pick npc, else false</param>
 public UseItemActionRenderer(ICachedExportDefaultTemplateProvider defaultTemplateProvider, IExportCachedDbAccess cachedDbAccess, ILanguageKeyGenerator languageKeyGenerator, IStringLocalizerFactory localizerFactory,
                              bool isPlayer, bool isPickNpc) : base(cachedDbAccess, isPlayer, isPickNpc)
 {
     _flexFieldPlaceholderResolverNpc  = new FlexFieldExportTemplatePlaceholderResolver(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, FlexField_Npc_Prefix);
     _flexFieldPlaceholderResolverItem = new FlexFieldExportTemplatePlaceholderResolver(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, FlexField_Item_Prefix);
 }
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="defaultTemplateProvider">Default Template Provider</param>
 /// <param name="localizerFactory">Localizer Factory</param>
 public GameTimeConditionResolver(ICachedExportDefaultTemplateProvider defaultTemplateProvider, IStringLocalizerFactory localizerFactory)
 {
     _defaultTemplateProvider = defaultTemplateProvider;
     _localizer = localizerFactory.Create(typeof(GameTimeConditionResolver));
 }
Example #26
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="templatePlaceholderResolver">Template placeholder resolver</param>
 /// <param name="exportCachedDbAccess">Export cached database access</param>
 /// <param name="defaultTemplateProvider">Default template provider</param>
 /// <param name="errorCollection">Error collection</param>
 public StateMachineFunctionPipeRenderer(IExportTemplatePlaceholderResolver templatePlaceholderResolver, IExportCachedDbAccess exportCachedDbAccess, ICachedExportDefaultTemplateProvider defaultTemplateProvider,
                                         ExportPlaceholderErrorCollection errorCollection)
 {
     _templatePlaceholderResolver = templatePlaceholderResolver;
     _exportCachedDbAccess        = exportCachedDbAccess;
     _defaultTemplateProvider     = defaultTemplateProvider;
     _errorCollection             = errorCollection;
 }
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="cachedDbAccess">Cached database access</param>
 /// <param name="defaultTemplateProvider">Default template provider</param>
 /// <param name="dailyRoutineFunctionRenderer">Daily routine function renderer</param>
 /// <param name="localizerFactory">Localizer factory</param>
 public LegacyDailyRoutineEventContentPlaceholderResolver(IExportCachedDbAccess cachedDbAccess, ICachedExportDefaultTemplateProvider defaultTemplateProvider, IDailyRoutineFunctionRenderer dailyRoutineFunctionRenderer,
                                                          IStringLocalizerFactory localizerFactory)
 {
     _cachedDbAccess               = cachedDbAccess;
     _defaultTemplateProvider      = defaultTemplateProvider;
     _dailyRoutineFunctionRenderer = dailyRoutineFunctionRenderer;
     _renderedEvents               = new Dictionary <string, List <DailyRoutineFunction> >();
     _localizer = localizerFactory.Create(typeof(LegacyDailyRoutineEventContentPlaceholderResolver));
 }
Example #28
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="errorCollection">Error Collection</param>
        /// <param name="defaultTemplateProvider">Default Template Provider</param>
        /// <param name="cachedDbAccess">Cached Db Access</param>
        /// <param name="languageKeyGenerator">Language Key Generator</param>
        /// <param name="localizerFactory">Localizer Factory</param>
        /// <param name="exportSettings">Export Settings</param>
        /// <param name="project">Project</param>
        public ExportDialogActionRenderer(ExportPlaceholderErrorCollection errorCollection, ICachedExportDefaultTemplateProvider defaultTemplateProvider, IExportCachedDbAccess cachedDbAccess,
                                          ILanguageKeyGenerator languageKeyGenerator, IStringLocalizerFactory localizerFactory, ExportSettings exportSettings, GoNorthProject project) :
            base(errorCollection, localizerFactory)
        {
            _defaultTemplateProvider = defaultTemplateProvider;
            _languageKeyGenerator    = languageKeyGenerator;
            _localizer      = localizerFactory.Create(typeof(ExportDialogActionRenderer));
            _exportSettings = exportSettings;
            _project        = project;

            _actionRenderes = new Dictionary <ActionType, IActionRenderer>();
            _actionRenderes.Add(ActionType.ChangePlayerValue, new NpcValueChangeRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true));
            _actionRenderes.Add(ActionType.ChangeNpcValue, new NpcValueChangeRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false));
            _actionRenderes.Add(ActionType.SpawnItemInPlayerInventory, new InventoryActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true, false));
            _actionRenderes.Add(ActionType.TransferItemToPlayerInventory, new InventoryActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true, true));
            _actionRenderes.Add(ActionType.SpawnItemInNpcInventory, new InventoryActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false, false));
            _actionRenderes.Add(ActionType.TransferItemToNpcInventory, new InventoryActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false, true));
            _actionRenderes.Add(ActionType.ChangeQuestValue, new QuestValueChangeRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory));
            _actionRenderes.Add(ActionType.ChangeQuestState, new SetQuestStateActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory));
            _actionRenderes.Add(ActionType.AddQuestText, new AddQuestTextRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory));
            _actionRenderes.Add(ActionType.Wait, new WaitActionRenderer(defaultTemplateProvider, localizerFactory));
            _actionRenderes.Add(ActionType.ChangePlayerState, new ChangeNpcStateActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true));
            _actionRenderes.Add(ActionType.ChangeNpcState, new ChangeNpcStateActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false));
            _actionRenderes.Add(ActionType.PlayerLearnSkill, new LearnForgetSkillActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true, true));
            _actionRenderes.Add(ActionType.PlayerForgetSkill, new LearnForgetSkillActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true, false));
            _actionRenderes.Add(ActionType.NpcLearnSkill, new LearnForgetSkillActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false, true));
            _actionRenderes.Add(ActionType.NpcForgetSkill, new LearnForgetSkillActionRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false, false));
            _actionRenderes.Add(ActionType.ChangePlayerSkillValue, new SkillValueChangeRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, true));
            _actionRenderes.Add(ActionType.ChangeNpcSkillValue, new SkillValueChangeRenderer(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, false));
            _actionRenderes.Add(ActionType.PersistDialogState, new PersistDialogStateActionRenderer(defaultTemplateProvider));
            _actionRenderes.Add(ActionType.OpenShop, new OpenShopActionRenderer(defaultTemplateProvider));
        }
Example #29
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="defaultTemplateProvider">Default Template Provider</param>
 public OpenShopActionRenderer(ICachedExportDefaultTemplateProvider defaultTemplateProvider)
 {
     _defaultTemplateProvider = defaultTemplateProvider;
 }
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="defaultTemplateProvider">Default Template Provider</param>
 /// <param name="cachedDbAccess">Cached Db Access</param>
 /// <param name="languageKeyGenerator">Language Key Generator</param>
 /// <param name="localizerFactory">Localizer Factory</param>
 public ValueActionRenderBase(ICachedExportDefaultTemplateProvider defaultTemplateProvider, IExportCachedDbAccess cachedDbAccess, ILanguageKeyGenerator languageKeyGenerator, IStringLocalizerFactory localizerFactory) :
     base(defaultTemplateProvider, cachedDbAccess)
 {
     _localizer = localizerFactory.Create(typeof(ValueActionRenderBase));
     _flexFieldPlaceholderResolver = new FlexFieldExportTemplatePlaceholderResolver(defaultTemplateProvider, cachedDbAccess, languageKeyGenerator, localizerFactory, GetFlexFieldPrefix());
 }