Ejemplo n.º 1
0
 public QForm()
 {
     this.color           = Color.White;
     this.moveModes       = MoveModes.Whole;
     this.rectangle       = new Rectangle(5, 5, 0x10, 0x10);
     this.captionHeight   = 20;
     this.font            = new Font("宋体", 10f);
     this.captionColor    = Color.Black;
     this.point           = new Point();
     this.haloColor       = Color.White;
     this.haloSize        = 5;
     this.textShowModes   = TextShowModes.Halo;
     this.drawIcon        = true;
     this.opacity         = 1.0;
     this.graphicsPath    = new GraphicsPath();
     this.animation       = new Animation();
     this.enableAnimation = true;
     this.animationTypes  = AnimationTypes.FadeinFadeoutEffect;
     this.timer           = new System.Windows.Forms.Timer();
     base.SetStyle(ControlStyles.OptimizedDoubleBuffer | ControlStyles.DoubleBuffer | ControlStyles.AllPaintingInWmPaint | ControlStyles.SupportsTransparentBackColor | ControlStyles.UserPaint, true);
     if (base.DesignMode)
     {
         base.SetStyle(ControlStyles.ResizeRedraw, true);
     }
     base.UpdateStyles();
     this.InitializeComponent();
 }
Ejemplo n.º 2
0
 /// <summary>
 /// 重载飞行方法
 /// </summary>
 /// <param name="from"></param>
 /// <param name="to"></param>
 /// <param name="speed"></param>
 /// <param name="moveMode"></param>
 public override void Move(Point from, Point to, double speed, MoveModes moveMode)
 {
     Point p0 = Scene.GetWindowCoordinate(to);
     Point p1 = Scene.GetWindowCoordinate(from);
     double angle = Global.GetAngle(p0.Y - p1.Y, p0.X - p1.X);
     this.RenderTransform = new RotateTransform() {
         CenterX = 70,
         CenterY = 25,
         Angle = angle
     };
     base.Move(from, to, speed, moveMode);
 }
Ejemplo n.º 3
0
 public void Sync(GroupOverrides syncFrom)
 {
     MoveMode       = syncFrom.MoveMode;
     MaxSize        = syncFrom.MaxSize;
     MinSize        = syncFrom.MinSize;
     Neutrals       = syncFrom.Neutrals;
     Unowned        = syncFrom.Unowned;
     Friendly       = syncFrom.Friendly;
     Control        = syncFrom.Control;
     FocusTargets   = syncFrom.FocusTargets;
     FocusSubSystem = syncFrom.FocusSubSystem;
     SubSystem      = syncFrom.SubSystem;
     Meteors        = syncFrom.Meteors;
     Biologicals    = syncFrom.Biologicals;
     Projectiles    = syncFrom.Projectiles;
 }
Ejemplo n.º 4
0
    public Vector2 GetForce(MoveModes mode)
    {
        switch (mode)
        {
        case MoveModes.Left:
            return(Vector2.left * MoveSpeed);

        case MoveModes.Right:
            return(Vector2.right * MoveSpeed);

        case MoveModes.Random:
            var toggler = (int)(Time.timeSinceLevelLoad * 3) % 2 == 0;
            return(new Vector2(toggler ? 1 : -1, 0) * MoveSpeed);
        }
        return(Vector2.zero);
    }
Ejemplo n.º 5
0
        void ToggleMoveMode()
        {
            moveMode = (MoveModes)(int)Mathf.Repeat((float)moveMode + 1, 3);
            ShowModeMessage();

            switch (moveMode)
            {
            case MoveModes.Normal:
                debugLr.material.SetColor("_EmissiveColor", Color.green);
                break;

            case MoveModes.Slow:
                debugLr.material.SetColor("_EmissiveColor", XKCDColors.Orange);
                break;

            case MoveModes.Ludicrous:
                debugLr.material.SetColor("_EmissiveColor", XKCDColors.PurpleishBlue);
                break;
            }
        }
