//
// Licensed under the MIT License. See LICENSE file in the project root for full license information.
//
namespace MUnique.OpenMU.GameLogic;
///
/// A drop generator which generates nothing.
///
public class NullDropGenerator : IDropGenerator
{
private static IDropGenerator? _instance;
///
/// Prevents a default instance of the class from being created.
///
private NullDropGenerator()
{
}
///
/// Gets the instance.
///
public static IDropGenerator Instance => _instance ??= new NullDropGenerator();
///
public ValueTask<(IEnumerable- Items, uint? Money)> GenerateItemDropsAsync(MonsterDefinition monster, int gainedExperience, Player player)
{
return ValueTask.FromResult((Enumerable.Empty
- (), default(uint?)));
}
///
public Item? GenerateItemDrop(DropItemGroup group)
{
return null;
}
///
public (Item?, uint?, ItemDropEffect) GenerateItemDrop(IEnumerable group)
{
return (null, null, ItemDropEffect.Undefined);
}
}