Idle Animation when not moving

Hey guys, I’ve successfully imported models and animations from Blender to JME. I got my NPC to do a Walk Animation when moving which works perfectly! However i want him to perform an Idle animation which is named “Idle”.

How he moves:
[java]
if (inCombat == false) {
movementTimer = new Timer();
movementTimer.schedule(new TimerTask() {
@Override
public void run() {
Random walk = new Random();
if (walk.nextInt(3) == 1) {
direction = walk.nextInt(8);
if (direction == 0) {
walkDirection.set(0, 0, walk.nextInt(5));
ogre.setViewDirection(walkDirection.normalize().multLocal(movementSpeed));

                        ogre.setWalkDirection(walkDirection.normalize().multLocal(movementSpeed));
                        
                    }
                    if (direction == 1) {
                        walkDirection.set(0, 0, walk.nextInt(5) - 11);
                        ogre.setViewDirection(walkDirection.normalize().multLocal(movementSpeed));

                        ogre.setWalkDirection(walkDirection.normalize().multLocal(movementSpeed));
                        
                    }
                    if (direction == 2) {
                        walkDirection.set(walk.nextInt(5) - 11, 0, walk.nextInt(5));
                        ogre.setViewDirection(walkDirection.normalize().multLocal(movementSpeed));

                        ogre.setWalkDirection(walkDirection.normalize().multLocal(movementSpeed));
                        
                    }
                    if (direction == 3) {
                        walkDirection.set(walk.nextInt(5), 0, walk.nextInt(5) - 11);
                        ogre.setViewDirection(walkDirection.normalize().multLocal(movementSpeed));

                        ogre.setWalkDirection(walkDirection.normalize().multLocal(movementSpeed));
                        
                    }

                    if (direction == 4) {
                        walkDirection.set(walk.nextInt(5), 0, 0);
                        ogre.setViewDirection(walkDirection.normalize().multLocal(movementSpeed));

                        ogre.setWalkDirection(walkDirection.normalize().multLocal(movementSpeed));
                        
                    }
                    if (direction == 5) {
                        walkDirection.set(walk.nextInt(5) - 11, 0, 0);
                        ogre.setViewDirection(walkDirection.normalize().multLocal(movementSpeed));

                        ogre.setWalkDirection(walkDirection.normalize().multLocal(movementSpeed));
                        
                    }
                    if (direction == 6) {
                        walkDirection.set(walk.nextInt(5), 0, walk.nextInt(5));
                        ogre.setViewDirection(walkDirection.normalize().multLocal(movementSpeed));

                        ogre.setWalkDirection(walkDirection.normalize().multLocal(movementSpeed));
                        
                    }
                    if (direction == 7) {
                        walkDirection.set(walk.nextInt(5) - 11, 0, walk.nextInt(5) - 11);
                        ogre.setViewDirection(walkDirection.normalize().multLocal(movementSpeed));

                        ogre.setWalkDirection(walkDirection.normalize().multLocal(movementSpeed));
                        
                    }
                } else {
                    walkDirection.set(0, 0, 0);
                    ogre.setWalkDirection(walkDirection.normalize().multLocal(movementSpeed));
                    
                }

            }
        }, 0, (long) 1458.3334);
    }

[/java]

Move animation which is in my update method:
[java]
if (ogre.getWalkDirection().length() == 0) {

        channel_walk.setAnim("WalkCycle");
        channel_walk.setLoopMode(LoopMode.DontLoop);
        
        }

[/java]
I’ve tried else length > 0 or <0. I tried animCycleDone etc. The length of the animation is 1.4583334 seconds which is why the timer for moving is that long. When he stops he is mid way through the WalkCycle animation. The animation never stops the npc stops. I’ve also triend channel.reset. Any ideas?