Beispiel #1
0
        //-------------------------------------------------------------------//
        private static object ExcelDateArray2QTime(Array a)
        {
            var dim1 = a.GetLength(0);

            if (a.Rank == 1)
            {
                var res = new QTime[dim1];
                for (var i = 0; i < dim1; i++)
                {
                    res[i] = (QTime)ExcelDate2QTime(a.GetValue(i));
                }
                return(res);
            }
            var dim2 = a.GetLength(1);
            var r    = new object[dim2]; //two dimensional array

            for (var i = 0; i < dim2; i++)
            {
                var elem = new QTime[dim1];
                for (var j = 0; j < dim1; j++)
                {
                    elem[j] = (QTime)ExcelDate2QTime(a.GetValue(j, i));
                }
                r[i] = elem;
            }
            return(r);
        }
 public void OnUpdate(QTime time)
 {
     if (p.Transform.Position.Y > Transform.Position.Y)
     {
         p.Transform.Position = PlayerStart;
     }
 }
Beispiel #3
0
        public override void OnUpdate(QTime time)
        {
            var s = Speed;

            if (Health < 1)
            {
                Scene.Destroy(this);
            }
            damageAccum += time.Delta;
            if (damageAccum > 0.5f)
            {
                CanTakeDamage = true;
                damageAccum   = 0;
            }
            if (Health < MaxHealth)
            {
                s = Speed * 2;
            }
            if (Health == 1)
            {
                s = Speed * 3;
            }
            if (QVec.Distance(p.Transform.Position, Transform.Position) < 200)
            {
                //				if(p.Transform.Position.X > Transform.Position.X)
                //					Sprite.Effect = SpriteEffects.FlipHorizontally;
                //				else
                //					Sprite.Effect = SpriteEffects.Non
                Transform.Position = QVec.MoveTowards(Transform.Position, p.Transform.Position) * time.Delta * s;
                Sprite.Source      = BatFlap.Play(time.Delta);
            }
            else if (QVec.Distance(p.Transform.Position, Transform.Position) < 800 && p.Transform.Position.Y > Transform.Position.Y)
            {
                //				if(p.Transform.Position.X > Transform.Position.X)
                //					Sprite.Effect = SpriteEffects.FlipHorizontally;
                //				else
                //					Sprite.Effect = SpriteEffects.None;
                Transform.Position += QVec.MoveTowards(Transform.Position, p.Transform.Position) * time.Delta * s;
                Sprite.Source       = BatFlap.Play(time.Delta);
            }
            else
            {
                if (QVec.Distance(Transform.Position, spawnerPosition) > 1)
                {
                    //					if(spawnerPosition.X > Transform.Position.X)
                    //						Sprite.Effect = SpriteEffects.FlipHorizontally;
                    //					else
                    //						Sprite.Effect = SpriteEffects.None;
                    Transform.Position += QVec.MoveTowards(Transform.Position, spawnerPosition) * time.Delta * Speed;
                    Sprite.Source       = BatFlap.Play(time.Delta);
                }
                else
                {
                    //					Sprite.Effect = SpriteEffects.FlipVertically;
                    Sprite.Source = Frames[30];
                }
            }
        }
Beispiel #4
0
 void MoveCam(QTime time)
 {
     if (QVec.Distance(Transform.Position, Camera.Position) > 10)
     {
         Rigibody.Awake = true;
         Camera.Lerp(Transform.Position, 4, time.Delta);
         //MainCamera.MoveTo(Position, 500 * time.Delta);
     }
 }
 public void OnUpdate(QTime time)
 {
     if (p.DirectionState == PlayerDirections.Left)
     {
         Position = new QVec(-20, 0) + p.Position;
     }
     else
     {
         Position = new QVec(20, 0) + p.Position;
     }
 }
 public void OnUpdate(QTime time)
 {
     if (p.CurrentDirection)
     {
         Transform.Position = p.Transform.Position + new QVec(distanceFromPlayer, 0);
     }
     else
     {
         Transform.Position = p.Transform.Position + new QVec(-distanceFromPlayer, 0);
     }
 }
Beispiel #7
0
    public void newTarget()
    {
        if (firstTime)
        {
            firstTime = false;
            QTime midnight = new QTime(0,0,0);
            RandomClass = new Random();
        }

        target = new QPoint(200 + RandomClass.Next(190), 10 + RandomClass.Next(255));
        Update();
    }
