Problem: Using Slate With Nodecanvas, Trigger Action Task lost BBParam reference

Forums 💬 Slate Sequencer ⚙️ Support Problem: Using Slate With Nodecanvas, Trigger Action Task lost BBParam reference

Viewing 3 posts - 1 through 3 (of 3 total)
  • Author
    Posts
  • #20073
    yinhao7700
    Participant

      I was try to use Slate cutscene prefabs as my character’s action clips. Along with FSM states to create action combos.

      When I call Trigger Action Task in cutscene and pick the blackboard variable from FSM actor, it went good in the editor. But when I play and run the cutscene, the blackboard variable would lost reference.Is this normal or did I use this NC_SlATE in a wrong way?

      When I exit playing mode, the error remains. After I delete this action task and re-add it, the error goes. I wander how to use FSM actor’s bb params in cutscene?

      #20075
      Gavalakis
      Keymaster

        Hello,

        You are right. There was a bug. I just fixed it and attached the fixed “TriggerActionTask” file for you here.

        Let me know if that works for you as expected now.

        Thanks!

        #20074
        yinhao7700
        Participant

          Truely thanks for your help!

          But there remains some bugs.

          I’m using the PlayCutsceneAdvanced (Action Task) in NodeCanvas, and cutsceneIsPrefab = true.  After the cutscene instantiated, it would call ResolveBlackboard() and UpdateTasksOwner() in TriggerActionTask, which last fix is in. But at this time, the agent and the blackboard is still null. Because SetGroupActorOfName() haven’t called.

          protected override void OnExecute() {

          // ……

           

          cutsceneInstance = cutsceneIsPrefab ? Object.Instantiate(cutscene.value) : cutscene.value;

           

          // Instantiate wall call it’s Awake ,so the UpdateTasksOwner has called. But SetGroupActorOfName haven’t called.

           

          foreach ( var replacement in replacementActors ) {

          if ( !string.IsNullOrEmpty(replacement.groupName) && replacement.newActor.value != null ) {

          cutsceneInstance.SetGroupActorOfName(replacement.groupName, replacement.newActor.value);

          }

          }

          Hoping for another fix. Thanks again!

        Viewing 3 posts - 1 through 3 (of 3 total)
        • You must be logged in to reply to this topic.