Exemplo n.º 1
0
        public void Setup(Session session, Playdata playData)
        {
            _session     = session;
            _playdata    = playData;
            _sessionKey  = null;
            _accountName = null;
            _password    = null;
            _token       = null;

            foreach (Transform child in _charactersScrollRect.content)
            {
                Destroy(child.gameObject);
            }

            int characterCount = playData.Characters.Count;

            for (int i = 0; i < characterCount; i++)
            {
                var    character = playData.Characters[i];
                var    world     = playData.FindWorld(character.WorldId);
                string worldName = world.Name;
                if (world.PreviewState == 1)
                {
                    worldName += " (Experimental)";
                }
                if (OpenTibiaUnity.GameManager.ClientVersion >= 1200)
                {
                    worldName += $"\n({world.GetPvPTypeDescription()})";
                }

                var characterPanel = Instantiate(ModulesManager.Instance.CharacterPanelPrefab, _charactersScrollRect.content);
                characterPanel.ColorReversed      = characterCount % 3 == 0;
                characterPanel.characterName.text = character.Name;
                characterPanel.worldName.text     = worldName;
                characterPanel.toggleComponent.onValueChanged.AddListener((value) => OnCharacterValueToggleValueChanged(characterPanel, value));
                characterPanel.toggleComponent.group = _charactersToggleGroup;
                characterPanel.GetComponent <LayoutElement>().minHeight = 34;
                characterPanel.onDoubleClick.AddListener(OnOkButtonClick);
            }

            OpenTibiaUnity.GameManager.InvokeOnMainThread(() => SelectCharacterByIndex(0));
        }
Exemplo n.º 2
0
        public void Setup(Session session, Playdata playData)
        {
            _session     = session;
            _playdata    = playData;
            _sessionKey  = null;
            _accountName = null;
            _password    = null;
            _token       = null;

            var content = _charactersScrollRect.content;

            foreach (Transform child in content)
            {
                Destroy(child.gameObject);
            }

            for (int i = 0; i < playData.Characters.Count; i++)
            {
                int characterIndex = i;

                var character      = playData.Characters[i];
                var characterPanel = Instantiate(ModulesManager.Instance.CharacterPanelPrefab);
                characterPanel.GetComponent <LayoutElement>().minHeight = 34;

                characterPanel.transform.SetParent(content);
                characterPanel.characterName.text = character.Name;

                var world = playData.FindWorld(character.WorldId);

                characterPanel.worldName.text = string.Format("{0}\n({1})", world.Name, world.GetPvPTypeDescription());
                characterPanel.toggleComponent.onValueChanged.AddListener((value) => { if (value)
                                                                                       {
                                                                                           _selectedCharacterIndex = characterIndex;
                                                                                       }
                                                                          });
                characterPanel.toggleComponent.group = _charactersToggleGroup;
                characterPanel.onDoubleClick.AddListener(OnOkButtonClick);
            }

            _selectedCharacterIndex = -1;
        }
Exemplo n.º 3
0
        public void Setup(string sessionKey, string accountName, string password, string token, CharacterList characterList)
        {
            _sessionKey     = sessionKey;
            _accountName    = accountName;
            _password       = password;
            _token          = token;
            _charactersList = characterList;
            _session        = null;
            _playdata       = null;

            foreach (Transform child in _charactersScrollRect.content)
            {
                Destroy(child.gameObject);
            }

            int characterCount = characterList.Characters.Count;

            for (int i = 0; i < characterCount; i++)
            {
                var    character = characterList.Characters[i];
                var    world     = characterList.FindWorld(character.WorldId);
                string worldName = world.Name;
                if (world.Preview)
                {
                    worldName += " (Preview)";
                }

                var characterPanel = Instantiate(ModulesManager.Instance.CharacterPanelPrefab, _charactersScrollRect.content);
                characterPanel.ColorReversed      = characterCount % 3 == 0;
                characterPanel.characterName.text = character.Name;
                characterPanel.worldName.text     = worldName;
                characterPanel.toggleComponent.onValueChanged.AddListener((value) => OnCharacterValueToggleValueChanged(characterPanel, value));
                characterPanel.toggleComponent.group = _charactersToggleGroup;
                characterPanel.onDoubleClick.AddListener(OnOkButtonClick);
            }

            OpenTibiaUnity.GameManager.InvokeOnMainThread(() => SelectCharacterByIndex(0));
        }
Exemplo n.º 4
0
        public void Setup(string sessionKey, string accountName, string password, string token, CharacterList characterList)
        {
            _sessionKey     = sessionKey;
            _accountName    = accountName;
            _password       = password;
            _token          = token;
            _charactersList = characterList;
            _session        = null;
            _playdata       = null;

            var content = _charactersScrollRect.content;

            foreach (Transform child in content)
            {
                Destroy(child.gameObject);
            }

            for (int i = 0; i < characterList.Characters.Count; i++)
            {
                int characterIndex = i;

                var character      = characterList.Characters[i];
                var characterPanel = Instantiate(ModulesManager.Instance.CharacterPanelPrefab);
                characterPanel.transform.SetParent(content);
                characterPanel.characterName.text = character.Name;
                characterPanel.worldName.text     = characterList.FindWorld(character.WorldId).Name;
                characterPanel.toggleComponent.onValueChanged.AddListener((value) => { if (value)
                                                                                       {
                                                                                           _selectedCharacterIndex = characterIndex;
                                                                                       }
                                                                          });
                characterPanel.toggleComponent.group = _charactersToggleGroup;
                characterPanel.onDoubleClick.AddListener(OnOkButtonClick);
            }

            _selectedCharacterIndex = -1;
        }