using System;

public sealed class BuildProject
{
    public readonly string ID;
    public readonly string Description;
    public readonly float BuildTime;
    private readonly Action<string> finishAction;
    private string iD1;
    private string iD2;
    private ProjectBlueprint buildProject;

    public BuildProject(float time, string id, string description, Action<string> buildCallback)
    {
        ID = id;
        Description = description;
        BuildTime = time;
        finishAction = buildCallback;
    }

    public BuildProject(float buildTime, string iD1, string iD2, ProjectBlueprint buildProject)
    {
        BuildTime = buildTime;
        this.iD1 = iD1;
        this.iD2 = iD2;
        this.buildProject = buildProject;
    }

    public void FinishProject() => finishAction?.Invoke(ID);
}