Ejemplo n.º 6
0
 public void Sync(GroupOverrides syncFrom)
 {
     MoveMode       = syncFrom.MoveMode;
     MaxSize        = syncFrom.MaxSize;
     MinSize        = syncFrom.MinSize;
     Neutrals       = syncFrom.Neutrals;
     Unowned        = syncFrom.Unowned;
     Friendly       = syncFrom.Friendly;
     Control        = syncFrom.Control;
     FocusTargets   = syncFrom.FocusTargets;
     FocusSubSystem = syncFrom.FocusSubSystem;
     SubSystem      = syncFrom.SubSystem;
     Meteors        = syncFrom.Meteors;
     Grids          = syncFrom.Grids;
     Biologicals    = syncFrom.Biologicals;
     Projectiles    = syncFrom.Projectiles;
     Repel          = syncFrom.Repel;
     CameraChannel  = syncFrom.CameraChannel;
     Debug          = syncFrom.Debug;
     LeadGroup      = syncFrom.LeadGroup;
 }
Ejemplo n.º 7
0
    void Update()
    {
        switch (MoveMode)
        {
        case MoveModes.ToBase:
            MoveMode = MoveToBase();
            break;

        case MoveModes.ToPlayer:
            MoveMode = MoveToPlayer();
            break;

        case MoveModes.Frozen:
            MoveMode = Frozen();
            break;

        case MoveModes.Attack:
            MoveMode = Attack();
            break;
        }

        CheckPlayerHit();
    }
Ejemplo n.º 8
0
 public override void Move(Point from, Point to, double speed, MoveModes moveMode)
 {
     switch (moveMode) {
         case MoveModes.InjureText:
             if (Scale == 1) {
                 this.RenderTransform = new ScaleTransform() { CenterX = ContentWidth / 2, CenterY = ContentHeight / 2 };
             } else {
                 from = new Point(from.X, from.Y - 300);
                 to = new Point(to.X, to.Y - 300);
             }
             Point tempTo = new Point(to.X, to.Y + (from.Y - to.Y) / 2 - RandomSeed.Next(-10, 30) * Scale);
             Duration duration = TimeSpan.FromMilliseconds(GlobalMethod.GetTwoPointDistance(from, tempTo) * speed / Scale);
             double scale = 0.9;
             Storyboard storyboard = new Storyboard();
             storyboard.Children.Add(GlobalMethod.CreatePointAnimation(this, "Position", from, tempTo, duration, new PowerEase() { EasingMode = EasingMode.EaseOut }));
             storyboard.Children.Add(GlobalMethod.CreateDoubleAnimation(this, "(UIElement.RenderTransform).(ScaleTransform.ScaleX)", Scale * scale, duration, new PowerEase() { EasingMode = EasingMode.EaseOut }));
             storyboard.Children.Add(GlobalMethod.CreateDoubleAnimation(this, "(UIElement.RenderTransform).(ScaleTransform.ScaleY)", Scale * scale, duration, new PowerEase() { EasingMode = EasingMode.EaseOut }));
             EventHandler handler = null;
             storyboard.Completed += handler = (s, e) => {
                 Storyboard sb = s as Storyboard;
                 sb.Completed -= handler;
                 scale = 0.6;
                 sb = new Storyboard();
                 sb.Children.Add(GlobalMethod.CreatePointAnimation(this, "Position", new Point(tempTo.X, tempTo.Y + 15), duration, new PowerEase() { EasingMode = EasingMode.EaseIn }));
                 sb.Children.Add(GlobalMethod.CreateDoubleAnimation(this, "(UIElement.RenderTransform).(ScaleTransform.ScaleX)", Scale * scale, duration, new PowerEase() { EasingMode = EasingMode.EaseIn }));
                 sb.Children.Add(GlobalMethod.CreateDoubleAnimation(this, "(UIElement.RenderTransform).(ScaleTransform.ScaleY)", Scale * scale, duration, new PowerEase() { EasingMode = EasingMode.EaseIn }));
                 sb.Completed += moveStoryboard_Completed;
                 sb.Begin();
             };
             storyboard.Begin();
             break;
         default:
             base.Move(from, to, speed, moveMode);
             break;
     }
 }
