示例#1
0
 public PlayerFactory(int classChoiceLevel, int levelCap)
 {
     this.classChoiceLevel    = classChoiceLevel;
     this.levelCap            = levelCap;
     this.charClassConverter  = new CharClassConverter(classChoiceLevel, levelCap);
     this.charClassRepository = new LegacyCharClassRepository(classChoiceLevel,
                                                              levelCap);
     this.observers = new HashSet <ILevelObserver>();
 }
示例#2
0
        public void Save(IPlayer player)
        {
            if (!PLAYER_SET.Contains(player))
            {
                IPlayer pl = PLAYER_SET.SingleOrDefault(p => {
                    return(p.Name.Equals(player.Name));
                });
                if (pl != null)
                {
                    PLAYER_SET.Remove(pl);
                }
                PLAYER_SET.Add(player);
            }

            CharClassConverter            ccc     = new CharClassConverter(classChoiceLevel, levelCap);
            KeyValuePair <CharClass, int> char_xp = ccc.Convert(player.CharClass);

            LEGACY_USER_CHAR_CLASS[player.Name] = char_xp.Key;
            LEGACY_USER_COINS[player.Name]      = player.Coins;
            LEGACY_USER_XP[player.Name]         = char_xp.Value;
        }
示例#3
0
 public LegacyCharClassRepository(int classChoiceLevel, int levelCap)
 {
     charClassConverter = new CharClassConverter(classChoiceLevel, levelCap);
 }