Beispiel #8
0
        public void testQTimeFromString()
        {
            Assert.AreEqual(new QTime(48613000), QTime.FromString("13:30:13.000"));
            Assert.AreEqual(new QTime(0), QTime.FromString("00:00:00.000"));
            Assert.AreEqual(new QTime(86399000), QTime.FromString("23:59:59.000"));

            Assert.AreEqual(new QTime(186399001), QTime.FromString("51:46:39.001"));
            Assert.AreEqual(new QTime(-86399000), QTime.FromString("-23:59:59.000"));

            Assert.AreEqual(new QTime(int.MinValue), QTime.FromString(null));
            Assert.AreEqual(new QTime(int.MinValue), QTime.FromString(""));
            Assert.AreEqual(new QTime(int.MinValue), QTime.FromString("0Nt"));
        }
        public void OnLateUpdate(QTime time)
        {
            const float cameraSpeed = 5;

            if (Camera.Bounds.Contains(p.Position))
            {
                Camera.Lerp(p.Position, cameraSpeed, time.Delta);
            }
            else
            {
                Camera.Lerp(p.Position, 20, time.Delta);
            }
        }
Beispiel #10
0
 public void OnUpdate(QTime time)
 {
     if (StateOfThePlayer == PlayerState.Moving)
     {
         Move(time);
     }
     else if (StateOfThePlayer == PlayerState.Attacking)
     {
         AttackingState(time);
     }
     MoveCam(time);
     CheckVelocity();
 }
Beispiel #11
0
    protected override void PaintEvent(QPaintEvent e)
    {
        QColor hourColor   = new QColor(127, 0, 127);
        QColor minuteColor = new QColor(0,127,127,191);

        int   side = QMin(Width(), Height());
        QTime time = QTime.CurrentTime();

        QPainter painter = new QPainter(this);

        painter.SetRenderHint(QPainter.RenderHint.Antialiasing);
        painter.Translate(Width() / 2, Height() / 2);
        painter.Scale(side / 200.0, side / 200.0);

        painter.SetPen(Qt.PenStyle.NoPen);
        painter.SetBrush(hourColor);

        painter.Save();
        painter.Rotate(30.0 * ((time.Hour() + time.Minute() / 60.0)));
        painter.DrawConvexPolygon(new QPolygon(hourHand));
        painter.Restore();

        painter.SetPen(hourColor);

        for (int i = 0; i < 12; ++i)
        {
            painter.DrawLine(88, 0, 96, 0);
            painter.Rotate(30.0);
        }

        painter.SetPen(Qt.PenStyle.NoPen);
        painter.SetBrush(minuteColor);

        painter.Save();
        painter.Rotate(6.0 * (time.Minute() + time.Second() / 60.0));
        painter.DrawConvexPolygon(new QPolygon(minuteHand));
        painter.Restore();

        painter.SetPen(minuteColor);

        for (int j = 0; j < 60; ++j)
        {
            if ((j % 5) != 0)
            {
                painter.DrawLine(92, 0, 96, 0);
            }
            painter.Rotate(6.0);
        }

        painter.End();
    }
Beispiel #12
0
        private object[] GetAskData()
        {
            var rows = r.Next(10) + 1;

            object[] data = { new QTime[rows], new string[rows], new string[rows], new float[rows] };
            for (var i = 0; i < rows; i++)
            {
                ((QTime[])data[0])[i]  = new QTime(DateTime.Now);
                ((string[])data[1])[i] = "INSTR_" + r.Next(100);
                ((string[])data[2])[i] = "qSharp";
                ((float[])data[3])[i]  = (float)r.NextDouble() * r.Next(100);
            }

            return(data);
        }
Beispiel #13
0
        void AttackingState(QTime time)
        {
            var speed = Speed;

            Attacking = true;
            //if in air, you are able to move left and right
            if (TimeInAir > 0)
            {
                var temp = QVec.Zero;
                if (Input.IsKeyHeld(QKeys.LeftShift) || Input.IsKeyHeld(QKeys.RightShift))
                {
                    speed = RunSpeed;
                }
                if (Input.IsKeyHeld(QKeys.A))
                {
                    Transform.Position += new QVec(-1, 0) * speed * time.Delta;
                }
                if (Input.IsKeyHeld(QKeys.D))
                {
                    Transform.Position += new QVec(1, 0) * speed * time.Delta;
                }
                if (Input.IsKeyHeld(QKeys.Space) && CanJump || Input.IsKeyHeld(QKeys.W) && CanJump)
                {
                    //-y = up, y = down
                    //applying force is more buggy than just setting the velocity
                    if (Rigibody.LinearVelocity.Y < 2f)
                    {
                        MoveLeft  = true;
                        MoveRight = true;
                        Rigibody.LinearVelocity += new QVec(0, -Velocity) * time.Delta * 1000;
                    }
                    TimeInAir += time.Delta;
                }
            }
            //			if(Current != AttackRight)
            //			{
            //				Current = AttackRight;
            //				Current.Reset();
            //			}
            if (Current.IsDone)
            {
                AttackRecover = 0;
                Current.Reset();
                Attacking        = false;
                StateOfThePlayer = PlayerState.Moving;
            }
            Sprite.Source = Current.Play(time.Delta);
        }