Ejemplo n.º 9
0
        private void ToggleMoveMode()
        {
            _moveMode = (MoveModes)(int)Mathf.Repeat((float)_moveMode + 1, 4);
            ShowModeMessage();

            switch (_moveMode)
            {
            case MoveModes.Normal:
                _debugLr.material.SetColor("_EmissiveColor", Color.green);
                break;

            case MoveModes.Slow:
                _debugLr.material.SetColor("_EmissiveColor", XKCDColors.Orange);
                break;

            case MoveModes.Fine:
                _debugLr.material.SetColor("_EmissiveColor", XKCDColors.BrightRed);
                break;

            case MoveModes.Ludicrous:
                _debugLr.material.SetColor("_EmissiveColor", XKCDColors.PurpleishBlue);
                break;
            }
        }
Ejemplo n.º 10
0
 /// <summary>
 /// 从一点向另一点移动(完毕后释放)
 /// </summary>
 /// <param name="from">起点</param>
 /// <param name="to">终点</param>
 /// <param name="speed">速度系数</param>
 /// <param name="moveMode">模式</param>
 public virtual void Move(Point from, Point to, double speed, MoveModes moveMode)
 {
     Duration duration = TimeSpan.FromMilliseconds(GlobalMethod.GetTwoPointDistance(from, to) * speed);
     moveStoryboard.Children.Add(GlobalMethod.CreatePointAnimation(this, "Position", from, to, duration, null));
     switch (moveMode) {
         case MoveModes.Normal:
             break;
         case MoveModes.Opacity:
             moveStoryboard.Children.Add(GlobalMethod.CreateDoubleAnimation(this, "Opacity", 1, 0, duration, null));
             break;
         case MoveModes.Rotation:
             moveStoryboard.Children.Add(GlobalMethod.CreateDoubleAnimation(this, "(UIElement.RenderTransform).(TransformGroup.Children)[0].(SkewTransform.AngleX)", 0, 90, duration, null));
             moveStoryboard.Children.Add(GlobalMethod.CreateDoubleAnimation(this, "(UIElement.RenderTransform).(TransformGroup.Children)[0].(SkewTransform.AngleY)", 0, 90, duration, null));
             break;
         case MoveModes.Narrow:
             double narrow = RandomSeed.Next(5, 30) * 0.01;
             moveStoryboard.Children.Add(GlobalMethod.CreateDoubleAnimation(this, "(UIElement.RenderTransform).(ScaleTransform.ScaleX)", narrow, duration, null));
             moveStoryboard.Children.Add(GlobalMethod.CreateDoubleAnimation(this, "(UIElement.RenderTransform).(ScaleTransform.ScaleY)", narrow, duration, null));
             break;
     }
     moveStoryboard.Completed += new EventHandler(moveStoryboard_Completed);
     moveStoryboard.Begin();
 }
Ejemplo n.º 11
0
 public void SetRightMode(int mode)
 {
     RightMoveMode = (MoveModes)mode;
 }
Ejemplo n.º 12
0
 public void SetLeftMode(int mode)
 {
     LeftMoveMode = (MoveModes)mode;
 }
Ejemplo n.º 13
0
        /// <summary>
        /// 从一点向另一点移动
        /// </summary>
        /// <param name="from">起点</param>
        /// <param name="to">终点</param>
        /// <param name="speed">速度系数</param>
        /// <param name="moveMode">模式</param>
        public virtual void Move(Point from, Point to, double speed, MoveModes moveMode)
        {
            Duration duration = new Duration(TimeSpan.FromMilliseconds(Global.GetTwoPointDistance(from, to) * speed));
            Storyboard storyboard = new Storyboard();
            PointAnimation pointAnimation = new PointAnimation() {
                From = from,
                To = to,
                Duration = duration,
            };
            Storyboard.SetTarget(pointAnimation, this);
            Storyboard.SetTargetProperty(pointAnimation, new PropertyPath("Coordinate"));
            storyboard.Children.Add(pointAnimation);
            switch (moveMode) {
                case MoveModes.Normal:

                    break;
                case MoveModes.Opacity:
                    DoubleAnimation doubleAnimation = new DoubleAnimation() {
                        From = 1,
                        To = 0,
                        Duration = duration,
                    };
                    Storyboard.SetTarget(doubleAnimation, this);
                    Storyboard.SetTargetProperty(doubleAnimation, new PropertyPath("Opacity"));
                    storyboard.Children.Add(doubleAnimation);
                    break;
            }
            EventHandler handler = null;
            storyboard.Completed += handler = (s, e) => {
                storyboard.Completed -= handler;
                storyboard.Stop();
                storyboard = null;
                Dispose();
                if (MoveCompleted != null) { MoveCompleted(this, e); }
            };
            storyboard.Begin();
        }
