home *** CD-ROM | disk | FTP | other *** search
- package Code.org.cove.ape
- {
- import Code.LIB._bm350;
-
- public class _ex17 extends _pa14
- {
-
-
- private var _collidable:Boolean;
-
- private var p1:_hu144;
-
- private var p2:_hu144;
-
- private var _scp:_kp510;
-
- private var _restLength:Number;
-
- public function _ex17(param1:_hu144, param2:_hu144, param3:Number = 0.5, param4:Boolean = false, param5:Number = 1, param6:Number = 1, param7:Boolean = false)
- {
- super(param3);
- this.p1 = param1;
- this.p2 = param2;
- _mx187();
- _restLength = _rn468;
- _th554(param4,param5,param6,param7);
- }
-
- override public function init() : void
- {
- _xe147();
- if(_ts56)
- {
- _pv28.init();
- }
- else if(_sprite != null)
- {
- _gx160();
- }
- _wr15();
- }
-
- public function get _yq99() : Number
- {
- var _loc1_:_be271 = null;
- _loc1_ = delta;
- return Math.atan2(_loc1_.y,_loc1_.x);
- }
-
- override public function _wr15() : void
- {
- var _loc1_:_be271 = null;
- if(_ts56)
- {
- _pv28._wr15();
- }
- else if(_sprite != null)
- {
- _loc1_ = center;
- _ny250.x = _loc1_.x;
- _ny250.y = _loc1_.y;
- _ny250.rotation = angle;
- }
- else
- {
- _ny250.graphics.clear();
- _ny250.graphics.lineStyle(lineThickness,lineColor,lineAlpha);
- _ny250.graphics.moveTo(p1._ej28 * _bm350._tc204,p1._th99 * _bm350._tc204);
- _ny250.graphics.lineTo(p2._ej28 * _bm350._tc204,p2._th99 * _bm350._tc204);
- }
- }
-
- public function _th554(param1:Boolean, param2:Number, param3:Number, param4:Boolean = false) : void
- {
- _collidable = param1;
- _scp = null;
- if(_collidable)
- {
- _scp = new _kp510(p1,p2,this,param2,param3,param4);
- _scp.owner = owner;
- }
- }
-
- public function get _uf253() : Number
- {
- return _restLength;
- }
-
- internal function _gx160() : void
- {
- if(_ts56)
- {
- _pv28._gx160();
- _pv28.owner = this.owner;
- }
- else
- {
- _sprite.rotation = displayObjectRotation;
- }
- }
-
- public function get _pv28() : _kp510
- {
- return _scp;
- }
-
- public function set _rd100(param1:Number) : void
- {
- if(_pv28 == null)
- {
- return;
- }
- _pv28._rd100 = param1;
- }
-
- public function _tb36(param1:_hu144) : Boolean
- {
- return param1 == p1 || param1 == p2;
- }
-
- internal function get delta() : _be271
- {
- return p1.curr._tk193(p2.curr);
- }
-
- public function get _rn468() : Number
- {
- return p1.curr.distance(p2.curr);
- }
-
- public function get _rd100() : Number
- {
- return _pv28._rd100;
- }
-
- override internal function _ot495() : void
- {
- var _loc1_:Number = NaN;
- var _loc2_:Number = NaN;
- var _loc3_:_be271 = null;
- if(p1.fixed && p2.fixed)
- {
- return;
- }
- _loc1_ = _rn468;
- _loc2_ = (_loc1_ - _uf253) / (_loc1_ * (p1._uq347 + p2._uq347));
- _loc3_ = delta._cl482(_loc2_ * _lj285);
- p1.curr._vq479(_loc3_._cl482(p1._uq347));
- p2.curr._uc210(_loc3_._cl482(p2._uq347));
- }
-
- public function get _ts56() : Boolean
- {
- return _collidable;
- }
-
- public function get angle() : Number
- {
- return _yq99 * _ex374.ONE_EIGHTY_OVER_PI;
- }
-
- public function get center() : _be271
- {
- return p1.curr._lv417(p2.curr)._tg447(2);
- }
-
- public function set _uf253(param1:Number) : void
- {
- if(param1 <= 0)
- {
- throw new ArgumentError("restLength must be greater than 0");
- }
- _restLength = param1;
- }
-
- public function _mb474(param1:_ms106, param2:Number = 0, param3:Number = 0, param4:Number = 0) : void
- {
- param1.owner = this;
- if(_ts56)
- {
- _pv28._mb474(param1,param2,param3,param4);
- }
- else
- {
- _sprite = param1;
- displayObjectRotation = param4;
- displayObjectOffset = new _be271(param2,param3);
- }
- }
-
- public function set _uy312(param1:Number) : void
- {
- if(_pv28 == null)
- {
- return;
- }
- _pv28._uy312 = param1;
- }
-
- public function set _bx66(param1:Number) : void
- {
- if(_pv28 == null)
- {
- return;
- }
- _pv28._bx66 = param1;
- }
-
- private function _mx187() : void
- {
- if(p1.curr.x == p2.curr.x && p1.curr.y == p2.curr.y)
- {
- p2.curr.x += 0.0001;
- }
- }
-
- public function get _uy312() : Number
- {
- return _pv28._uy312;
- }
-
- public function get fixed() : Boolean
- {
- return p1.fixed && p2.fixed;
- }
-
- public function get _bx66() : Number
- {
- return _pv28._bx66;
- }
- }
- }
-