Esempio n. 1
0
        public void ActivateQuestTasks(string choiceID)
        {
            QuestsController questsController = FindObjectOfType <QuestsController>();
            int countTaskActivateResults      = DbCommands.GetCountFromQry(DbQueries.GetTaskActivateCountFromChoiceIDqry(choiceID));

            if (countTaskActivateResults > 0)
            {
                print("Task ACTIVATING!!!!");
                List <string[]> tasksActivatedList;
                DbCommands.GetDataStringsFromQry(DbQueries.GetCurrentActivateTasksPlayerChoiceResultQry(choiceID), out tasksActivatedList);
                foreach (string[] activatedTask in tasksActivatedList)
                {
                    questsUI.InsertActivatedTask(activatedTask[1], activatedTask[3], activatedTask[2]);
                    //a list of task parts in task that are prefab types are iterated over (if any) and instantiated.
                    List <string[]> prefabParts = new List <string[]>();
                    DbCommands.GetDataStringsFromQry(DbQueries.GetPrefabTaskPartsFromTaskIDqry(activatedTask[1]), out prefabParts);
                    foreach (string[] prefabPart in prefabParts)
                    {
                        string             prefabPath        = prefabPart[0];
                        string             partID            = prefabPart[1];
                        UnityEngine.Object prefabTaskPartObj = Resources.Load(prefabPath);
                        print(prefabPath);
                        GameObject prefabTaskPart = Instantiate(prefabTaskPartObj, new Vector2(0f, 0f), Quaternion.identity) as GameObject;
                        prefabTaskPart.GetComponent <QuestTaskPart>().InitialiseMe(partID, activatedTask[1], activatedTask[3]);
                        prefabTaskPart.transform.SetParent(questsController.transform, false);
                    }
                }
            }
        }
Esempio n. 2
0
    private void LoadWorldItems()
    {
        string     saveIDstr  = PlayerPrefsManager.GetSaveGame().ToString();
        WorldItems worldItems = FindObjectOfType <WorldItems>();

        worldItems.DestroyWorldItems();
        List <string[]> newWorldItemsList = new List <string[]>();

        //Debugging.PrintDbQryResults(DbQueries.GetSavedWorldItemsQry(saveIDstr, sceneLoader.GetCurrentSceneName()), saveIDstr, sceneLoader.GetCurrentSceneName());
        DbCommands.GetDataStringsFromQry(DbQueries.GetSavedWorldItemsQry(saveIDstr, sceneLoader.GetCurrentSceneName()), out newWorldItemsList, saveIDstr, sceneLoader.GetCurrentSceneName());
        foreach (string[] worldItemData in newWorldItemsList)
        {
            string             prefabPath      = worldItemData[5];
            UnityEngine.Object worldItemPrefab = Resources.Load(prefabPath);
            GameObject         worldItem       = Instantiate(worldItemPrefab, new Vector2(0f, 0f), Quaternion.identity) as GameObject;
            string[]           parentPath      = worldItemData[3].Split('/');
            Transform          parentTransform = GameObject.Find(parentPath[1]).transform;
            for (int i = 2; i < parentPath.Length - 1; i++)
            {
                parentTransform = parentTransform.Find(parentPath[i]);
            }
            worldItem.transform.SetParent(parentTransform, false);
            worldItem.transform.position = new Vector3(float.Parse(worldItemData[0]), float.Parse(worldItemData[1]), float.Parse(worldItemData[2]));
            worldItem.name = worldItemData[4];
        }
    }
Esempio n. 3
0
        public static void PrintDbQryResults(string qry, params string[] parameterVals)
        {
            List <string[]> strArray = new List <string[]>();

            DbCommands.GetDataStringsFromQry(qry, out strArray, parameterVals);
            PrintListOfStrArrays(strArray);
        }
Esempio n. 4
0
    /// <summary>
    /// The characters from the game are updated so that you know which ones still exist in the scene and are given the option
    /// to delete them (from the Data UI -> Dialogues UI -> Character lists(s?)) when the list is built. New characters in the scene are also added.
    /// </summary>
    public void UpdateCharactersTableFromGame()
    {
        SceneLoader sceneLoader  = new SceneLoader();
        string      currentScene = sceneLoader.GetCurrentSceneName();

        InsertCharsNotInDbFromScene(currentScene);
        List <string[]> characterNamesList = new List <string[]>();

        DbCommands.GetDataStringsFromQry(DbQueries.GetCharacterNamesWithScene(currentScene), out characterNamesList, currentScene);
        UpdateCharsInDbNoLongerInScene(characterNamesList);
    }