Ejemplo n.º 14
0
        public void StartMove(Vessel v, bool _spawningLocal, float _altitude, bool _placingGate, bool _external, Vector3d _targetPos)
        {
            if (!_external)
            {
                _lineRender.enabled = true;
            }
            OrXLog.instance.SetFocusKeys();
            targetPosition = _targetPos;
            _externalControl = _external;
            MovingVessel = new Vessel();
            placingGate = _placingGate;
            _alt = _altitude;
            spawningLocal = _spawningLocal;
            _moveMode = MoveModes.Normal;
            MovingVessel = v;
            IsMovingVessel = true;
            _distance = OrXUtilities.instance.GetDistance(MovingVessel.longitude, MovingVessel.latitude, _targetPos.y, _targetPos.x, (MovingVessel.altitude + _targetPos.z) / 2);// CheckDistance(null, targetPosition);

            if (MovingVessel == OrXHoloKron.instance._HoloKron)
            {
                MoveHeight = 10;
            }
            else
            {
                MoveHeight = 10 + _alt;
            }
            mPerDegree = (((2 * (FlightGlobals.ActiveVessel.mainBody.Radius + FlightGlobals.ActiveVessel.altitude)) * Math.PI) / 360);
            degPerMeter = 1 / mPerDegree;

            UpVect = (v.transform.position - v.mainBody.transform.position).normalized;
            _startRotation = MovingVessel.transform.rotation;
            _currRotation = _startRotation;
            _rb = MovingVessel.GetComponent<Rigidbody>();
            _rb.isKinematic = true;
            _moving = true;
            if (_placingGate)
            {
                OrXHoloKron.instance.spawningStartGate = true;
                OrXHoloKron.instance.movingCraft = true;
                OrXHoloKron.instance._spawningVessel = false;
                OrXHoloKron.instance.getNextCoord = true;
                OrXHoloKron.instance.OrXHCGUIEnabled = true;
            }
            else
            {
                if (_external)
                {
                    OrXHoloKron.instance.Reach();
                }
                else
                {
                    OrXHoloKron.instance._spawningVessel = true;
                    OrXHoloKron.instance.getNextCoord = true;
                    OrXHoloKron.instance.OrXHCGUIEnabled = true;
                }
            }

            if (MovingVessel != FlightGlobals.ActiveVessel)
            {
                Debug.Log("[OrX Vessel Move] ===== SETTING ACTIVE VESSEL =====");
                FlightGlobals.ForceSetActiveVessel(MovingVessel);
            }
        }
Ejemplo n.º 15
0
 void Freeze()
 {
     unfreezTime  = Time.time + 1.2f;
     PrevMoveMode = MoveMode;
     MoveMode     = MoveModes.Frozen;
 }
Ejemplo n.º 16
0
        void ToggleMoveMode()
        {
            moveMode = (MoveModes)(int)Mathf.Repeat((float)moveMode+1, 3);
            ShowModeMessage();

            switch(moveMode)
            {
            case MoveModes.Normal:
                debugLr.material.SetColor("_EmissiveColor", Color.green);
                break;
            case MoveModes.Slow:
                debugLr.material.SetColor("_EmissiveColor", XKCDColors.Orange);
                break;
            case MoveModes.Ludicrous:
                debugLr.material.SetColor("_EmissiveColor", XKCDColors.PurpleishBlue);
                break;
            }
        }
Ejemplo n.º 17
0
 public override void Move(Point from, Point to, double speed, MoveModes moveMode)
 {
     Angle = GlobalMethod.GetAngle(to.Y - from.Y, to.X - from.X);
     base.Move(from, to, speed, moveMode);
 }
