コード例 #1
0
ファイル: Party.cs プロジェクト: FelixKirmse/ProjectSharpR
 public void Reset()
 {
     Experience = 0;
     FrontRow.Clear();
     BackSeat.Clear();
     Reserve.Clear();
     _charMap.Clear();
     ResetCache();
 }
コード例 #2
0
ファイル: Party.cs プロジェクト: FelixKirmse/ProjectSharpR
        public void SwitchCharacters(ICharacter char1, ICharacter char2)
        {
            if (char1 == null)
            {
                // We are replacing a dead frontrow member!
                FrontRow.Add(char2);
                _charMap[char2] = FrontRow;
                BackSeat.Remove(char2);
                return;
            }

            var originList = _charMap[char1];
            var targetList = _charMap[char2];

            _charMap[char1] = targetList;
            _charMap[char2] = originList;

            var char1Pos = originList.IndexOf(char1);
            var char2Pos = targetList.IndexOf(char2);

            originList[char1Pos] = char2;
            targetList[char2Pos] = char1;
        }