Esempio n. 5
0
        public void CompleteQuestTaskPart(string questName)
        {
            List <string[]> partsToComplete = new List <string[]>();

            DbCommands.GetDataStringsFromQry(DbQueries.GetCompleteQuestTasksData(questName, "0"), out partsToComplete, questName);
            if (partsToComplete.Count > 0)
            {
                foreach (string[] tuple in partsToComplete)
                {
                    CompleteTaskPart(tuple[0], tuple[1], questName);
                }
            }
        }
Esempio n. 6
0
    /// <summary>
    /// An anonymous function to create a new list from array data generated by a query and append it to a game objects transform.
    /// </summary>
    /// <param name="query">Used to return records from Db</param>
    /// <param name="display">The unity game object transform / where the visible UI list items will be put in the heirarchy</param>
    /// <param name="buildItem">Anonymous function selected and used to initialise the list items </param>
    /// <param name="qryParameters">The values of the parameters to be added (a function is used when building the query and on the values in this
    /// function to give the same name.</param>
    public void AppendDisplayFromDb(string query, Transform display, Func <string[], Transform> buildItem, params string[] qryParameterValues)
    {
        //print (query);
        List <string[]> stringArrayList = new List <string[]>();

        DbCommands.GetDataStringsFromQry(query, out stringArrayList, qryParameterValues);
        //Debugging.PrintListOfStrArrays(stringArrayList);
        foreach (string[] stringArray in stringArrayList)
        {
            Transform item = buildItem(stringArray);
            item.SetParent(display, false);
        }
        //print(query);
    }
Esempio n. 7
0
        public void ActivateNewVocab(string choiceID)
        {
            int countVocabActivateResults = DbCommands.GetCountFromQry(DbQueries.GetVocabActivateCountFromChoiceIDqry(choiceID));

            if (countVocabActivateResults > 0)
            {
                print("Vocab ACTIVATING!!!!");
                List <string[]> vocabActivatedList;
                DbCommands.GetDataStringsFromQry(DbQueries.GetCurrentActivateVocabPlayerChoiceResultQry(choiceID), out vocabActivatedList);
                foreach (string[] activatedVocab in vocabActivatedList)
                {
                    newWelshLearnedUI.InsertDiscoveredVocab(activatedVocab[2], activatedVocab[3]);
                }
            }
        }
Esempio n. 8
0
        public void ActivateNewGrammar(string choiceID)
        {
            int countGrammarActivateResults = DbCommands.GetCountFromQry(DbQueries.GetGrammarActivateCountFromChoiceIDqry(choiceID));

            if (countGrammarActivateResults > 0)
            {
                print("Grammar ACTIVATING!!!!");
                List <string[]> grammarActivatedList;
                DbCommands.GetDataStringsFromQry(DbQueries.GetCurrentActivateGrammarPlayerChoiceResultQry(choiceID), out grammarActivatedList);
                foreach (string[] activatedGrammar in grammarActivatedList)
                {
                    newWelshLearnedUI.InsertDiscoveredGrammar(activatedGrammar[1]);
                }
            }
        }
Esempio n. 9
0
    private void LoadPrefabQuests()
    {
        List <string[]> prefabQuestsPathList = new List <string[]>();
        string          saveIDstr            = PlayerPrefsManager.GetSaveGame().ToString();

        DbCommands.GetDataStringsFromQry(DbQueries.GetPathsForActivePrefabQuestParts(saveIDstr), out prefabQuestsPathList);
        foreach (string[] questPrefabArray in prefabQuestsPathList)
        {
            string             prefabPath       = questPrefabArray[0];
            UnityEngine.Object prefabObj        = Resources.Load(prefabPath);
            GameObject         questPrefab      = Instantiate(prefabObj, new Vector2(0f, 0f), Quaternion.identity) as GameObject;
            QuestsController   questsController = FindObjectOfType <QuestsController>();
            questPrefab.GetComponent <QuestTaskPart>().InitialiseMe(questPrefabArray[1], questPrefabArray[2], questPrefabArray[3]);
            questPrefab.transform.SetParent(questsController.transform, false);
        }
    }
