private static ItemInfo LoadAction(ItemNumber id, ItemInfoItemDto itemDto) { if (itemDto.action == null) { Logger.Warning("Missing action for item {id}", id); return(new ItemInfoAction()); } var item = new ItemInfoAction { RequiredMP = float.Parse(itemDto.action.ability.required_mp, CultureInfo.InvariantCulture), DecrementMP = float.Parse(itemDto.action.ability.decrement_mp, CultureInfo.InvariantCulture), DecrementMPDelay = float.Parse(itemDto.action.ability.decrement_mp_delay, CultureInfo.InvariantCulture) }; if (itemDto.action.@float != null) { item.ValuesF = [email protected](f => float.Parse(f.value.Replace("f", ""), CultureInfo.InvariantCulture)).ToList(); } if (itemDto.action.integer != null) { item.Values = itemDto.action.integer.Select(i => i.value).ToList(); } return(item); }
private static ItemInfo LoadWeapon(ItemNumber id, ItemInfoItemDto itemDto) { if (itemDto.weapon == null) { return(new ItemInfoWeapon()); } var ability = itemDto.weapon.ability; var item = new ItemInfoWeapon { Type = ability.type, RateOfFire = float.Parse(ability.rate_of_fire, CultureInfo.InvariantCulture), Power = float.Parse(ability.power, CultureInfo.InvariantCulture), MoveSpeedRate = float.Parse(ability.move_speed_rate, CultureInfo.InvariantCulture), AttackMoveSpeedRate = float.Parse(ability.attack_move_speed_rate, CultureInfo.InvariantCulture), MagazineCapacity = ability.magazine_capacity, CrackedMagazineCapacity = ability.cracked_magazine_capacity, MaxAmmo = ability.max_ammo, Accuracy = float.Parse(ability.accuracy, CultureInfo.InvariantCulture), Range = string.IsNullOrWhiteSpace(ability.range) ? 0 : float.Parse(ability.range, CultureInfo.InvariantCulture), SupportSniperMode = ability.support_sniper_mode > 0, SniperModeFov = ability.sniper_mode_fov > 0, AutoTargetDistance = ability.auto_target_distance == null ? 0 : float.Parse(ability.auto_target_distance, CultureInfo.InvariantCulture) }; if (itemDto.weapon.@float != null) { item.ValuesF = itemDto.weapon.@float .Select(f => float.Parse(f.value.Replace("f", ""), CultureInfo.InvariantCulture)).ToList(); } if (itemDto.weapon.integer != null) { item.Values = itemDto.weapon.integer.Select(i => i.value).ToList(); } return(item); }