0
$\begingroup$

There is some actions that i created for a human character like walk, jump and saying bye. I want to play these actions one after one using action actuators or any other way. I mean if i want to play walk action first, it starts in frame 0 and ends in frame 20, then after played that action, next jump action should play. After that, it should play saying bye action. These 3 actions should play one after one.

When i am trying this with action actuators, it is playing the last action only. I tried with changing the priority of these actions, then it will play only high priority action. Also i tried with changing layer then it plays only last action. Also i tried with changing start and end time. I changed them to, if first action start time 0 and end time 20, then second action start time 20 and end time to 40. but it not worked.

Below code shows that how i used action actuator. if it needed i can upload .blend file too. if there is any other way to do this without action actuators, please tell me.

def play_actuator(actionName, start, end):
    cont = bge.logic.getCurrentController()
    act = cont.actuators["Action"]

    act.action = actionName
    act.frameStart = start
    act.frameEnd = end
    act.priority = 0
    act.layer = 0
    cont.activate(act)
$\endgroup$

1 Answer 1

0
$\begingroup$

Make sure your Current Frame on the timeline is set to the frame before the first animation. Usually 0. Then make sure the first animation starts at 1 and not 0.

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .