home *** CD-ROM | disk | FTP | other *** search
/ 404 Jogos / CLJG.iso / Acao / xwung.swf / scripts / com / lofiminds / gm / GameUtil.as < prev    next >
Encoding:
Text File  |  2008-09-26  |  6.0 KB  |  199 lines

  1. package com.lofiminds.gm
  2. {
  3.    import flash.display.BitmapData;
  4.    import flash.display.DisplayObject;
  5.    import flash.geom.ColorTransform;
  6.    
  7.    public class GameUtil
  8.    {
  9.       
  10.       private static var randSeed:uint = 1;
  11.       
  12.       private static var hsvCt:ColorTransform = new ColorTransform();
  13.        
  14.       
  15.       public function GameUtil()
  16.       {
  17.          super();
  18.       }
  19.       
  20.       public static function lengthdir_x(param1:Number, param2:Number) : Number
  21.       {
  22.          return Math.cos(param2) * param1;
  23.       }
  24.       
  25.       public static function lengthdir_y(param1:Number, param2:Number) : Number
  26.       {
  27.          return Math.sin(0 - param2) * param1;
  28.       }
  29.       
  30.       public static function random() : Number
  31.       {
  32.          randSeed = ((randSeed + 1) * 75 - 1) % 65537;
  33.          return randSeed / 65537;
  34.       }
  35.       
  36.       public static function point_distance(param1:Number, param2:Number, param3:Number, param4:Number) : Number
  37.       {
  38.          var _loc5_:Number = param3 - param1;
  39.          var _loc6_:Number = param4 - param2;
  40.          return Math.sqrt(_loc5_ * _loc5_ + _loc6_ * _loc6_);
  41.       }
  42.       
  43.       public static function setRandomSeed(param1:uint) : void
  44.       {
  45.          randSeed = param1;
  46.       }
  47.       
  48.       public static function make_color_rgb(param1:uint, param2:uint, param3:uint) : uint
  49.       {
  50.          return 255 << 24 | param1 << 16 | param2 << 8 | param3;
  51.       }
  52.       
  53.       public static function setColorTransform(param1:uint, param2:ColorTransform) : void
  54.       {
  55.          var _loc3_:uint = uint(param1 >> 16 & 255);
  56.          var _loc4_:uint = uint(param1 >> 8 & 255);
  57.          var _loc5_:uint = uint(param1 & 255);
  58.          param2.redMultiplier = _loc3_ / 255;
  59.          param2.greenMultiplier = _loc4_ / 255;
  60.          param2.blueMultiplier = _loc5_ / 255;
  61.       }
  62.       
  63.       public static function frac(param1:Number) : Number
  64.       {
  65.          return param1 - Math.floor(param1);
  66.       }
  67.       
  68.       public static function point_direction(param1:Number, param2:Number, param3:Number, param4:Number) : Number
  69.       {
  70.          var _loc5_:Number = param3 - param1;
  71.          var _loc6_:Number = param4 - param2;
  72.          return 0 - Math.atan2(_loc6_,_loc5_);
  73.       }
  74.       
  75.       public static function randomize() : void
  76.       {
  77.          randSeed = Math.random() * uint.MAX_VALUE;
  78.       }
  79.       
  80.       public static function mergeColor(param1:uint, param2:uint, param3:Number = 0.5) : uint
  81.       {
  82.          var _loc7_:uint = 0;
  83.          var _loc8_:uint = 0;
  84.          var _loc4_:Number = 1 - param3;
  85.          var _loc5_:uint = 0;
  86.          var _loc6_:int = 0;
  87.          while(_loc6_ <= 16)
  88.          {
  89.             _loc7_ = uint(param1 >> _loc6_ & 255);
  90.             _loc8_ = uint(param2 >> _loc6_ & 255);
  91.             _loc5_ |= uint(Math.max(0,Math.min(255,_loc7_ * param3 + _loc8_ * _loc4_))) << _loc6_;
  92.             _loc6_ += 8;
  93.          }
  94.          return _loc5_;
  95.       }
  96.       
  97.       public static function displayToBitmap(param1:DisplayObject) : BitmapData
  98.       {
  99.          var _loc2_:BitmapData = new BitmapData(param1.width,param1.height,true,0);
  100.          _loc2_.draw(param1);
  101.          return _loc2_;
  102.       }
  103.       
  104.       public static function degToRad(param1:Number) : Number
  105.       {
  106.          return param1 * 0.017453293;
  107.       }
  108.       
  109.       public static function sign(param1:Number) : Number
  110.       {
  111.          return param1 > 0 ? 1 : (param1 < 0 ? -1 : 0);
  112.       }
  113.       
  114.       public static function randomRange(param1:Number, param2:Number) : Number
  115.       {
  116.          return param1 + (2 * random() - 1) * param2;
  117.       }
  118.       
  119.       public static function clamp(param1:Number, param2:Number, param3:Number) : Number
  120.       {
  121.          if(param1 < param2)
  122.          {
  123.             return param2;
  124.          }
  125.          if(param1 > param3)
  126.          {
  127.             return param3;
  128.          }
  129.          return param1;
  130.       }
  131.       
  132.       public static function radToDeg(param1:Number) : Number
  133.       {
  134.          return param1 * 57.29577951;
  135.       }
  136.       
  137.       public static function make_color_hsv(param1:Number, param2:Number, param3:Number) : uint
  138.       {
  139.          var _loc4_:Number = NaN;
  140.          var _loc5_:Number = NaN;
  141.          var _loc6_:Number = NaN;
  142.          var _loc7_:Number = NaN;
  143.          var _loc8_:Number = NaN;
  144.          var _loc9_:Number = NaN;
  145.          var _loc10_:Number = NaN;
  146.          var _loc11_:int = 0;
  147.          if(param2 == 0)
  148.          {
  149.             _loc8_ = _loc9_ = _loc10_ = param3;
  150.          }
  151.          else
  152.          {
  153.             param1 *= 1 / 60;
  154.             _loc11_ = Math.floor(param1);
  155.             _loc4_ = param1 - _loc11_;
  156.             _loc5_ = param3 * (1 - param2);
  157.             _loc6_ = param3 * (1 - param2 * _loc4_);
  158.             _loc7_ = param3 * (1 - param2 * (1 - _loc4_));
  159.             switch(_loc11_)
  160.             {
  161.                case 0:
  162.                   _loc8_ = param3;
  163.                   _loc9_ = _loc7_;
  164.                   _loc10_ = _loc5_;
  165.                   break;
  166.                case 1:
  167.                   _loc8_ = _loc6_;
  168.                   _loc9_ = param3;
  169.                   _loc10_ = _loc5_;
  170.                   break;
  171.                case 2:
  172.                   _loc8_ = _loc5_;
  173.                   _loc9_ = param3;
  174.                   _loc10_ = _loc7_;
  175.                   break;
  176.                case 3:
  177.                   _loc8_ = _loc5_;
  178.                   _loc9_ = _loc6_;
  179.                   _loc10_ = param3;
  180.                   break;
  181.                case 4:
  182.                   _loc8_ = _loc7_;
  183.                   _loc9_ = _loc5_;
  184.                   _loc10_ = param3;
  185.                   break;
  186.                default:
  187.                   _loc8_ = param3;
  188.                   _loc9_ = _loc5_;
  189.                   _loc10_ = _loc6_;
  190.             }
  191.          }
  192.          hsvCt.redOffset = _loc8_ * 255;
  193.          hsvCt.greenOffset = _loc9_ * 255;
  194.          hsvCt.blueOffset = _loc10_ * 255;
  195.          return hsvCt.color;
  196.       }
  197.    }
  198. }
  199.