Exemple #1
0
        public void FinishNonExistingQuest()
        {
            var questsManager = new QuestsManager(new Mock <ILogger <QuestsManager> >().Object, definitionsPreloader.Object, new Mock <IMapProvider>().Object, gameWorldMock.Object, databaseMock.Object, new Mock <IPartyManager>().Object, new Mock <IInventoryManager>().Object, databasePreloader.Object, enchantConfig.Object, itemCreateConfig.Object, new Mock <ILevelingManager>().Object);
            var ok            = questsManager.TryFinishQuest(0, 1, out var q);

            Assert.False(ok);
        }
Exemple #2
0
        public void FarmItemsAreCheckedQuest()
        {
            var items            = new ConcurrentDictionary <(byte Bag, byte Slot), Item>();
            var inventoryManager = new Mock <IInventoryManager>();

            inventoryManager.SetupGet(x => x.InventoryItems)
            .Returns(items);

            var questsManager = new QuestsManager(new Mock <ILogger <QuestsManager> >().Object, definitionsPreloader.Object, new Mock <IMapProvider>().Object, gameWorldMock.Object, databaseMock.Object, new Mock <IPartyManager>().Object, inventoryManager.Object, databasePreloader.Object, enchantConfig.Object, itemCreateConfig.Object, new Mock <ILevelingManager>().Object);
            var dbQuests      = new List <DbCharacterQuest>();

            dbQuests.Add(new DbCharacterQuest()
            {
                CharacterId = 1, QuestId = Bartering.Id
            });

            questsManager.Init(1, dbQuests);

            var ok = questsManager.TryFinishQuest(0, Bartering.Id, out var q);

            Assert.False(ok);

            items.TryAdd((1, 0), new Item(databasePreloader.Object, enchantConfig.Object, itemCreateConfig.Object, Bartering.FarmItems[0].Type, Bartering.FarmItems[0].TypeId, Bartering.FarmItems[0].Count));
            ok = questsManager.TryFinishQuest(0, Bartering.Id, out q);
            Assert.True(ok);
        }
Exemple #3
0
        public void MobCountIsCheckedQuest()
        {
            var inventoryManager = new Mock <IInventoryManager>();

            inventoryManager.SetupGet(x => x.InventoryItems)
            .Returns(new ConcurrentDictionary <(byte Bag, byte Slot), Item>());

            var questsManager = new QuestsManager(new Mock <ILogger <QuestsManager> >().Object, definitionsPreloader.Object, new Mock <IMapProvider>().Object, gameWorldMock.Object, databaseMock.Object, new Mock <IPartyManager>().Object, inventoryManager.Object, databasePreloader.Object, enchantConfig.Object, itemCreateConfig.Object, new Mock <ILevelingManager>().Object);
            var dbQuests      = new List <DbCharacterQuest>();

            dbQuests.Add(new DbCharacterQuest()
            {
                CharacterId = 1, QuestId = NewBeginnings.Id
            });

            questsManager.Init(1, dbQuests);

            var ok = questsManager.TryFinishQuest(0, NewBeginnings.Id, out var q);

            Assert.False(ok);

            questsManager.UpdateQuestMobCount(NewBeginnings.RequiredMobId1);
            ok = questsManager.TryFinishQuest(0, NewBeginnings.Id, out q);
            Assert.False(ok);

            questsManager.UpdateQuestMobCount(NewBeginnings.RequiredMobId1);
            questsManager.UpdateQuestMobCount(NewBeginnings.RequiredMobId1);
            questsManager.UpdateQuestMobCount(NewBeginnings.RequiredMobId1);
            questsManager.UpdateQuestMobCount(NewBeginnings.RequiredMobId1);

            ok = questsManager.TryFinishQuest(0, NewBeginnings.Id, out q);
            Assert.True(ok);
        }
Exemple #4
0
        protected override void OnGameEnded(GameEndInformation endInformation)
        {
            base.OnGameEnded(endInformation);

            GameSettings.Statistics.GameHasBeenCompleted(Game, endInformation);
            QuestsManager.GameCompleted(Game, endInformation);
        }
 // Start is called before the first frame update
 void Start()
 {
     sentences = new Queue <string>();
     player    = FindObjectOfType <PlayerController>();
     questPanel.SetActive(false);
     questsManager = FindObjectOfType <QuestsManager>();
 }
