I don't have a video, but we can talk about the joints, I need to get the code together hold on, I'm going to edit this comment with it
EDIT:
Ok, what I did was have everything separate, and in the control object have an x, y, angle, and destination variable for each joint.
VARIABLE SETUP
So to begin with I made 2 variables to dictate how far off the ground your creature is: groundY and offsetY. groundY should be where the ground is and you can edit that any time when the ground raises or lowers. offsetY is how far you want the creature off the ground, also, changable any time if the beast is crouching you can decrease the offsetY. in the step event of the controller i used this code
Code:
y += ((groundY + offsetY) - y) / 10;
to smoothly transition to the Y you want the creature to be.
I think the reason I didn't parent is because I already set up the dependencies in the variables. For example I did (head = center + distance) and (mouth = head + distance) and (shoulder = center + distance) and (elbow = shoulder + distance) etc. How I do that was in the previous comment of mine.
Now, for smooth transitions I made an additional variable for each joint called headDest, mouthDest, for the destination of where you want these angles to go. How I do this is for every joint in the step event, do this
Code:
headAngle += (headDest - headAngle) / 10;
Now after you set up these variables you're ready for manipulation of them.
I set up a system of poses. In the step event I did
Code:
if pose = 0
{
headDest = (angle you want)
shoulderDest = (angle you want)
elbowDest = (angle you want)
offsetY = (how far off the ground you want)
}
you can instantly pose the creature how you want.
Now, finally you do your state machines how you wish, so, have another variable called timer and every state change, timer = 0 and in every state timer = 1
Code:
if state = queen.jump
{
timer += 1
if timer = 1
{
pose = 4
x += 25
}
if timer = 40
{
pose = 6
state = queen.wait
}
}
As far as I know that's all, if you have any other questions let me know