diff --git a/zzre/game/systems/npc/NPCScript.Execute.cs b/zzre/game/systems/npc/NPCScript.Execute.cs index e7665583..c0dd0859 100644 --- a/zzre/game/systems/npc/NPCScript.Execute.cs +++ b/zzre/game/systems/npc/NPCScript.Execute.cs @@ -33,6 +33,7 @@ partial class NPCScript private const string CmdCreateDynamicItems = "_"; private const string CmdRevive = "b"; private const string CmdLookAtTrigger = "c"; + private const string CmdIfTriggerIsEnabled = "d"; private const string CmdPlaySound = "e"; private const string CmdStartActorEffect = "g"; private const string CmdEndActorEffect = "h"; @@ -87,6 +88,12 @@ protected override OpReturn Execute(in DefaultEcs.Entity entity, ref components. ? OpReturn.Continue : OpReturn.ConditionalSkip; + case CmdIfTriggerIsEnabled: + triggerI = int.Parse(args[0]); + return IfTriggerIsEnabled(entity, triggerI) + ? OpReturn.Continue + : OpReturn.ConditionalSkip; + case CmdMoveSystem: var waypointMode = Enum.Parse(args[0]); var wpCategory = int.Parse(args[1]); diff --git a/zzre/game/systems/npc/NPCScript.cs b/zzre/game/systems/npc/NPCScript.cs index 36f07cdc..d2c29f2b 100644 --- a/zzre/game/systems/npc/NPCScript.cs +++ b/zzre/game/systems/npc/NPCScript.cs @@ -159,6 +159,12 @@ private bool IfTriggerIsActive(DefaultEcs.Entity entity, int triggerI) .Any(); } + private bool IfTriggerIsEnabled(DefaultEcs.Entity entity, int triggerI) + { + Console.WriteLine("Warning unimplemented NPC instruction \"ifTriggerIsEnabled\""); + return false; + } + private void MoveSystem(DefaultEcs.Entity entity, messages.NPCMoveSystem.Mode mode, int wpCategory) { World.Publish(new messages.NPCMoveSystem(entity, mode, wpCategory));