home *** CD-ROM | disk | FTP | other *** search
/ 600 Games / 600games.iso / Acao / david.swf / scripts / __Packages / Figur.as < prev    next >
Encoding:
Text File  |  2007-03-28  |  3.6 KB  |  123 lines

  1. class Figur extends Speleobjekt
  2. {
  3.    var nesteFrame;
  4.    var blankFrame;
  5.    var iLufta;
  6.    var stigande;
  7.    var topp_y;
  8.    var brett_y;
  9.    var hogde;
  10.    var i;
  11.    var underlag;
  12.    var brett_x;
  13.    var bredde;
  14.    var skjerm_x;
  15.    var skjerm_y;
  16.    static var figurliste;
  17.    static var helt;
  18.    static var platformliste;
  19.    var posisjon = 1;
  20.    var aktiv = true;
  21.    function Figur(mc, brett_x, brett_y, bredde, hogde)
  22.    {
  23.       super(mc,brett_x,brett_y,bredde,hogde);
  24.    }
  25.    function vedTreff()
  26.    {
  27.       this.bliUsynlig();
  28.       this.aktiv = false;
  29.    }
  30.    function bliUsynlig()
  31.    {
  32.       this.nesteFrame = this.blankFrame;
  33.    }
  34.    function oppdaterSkjermposisjon()
  35.    {
  36.       if(this.iLufta)
  37.       {
  38.          if(this.fart_y >= 0 && this.stigande)
  39.          {
  40.             this.stigande = false;
  41.          }
  42.          if(!this.stigande)
  43.          {
  44.             this.topp_y = this.brett_y + this.hogde;
  45.          }
  46.          this.brett_y += this.fart_y;
  47.          this.fart_y += this.aks_y;
  48.          if(this.iLufta)
  49.          {
  50.             if(!this.stigande)
  51.             {
  52.                this.i = 0;
  53.                while(this.i < Figur.platformliste.length)
  54.                {
  55.                   if(Figur.platformliste[this.i].treffPlatform(this))
  56.                   {
  57.                      this.underlag = Figur.platformliste[this.i];
  58.                      this.iLufta = false;
  59.                      this.fart_y = 0;
  60.                      this.brett_y = Figur.platformliste[this.i].brett_y - this.hogde;
  61.                   }
  62.                   this.i = this.i + 1;
  63.                }
  64.             }
  65.          }
  66.       }
  67.       else
  68.       {
  69.          if(this.underlag.friksjon)
  70.          {
  71.             if(this.underlag.bevegeleg)
  72.             {
  73.                this.brett_x += this.underlag.fart_x;
  74.                this.brett_y += this.underlag.fart_y;
  75.             }
  76.          }
  77.          if(this.brett_x > this.underlag.brett_x + this.underlag.bredde || this.brett_x + this.bredde < this.underlag.brett_x)
  78.          {
  79.             this.underlag = null;
  80.             this.iLufta = true;
  81.          }
  82.       }
  83.       this.brett_x += this.fart_x;
  84.       if(this.fart_x != 0)
  85.       {
  86.          this.i = 0;
  87.          while(this.i < Figur.platformliste.length)
  88.          {
  89.             if(Figur.platformliste[this.i].treffVegg(this))
  90.             {
  91.                if(Figur.platformliste[this.i] != this.underlag)
  92.                {
  93.                   this.brett_x -= this.fart_x;
  94.                   if(Figur.platformliste[this.i].treffVegg(this))
  95.                   {
  96.                      if(this.stigande)
  97.                      {
  98.                         if(this.topp_y > Figur.platformliste[this.i].brett_y + Figur.platformliste[this.i].hogde)
  99.                         {
  100.                            this.fart_y = 0;
  101.                            this.brett_y = Figur.platformliste[this.i].brett_y + Figur.platformliste[this.i].hogde;
  102.                            this.stigande = false;
  103.                         }
  104.                      }
  105.                   }
  106.                }
  107.             }
  108.             this.i = this.i + 1;
  109.          }
  110.       }
  111.       this.fart_x = 0;
  112.       this.skjerm_x = this.brett_x + this.offset_x - Speleobjekt.brett.origo_x;
  113.       this.skjerm_y = this.brett_y + this.offset_y - Speleobjekt.brett.origo_y;
  114.    }
  115.    function sjekkOmUtanfor()
  116.    {
  117.       if(this.skjerm_x > Speleobjekt.brett.skjermbredde || this.skjerm_x + this.bredde < 0 || this.skjerm_y > Speleobjekt.brett.skjermhogde || this.skjerm_y + this.hogde < 0 || !this.aktiv)
  118.       {
  119.          this.bliUsynlig();
  120.       }
  121.    }
  122. }
  123.