Guest User

Untitled

a guest
Jun 17th, 2018
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package
  2. {
  3.     import flash.display.MovieClip;
  4.     import flash.events.KeyboardEvent;
  5.     import flash.ui.Keyboard;
  6.  
  7.     public class ArraysFraLærer extends MovieClip
  8.     {
  9.  
  10.         private var hinder:LTest;
  11.         private var max:int = 10;
  12.  
  13.         private var mArray:Array;
  14.  
  15.         public function ArraysFraLærer()
  16.         {
  17.            
  18.  
  19.             mArray = new Array();
  20.             MakeArray();
  21.  
  22.             trace("Lager objekt utenfor array");
  23.             var temp:LTest2 = new LTest2();
  24.             //bytt ut this med stage, og se hva som forandrer seg
  25.             this.addChild(temp);
  26.             temp.y = Math.random() * 600;
  27.             temp.x = 75;
  28.            
  29.             trace(stage.numChildren);
  30.             trace("What does the keyword this refer to? ");
  31.             trace(this);
  32.             trace("Number of children of this: ");
  33.             trace(this.numChildren);
  34.             trace("What are children of Stage: ");
  35.             //Dette gir "Array", som er vår dokumentklasse:
  36.             trace(stage.getChildAt(0));
  37.             trace("Number of children of Stage: ");
  38.             trace(stage.numChildren);
  39.  
  40.             stage.addEventListener(KeyboardEvent.KEY_DOWN, tastTrykket);
  41.         }
  42.  
  43.         public function MakeArray():void
  44.         {
  45.             trace("Lager objekter i array");
  46.             for (var i:Number = 0; i < max; i++) // ; i++ forteller hva som skal skje på slutten av dette inlegget.
  47.             {
  48.                 trace("i = " + i);
  49.                 var temp:LTest = new LTest();
  50.                 addChild(temp);
  51.                 temp.y = Math.random() * 600;
  52.                 temp.x = 75 * i + 70;
  53.  
  54.                 mArray.push(temp);
  55.  
  56.                 trace("Number of children of Array: ");
  57.                 trace(this.numChildren);
  58.             }
  59.  
  60.         }
  61.  
  62.         public function KillArray():void
  63.         {
  64.             trace("Sletter objekter i array");
  65.             var j:Number = mArray.length;
  66.  
  67.             for (var i:Number = 0; i < j; i++)
  68.             {
  69.                 trace("i = " + i);
  70.  
  71.                 this.removeChild(mArray.pop());
  72.  
  73.                 trace("mArray :" + mArray.length);
  74.             }
  75.  
  76.         }
  77.  
  78.         public function KillOne():void
  79.         {
  80.             trace("Sletter siste objekt i array");
  81.             if (mArray.length > 0)
  82.             {
  83.                 this.removeChild(mArray.pop());
  84.             }
  85.  
  86.             trace("mArray :" + mArray.length);
  87.         }
  88.  
  89.         public function KillLenght():void
  90.         {
  91.             //Når jeg har kjørt denne funksjonen, så har jeg mistet referansen til objektene, og KillArray
  92.             //vil ikke lengre kunne slette dem
  93.             var i:Number = 0;
  94.             var j:Number = mArray.length;
  95.  
  96.  
  97.             for (i = 0; i < j; i++)
  98.             {
  99.                 //sletter ikke objektene
  100.                 mArray[i] = null;
  101.  
  102.                 trace(mArray.length);
  103.             }
  104.  
  105.             for (i = 0; i < j; i++)
  106.             {
  107.                 //sletter ikke objektene
  108.                 mArray.pop();
  109.  
  110.                 trace(mArray.length);
  111.                 trace(this.numChildren);
  112.             }
  113.             //sletter ikke objektene
  114.             //har forsåvidt ingen effekt når den står etter at jeg har poppet alle elementene heller
  115.             mArray = [];
  116.         }
  117.  
  118.  
  119.  
  120.         private function tastTrykket(e:KeyboardEvent):void
  121.         {
  122.             var key:uint = e.keyCode;
  123.             switch (key)
  124.             {
  125.                 case Keyboard.SPACE :
  126.                     KillArray();
  127.  
  128.                     break;
  129.                 case Keyboard.N :
  130.                     KillOne();
  131.  
  132.                     break;
  133.                 case Keyboard.M :
  134.                     MakeArray();
  135.  
  136.                     break;
  137.                 case Keyboard.L :
  138.                     KillLenght();
  139.  
  140.                     break;
  141.             }
  142.         }
  143.  
  144.     }
  145.  
  146. }
Add Comment
Please, Sign In to add comment