Hi all,
I’m having a little problem with a website i’m trying to build here.
So what i want is the following:
Now the first thing you have to do is click on the little van to focus on it, this is done by:
auto.addEventListener(MouseEvent.CLICK, clickHandler);
and:
private function clickHandler(evt:MouseEvent):void{
stage.focus = auto;
stage.stageFocusRect = false;
}
But what i wan’t is that you don’t need to Click on the van before you can control it, so that when you push the right arrow the van automaticly starts moving.
Because when i wan’t to start adding other buttons on the houses the website starts to freak out (focus switches etc etc…)
Any ideas on how to fix this ?
This is the code to make the van and background move btw:
auto.addEventListener(KeyboardEvent.KEY_DOWN, knopNeer);
auto.addEventListener(KeyboardEvent.KEY_UP, knopUp);
private function knopNeer(event:KeyboardEvent):void {
var key = event.keyCode;
var _snelheidAuto = 0;
var _vermeerderRest = 0;
var _vermeerderZwart = 0;
var _vermeerderWolk = 0;
var _vermeerderMask = 0;
if (key == 39){
_vooruit = true;
}else{
_vooruit = false;
}
if(_vooruit == true){
_snelheidAuto = 10;
_vermeerderMask = 10;
}else{
_snelheidAuto = -10;
}
if(appa.x <= -2000){
_vooruit = false;
}
if(_vooruit == true && auto.x >= 500){
_snelheidAuto = 0;
_vermeerderRest = 10;
_vermeerderZwart = 8;
_vermeerderWolk = 6;
}
if(_vooruit == false && auto.x <= 500){
_vermeerderRest = -10;
_vermeerderZwart = -8;
_vermeerderWolk = -6;
_snelheidAuto = 0;
}
auto.x += _snelheidAuto;
appa.x -= _vermeerderRest;
appaGek.x -= _vermeerderRest;
appaGek.maskMc.width += _vermeerderMask;
luchtGek.width += _vermeerderMask;
zwart.x -= _vermeerderZwart;
wolk.x -= _vermeerderWolk;
trot.x -= _vermeerderRest;
lantOff.x -= _vermeerderRest;
trace(appa.x);
}
private function knopUp(event:KeyboardEvent):void {
}
and the full classfile:
package {
import flash.display.*;
import flash.events.*;
import flash.display.Stage;
import flash.display.DisplayObject;
import flash.events.*;
public class createMc extends MovieClip {
trace("test");
public var auto:mcAuto = new mcAuto();
public var appaGek:mcAppaGek = new mcAppaGek();
public var appa:mcAppaOng = new mcAppaOng();
public var zwart:mcZwart = new mcZwart();
public var wolk:mcWolk = new mcWolk();
public var trot:mcTrot = new mcTrot();
public var lantOff:mcLantOng = new mcLantOng();
public var luchtGek:luchtMc = new luchtMc();
public var luchtOn:luchtOnMc = new luchtOnMc();
public var _helft:Boolean = false;
public var _vooruit:Boolean = true;
public static var stage:Stage;
public function createMc() {
wolk.x=0;
wolk.y=wolk.height;
addChild(wolk);
zwart.x=0;
zwart.y=630;
addChild (zwart);
appa.x=0;
appa.y=600;
addChild(appa);
appaGek.x = 0;
appaGek.y = 240;
addChild(appaGek);
appaGek.maskMc.width = 0;
luchtGek.x = 0;
luchtGek.y = 0;
luchtGek.width = 0;
addChildAt(luchtGek,0.1);
luchtOn.x = 0;
luchtOn.y = 0;
addChildAt(luchtOn,0);
trot.x=0;
trot.y=600;
addChild(trot);
lantOff.x=0;
lantOff.y=600;
lantOff.height = 120;
addChild(lantOff);
auto.x = 0 - (auto.width/2);
auto.y=600;
addChild(auto);
auto.addEventListener(KeyboardEvent.KEY_DOWN, knopNeer);
auto.addEventListener(KeyboardEvent.KEY_UP, knopUp);
auto.addEventListener(MouseEvent.CLICK, clickHandler);
}
private function clickHandler(evt:MouseEvent):void{
stage.focus = auto;
stage.stageFocusRect = false;
}
private function knopNeer(event:KeyboardEvent):void {
var key = event.keyCode;
var _snelheidAuto = 0;
var _vermeerderRest = 0;
var _vermeerderZwart = 0;
var _vermeerderWolk = 0;
var _vermeerderMask = 0;
if (key == 39){
_vooruit = true;
}else{
_vooruit = false;
}
if(_vooruit == true){
_snelheidAuto = 10;
_vermeerderMask = 10;
}else{
_snelheidAuto = -10;
}
if(appa.x <= -2000){
_vooruit = false;
}
if(_vooruit == true && auto.x >= 500){
_snelheidAuto = 0;
_vermeerderRest = 10;
_vermeerderZwart = 8;
_vermeerderWolk = 6;
}
if(_vooruit == false && auto.x <= 500){
_vermeerderRest = -10;
_vermeerderZwart = -8;
_vermeerderWolk = -6;
_snelheidAuto = 0;
}
auto.x += _snelheidAuto;
appa.x -= _vermeerderRest;
appaGek.x -= _vermeerderRest;
appaGek.maskMc.width += _vermeerderMask;
luchtGek.width += _vermeerderMask;
zwart.x -= _vermeerderZwart;
wolk.x -= _vermeerderWolk;
trot.x -= _vermeerderRest;
lantOff.x -= _vermeerderRest;
trace(appa.x);
}
private function knopUp(event:KeyboardEvent):void {
}
}
}
any help is very much appreciated
P.S. any comments on the IF function to move the van are always welcome, cause i do believe there has to be a way to write this in a more effective way
Grts !