示例#1
0
    public ModulesController()
    {
        var aotFaqList    = new List <FaqEntry>();
        var aotModEntList = new List <ModuleEntry>();

        Localization.Initialize();

        _modulesPopup   = GameObjectUtilities.FindGameObject("GameContainer/GamePanelContainer/ModulesContainer/ModulesPopup");
        _modulesContent = GameObjectUtilities.FindGameObject("GameContainer/GamePanelContainer/ModulesContainer/ModulesPopup/Scroll View").GetComponent <ScrollRect>().content;

        _moduleItemPrefab            = Resources.Load <GameObject>("Prefabs/ModuleItem");
        _moduleIndexItemPrefab       = Resources.Load <GameObject>("Prefabs/ModuleIndexItem");
        _moduleDescriptionItemPrefab = Resources.Load <GameObject>("Prefabs/ModuleDescriptionItem");
        _moduleIcons = Resources.LoadAll <Sprite>("Sprites/Modules/Icons");

        _backButton = GameObjectUtilities.FindGameObject("GameContainer/GamePanelContainer/ModulesContainer/ModulesPopup/BackButton").GetComponent <Button>();
        _nextArrow  = GameObjectUtilities.FindGameObject("GameContainer/GamePanelContainer/ModulesContainer/ModulesPopup/NextArrow").GetComponent <Button>();
        _backArrow  = GameObjectUtilities.FindGameObject("GameContainer/GamePanelContainer/ModulesContainer/ModulesPopup/BackArrow").GetComponent <Button>();

        GameObjectUtilities.FindGameObject("GameContainer/GamePanelContainer/ModulesContainer").GetComponent <Button>().onClick.AddListener(() =>
        {
            TogglePopup();
            SendTrackerEvents("ClosedModuleMenu", "ClosedModuleMenu");
        });

        foreach (var lang in Localization.Languages)
        {
            var www = new WWW((Application.platform != RuntimePlatform.Android ? "file:///" : string.Empty) + Path.Combine(Application.streamingAssetsPath, "modules-" + lang.Name + ".json"));
            while (!www.isDone)
            {
            }
            _modulesDatabase.Add(lang.Name, JsonConvert.DeserializeObject <ModuleEntry[]>(www.text));
        }
        TrackerEventSender.SetModuleDatabase(_modulesDatabase[Localization.SelectedLanguage.Name]);
    }