Story/ObjectiveTrigger.cs
using Sandbox;

namespace Opium;

public sealed class ObjectiveTrigger : ActionTrigger
{
	[Property] public Objective ObjectiveToAdd { get; set; }
	[Property] public string ObjectiveToFinish { get; set; }

	protected override void Activate()
	{
		base.Activate();

		if ( !string.IsNullOrEmpty( ObjectiveToFinish ) )
		{
			ObjectiveSystem.Finish( ObjectiveToFinish );
		}

		if ( ObjectiveToAdd is not null )
		{
			if ( !string.IsNullOrEmpty( ObjectiveToAdd.Id ) )
			{
				ObjectiveSystem.Add( ObjectiveToAdd );
			}
		}
	}
}