Difference between revisions of "Talk:Activate"
Jump to navigation
Jump to search
Reference corruption on chained Activates?
imported>Tegid (Clarified scripting questions) |
imported>Tegid (Reference corruption on chained Activates?) |
||
Line 23: | Line 23: | ||
*:--[[User:Tegid|Tegid]] 09:27, 14 April 2006 (EDT): By Atomic I mean, does the entire script block (or script) execute without interruption by another script, or can it be interrupted by another script mid-run and then come back and finish later? | *:--[[User:Tegid|Tegid]] 09:27, 14 April 2006 (EDT): By Atomic I mean, does the entire script block (or script) execute without interruption by another script, or can it be interrupted by another script mid-run and then come back and finish later? | ||
--[[User:Tegid|Tegid]] 00:40, 26 April 2006 (EDT) With MrFlippy's help, I believe I have found an issue with chained activations. If I have more than four objects which pass a single Reference down an activate chain, after the fourth pass, my reference is normally != to what it was when it started down the chain. (It does SOMETIMES make it to the 5th object). As an example. | |||
<pre>scn Object1Script | |||
ref incoming | |||
begin OnActivate | |||
set incoming to GetActionRef | |||
if (incoming == SomePresetReferenceInAPersistentObject) | |||
Message "I am doing something cool in Object 1",1 | |||
endif | |||
Object2Ref.Activate incoming 1 | |||
end</pre> | |||
if Object2Ref has a script that is similar but activates Object3Ref like so | |||
<pre>scn Object2Script | |||
ref incoming | |||
begin OnActivate | |||
set incoming to GetActionRef | |||
if (incoming == SomePresetReferenceInAPersistentObject) | |||
Message "I am doing something cool in Object 2", 1 | |||
endif | |||
Object3Ref.Activate incoming 1 | |||
end</pre> | |||
And so on down to Object5, object 5 will NOT execute the code inside its if statement. That equality will evaluate to false. Am I missing something, or is this a bug based on something you couldn't imagine us wanting to do? |