actionscript 3 - Remove click after going to another scene in AS3? -


after switching 2nd scene, keyboard event not work until left-click screen.
how avoid left click can trigger keyboard event directly right after moving 2nd scene?

more details may need:

1st scene

btnstart.addeventlistener(mouseevent.click, initgame);  function initgame(e:mouseevent) {     gotoandplay(1, "gameplay"); } 

2nd scene
use 1 frame. have object. set keyboard event function move object right or left. stop() frame.
keyboard function doesn't work until give screen mouse click.

var moveup:boolean = false; var movedown:boolean = false; var moveleft:boolean = false; var moveright:boolean = false; var ismoving:boolean = false;  stage.addeventlistener(keyboardevent.key_down, movecowboy); function movecowboy(e:keyboardevent) {     if (e.keycode == keyboard.w) {         moveup = true;         if (ismoving == false)             mycowboy.gotoandplay(15);         ismoving = true;     } else if (e.keycode == keyboard.s) {         movedown = true;             if (ismoving == false)             mycowboy.gotoandplay(15);         ismoving = true;     } else if (e.keycode == keyboard.a) {         moveleft = true;         if (ismoving == false)             mycowboy.gotoandplay(15);         ismoving = true;     } else if (e.keycode == keyboard.d) {         moveright = true;         if (ismoving == false)             mycowboy.gotoandplay(15);         ismoving = true;     } }  stage.addeventlistener(keyboardevent.key_up, stopcowboy); function stopcowboy(e:keyboardevent) {     if (e.keycode == keyboard.w) {         moveup = false;     } else if (e.keycode == keyboard.s) {         movedown = false;     } else if (e.keycode == keyboard.a) {         moveleft = false;     } else if (e.keycode == keyboard.d) {         moveright = false;     }     if (moveup == false && movedown == false && moveleft == false && moveright == false) {         if (ismoving == true)             mycowboy.gotoandplay(1);         ismoving = false;     } }  var mytimer:timer = new timer(20); mytimer.addeventlistener(timerevent.timer, mytimerfunc);  function mytimerfunc(e:event):void {     //cowboy movement     if (moveup) {         mycowboy.y -= 3;         mycowboy.rotation = 0;     }     else if (movedown) {         mycowboy.y += 3;         mycowboy.rotation = 180;     }     else if (moveleft) {         mycowboy.x -= 3;         mycowboy.rotation = -90;     }     else if (moveright) {         mycowboy.x += 3;         mycowboy.rotation = 90;     } }  mytimer.start();  stop(); 

add @ end of code

stage.focus = stage; 

Comments

Popular posts from this blog

c# - Validate object ID from GET to POST -

node.js - Custom Model Validator SailsJS -

php - Find a regex to take part of Email -