Beispiel #14
0
 public override void OnUpdate(QTime time)
 {
     if (QInput.Held(QKeyStates.W))
     {
         Transform.Position += QVec.Up * speed * time.Delta;
     }
     if (QInput.Held(QKeyStates.A))
     {
         Transform.Position += QVec.Left * speed * time.Delta;
     }
     if (QInput.Held(QKeyStates.S))
     {
         Transform.Position += QVec.Down * speed * time.Delta;
     }
     if (QInput.Held(QKeyStates.D))
     {
         Transform.Position += QVec.Right * speed * time.Delta;
     }
     if (QInput.Pressed(QKeyStates.Tab))
     {
         Scene.ResetScene();
     }
     if (QInput.Held(QKeyStates.Space) && Accumulator.CheckAccum("ball", 0.06f))
     {
         Instantiate(new QDemoCircle());
     }
     if (QInput.Pressed(QMouseStates.Up))
     {
         Camera.Zoom += Camera.Zoom * 0.1f;
     }
     if (QInput.Pressed(QMouseStates.Down))
     {
         Camera.Zoom -= Camera.Zoom * 0.1f;
     }
     if (QInput.Pressed(QMouseStates.Forward))
     {
         Console.WriteLine("forwardsMouseButtonDown");
     }
     if (QInput.Pressed(QMouseStates.Backward))
     {
         Console.WriteLine("backwardsMouseButton");
     }
     if (QInput.Pressed(QMouseStates.Middle))
     {
         Console.WriteLine("middleMouseButton");
     }
     Camera.Lerp(Transform.Position, 5, time.Delta);
 }
Beispiel #15
0
        public override void OnUpdate(QTime delta)
        {
////			if(QInput.IsKeyHeld(QKeys.Space))
////				World.Gravity = new QVec(0, -10);
////			else
////				World.Gravity = new QVec(0, QWorldManager.DefaultGravity);
//			if(QInput.Held(QMouseStates.Left) && Accumulator.CheckAccum("Spawner", 0.03f))
////			{
////				var size = 40;
////				if(QRandom.Number(0, 1) == 0)
////					Instantiate(new Block(size, size), Camera.ScreenToWorld(QInput.MousePosition()));
////				else
////					Instantiate(new Ball(size), Camera.ScreenToWorld(QInput.MousePosition()));
////			}
//				if(QInput.IsMouseScrolledUp())
//					Camera.Zoom += Camera.Zoom * 0.1f;
//			if(QInput.IsMouseScrolledDown())
//				Camera.Zoom -= Camera.Zoom * 0.1f;
//			if(QInput.IsKeyPressed(QKeyStates.Escape))
//				Scene.ResetScene();
        }
Beispiel #16
0
        private Object[] GetAskData()
        {
            int rows = r.Next(10) + 1;
            Object[] data = new Object[] { new QTime[rows], new String[rows], new String[rows], new float[rows] };
            for (int i = 0; i < rows; i++)
            {
                ((QTime[])data[0])[i] = new QTime(DateTime.Now);
                ((String[])data[1])[i] = "INSTR_" + r.Next(100);
                ((String[])data[2])[i] = "qSharp";
                ((float[])data[3])[i] = (float)r.NextDouble() * r.Next(100);
            }

            return data;
        }
        public override void OnUpdate(QTime time)
        {
            var s = Speed;

            if (Health < 1)
            {
                Scene.Destroy(this);
            }
            if (!CanTakeDamage && Accumulator.CheckAccum("BatCanTakeDamage", 0.2f, time))
            {
                CanTakeDamage = true;
            }
            if (Health < MaxHealth)
            {
                s = Speed * 2;
            }
            if (Health == 1)
            {
                s = Speed * 3;
            }
            var distanceFromPlayer = QVec.Distance(player.Transform.Position, Transform.Position);

            if (player.Position.Y > Position.Y)
            {
                WillAttack = true;
            }
            if (!WillAttack)
            {
                return;
            }
            //flies to player
            if (distanceFromPlayer < 800)            // && player.Transform.Position.Y > Transform.Position.Y)
            {
                if (player.Position.X > Position.X)
                {
                    Sprite.Effect = QRenderEffects.FlipHorizontally;
                }
                else
                {
                    Sprite.Effect = QRenderEffects.None;
                }
                Position     += QVec.MoveTowards(Position, player.Position) * time.Delta * s;
                Sprite.Source = BatFlap.Play(time.Delta);
            }
            else
            {
                //runs back to spawn
                if (QVec.Distance(Transform.Position, spawnerPosition) > 1)
                {
                    if (spawnerPosition.X > Position.X)
                    {
                        Sprite.Effect = QRenderEffects.FlipHorizontally;
                    }
                    else
                    {
                        Sprite.Effect = QRenderEffects.None;
                    }
                    Position     += QVec.MoveTowards(Position, spawnerPosition) * time.Delta * Speed;
                    Sprite.Source = BatFlap.Play(time.Delta);
                }
                else if (distanceFromPlayer > 1000)
                {
                    //closes eyes
                    Sprite.Effect = QRenderEffects.FlipVertically;
                    Sprite.Source = Frames[30];
                }
                else if (distanceFromPlayer < 1000)
                {
                    //opens eyes
                    Sprite.Effect = QRenderEffects.FlipVertically;
                    Sprite.Source = Frames[28];
                }
            }
        }