Exemple #6
0
 // Start is called before the first frame update
 void Awake()
 {
     if (Instance != null)
     {
         Debug.LogError($"Duplicate {name}");
     }
     Instance = this;
 }
Exemple #7
0
    private void Awake()
    {
        if (Instance == null)
        {
            Instance = this;

            Instance.Data = new DataQuests();
        }
    }
Exemple #8
0
 // Start is called before the first frame update
 void Start()
 {
     player             = FindObjectOfType <PlayerController>();
     enemyCurrentHealth = enemyMaxHealth;
     enemyInfoManager   = FindObjectOfType <EnemyInfoManager>();
     enemyStats         = FindObjectOfType <EnemyStatsManager>();
     respawnController  = FindObjectOfType <RespawnController>();
     qki           = FindObjectOfType <QuestKillsIncrease>();
     questsManager = FindObjectOfType <QuestsManager>();
 }
Exemple #9
0
        public void QuestNotPreloadedShouldNotBreakInitiation()
        {
            var questsManager = new QuestsManager(new Mock <ILogger <QuestsManager> >().Object, definitionsPreloader.Object, new Mock <IMapProvider>().Object, gameWorldMock.Object, databaseMock.Object, new Mock <IPartyManager>().Object, new Mock <IInventoryManager>().Object, databasePreloader.Object, enchantConfig.Object, itemCreateConfig.Object, new Mock <ILevelingManager>().Object);
            var dbQuests      = new List <DbCharacterQuest>();

            dbQuests.Add(new DbCharacterQuest()
            {
                CharacterId = 1, QuestId = 999, Finish = true, Success = true
            });

            questsManager.Init(1, dbQuests);

            Assert.Empty(questsManager.Quests);
        }
Exemple #10
0
        public void FinishAlreadyFinishedQuest()
        {
            var questsManager = new QuestsManager(new Mock <ILogger <QuestsManager> >().Object, definitionsPreloader.Object, new Mock <IMapProvider>().Object, gameWorldMock.Object, databaseMock.Object, new Mock <IPartyManager>().Object, new Mock <IInventoryManager>().Object, databasePreloader.Object, enchantConfig.Object, itemCreateConfig.Object, new Mock <ILevelingManager>().Object);
            var dbQuests      = new List <DbCharacterQuest>();

            dbQuests.Add(new DbCharacterQuest()
            {
                CharacterId = 1, QuestId = NewBeginnings.Id, Finish = true, Success = true
            });

            questsManager.Init(1, dbQuests);

            var ok = questsManager.TryFinishQuest(0, NewBeginnings.Id, out var q);

            Assert.False(ok);
        }
Exemple #11
0
        public void QuestsManagerCanBeInitFromDatabase()
        {
            var questsManager = new QuestsManager(new Mock <ILogger <QuestsManager> >().Object, definitionsPreloader.Object, new Mock <IMapProvider>().Object, gameWorldMock.Object, databaseMock.Object, new Mock <IPartyManager>().Object, new Mock <IInventoryManager>().Object, databasePreloader.Object, enchantConfig.Object, itemCreateConfig.Object, new Mock <ILevelingManager>().Object);
            var dbQuests      = new List <DbCharacterQuest>();

            dbQuests.Add(new DbCharacterQuest()
            {
                CharacterId = 1, QuestId = NewBeginnings.Id, Finish = true, Success = true
            });
            dbQuests.Add(new DbCharacterQuest()
            {
                CharacterId = 1, QuestId = Bartering.Id
            });

            questsManager.Init(1, dbQuests);

            Assert.Equal(2, questsManager.Quests.Count);
        }
Exemple #12
0
        public ServerManager()
        {
            Instance = this;

            TickManager       = new TickManager();
            DatabaseManager   = new DatabaseManager();
            ItemsManager      = new ItemsManager();
            ShopManager       = new ShopManager();
            StatsManager      = new StatsManager();
            SkillsManager     = new SkillsManager();
            CharactersManager = new CharactersManager();
            ClientsManager    = new ClientsManager();
            QuestFlags        = new QuestFlagsManager();
            CombatManager     = new CombatManager(TickManager, CharactersManager);
            RespawnManager    = new RespawnManager(TickManager, CharactersManager);
            fovManager        = new FieldOfViewManager(TickManager, CharactersManager);

            QuestsManager = new QuestsManager();
        }
