Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- movingTimer = new Timer(1000/Init.stageFrameRate);
- movingTimer.addEventListener(TimerEvent.TIMER, onFrame);
- movingTimer.start();
- addEventListener(Event.REMOVED_FROM_STAGE, removedFromStageListener);
- // var movingTimer:Timer = new Timer(41);
- // var movingTimer:Timer = new Timer(10);
- // movingTimer.addEventListener(TimerEvent.TIMER, onFrame);
- // movingTimer.start();
- addEventListener(MouseEvent.MOUSE_DOWN, onDown);
- addEventListener(KeyboardEvent.KEY_DOWN, onDownKey);
- //ЗАПУСКАЕМ ТАЙМЕР
- //moveTimer = new Timer(1000/Init.timerFreq);
- //moveTimer.addEventListener(TimerEvent.TIMER, onTick);
- //moveTimer.start();
- //addEventListener(MouseEvent.CLICK, onClick);
- //addEventListener(MouseEvent.MOUSE_UP, onUp);
- //addEventListener(MouseEvent.MOUSE_OUT, onOut);
- }
- private function removedFromStageListener(e:Event):void
- {
- movingTimer.stop();
- movingTimer.removeEventListener(TimerEvent.TIMER, onFrame);
- movingTimer = null;
- removeEventListener(Event.REMOVED_FROM_STAGE, removedFromStageListener);
- }
- private function onDownKey(event:KeyboardEvent):void {
- //необходимо! т.к. в процессе обработки события изменяется event.stageX и Y
- //во время изменения x,y-координат слоя BackL при изменении BackL.puCenter
- //var ex:Number = BackL.layer.x;
- //var ey:Number = BackL.layer.y;
- var ex:Number = BackL.puCenter.x;
- var ey:Number = BackL.puCenter.y;
- trace(ex,' ',ey);
- //Bill-
- dragBeginX = ex;
- dragBeginY = ey;
- allowMove = false;
- //но Мюнхаузен движется! и ему нужны moveX и moveY
- moveX = 0;
- moveY = 0;
- dragBeginX0 = ex;
- dragBeginY0 = ey;
- //removeEventListener(Event.ENTER_FRAME, onFrame);
- addEventListener(Event.ENTER_FRAME, onMoveByKey);
- addEventListener(KeyboardEvent.KEY_UP, onUpKey);
- /*addEventListener(MouseEvent.MOUSE_UP, onLeftArrow);
- addEventListener(MouseEvent.MOUSE_UP, onUpArrow);
- addEventListener(MouseEvent.MOUSE_UP, onRightArrow);
- addEventListener(MouseEvent.MOUSE_UP, onDownArrow);*/
- //addEventListener(MouseEvent.MOUSE_OUT, onOut);
- inDrag = true;
- }
- private function onMoveByKey(event:Event):void {
- //необходимо! т.к. в процессе обработки события изменяется event.stageX и Y
- //во время изменения x,y-координат слоя BackL при изменении BackL.puCenter
- //trace('onMove,allowMove=', allowMove);
- //var ex:Number = BackL.layer.x;
- //var ey:Number = BackL.layer.y;
- addEventListener(KeyboardEvent.KEY_DOWN, onTest);
- removeEventListener(KeyboardEvent.KEY_DOWN, onTest);
- //event.updateAfterEvent();
- }
- private function onTest(event:KeyboardEvent):void {
- //необходимо! т.к. в процессе обработки события изменяется event.stageX и Y
- //во время изменения x,y-координат слоя BackL при изменении BackL.puCenter
- //trace('onMove,allowMove=', allowMove);
- //var ex:Number = BackL.layer.x;
- //var ey:Number = BackL.layer.y;
- var ex:Number = BackL.puCenter.x;
- var ey:Number = BackL.puCenter.y;
- trace(ex,' ',ey);
- if(event.keyCode == 37) //Left Arrow
- {
- ex -= SHIP_SPEED;
- }
- if(event.keyCode == 38) //Up Arrow
- {
- ey -= SHIP_SPEED;
- }
- if(event.keyCode == 39) //Right Arrow
- {
- ex += SHIP_SPEED;
- }
- if(event.keyCode == 40) //Down Arrow
- {
- ey += SHIP_SPEED;
- }
- var newex:Number = (-ex+dragBeginX)*2;
- var newey:Number = (-ey+dragBeginY)*2;
- dragBeginX = ex;
- dragBeginY = ey;
- IncpuCenter(newex, newey);
- //puCenter = new Point(puCenter.x - ex+dragBeginX,
- // puCenter.y - ey+dragBeginY);
- //двигаем фигуры вместе с небом и мышкой
- drawFiguresLayer(newex, newey);
- //event.updateAfterEvent();
- }
- private function onUpKey(event:MouseEvent):void {
- //trace('onUp:', event.target);
- inDrag = false;
- removeEventListener(Event.ENTER_FRAME, onMoveByKey);
- removeEventListener(KeyboardEvent.KEY_UP, onUpKey);
- //removeEventListener(MouseEvent.MOUSE_OUT, onOut);
- //Bill
- var ex:Number = BackL.layer.x;
- var ey:Number = BackL.layer.y;
- //dragBeginX = ex;
- //dragBeginY = ey;
- //trace('-',ey)
- //Движения неба
- moveX = (dragBeginX0 - ex)/Init.stageFrameRate/2;
- moveY = (dragBeginY0 - ey)/Init.stageFrameRate/2;
- //trace('dragBeginY0',dragBeginY0,'dragBeginY',dragBeginY)
- //trace('moveY 1',moveY)
- if (Math.abs(moveX) < 0.1 && Math.abs(moveY) < 0.1){
- allowMove = false;
- //но Мюнхаузен движется! и ему нужны moveX и moveY
- moveX = 0;
- moveY = 0;
- }
- else{
- allowMove = true;
- //Max & min moves
- var max: Number = 25 / stage.frameRate * 3; //1.5
- if (Math.abs(moveX) > max)
- if (moveX>0) moveX = max
- else moveX = -max;
- if (Math.abs(moveY) > max)
- if (moveY>0) moveY = max
- else moveY = -max;
- var min: Number = 25 / stage.frameRate * 0.2; //0.1
- if (moveX!=0)
- if (Math.abs(moveX) < min)
- if (moveX>0) moveX = min
- else moveX = -min;
- if (moveY!=0)
- if (Math.abs(moveY) < min)
- if (moveY>0) moveY = min
- else moveY = -min;
- //trace('moveY 2',moveY)
- //округляем до 0.1
- moveX = Math.round(moveX * 10) / 10;
- moveY = Math.round(moveY * 10) / 10;
- //trace('moveY 3',moveY)
- }
- //addEventListener(Event.ENTER_FRAME, onFrame);
- //trace(moveX, moveY);
- }
- private function onDown(event:MouseEvent):void {
- //необходимо! т.к. в процессе обрабюотки события изменяется event.stageX и Y
- //во время изменения x,y-координат слоя BackL при изменении BackL.puCenter
- var ex:Number = event.stageX;
- var ey:Number = event.stageY;
- var e1:Number = BackL.puCenter.x;
- var e2:Number = BackL.puCenter.y;
- trace(e1,' ',e2);
- //Bill-
- dragBeginX = ex;
- dragBeginY = ey;
- allowMove = false;
- //но Мюнхаузен движется! и ему нужны moveX и moveY
- moveX = 0;
- moveY = 0;
- dragBeginX0 = ex;
- dragBeginY0 = ey;
- //removeEventListener(Event.ENTER_FRAME, onFrame);
- addEventListener(MouseEvent.MOUSE_MOVE, onMove);
- addEventListener(MouseEvent.MOUSE_UP, onUp);
- //addEventListener(MouseEvent.MOUSE_OUT, onOut);
- stage.addEventListener(Event.MOUSE_LEAVE, onOut);
- Mouse.cursor = MouseCursor.HAND;
- inDrag = true;
- }
- private function onMove(event:MouseEvent):void {
- //необходимо! т.к. в процессе обработки события изменяется event.stageX и Y
- //во время изменения x,y-координат слоя BackL при изменении BackL.puCenter
- //trace('onMove,allowMove=', allowMove);
- var ex:Number = event.stageX;
- var ey:Number = event.stageY;
- //trace(ey,'-')
- //trace('onMove,dragBeginX:'+dragBeginX);
- /*Star
- IncpuCenter(-ex+dragBeginX, -ey+dragBeginY);
- //puCenter = new Point(puCenter.x - ex+dragBeginX,
- // puCenter.y - ey+dragBeginY);
- drawFiguresLayer(-ex+dragBeginX, -ey+dragBeginY);
- */
- //event.updateAfterEvent();
- /*moveX = (dragBeginX - ex)/2.5;
- moveY = (dragBeginY - ey)/2.5;
- var max = 25 / stage.frameRate * 3;
- if (Math.abs(moveX) > 3)
- if (moveX>0) moveX = 3
- else moveX = -3;
- if (Math.abs(moveY) > 3)
- if (moveY>0) moveY = 3
- else moveY = -3;*/
- //Star
- //trace (ex);
- //var newex:Number = (-ex+dragBeginX0)/3;
- //var newey:Number = (-ey+dragBeginY0)/3;
- var newex:Number = (-ex+dragBeginX)*2;
- var newey:Number = (-ey+dragBeginY)*2;
- dragBeginX = ex;
- dragBeginY = ey;
- IncpuCenter(newex, newey);
- //puCenter = new Point(puCenter.x - ex+dragBeginX,
- // puCenter.y - ey+dragBeginY);
- //двигаем фигуры вместе с небом и мышкой
- drawFiguresLayer(newex, newey);
- //event.updateAfterEvent();
- }
- private function onUp(event:MouseEvent):void {
- //trace('onUp:', event.target);
- inDrag = false;
- Mouse.cursor = MouseCursor.AUTO;
- removeEventListener(MouseEvent.MOUSE_MOVE, onMove);
- removeEventListener(MouseEvent.MOUSE_UP, onUp);
- //removeEventListener(MouseEvent.MOUSE_OUT, onOut);
- //Bill
- var ex:Number = event.stageX;
- var ey:Number = event.stageY;
- //dragBeginX = ex;
- //dragBeginY = ey;
- //trace('-',ey)
- //Движения неба
- moveX = (dragBeginX0 - ex)/Init.stageFrameRate/2;
- moveY = (dragBeginY0 - ey)/Init.stageFrameRate/2;
- //trace('dragBeginY0',dragBeginY0,'dragBeginY',dragBeginY)
- //trace('moveY 1',moveY)
- if (Math.abs(moveX) < 0.1 && Math.abs(moveY) < 0.1){
- allowMove = false;
- //но Мюнхаузен движется! и ему нужны moveX и moveY
- moveX = 0;
- moveY = 0;
- }
- else{
- allowMove = true;
- //Max & min moves
- var max: Number = 25 / stage.frameRate * 3; //1.5
- if (Math.abs(moveX) > max)
- if (moveX>0) moveX = max
- else moveX = -max;
- if (Math.abs(moveY) > max)
- if (moveY>0) moveY = max
- else moveY = -max;
- var min: Number = 25 / stage.frameRate * 0.2; //0.1
- if (moveX!=0)
- if (Math.abs(moveX) < min)
- if (moveX>0) moveX = min
- else moveX = -min;
- if (moveY!=0)
- if (Math.abs(moveY) < min)
- if (moveY>0) moveY = min
- else moveY = -min;
- //trace('moveY 2',moveY)
- //округляем до 0.1
- moveX = Math.round(moveX * 10) / 10;
- moveY = Math.round(moveY * 10) / 10;
- //trace('moveY 3',moveY)
- }
- //addEventListener(Event.ENTER_FRAME, onFrame);
- //trace(moveX, moveY);
- }
- private function onOut(event:Event):void {
- if (inDrag) {
- inDrag = false;
- stage.removeEventListener(Event.MOUSE_LEAVE, onOut);
- Mouse.cursor = MouseCursor.AUTO;
- removeEventListener(MouseEvent.MOUSE_MOVE, onMove);
- removeEventListener(MouseEvent.MOUSE_UP, onUp);
- allowMove = false;
- //но Мюнхаузен движется! и ему нужны moveX и moveY
- moveX = 0;
- moveY = 0;
- }
- //trace('onOut:', event.target, event.currentTarget, event.bubbles, event.eventPhase);
- //trace('onOut');
- //removeEventListener(MouseEvent.MOUSE_MOVE, onMove);
- //removeEventListener(MouseEvent.MOUSE_UP, onUp);
- //removeEventListener(MouseEvent.MOUSE_OUT, onOut);
- //allowMove = true;
- //addEventListener(Event.ENTER_FRAME, onFrame);
- //removeEventListener(MouseEvent.MOUSE_MOVE, onMove);
- //allowMove = true;
- //trace(moveX, moveY);
- }
- /*private function onTick(event:TimerEvent):void{
- puCenter = new Point(puCenter.x+5, puCenter.y);
- event.updateAfterEvent();
- }*/
- //private var clickNum:uint=0;
- //private var frameNum:uint=0;
- private function onFrame(event:Event):void{
- //trace('onFrame begin');
- //++frameNum;
- //if (++frameNum%100==0){
- // trace('onFrame allowMove=', allowMove);
- //}
- //++frameNum;
- //if (++frameNum==1){
- if (allowMove){
- //puCenter = new Point(puCenter.x+moveX/*MathUtils.flashRandRangeI(1,50)*/, puCenter.y+moveY);
- //trace('onFrame IncpuCenter');
- IncpuCenter(moveX, moveY);
- //drawGlobFiguresLayer();
- }
- drawFiguresLayer(moveX, moveY);
- //}
- //for (var i=0; i<10000000; i++){}
- //var t = getTimer()*0.0001;
- //var t = int(frameNum / 50);
- //trace(t);
- //removeChildAt(0);
- //addChildAt(myNoise(t), 0);
- //trace('onFrame end');
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement