IEnumerator LoadWordData()
    {
        string dictionaryPath = System.IO.Path.Combine(Application.streamingAssetsPath, "wordsByFrequency.txt");

        string result = null;

        if (dictionaryPath.Contains("://"))
        {
            WWW www = new WWW(dictionaryPath);
            yield return(www);

            result = www.text;
        }
        else
        {
            result = System.IO.File.ReadAllText(dictionaryPath);
        }

        var words = result.Split('\n');

        //collect words
        allWords     = new HashSet <string> ();
        wordsCharMap = new Dictionary <char, HashSet <string> > ();

        var index = 0;

        foreach (var w in words)
        {
            if (string.IsNullOrEmpty(w) || w.Length < 3)
            {
                continue;
            }

            var word = w.TrimEnd();

            if (word.IndexOf('#') != -1)
            {
                index++;
                continue;
            }
            else
            {
                if (index < 5)
                {
                    var c = word [0];
                    if (!wordsCharMap.ContainsKey(c))
                    {
                        wordsCharMap.Add(c, new HashSet <string> ());
                    }
                    wordsCharMap [c].Add(word);
                }
            }
            allWords.Add(word);
        }

        ScrambleGameEvents.DictionaryLoaded();
        ScramblePuzzleData.Instance.LoadData();
    }
Beispiel #2
0
    private void SubmitWord()
    {
        char[] word = new char[selectedTiles.Count];
        for (var i = 0; i < selectedTiles.Count; i++)
        {
            var tile = selectedTiles [i];
            word [i] = tile.TypeChar;
        }
        var s = new string (word);

        Debug.Log("SUBMIT WORD: " + s);
        ScrambleGameEvents.WordSelected(s, selectedTiles);
    }
Beispiel #3
0
    void Start()
    {
        if (string.IsNullOrEmpty(PlayerPrefs.GetString(PLAYER_STATE_DATA)))
        {
            CreateState();
        }
        else
        {
            playerState = JsonUtility.FromJson <ScrambleState> (PlayerPrefs.GetString(PLAYER_STATE_DATA));
        }


        ScrambleGameEvents.GameLoaded();
    }
    IEnumerator LoadPuzzleData()
    {
        string dataPath = System.IO.Path.Combine(Application.streamingAssetsPath, "wordYieldData.txt");

        string result = null;

        if (dataPath.Contains("://"))
        {
            WWW www = new WWW(dataPath);
            yield return(www);

            result = www.text;
        }
        else
        {
            result = System.IO.File.ReadAllText(dataPath);
        }


        var data = result.Split('\n');

        puzzles = new Dictionary <int, List <string> > ();

        foreach (var entry in data)
        {
            var e = entry.TrimEnd();
            var d = e.Split('|');
            if (d.Length == 2)
            {
                var key = Int32.Parse(d [1]);
                if (key > 2)
                {
                    if (!puzzles.ContainsKey(key))
                    {
                        puzzles.Add(key, new List <string> ());
                    }
                    puzzles [key].Add(d [0]);
                }
            }
        }

        ScramblePlayerState.Instance.ClearData();
        ScrambleGameEvents.PuzzleDataLoaded();
    }