Esempio n. 10
0
        public void CompleteDefeatEnemyTagTaskPart(string tagName)
        {
            Debugging.PrintDbQryResults(DbQueries.GetDefeatEnemyTagTasksData(tagName, "0"), tagName);
            List <string[]> partsToComplete = new List <string[]>();

            DbCommands.GetDataStringsFromQry(DbQueries.GetDefeatEnemyTagTasksData(tagName, "0"), out partsToComplete, tagName);
            if (partsToComplete.Count > 0)
            {
                foreach (string[] tuple in partsToComplete)
                {
                    print("completing task part " + tagName);
                    CompleteTaskPart(tuple[0], tuple[1], tuple[2]);
                    print("task part completed");
                }
            }
        }
Esempio n. 11
0
        public void ActivateQuests(string choiceID)
        {
            int countQuestActivateResults = DbCommands.GetCountFromQry(DbQueries.GetQuestActivateCountFromChoiceIDqry(choiceID));

            print(countQuestActivateResults);
            if (countQuestActivateResults > 0)
            {
                List <string[]> questsActivatedList;
                DbCommands.GetDataStringsFromQry(DbQueries.GetCurrentActivateQuestsPlayerChoiceResultQry(choiceID), out questsActivatedList);
                print(questsActivatedList.Count);
                foreach (string[] activatedQuest in questsActivatedList)
                {
                    questsUI.InsertActivatedQuest(activatedQuest[1]);
                }
            }
        }
Esempio n. 12
0
 private void CompleteApplicableTaskParts()
 {
     DbCommands.GetDataStringsFromQry(
         "SELECT QuestTaskPartsActivateDialogueNode.PartIDs, QuestTaskParts.TaskIDs, QuestsActivated.QuestNames " +
         "FROM QuestTaskPartsActivateDialogueNode " +
         "INNER JOIN QuestTaskParts ON QuestTaskParts.PartIDs = QuestTaskPartsActivateDialogueNode.PartIDs " +
         "INNER JOIN QuestTasks ON QuestTasks.TaskIDs = QuestTaskParts.TaskIDs " +
         "INNER JOIN QuestsActivated ON QuestTasks.QuestNames = QuestsActivated.QuestNames " +
         "WHERE NodeIDs = " + myID + " " +
         "AND QuestsActivated.SaveIDs = 0 " +
         "AND QuestTaskPartsActivateDialogueNode.PartIDs NOT IN (SELECT CompletedQuestTaskParts.PartIDs FROM CompletedQuestTaskParts WHERE CompletedQuestTaskParts.SaveIDs = 0);",
         out nodeCompletePartList);
     foreach (string[] partTuple in nodeCompletePartList)
     {
         questsUI.CompleteTaskPart(partTuple[0], partTuple[1], partTuple[2]);
     }
 }
Esempio n. 13
0
        public void CompleteEquipItemTaskPart(string itemName)
        {
            print("Complete equip item task part");
            Debugging.PrintDbQryResults(DbQueries.GetEquipItemTasksData(itemName, "0"), itemName);
            List <string[]> partsToComplete = new List <string[]>();

            DbCommands.GetDataStringsFromQry(DbQueries.GetEquipItemTasksData(itemName, "0"), out partsToComplete, itemName);
            if (partsToComplete.Count > 0)
            {
                foreach (string[] tuple in partsToComplete)
                {
                    print("completing task part " + itemName);
                    CompleteTaskPart(tuple[0], tuple[1], tuple[2]);
                    print("task part completed");
                }
            }
        }
    public string GetIntroText()
    {
        string          introTxt    = "Translate the following into Welsh:";
        List <string[]> grammarList = new List <string[]>();

        DbCommands.GetDataStringsFromQry(DbQueries.GetGrammarRuleDisplayQry(vocabIDArray[0], vocabIDArray[1]), out grammarList, vocabIDArray[0], vocabIDArray[1]);
        foreach (string[] grammarRule in grammarList)
        {
            string strGrammarID = grammarRule[0];
            int    intGrammarID = int.Parse(strGrammarID);
            if (vocabIntroDict.ContainsKey(intGrammarID))
            {
                introTxt = vocabIntroDict[intGrammarID];
                break;
            }
        }
        return(introTxt);
    }
