Ejemplo n.º 1
0
        public Mario(int x, int y)
            : base(ObjectType.OT_Mario)
        {
            FireBalls = new List<FireBall>();
            for (int i = 0; i < 2; i++)
                FireBalls.Add(new FireBall(0, 0));

            for (int i = 0; i < 2; i++)
                AddObject(FireBalls[i]);

            Type = MarioType.MT_Small;
            SetMarioProperties();

            this.x = x * 16;
            this.y = LevelGenerator.LevelHeight - 16 * y - height;
            Visible = true;
            ControlPressed = false;
            Blinking = false;
            BlinkingShow = true;

            Moving = false;
            Jumping = false;
            Direction = MarioDir.MD_Right;

            State = MarioJumpState.J_None;
            MoveState = MarioMoveState.J_None;

            TimerGenerator.AddTimerEventHandler(TimerType.TT_100, OnAnimate);
            TimerGenerator.AddTimerEventHandler(TimerType.TT_50, OnJumpTick);
            TimerGenerator.AddTimerEventHandler(TimerType.TT_50, OnMoveTick);
            TimerGenerator.AddTimerEventHandler(TimerType.TT_50, OnCheckCollisions);
        }
Ejemplo n.º 2
0
        public void SetX(int x)
        {
            if (x > 0)
            {
                Direction = MarioDir.MD_Right;
            }
            else
            {
                Direction = MarioDir.MD_Left;
            }

            this.x += x;
            SetDirections();
            Moving = true;
            //LevelGenerator.Raise_Event(LevelGenerator.LevelEvent.LE_Check_Collision);
        }
Ejemplo n.º 3
0
        public void MarioMove(MarioMoveState s)
        {
            MoveState = s;

            if (Direction != MarioDir.MD_Left)
            {
                if (s == MarioMoveState.J_Left)
                {
                    Direction = MarioDir.MD_Left;
                }
            }

            if (Direction != MarioDir.MD_Right)
            {
                if (s == MarioMoveState.J_Right)
                {
                    Direction = MarioDir.MD_Right;
                }
            }
            // LevelGenerator.Raise_Event(LevelGenerator.LevelEvent.LE_Check_Collision);
        }
Ejemplo n.º 4
0
        public Character(int x, int y)
            : base(ObjectType.OT_Mario)
        {
            FireBalls = new List <FireBall>();
            for (int i = 0; i < 2; i++)
            {
                FireBalls.Add(new FireBall(0, 0));
            }

            for (int i = 0; i < 2; i++)
            {
                AddObject(FireBalls[i]);
            }

            Type = MarioType.MT_Small;
            SetMarioProperties();

            this.x                 = x * 16;
            this.y                 = LevelGenerator.LevelHeight - 16 * y - height;
            Visible                = true;
            UpPressed              = false;
            Blinking               = false;
            BlinkingShow           = true;
            NumberOfCollectedCoins = 0;


            Moving       = true;
            Jumping      = false;
            Direction    = MarioDir.MD_Right;
            EnterPressed = true;


            State     = MarioJumpState.J_None;
            MoveState = MarioMoveState.J_Right;

            TimerGenerator.AddTimerEventHandler(TimerType.TT_100, OnAnimate);
            TimerGenerator.AddTimerEventHandler(TimerType.TT_50, OnJumpTick);
            TimerGenerator.AddTimerEventHandler(TimerType.TT_50, OnMoveTick);
            TimerGenerator.AddTimerEventHandler(TimerType.TT_50, OnCheckCollisions);
        }
Ejemplo n.º 5
0
        public void StopMove()
        {
            if (MoveState != MarioMoveState.J_Stopping)
            {
                switch (MoveState)
                {
                case MarioMoveState.J_Left:
                    Direction = MarioDir.MD_Left; break;

                case MarioMoveState.J_Right:
                    Direction = MarioDir.MD_Right; break;
                }

                MoveState = MarioMoveState.J_Stopping;

                //bug walls
                if (!UpPressed)
                {
                    XCount = 5;
                    XAdd   = 0;
                }
            }
        }
Ejemplo n.º 6
0
        public void StopMove()
        {
            if (MoveState != MarioMoveState.J_Stopping)
            {

                switch (MoveState)
                {
                    case MarioMoveState.J_Left:
                        Direction = MarioDir.MD_Left; break;

                    case MarioMoveState.J_Right:
                        Direction = MarioDir.MD_Right; break;
                }

                MoveState = MarioMoveState.J_Stopping;

                //bug walls
                if (!ControlPressed)
                {
                    XCount = 5;
                    XAdd = 0;
                }
            }
        }
Ejemplo n.º 7
0
        public void SetX(int x)
        {
            if (x > 0)
                Direction = MarioDir.MD_Right;
            else
                Direction = MarioDir.MD_Left;

            this.x += x;
            SetDirections();
            Moving = true;
            //LevelGenerator.Raise_Event(LevelGenerator.LevelEvent.LE_Check_Collision);
        }
Ejemplo n.º 8
0
        public void MarioMove(MarioMoveState s)
        {
            MoveState = s;

            if (Direction != MarioDir.MD_Left)
                if (s == MarioMoveState.J_Left)
                    Direction = MarioDir.MD_Left;

            if (Direction != MarioDir.MD_Right)
                if (s == MarioMoveState.J_Right)
                    Direction = MarioDir.MD_Right;

            // LevelGenerator.Raise_Event(LevelGenerator.LevelEvent.LE_Check_Collision);
        }