Пример #1
0
    private void FillLayout()
    {
        SongMeta songMeta   = sceneData.SongMeta;
        string   titleText  = (String.IsNullOrEmpty(songMeta.Title)) ? "" : songMeta.Title;
        string   artistText = (String.IsNullOrEmpty(songMeta.Artist)) ? "" : " - " + songMeta.Artist;

        songLabel.text = titleText + artistText;

        int        i = 0;
        GameObject selectedLayout = GetSelectedLayout();

        foreach (PlayerProfile playerProfile in sceneData.PlayerProfiles)
        {
            sceneData.PlayerProfileToMicProfileMap.TryGetValue(playerProfile, out MicProfile micProfile);
            PlayerScoreControllerData playerScoreData = sceneData.GetPlayerScores(playerProfile);
            SongRating songRating = GetSongRating(playerScoreData.TotalScore);

            Injector childInjector = UniInjectUtils.CreateInjector(injector);
            childInjector.AddBindingForInstance(playerProfile);
            childInjector.AddBindingForInstance(micProfile);
            childInjector.AddBindingForInstance(playerScoreData);
            childInjector.AddBindingForInstance(songRating);
            childInjector.AddBinding(new Binding("playerProfileIndex", new ExistingInstanceProvider <int>(i)));

            SingingResultsPlayerUiController[] uiControllers = selectedLayout.GetComponentsInChildren <SingingResultsPlayerUiController>();
            if (i < uiControllers.Length)
            {
                childInjector.InjectAllComponentsInChildren(uiControllers[i]);
            }
            i++;
        }
    }
Пример #2
0
    private void FillLayout()
    {
        SongMeta songMeta   = sceneData.SongMeta;
        string   titleText  = (String.IsNullOrEmpty(songMeta.Title)) ? "" : songMeta.Title;
        string   artistText = (String.IsNullOrEmpty(songMeta.Artist)) ? "" : " - " + songMeta.Artist;

        songLabel.text = titleText + artistText;

        int        i = 0;
        GameObject selectedLayout = GetSelectedLayout();

        foreach (PlayerProfile playerProfile in sceneData.PlayerProfiles)
        {
            SingingResultsSceneData.PlayerScoreData playerScoreData = sceneData.GetPlayerScores(playerProfile);
            SingingResultsPlayerUiController[]      uiControllers   = selectedLayout.GetComponentsInChildren <SingingResultsPlayerUiController>();
            if (i < uiControllers.Length)
            {
                uiControllers[i].Init(playerProfile, playerScoreData);
            }
            i++;
        }
    }