//
// Licensed under the MIT License. See LICENSE file in the project root for full license information.
//
namespace MUnique.OpenMU.GameLogic.Benchmarks.Helpers;
using Moq;
using MUnique.OpenMU.DataModel.Configuration;
using MUnique.OpenMU.DataModel.Configuration.Items;
using MUnique.OpenMU.GameLogic.Attributes;
///
/// Helper for creating test monsters.
///
public static class MonsterTestHelper
{
///
/// Creates a mock monster definition.
///
/// The maximum number of item drops.
/// The monster level.
/// A mock monster definition.
public static MonsterDefinition Create(int numberOfDrops, byte level)
{
var monster = new Mock();
monster.SetupAllProperties();
monster.Setup(m => m.DropItemGroups).Returns(new List());
monster.Setup(m => m.Attributes).Returns(new List());
monster.Object.NumberOfMaximumItemDrops = numberOfDrops;
monster.Object.Attributes.Add(new MonsterAttribute { AttributeDefinition = Stats.Level, Value = level });
monster.Object.DropItemGroups.AddBasicDropItemGroups();
return monster.Object;
}
}