home *** CD-ROM | disk | FTP | other *** search
/ Equipe de France et Bonbons / EquipeFrancePromoCD.iso / pages / cs_cadbury / loadergfx.swf / scripts / __Packages / CheckPointGenerator.as < prev    next >
Encoding:
Text File  |  2006-03-19  |  1.9 KB  |  67 lines

  1. class CheckPointGenerator
  2. {
  3.    var mc;
  4.    var player;
  5.    var playField;
  6.    var checkPointPos;
  7.    var DECAL = 25;
  8.    var PRECISION = 10;
  9.    function CheckPointGenerator(mc, playField, player)
  10.    {
  11.       this.mc = mc;
  12.       this.player = player;
  13.       this.playField = playField;
  14.       this.checkPointPos = new Point2D(-1,-1);
  15.       this.moveCheckPoint();
  16.    }
  17.    function generatePosition()
  18.    {
  19.       var _loc3_ = random(this.playField.getMaxX());
  20.       var _loc2_ = random(this.playField.getMaxY());
  21.       if(_loc3_ <= this.playField.getMinX())
  22.       {
  23.          _loc3_ = this.playField.getMinX() + this.DECAL;
  24.       }
  25.       if(_loc3_ >= this.playField.getMaxX())
  26.       {
  27.          _loc3_ = this.playField.getMaxX() - this.DECAL;
  28.       }
  29.       if(_loc2_ <= this.playField.getMinY())
  30.       {
  31.          _loc2_ = this.playField.getMinY() + this.DECAL;
  32.       }
  33.       if(_loc2_ >= this.playField.getMaxY())
  34.       {
  35.          _loc2_ = this.playField.getMaxY() - this.DECAL;
  36.       }
  37.       this.checkPointPos.setX(_loc3_);
  38.       this.checkPointPos.setY(_loc2_);
  39.    }
  40.    function moveCheckPoint()
  41.    {
  42.       this.generatePosition();
  43.       this.mc._x = this.checkPointPos.getX();
  44.       this.mc._y = this.checkPointPos.getY();
  45.    }
  46.    function manage()
  47.    {
  48.       var _loc2_ = Math.floor(this.player.getX());
  49.       var _loc3_ = Math.floor(this.player.getY());
  50.       if(_loc2_ >= this.mc._x - this.PRECISION && _loc2_ <= this.mc._x + this.PRECISION)
  51.       {
  52.          if(_loc3_ >= this.mc._y - this.PRECISION && _loc3_ <= this.mc._y + this.PRECISION)
  53.          {
  54.             this.moveCheckPoint();
  55.             return true;
  56.          }
  57.       }
  58.       return false;
  59.    }
  60.    function trace()
  61.    {
  62.       trace("CheckPointGenerator - MC             : " + this.mc);
  63.       trace("CheckPointGenerator - checkPointPos  : ");
  64.       this.checkPointPos.trace();
  65.    }
  66. }
  67.