The Main cube rotates when the w key is pressed (using logic bricks).
The Main cube has a property with a float value. When the w key is pressed, this property is added by 1.
The Little cube is assigned a 20-frame action, and the Little cube has a property with a float value.
I used a property actuator so that the Little cube property copies the Main cube property.
I used an action actuator to make the Little cube move according to the property of the Main cube (action actuator set to Property Mode).
However, when I press w, the Main cube rotates, but the Little cube does not play its action. Is this a bug?
A) You do not need property “thing2” at “Cube”. This reduces the logic to Always (no true level triggering) -> Motion
B) You can directly increase the property “thing” at “Cube.001”. Replace the always with a keyboard sensor (listening on <w>). Switch the property actuator to assign mode with this value: (thing + 1) % 20
I notified following behavior.
Observation
As long as the <w> is pressed:
“Cube” rotates (and “Cube.001” with it)
When <w> just gets pressed:
“Cube.001” plays the starting frame of the action (maybe it does that while <w> is pressed too. But I can’t confirm it).
When <w> gets released:
“Cube.001” plays the frame according to the value of the “thing” property of the action once.
Expected
As long as the <w> is pressed:
“Cube” rotates (and “Cube.001” with it)
“Cube.001” plays the frame according to the value of the “thing” property of the action continually.
Analysis
-> When “Cube.001” is not child of “Cube” it plays as expected
-> When “Cube” does not rotate “Cube.001” plays as expected
I used a Frame Property at the action actuator to check what frame the animation was on too. It showed me that the frame was increased - as expected.
I guess it is a problem in either the ActionActuator (adding to the existing bugs) or the animation system.
-> When the parent of the object gets moved -> the action gets played on deactivation of the action actuator.
Workaround/Further analysis
Interestingly it works when the parent gets turned by an action.
I haven’t tested what happens if the parent gets moved by Python.