Files
basic-computer-games/16_Bug/csharp/Parts/Part.cs
2022-07-12 07:41:45 +10:00

35 lines
722 B
C#

using BugGame.Resources;
namespace BugGame.Parts;
internal class Part
{
private readonly Message _addedMessage;
private readonly Message _duplicateMessage;
public Part(Message addedMessage, Message duplicateMessage)
{
_addedMessage = addedMessage;
_duplicateMessage = duplicateMessage;
}
public virtual bool IsComplete => IsPresent;
protected bool IsPresent { get; private set; }
public string Name => GetType().Name;
public bool TryAdd(out Message message)
{
if (IsPresent)
{
message = _duplicateMessage;
return false;
}
message = _addedMessage;
IsPresent = true;
return true;
}
}