protected void loadAudioPrefab(PartyGameDefinition definition)
 {
     if (!string.IsNullOrEmpty(definition.AudioPrefab.Key))
     {
         Content.LoadAsync(onAudioPrefabLoaded, definition.AudioPrefab);
     }
 }
        private void skinForDefinition(PartyGameDefinition definition)
        {
            int index;

            switch (definition.Id)
            {
            case 4:
                index = 1;
                break;

            case 5:
                index = 0;
                break;

            default:
                index = 0;
                break;
            }
            for (int i = 0; i < TintSelectors.Count; i++)
            {
                TintSelectors[i].SelectColor(index);
            }
            for (int i = 0; i < SpriteSelectors.Count; i++)
            {
                SpriteSelectors[i].SelectSprite(index);
            }
        }
 public void SetInitialData(int gameSessionId, List <PartyGameSessionMessages.TubeRacePlayerResult> results, PartyGameDefinition partyGameDefinition, TubeRaceDefinition tubeRaceDefinition)
 {
     playerResults            = new List <PartyGameSessionMessages.TubeRacePlayerResult>(results);
     this.gameSessionId       = gameSessionId;
     this.partyGameDefinition = partyGameDefinition;
     this.tubeRaceDefinition  = tubeRaceDefinition;
     skinForDefinition(partyGameDefinition);
     changeState(PopupState.Uninitialized);
     CoroutineRunner.Start(loadRowPrefabs(), this, "loadRowPrefabs");
 }
        private RewardDefinition getReward(PartyGameEndPlacement placement, PartyGameDefinition definition)
        {
            RewardDefinition result = null;

            for (int i = 0; i < definition.Rewards.Count; i++)
            {
                if (definition.Rewards[i].Placement == placement)
                {
                    result = definition.Rewards[i].Reward;
                    break;
                }
            }
            return(result);
        }
Esempio n. 5
0
        public void SetData(PartyGameSessionMessages.TubeRacePlayerResult data, PartyGameDefinition partyGameDefinition)
        {
            skinForDefinition(partyGameDefinition);
            ScoreText.text = data.OverallScore.ToString();
            CPDataEntityCollection cPDataEntityCollection = Service.Get <CPDataEntityCollection>();
            DataEntityHandle       dataEntityHandle       = cPDataEntityCollection.FindEntity <SessionIdData, long>(data.PlayerId);

            if (!dataEntityHandle.IsNull && cPDataEntityCollection.TryGetComponent <DisplayNameData>(dataEntityHandle, out var component))
            {
                NameText.text = component.DisplayName;
            }
            if (data.PlayerId == cPDataEntityCollection.LocalPlayerSessionId)
            {
                setLocalPlayerData(data);
            }
        }
        public void ShowReward(Dictionary <long, int> playerIdToPlacement, PartyGameDefinition definition)
        {
            PartyGameEndPlacement placementForLocalPlayer = getPlacementForLocalPlayer(playerIdToPlacement);
            Reward reward = getReward(placementForLocalPlayer, definition).ToReward();

            if (reward.TryGetValue <CoinReward>(out var rewardable))
            {
                CoinText.text = rewardable.Coins.ToString();
            }
            if (reward.TryGetValue <MascotXPReward>(out var rewardable2))
            {
                Dictionary <string, int> .Enumerator enumerator = rewardable2.XP.GetEnumerator();
                enumerator.MoveNext();
                if (Service.Get <ProgressionService>().IsMascotMaxLevel(enumerator.Current.Key))
                {
                    XpText.text = Service.Get <Localizer>().GetTokenTranslation("MyProgress.MaxLevelText");
                }
                else
                {
                    XpText.text = enumerator.Current.Value.ToString();
                }
            }
        }