Guest User

Untitled

a guest
Apr 15th, 2018
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package
  2. {
  3.     //importering av alt som skal brukes
  4.     import flash.display.MovieClip;
  5.     import flash.display.Sprite;
  6.     import flash.ui.Keyboard;
  7.     import flash.events.KeyboardEvent;         
  8.     import flash.events.Event;
  9.     import flash.display.Shape;
  10.     import Hus;
  11.     import LDoer;
  12.     import Skog;
  13.     import SteinRas;
  14.    
  15.    
  16.     public class SceneMedHusStart2Main extends MovieClip
  17.     {
  18.         // Container Inne og Ute
  19.         private var ute:Sprite;
  20.         private var inne:Sprite;
  21.         private var huleinne:Sprite;
  22.        
  23.        
  24.         //Ferdige classer
  25.         private var hus:Hus;
  26.         private var skog:Skog;
  27.         private var steinras:SteinRas;
  28.        
  29.         //ute-objekter
  30.         private var forgrunn:LForgrunn;
  31.         private var himmel:LHimmel;
  32.         private var tre:LTre;
  33.         private var sky:LSky;
  34.         private var karakter:LKarakter;
  35.         private var stein:LStein;
  36.         private var newCircle:Shape = new Shape();
  37.         private var hule:LHule;
  38.         private var fjell:Lfjell;
  39.        
  40.         // Inne-objekter
  41.         private var veggInne:LVeggInne;
  42.        
  43.         //hule-objekter
  44.         private var hulevegger:Lhulevegger;
  45.         private var key:Lkey;
  46.        
  47.        
  48.         // Bounding box
  49.         const L:int = 0;                    // Left
  50.         const W:int = 550;                  // Width   
  51.         const T:int = 0;                    // Top
  52.         const H:int = 400;                  // Height
  53.         const R:int = L+W;                  // Right
  54.         const B:int = T+H;                  // Bottom
  55.        
  56.        
  57.         //booleans
  58.         private var aapne:Boolean;
  59.         private var hoyre:Boolean=false;
  60.         private var venstre:Boolean=false;
  61.         private var staa:Boolean=false;
  62.        
  63.        
  64.         public function SceneMedHusStart2Main()
  65.         {
  66.             // Container Inne
  67.             inne = new Sprite();
  68.             addChild(inne);
  69.             inne.x = 0;
  70.             inne.y = 0;
  71.             inne.visible = false;
  72.            
  73.             // Container Ute
  74.             ute = new Sprite();
  75.             addChild(ute);
  76.             ute.x = 0;
  77.             ute.y = 0;
  78.            
  79.             //Container hule
  80.             huleinne = new Sprite();
  81.             addChild(huleinne);
  82.             huleinne.x = 0;
  83.             huleinne.y = 0;
  84.             huleinne.visible = false;
  85.                        
  86.             leggTilObjekterInne();
  87.             leggTilObjekterUte();
  88.             leggTilObjekterHuleinne();
  89.            
  90.             //Objekter som brukes i alle rom og dybdevirkning.
  91.             karakter = new LKarakter();
  92.             addChild(karakter);
  93.             karakter.x = 275;
  94.             karakter.y = 310;
  95.             karakter.scaleX = karakter.scaleY = 0.5;   
  96.             karakter.gotoAndStop(1);       
  97.              
  98.             tre = new LTre();
  99.             addChild(tre);
  100.             tre.x = 535;
  101.             tre.y = 220;
  102.             tre.scaleX = tre.scaleY = 1;
  103.            
  104.             hule = new LHule();
  105.             addChild(hule);
  106.             hule.x = 0;
  107.             hule.y = 250;
  108.             hule.scaleX = hule.scaleY = 0.5;
  109.            
  110.             stein = new LStein();
  111.             addChild(stein);
  112.             stein.x = 275;
  113.             stein.y = 350;
  114.            
  115.             //lyttere, eventlistenere  
  116.             leggTilLyttereInne();
  117.             leggTilLyttereUte();
  118.            
  119.             stage.addEventListener(KeyboardEvent.KEY_DOWN, onKeyPressed);
  120.             stage.addEventListener(KeyboardEvent.KEY_UP, onKeyReleased);
  121.         }
  122.        
  123.         //Keyborad events
  124.         public function onKeyPressed(e:KeyboardEvent) : void
  125.                 {
  126.                        
  127.                         if (e.keyCode == Keyboard.LEFT)
  128.                         {
  129.                                 venstre = true;
  130.                                
  131.                         }
  132.                         else if (e.keyCode == Keyboard.RIGHT)
  133.                         {
  134.                                 hoyre = true;                              
  135.                                  
  136.                         }
  137.                        
  138.                         else if (e.keyCode == Keyboard.UP)
  139.                         {
  140.                                 staa = true;
  141.                         }
  142.  
  143.                         if (aapne!=true && karakter.hitTestObject(hus.doer.handtak))
  144.                                 aapne = true;
  145.                        
  146.                 }
  147.                
  148.                 public function onKeyReleased(e:KeyboardEvent) : void
  149.                 {
  150.                         if (e.keyCode == Keyboard.LEFT)
  151.                         {
  152.                                 venstre = false;
  153.                                
  154.                         }
  155.                         else if (e.keyCode == Keyboard.RIGHT)
  156.                         {
  157.                                 hoyre = false;                         
  158.                                  
  159.                         }
  160.                         else if (e.keyCode == Keyboard.UP)
  161.                         {
  162.                                 staa = false;
  163.                         }
  164.  
  165.                         karakter.gotoAndStop("gaa");
  166.                 }
  167.        
  168.         public function onFrameLoop(e:Event) : void
  169.         {
  170.             gaa();
  171.             if (ute.visible)
  172.             {
  173.                 lyttPaaDoer();
  174.                 lyttPaahule();
  175.                
  176.            
  177.             }
  178.         }
  179.        
  180.         private function gaa()
  181.         {
  182.             if(hoyre)
  183.             {
  184.                 karakter.gotoAndStop("gaa");
  185.  
  186.                 if(karakter.scaleX>0)
  187.                     karakter.scaleX = - karakter.scaleX;
  188.                
  189.                 karakter.x = karakter.x + 5;
  190.  
  191.             }
  192.            
  193.             if(venstre)
  194.             {
  195.                 karakter.gotoAndStop("gaa");
  196.  
  197.                 if(karakter.scaleX<0)
  198.                     karakter.scaleX = - karakter.scaleX;
  199.                
  200.                 karakter.x = karakter.x - 5;
  201.             }
  202.            
  203.             if(!hoyre && !venstre)
  204.             {
  205.                 karakter.gotoAndStop("hvile");
  206.             }
  207.            
  208.             if(staa)
  209.             {
  210.                 karakter.gotoAndStop("fire");
  211.                
  212.             }
  213.         }
  214.    
  215.        
  216.  
  217.         private function leggTilObjekterUte()
  218.         {
  219.            
  220.            
  221.             himmel = new LHimmel();
  222.             ute.addChild(himmel);
  223.             himmel.x = himmel.width/2; 
  224.             himmel.y = himmel.height/2;
  225.            
  226.             fjell = new Lfjell();
  227.             ute.addChild(fjell);
  228.             fjell.x = 380;
  229.             fjell.y = 200;
  230.            
  231.             forgrunn = new LForgrunn();
  232.             ute.addChild(forgrunn);
  233.             forgrunn.x = 300;
  234.             forgrunn.y = 320;
  235.            
  236.             newCircle.graphics.beginFill(0xFFFF00);
  237.             newCircle.graphics.drawCircle(50,50,25);
  238.             newCircle.graphics.endFill();
  239.             newCircle.x = 400;
  240.             newCircle.y = 10;
  241.             ute.addChild(newCircle);
  242.            
  243.             skog = new Skog();
  244.             ute.addChild(skog);
  245.             skog.x = 20;
  246.             skog.y = 130;
  247.             skog.scaleX = skog.scaleY = 0.8;
  248.            
  249.             hus = new Hus();
  250.             ute.addChild(hus);
  251.             hus.x = 200;
  252.             hus.y = 120;
  253.            
  254.            
  255.            
  256.                            
  257.         }
  258.        
  259.         private function leggTilLyttereUte()
  260.         {      
  261.               addEventListener(Event.ENTER_FRAME, onFrameLoop);
  262.         }
  263.        
  264.         private function leggTilLyttereInne()
  265.         {
  266.             // Eller bruk samme lyttefunksjoner bΓ₯de inne og ute          
  267.         }
  268.        
  269.         private function lyttPaaDoer()
  270.         {
  271.             if (karakter.hitTestObject(hus.doer.handtak))
  272.             {
  273.                
  274.                 if (hus.doer.handtak.rotationZ >-60)
  275.                     hus.doer.handtak.rotationZ-=2;
  276.                    
  277.                 else if (hus.doer.handtak.rotationZ==-60 && hus.doer.rotationY<70)
  278.                     hus.doer.rotationY +=2;
  279.                    
  280.                 else
  281.                 {
  282.                     ute.visible = false;
  283.                     inne.visible = true;
  284.                     huleinne.visible = false;
  285.                     tre.visible = false;
  286.                     stein.visible = false;
  287.                    
  288.                    
  289.                     karakter.scaleX= 1;
  290.                     karakter.scaleY= 1;
  291.                 }
  292.             }
  293.         }
  294.        
  295.        
  296.         private function leggTilObjekterInne()
  297.         {
  298.            
  299.            
  300.             veggInne = new LVeggInne();
  301.             inne.addChild(veggInne);
  302.             veggInne.x = 280;  
  303.             veggInne.y = veggInne.height/2;
  304.            
  305.            
  306.         }
  307.  
  308.         private function leggTilObjekterHuleinne()
  309.         {
  310.             hulevegger = new Lhulevegger();
  311.             huleinne.addChild(hulevegger);
  312.             hulevegger.x = 275;
  313.             hulevegger.y = 200;
  314.            
  315.            
  316.            
  317.            
  318.             steinras = new SteinRas();
  319.             huleinne.addChild(steinras);
  320.            
  321.    
  322.         }
  323.        
  324.         private function lyttPaahule()
  325.         {
  326.             if (karakter.hitTestObject(hule))
  327.             {
  328.                     huleinne.visible = true;
  329.                     ute.visible = false;
  330.                     hule.visible= false;
  331.                     tre.visible = false;
  332.                     stein.visible = false;
  333.                    
  334.                     key = new Lkey();
  335.                     huleinne.addChild(key);
  336.                     key.x = 30;
  337.                     key.y = 250;
  338.                     key.scaleX = key.scaleY = 0.4;
  339.                    
  340.                     karakter.scaleX= 0.6;
  341.                     karakter.scaleY= 0.6;
  342.                     karakter.x = 500;
  343.                     karakter.y = 310;
  344.             }
  345.             if (karakter.hitTestObject(key))
  346.             {
  347.                 removeChild (key);
  348.             }
  349.            
  350.         }
  351.     }
  352. }
Add Comment
Please, Sign In to add comment