Ejemplo n.º 18
0
        /// <summary>
        /// Update move type
        /// </summary>
        /// <param name="moveType">new move type</param>
        public void UpdateMoveType(byte moveType)
        {
            this.predictionTime = DateTime.Now;

            /*
             * NV: Would be nice to have all other possible values filled out for this at some point... *Looks at Suiv*
             * More specifically, 10, 13 and 22 - 10 and 13 seem to be tied to spinning with mouse. 22 seems random (ping mabe?)
             * Also TODO: Tie this with CurrentMovementMode stat and persistance (ie, log off walking, log back on and still walking)
             * Values of CurrentMovementMode and their effects:
                0: slow moving feet not animating
                1: rooted cant sit
                2: walk
                3: run
                4: swim
                5: crawl
                6: sneak
                7: flying
                8: sitting
                9: rooted can sit
                10: same as 0
                11: sleeping
                12: lounging
                13: same as 0
                14: same as 0
                15: same as 0
                16: same as 0
             */
            switch (moveType)
            {
                case 1: // Forward Start
                    this.moveDirection = MoveDirections.Forwards;
                    break;
                case 2: // Forward Stop
                    this.moveDirection = MoveDirections.None;
                    break;

                case 3: // Reverse Start
                    this.moveDirection = MoveDirections.Backwards;
                    break;
                case 4: // Reverse Stop
                    this.moveDirection = MoveDirections.None;
                    break;

                case 5: // Strafe Right Start
                    this.strafeDirection = SpinOrStrafeDirections.Right;
                    break;
                case 6: // Strafe Stop (Right)
                    this.strafeDirection = SpinOrStrafeDirections.None;
                    break;

                case 7: // Strafe Left Start
                    this.strafeDirection = SpinOrStrafeDirections.Left;
                    break;
                case 8: // Strafe Stop (Left)
                    this.strafeDirection = SpinOrStrafeDirections.None;
                    break;

                case 9: // Turn Right Start
                    this.spinDirection = SpinOrStrafeDirections.Right;
                    break;
                case 10: // Mouse Turn Right Start
                    break;
                case 11: // Turn Stop (Right)
                    this.spinDirection = SpinOrStrafeDirections.None;
                    break;

                case 12: // Turn Left Start
                    this.spinDirection = SpinOrStrafeDirections.Left;
                    break;
                case 13: // Mouse Turn Left Start
                    break;
                case 14: // Turn Stop (Left)
                    this.spinDirection = SpinOrStrafeDirections.None;
                    break;

                case 15: // Jump Start
                    // NV: TODO: This!
                    break;
                case 16: // Jump Stop
                    break;

                case 17: // Elevate Up Start
                    break;
                case 18: // Elevate Up Stop
                    break;

                case 19: // ? 19 = 20 = 22 = 31 = 32
                    break;
                case 20: // ? 19 = 20 = 22 = 31 = 32
                    break;

                case 21: // Full Stop
                    break;

                case 22: // ? 19 = 20 = 22 = 31 = 32
                    break;

                case 23: // Switch To Frozen Mode
                    break;
                case 24: // Switch To Walk Mode
                    this.moveMode = MoveModes.Walk;
                    break;
                case 25: // Switch To Run Mode
                    this.moveMode = MoveModes.Run;
                    break;
                case 26: // Switch To Swim Mode
                    break;
                case 27: // Switch To Crawl Mode
                    this.previousMoveMode = this.moveMode;
                    this.moveMode = MoveModes.Crawl;
                    break;
                case 28: // Switch To Sneak Mode
                    this.previousMoveMode = this.moveMode;
                    this.moveMode = MoveModes.Sneak;
                    break;
                case 29: // Switch To Fly Mode
                    break;
                case 30: // Switch To Sit Ground Mode
                    this.previousMoveMode = this.moveMode;
                    this.moveMode = MoveModes.Sit;
                    this.stats.NanoDelta.CalcTrickle();
                    this.stats.HealDelta.CalcTrickle();
                    this.stats.NanoInterval.CalcTrickle();
                    this.stats.HealInterval.CalcTrickle();
                    break;

                case 31: // ? 19 = 20 = 22 = 31 = 32
                    break;
                case 32: // ? 19 = 20 = 22 = 31 = 32
                    break;

                case 33: // Switch To Sleep Mode
                    this.moveMode = MoveModes.Sleep;
                    break;
                case 34: // Switch To Lounge Mode
                    this.moveMode = MoveModes.Lounge;
                    break;

                case 35: // Leave Swim Mode
                    break;
                case 36: // Leave Sneak Mode
                    this.moveMode = this.previousMoveMode;
                    break;
                case 37: // Leave Sit Mode
                    this.moveMode = this.previousMoveMode;
                    this.stats.NanoDelta.CalcTrickle();
                    this.stats.HealDelta.CalcTrickle();
                    this.stats.NanoInterval.CalcTrickle();
                    this.stats.HealInterval.CalcTrickle();
                    break;
                case 38: // Leave Frozen Mode
                    break;
                case 39: // Leave Fly Mode
                    break;
                case 40: // Leave Crawl Mode
                    this.moveMode = this.previousMoveMode;
                    break;
                case 41: // Leave Sleep Mode
                    break;
                case 42: // Leave Lounge Mode
                    break;
                default:
                    //Console.WriteLine("Unknown MoveType: " + moveType);
                    break;
            }

            //Console.WriteLine((moveDirection != 0 ? moveMode.ToString() : "Stand") + "ing in the direction " + moveDirection.ToString() + (spinDirection != 0 ? " while spinning " + spinDirection.ToString() : "") + (strafeDirection != 0 ? " and strafing " + strafeDirection.ToString() : ""));
        }
