Ejemplo n.º 1
0
        private void UpdateStatViews()
        {
            var equipments = equipmentSlots
                             .Where(slot => !slot.IsLock && !slot.IsEmpty)
                             .Select(slot => slot.Item as Equipment)
                             .Where(item => !(item is null))
                             .ToList();

            var stats = _tempStats.SetAll(
                _tempStats.Level,
                equipments,
                null,
                Game.Game.instance.TableSheets.EquipmentItemSetEffectSheet
                );

            avatarStats.SetData(stats);
        }
Ejemplo n.º 2
0
        private void UpdateStatViews()
        {
            var equipments = equipmentSlots
                             .Where(slot => !slot.IsLock && !slot.IsEmpty)
                             .Select(slot => slot.Item as Equipment)
                             .Where(item => !(item is null))
                             .ToList();

            var costumeIds = costumeSlots
                             .Where(slot => !slot.IsLock && !slot.IsEmpty)
                             .Select(slot => slot.Item.Id)
                             .ToList();

            var costumeStatSheet = Game.Game.instance.TableSheets.CostumeStatSheet;
            var statModifiers    = new List <StatModifier>();

            foreach (var itemId in costumeIds)
            {
                statModifiers.AddRange(
                    costumeStatSheet.OrderedList
                    .Where(r => r.CostumeId == itemId)
                    .Select(row => new StatModifier(row.StatType, StatModifier.OperationType.Add, (int)row.Stat))
                    );
            }

            var currentAvatarState = Game.Game.instance.States.CurrentAvatarState;

            _player.Set(currentAvatarState);

            var stats = _player.Model.Stats.SetAll(
                _player.Model.Stats.Level,
                equipments,
                null,
                Game.Game.instance.TableSheets.EquipmentItemSetEffectSheet
                );

            stats.SetOption(statModifiers);
            avatarStats.SetData(stats);
            UpdateUIPlayer();
        }