Jump to content

Activate Parent on Containers


Recommended Posts

1 hour ago, Sirgallyhave said:

In any case, your suggestion worked and that's what matters (to me) the most, so I can get back to work. 😄 Thanks again for taking the time to help out, I appreciate it and your suggestion works perfectly.

Good 'nough for me as well.  Enjoy!

Link to comment
Share on other sites

On 5/31/2024 at 3:40 PM, xkkmEl said:

Bethesda activation scripts often have this bit of code:

event onCellAttach()
	blockActivation()
endEvent

This is what I was referring to...  In my initial experiements with ore veins, I had a lot of trouble understanding how the activation worked (and not!).  Blocking activation is a large part of why it works (and doesn't!).

In your case, the reference to "selft.activate( akActionRef, true)" strongly suggests the script's OnActivate was expecting this to be in place.

Thanks for the clarification. I've seen that too.

I'm looking at the Creation Club fish tanks because they use an Activator Parent on a container linked to a trigger (Activator) in front of each fish tank. The containers are under the floor in the void, so they can't be activated directly.  The Activators being used (trigger box, ccBGSSSE001FishTankLargeAct and ccBGSSSE001FishTankSmallAct for large and small fish tanks respectively) have no scripts on them at all and nothing is linked to them other than the containers ccBGSSSE001_FishTankSmallChest and only via Activate Parent.

So, the script attached to each container can't access the trigger to block activation because we can't get Activate Parent links through scripts (that I know of). They don't have a Linked Ref to the Activator, so the script attached to each chest can't block activation on the trigger because they don't have access to the trigger.

All I can see are Activators (trigger boxes) in front of each fish tank with no scripts on them, so no blocking of activation. They activate the containers via Activate Parent on the container references, and those scripts don't block activation or have any access to the activators. It's baffling.

When I put an Activator Parent on a container, it won't open whether a script is attached or not, and I can't even get the container to open with a Papyrus call to Activate() even though I'm positive the event is being received by the container. A debug message tells me that OnActivate is being triggered but Activate() won't work if there's an Activate Parent on the container reference... except when I look at the CC fish tanks, it's exactly what they do and it works fine.

I must be blind. I have to be missing something. Maybe someone who's figured it out will post at some point and the mystery will be solved. But I think we've pretty much exhausted it for now and your suggestion works fine, so thanks.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...