Esempio n. 15
0
        public void ActivateNewDialogue(string choiceID)
        {
            Debugging.PrintDbTable("ActivatedDialogues");
            int countDialogueActivateResults = DbCommands.GetCountFromQry(DbQueries.GetDialogueActivateCountFromChoiceIDqry(choiceID));

            if (countDialogueActivateResults > 0)
            {
                print("Dialogue ACTIVATING!!!!");
                List <string[]> dialogueActivatedList;

                DbCommands.GetDataStringsFromQry(DbQueries.GetCurrentActivateDialoguePlayerChoiceResultQry(choiceID), out dialogueActivatedList);

                foreach (string[] activatedDialogue in dialogueActivatedList)
                {
                    //get characters related to activated dialogue. Set active dialogues related to each character to completed
                    List <string[]> charactersRelatedToDialogue;

                    DbCommands.GetDataStringsFromQry(DbQueries.GetCharsRelatedToDialogue(activatedDialogue[1]), out charactersRelatedToDialogue);

                    foreach (string[] characterName in charactersRelatedToDialogue)
                    {
                        List <string[]> activeDialoguesWithCharacter;
                        string          charname = characterName[0];
                        DbCommands.GetDataStringsFromQry(DbQueries.GetActiveDialoguesWithCharacter(charname), out activeDialoguesWithCharacter, characterName[0]);

                        foreach (string[] dialogueWithChar in activeDialoguesWithCharacter)
                        {
                            string dialogueID = dialogueWithChar[0];
                            print("printing active dialogues with " + charname);
                            Debugging.PrintDbQryResults(DbQueries.GetActiveDialoguesWithCharacter(charname), charname);
                            DbCommands.UpdateTableField("ActivatedDialogues", "Completed", "1", "DialogueIDs = " + dialogueID + " AND SaveIDs = 0");
                            Debugging.PrintDbTable("ActivatedDialogues");
                        }
                    }
                    DbCommands.InsertTupleToTable("ActivatedDialogues", activatedDialogue[1], "0", "0");
                    //activate dialogues in dialogue activated list
                }
            }
        }
Esempio n. 16
0
    public void DisplayRelatedGrammar()
    {
        List <string[]> grammarData = new List <string[]>();

        print(DbQueries.GetGrammarRelatedToVocab(enVocab, cyVocab));
        Debugging.PrintDbQryResults(DbQueries.GetGrammarRelatedToVocab(enVocab, cyVocab), enVocab, cyVocab);

        DbCommands.GetDataStringsFromQry(DbQueries.GetGrammarRelatedToVocab(enVocab, cyVocab), out grammarData, enVocab, cyVocab);
        GameObject grammarList = Instantiate(grammarListPrefab, new Vector3(0f, 0f, 0f), Quaternion.identity) as GameObject;

        grammarList.transform.SetParent(gameObject.transform, false);
        foreach (string[] grammarRuleData in grammarData)
        {
            GameObject grammarRule = Instantiate(relatedGrammarPrefab, new Vector3(0f, 0f, 0f), Quaternion.identity) as GameObject;
            grammarRule.transform.Find("GrammarIntro").GetComponent <Text>().text = grammarRuleData[0];
            grammarRule.transform.Find("GrammarBody").GetComponent <Text>().text  = grammarRuleData[1];
            grammarRule.transform.SetParent(grammarList.transform, false);
        }
        GetComponentInChildren <Button>().GetComponentInChildren <Image>().GetComponent <Transform>().Rotate(0, 0, -90);
        myGrammarList = grammarList;
        Canvas.ForceUpdateCanvases();
        Debugging.PrintDbTable("DiscoveredVocabGrammar");
    }
Esempio n. 17
0
 public GrammarProficienciesHandler(string grammarID) : base()
 {
     DbCommands.GetDataStringsFromQry(DbQueries.GetGrammarSkillAcquiredForVocabQry(grammarID), out acquiredProficiencies);
 }
 public WriteProficienciesHandler(string vocabEn, string vocabCy) : base()
 {
     DbCommands.GetDataStringsFromQry(DbQueries.GetWriteSkillAcquiredForVocabQry(vocabEn, vocabCy), out acquiredProficiencies, vocabEn, vocabCy);
 }
Esempio n. 19
0
 public ProficienciesHandler()
 {
     proficiencyList = new List <string[]>();
     DbCommands.GetDataStringsFromQry(DbQueries.GetWelshThresholdsQry(), out proficiencyList);
 }
Esempio n. 20
0
 public void SetGrammar()
 {
     relatedGrammarList = new List <string[]>();
     Debug.Log(vocab[0]);
     DbCommands.GetDataStringsFromQry(DbQueries.GetDiscoveredGrammarRelatedToVocab(vocab[0], vocab[1]), out relatedGrammarList, vocab[0], vocab[1]);
 }