Exemple #13
0
        public void PlayerShouldBeAbleToSelectQuestResult()
        {
            var inventoryManager = new Mock <IInventoryManager>();
            var questsManager    = new QuestsManager(new Mock <ILogger <QuestsManager> >().Object, definitionsPreloader.Object, new Mock <IMapProvider>().Object, gameWorldMock.Object, databaseMock.Object, new Mock <IPartyManager>().Object, inventoryManager.Object, databasePreloader.Object, enchantConfig.Object, itemCreateConfig.Object, new Mock <ILevelingManager>().Object);
            var dbQuests         = new List <DbCharacterQuest>();

            dbQuests.Add(new DbCharacterQuest()
            {
                CharacterId = 1, QuestId = SkillsAndStats.Id
            });

            questsManager.Init(1, dbQuests);

            var ok = questsManager.TryFinishQuestSelect(0, SkillsAndStats.Id, 0);

            Assert.True(ok);

            inventoryManager.Verify(x => x.AddItem(It.IsAny <Item>()), Times.Once());
        }
Exemple #14
0
        public void QuitQuest()
        {
            var questsManager = new QuestsManager(new Mock <ILogger <QuestsManager> >().Object, definitionsPreloader.Object, new Mock <IMapProvider>().Object, gameWorldMock.Object, databaseMock.Object, new Mock <IPartyManager>().Object, new Mock <IInventoryManager>().Object, databasePreloader.Object, enchantConfig.Object, itemCreateConfig.Object, new Mock <ILevelingManager>().Object);
            var dbQuests      = new List <DbCharacterQuest>();

            dbQuests.Add(new DbCharacterQuest()
            {
                CharacterId = 1, QuestId = NewBeginnings.Id
            });

            questsManager.Init(1, dbQuests);

            Assert.Single(questsManager.Quests);
            Assert.False(questsManager.Quests[0].IsFinished);
            Assert.False(questsManager.Quests[0].IsSuccessful);

            questsManager.QuitQuest(NewBeginnings.Id);
            Assert.True(questsManager.Quests[0].IsFinished);
            Assert.False(questsManager.Quests[0].IsSuccessful);
        }
Exemple #15
0
    public void initializeQuestInfo(QuestsManager questManager)
    {
        playersQuests = questManager;

        QuestInfoScreen.transform.Find("SetAsActive").gameObject.GetComponent <Button>().interactable = false;

        QuestInfoScreen.transform.Find("Title").gameObject.GetComponent <Text>().text       = "";
        QuestInfoScreen.transform.Find("QuestGiver").gameObject.GetComponent <Text>().text  = "---";
        QuestInfoScreen.transform.Find("QuestType").gameObject.GetComponent <Text>().text   = "---";
        QuestInfoScreen.transform.Find("Description").gameObject.GetComponent <Text>().text = "";


        for (int i = 0; i < 8; i++)
        {
            QuestListSlots.transform.Find("Slot" + i.ToString()).Find("Text").gameObject.GetComponent <Text>().text = "---";
        }

        for (int i = 0; (i < playersQuests.getTotalOpenQuests()) && (i < 8); i++)
        {
            QuestListSlots.transform.Find("Slot" + i.ToString()).Find("Text").gameObject.GetComponent <Text>().text = playersQuests.getQuestTitleViaPosition(i);
        }
    }
    // Start is called before the first frame update
    void Start()
    {
        myRigidBody = GetComponent <Rigidbody2D>();

        dialogueManager = FindObjectOfType <DialogueManager>();
        questsManager   = FindObjectOfType <QuestsManager>();

        waitCounter = waitToWalkTime;
        walkCounter = walkTime;

        chooseDirection();

        if (walkZone != null)
        {
            minWalkPoint = walkZone.bounds.min;
            maxWalkPoint = walkZone.bounds.max;
            hasWalkZone  = true;
        }

        npcname = gameObject.GetComponentInChildren <Text>();
        //npcname.text = gameObject.name;
        canMove = true;
    }
    // Start is called before the first frame update
    void Start()
    {
        instance = this;

        questMarkesComplete = new bool[questMarkerNames.Length];
    }