diff --git a/src/app/ProjectSchedulePane.tsx b/src/app/ProjectSchedulePane.tsx index 10b9fbbc..d46f46cb 100644 --- a/src/app/ProjectSchedulePane.tsx +++ b/src/app/ProjectSchedulePane.tsx @@ -405,14 +405,21 @@ export function ProjectSequencerPane({ targetOptions, selectedRoutine.target ); + const selectedRoutineUsesInlineControlEffect = + selectedRoutine !== null && + selectedRoutine.sequenceId === null && + selectedRoutine.target.kind !== "actor" && + selectedRoutine.target.kind !== "global"; const selectedEffectOptionId = - selectedRoutine === null || - selectedRoutine.target.kind === "actor" || - selectedRoutine.sequenceId !== null + !selectedRoutineUsesInlineControlEffect ? null - : getProjectScheduleEffectOptionId(selectedRoutine.effects[0]!); + : selectedRoutine.effects[0] === undefined + ? null + : getProjectScheduleEffectOptionId(selectedRoutine.effects[0]); const selectedEffectOptions = - selectedTargetOption === null || selectedTargetOption.target.kind === "actor" + selectedTargetOption === null || + selectedTargetOption.target.kind === "actor" || + selectedTargetOption.target.kind === "global" ? [] : listProjectScheduleEffectOptions(selectedTargetOption); const selectedActorPresenceEffect = @@ -756,6 +763,12 @@ export function ProjectSequencerPane({ + ) : selectedRoutine.target.kind === "global" ? ( +
+ Project event placements run attached sequences only. Add or + pick a sequence with impulse effects like scene transitions, + dialogue starts, teleports, or other one-shot engine events. +
) : selectedRoutine.sequenceId === null ? (