Beispiel #18
0
        void Move(QTime time)
        {
            bool run = false;

            Attacking = false;
            var  speed = Speed;
            QVec temp  = QVec.Zero;

            accumiFrames  += time.Delta;
            AttackRecover += time.Delta;
            if (accumiFrames > MaxiFrames)
            {
                canTakeDamage = true;
                accumiFrames  = 0;
            }

            if (Health < 1)
            {
                Scene.ResetScene();
            }

            if (Input.IsKeyDown(QKeys.Escape))
            {
                ExitGame();
            }

            if (Input.IsKeyHeld(QKeys.LeftShift) || Input.IsKeyHeld(QKeys.RightShift))
            {
                run   = true;
                speed = RunSpeed;
            }

            if (Input.IsKeyHeld(QKeys.D) && MoveRight)
            {
                Current          = Right;
                temp            += new QVec(1, 0);
                MoveLeft         = true;
                CurrentDirection = true;
            }

            if (Input.IsKeyHeld(QKeys.A) && MoveLeft)
            {
                Current          = Left;
                temp            += new QVec(-1, 0);
                MoveRight        = true;
                CurrentDirection = false;
            }

            if (Input.IsKeyUp(QKeys.D))
            {
                Sprite.Source = Frames[0];
            }

            if (Input.IsKeyUp(QKeys.A))
            {
                Sprite.Source = Frames[2];
            }

            if (Input.IsKeyDown(QKeys.R))
            {
                Camera.Zoom = 100;
                //ChangeScene(SceneName);
            }

            if (Input.IsKeyHeld(QKeys.Space) && CanJump || Input.IsKeyHeld(QKeys.W) && CanJump)
            {
                //-y = up, y = down
                //applying force is more buggy than just setting the velocity
                if (Rigibody.LinearVelocity.Y < 2f)
                {
                    MoveLeft  = true;
                    MoveRight = true;
                    Rigibody.LinearVelocity += new QVec(0, -Velocity) * time.Delta * 1000;
                }
                TimeInAir += time.Delta;
            }

            if (Input.IsKeyUp(QKeys.Space))
            {
                TimeInAir = AirTime;
            }

            if (Input.IsMouseScrolledUp())
            {
                Camera.Zoom += Camera.Zoom * 0.1f;
                Console.WriteLine($"Zoom: {Camera.Zoom}");
            }

            if (Input.IsMouseScrolledDown())
            {
                Camera.Zoom -= Camera.Zoom * 0.1f;
                Console.WriteLine($"Zoom: {Camera.Zoom}");
            }

            if (temp != QVec.Zero)
            {
//				Sprite.Effect = SpriteEffects.None;
                Transform.Position += temp.Normalize() * speed * time.Delta;
                Current.Multiplyer  = run ? 2 : 1;
                Sprite.Source       = Current.Play(time.Delta);
            }

            if (Input.IsKeyHeld(QKeys.J) && AttackRecover > MaxAttackRecover)
            {
                StateOfThePlayer = PlayerState.Attacking;
                if (CurrentDirection)
                {
                    Current = AttackRight;
                }
                else
                {
                    Current = AttackLeft;
                }
                Current.Reset();
            }
        }
Beispiel #19
0
 public void OnUpdate(QTime time)
 {
     Sprite.Source = SlimeIdle.Play(time.Delta);
 }