Ejemplo n.º 19
0
        /// <summary>
        /// Update move type
        /// </summary>
        /// <param name="moveType">
        /// new move type
        /// </param>
        public void UpdateMoveType(byte moveType)
        {
            this.predictionTime = DateTime.UtcNow;

            /*
             * NV: Would be nice to have all other possible values filled out for this at some point... *Looks at Suiv*
             * More specifically, 10, 13 and 22 - 10 and 13 seem to be tied to spinning with mouse. 22 seems random (ping mabe?)
             * Also TODO: Tie this with CurrentMovementMode stat and persistance (ie, log off walking, log back on and still walking)
             * Values of CurrentMovementMode and their effects:
             *  0: slow moving feet not animating
             *  1: rooted cant sit
             *  2: walk
             *  3: run
             *  4: swim
             *  5: crawl
             *  6: sneak
             *  7: flying
             *  8: sitting
             *  9: rooted can sit
             *  10: same as 0
             *  11: sleeping
             *  12: lounging
             *  13: same as 0
             *  14: same as 0
             *  15: same as 0
             *  16: same as 0
             */
            switch (moveType)
            {
            case 1:     // Forward Start
                this.moveDirection = MoveDirections.Forwards;
                break;

            case 2:     // Forward Stop
                this.moveDirection = MoveDirections.None;
                break;

            case 3:     // Reverse Start
                this.moveDirection = MoveDirections.Backwards;
                break;

            case 4:     // Reverse Stop
                this.moveDirection = MoveDirections.None;
                break;

            case 5:     // Strafe Right Start
                this.strafeDirection = SpinOrStrafeDirections.Right;
                break;

            case 6:     // Strafe Stop (Right)
                this.strafeDirection = SpinOrStrafeDirections.None;
                break;

            case 7:     // Strafe Left Start
                this.strafeDirection = SpinOrStrafeDirections.Left;
                break;

            case 8:     // Strafe Stop (Left)
                this.strafeDirection = SpinOrStrafeDirections.None;
                break;

            case 9:     // Turn Right Start
                this.spinDirection = SpinOrStrafeDirections.Right;
                break;

            case 10:     // Mouse Turn Right Start
                break;

            case 11:     // Turn Stop (Right)
                this.spinDirection = SpinOrStrafeDirections.None;
                break;

            case 12:     // Turn Left Start
                this.spinDirection = SpinOrStrafeDirections.Left;
                break;

            case 13:     // Mouse Turn Left Start
                break;

            case 14:     // Turn Stop (Left)
                this.spinDirection = SpinOrStrafeDirections.None;
                break;

            case 15:     // Jump Start

                // NV: TODO: This!
                break;

            case 16:     // Jump Stop
                break;

            case 17:     // Elevate Up Start
                break;

            case 18:     // Elevate Up Stop
                break;

            case 19:     // ? 19 = 20 = 22 = 31 = 32
                break;

            case 20:     // ? 19 = 20 = 22 = 31 = 32
                break;

            case 21:     // Full Stop
                break;

            case 22:     // ? 19 = 20 = 22 = 31 = 32
                break;

            case 23:     // Switch To Frozen Mode
                break;

            case 24:     // Switch To Walk Mode
                this.moveMode = MoveModes.Walk;
                break;

            case 25:     // Switch To Run Mode
                this.moveMode = MoveModes.Run;
                break;

            case 26:     // Switch To Swim Mode
                break;

            case 27:     // Switch To Crawl Mode
                this.previousMoveMode = this.moveMode;
                this.moveMode         = MoveModes.Crawl;
                break;

            case 28:     // Switch To Sneak Mode
                this.previousMoveMode = this.moveMode;
                this.moveMode         = MoveModes.Sneak;
                break;

            case 29:     // Switch To Fly Mode
                break;

            case 30:     // Switch To Sit Ground Mode
                this.previousMoveMode = this.moveMode;
                this.moveMode         = MoveModes.Sit;
                this.stats.NanoDelta.CalcTrickle();
                this.stats.HealDelta.CalcTrickle();
                this.stats.NanoInterval.CalcTrickle();
                this.stats.HealInterval.CalcTrickle();
                break;

            case 31:     // ? 19 = 20 = 22 = 31 = 32
                break;

            case 32:     // ? 19 = 20 = 22 = 31 = 32
                break;

            case 33:     // Switch To Sleep Mode
                this.moveMode = MoveModes.Sleep;
                break;

            case 34:     // Switch To Lounge Mode
                this.moveMode = MoveModes.Lounge;
                break;

            case 35:     // Leave Swim Mode
                break;

            case 36:     // Leave Sneak Mode
                this.moveMode = this.previousMoveMode;
                break;

            case 37:     // Leave Sit Mode
                this.moveMode = this.previousMoveMode;
                this.stats.NanoDelta.CalcTrickle();
                this.stats.HealDelta.CalcTrickle();
                this.stats.NanoInterval.CalcTrickle();
                this.stats.HealInterval.CalcTrickle();
                break;

            case 38:     // Leave Frozen Mode
                break;

            case 39:     // Leave Fly Mode
                break;

            case 40:     // Leave Crawl Mode
                this.moveMode = this.previousMoveMode;
                break;

            case 41:     // Leave Sleep Mode
                break;

            case 42:     // Leave Lounge Mode
                break;

            default:

                // Console.WriteLine("Unknown MoveType: " + moveType);
                break;
            }

            // Console.WriteLine((moveDirection != 0 ? moveMode.ToString() : "Stand") + "ing in the direction " + moveDirection.ToString() + (spinDirection != 0 ? " while spinning " + spinDirection.ToString() : "") + (strafeDirection != 0 ? " and strafing " + strafeDirection.ToString() : ""));
        }
Ejemplo n.º 20
0
    public void GivePath(List<MovableObjectController.MovableObjectPosition> positions, float speed, bool interruptable, MoveModes moveMode, LoopModes loopMode)
    {
        if (State == MoveableObjectStates.MOVING && !mInterruptable)
        {
            return;
        }

        mPositionQueue.Clear();
        mPositionQueue = positions;
        mMoveSpeed = speed;
        mMoveMode = moveMode;
        mLoopMode = loopMode;

        mMoveDirection = ((mOriginalPosition + mPositionQueue[0].Position) - transform.position);
        mOriginalMagnitude = mMoveDirection.magnitude;
        mMoveDirection = mMoveDirection.normalized;

        mCurrentMoveTime = 0f;
        mInterruptable = interruptable;
        mPreviousPosition = mCurrentPosition;
        mCurrentPosition = -1;
        mTargetPosition = 0;
        State = MoveableObjectStates.MOVING;
    }