// // Licensed under the MIT License. See LICENSE file in the project root for full license information. // namespace MUnique.OpenMU.GameLogic; using MUnique.OpenMU.AttributeSystem; using MUnique.OpenMU.DataModel.Configuration.Items; using MUnique.OpenMU.GameLogic.Attributes; /// /// A Factory for power ups which are provided by equipped items. /// Each power up has to be created individually for a specific player, because some depend on the attributes of the player. /// public interface IItemPowerUpFactory { /// /// Gets the power ups of an individual item. /// /// The item. /// The attribute system of the player who equipped the item. /// The created power ups. IEnumerable GetPowerUps(Item item, AttributeSystem attributeSystem); /// /// Gets the set power ups, which are created for existing s in the equipped items. /// /// The equipped items. /// The attribute system of the player who equipped the items. /// The game configuration. /// The created set power ups. IEnumerable GetSetPowerUps(IEnumerable equippedItems, AttributeSystem attributeSystem, GameConfiguration gameConfiguration); }