Esempio n. 1
0
        public PlayerPreference GetPreference(string ipAddress)
        {
            Validate.NotNull(ipAddress);


            if (state.Preferences.TryGetValue(ipAddress, out PlayerPreference preference))
            {
                return(preference.Clone());
            }

            if (state.LastSetPlayerPreference != null)
            {
                return(state.LastSetPlayerPreference.Clone());
            }

            Color            playerColor             = RandomColorGenerator.GenerateColor().ToUnity();
            PlayerPreference defaultPlayerPreference = new PlayerPreference(playerColor);

            state.LastSetPlayerPreference = defaultPlayerPreference;

            return(defaultPlayerPreference);
        }
Esempio n. 2
0
        public void SetPreference(string ipAddress, PlayerPreference playerPreference)
        {
            Validate.NotNull(ipAddress);
            Validate.NotNull(playerPreference);

            if (state.Preferences.ContainsKey(ipAddress))
            {
                PlayerPreference currentPreference = state.Preferences[ipAddress];

                if (currentPreference.Equals(playerPreference))
                {
                    return;
                }

                state.Preferences[ipAddress]  = playerPreference;
                state.LastSetPlayerPreference = playerPreference;

                return;
            }

            state.Preferences.Add(ipAddress, playerPreference);
            state.LastSetPlayerPreference = playerPreference;
        }
Esempio n. 3
0
 public static Color PreferredColor(this PlayerPreference playerPreference)
 {
     return(new Color(playerPreference.RedAdditive, playerPreference.GreenAdditive, playerPreference.BlueAdditive));
 }