GPNMilano wrote:D'Lanor wrote:Justintime9 wrote:Now comes the animation, which I'm not sure exactly how to do. The doors that I want to animate are double doors, so both sides of the door will open at the same time, but be classified as one animation (unless I have to animate them separately and classify them in the same place.)
I don't know how Blender handles IPOs when you join 2 objects which both have an IPO attached but my guess is that things could go horribly wrong. So you are probably better off keeping the two animations separate.
Of note. Plasma has a class (Not yet available in the trunk but it's in my contrib in the svn) called plMsgForwarder. what this class does is really quite simple. when creating complex responders with multiple animations that need to play at once, you give all those animations the same name. So for instance in this case you have a double set of doors that are being animated, you'd give each of them the animation names of "DoorOpen" and "DoorClose" for it's opening and closing animations. Then you'd make two plMsgForwarder's, one for opening, and one for closing, and it would contain references to both object's animations. So in a responder's animcmdmsg instead of calling the individual door's animation, you'd call the plMsgForwarder and script it out just like an animcmdmsg.
Good tip, but actually it is easier to put the two animcmd messages in one responder with no waitons between them...
Edit: I guess this could come in handy for cross responder events. Until now I have been able to schedule any complex chain of events I needed with the tools available in plain vanilla PyPRP 1.6. And I mean really complex... like responders with 13 messages, 4 of which containing event callbacks. And that is just one of the 6 responders that I need to sort on the click of a single object, depending on a combination of 4 SDL states. Yep, that's where Python comes into play.
However, these 6 responders now in part contain identical sections. This could perhaps have been simplified with the plMsgForwarder. Ideally I would like to be able to jump between smaller responders which contain only the relevant chunks. If for example each of my current responders starts with the same oneshotmsg I would like to use just one responder for that, but still keep the callback for for the avatar animation when I jump to another responder.