Esempio n. 1
0
        //determines if the Room being moved to is a legitimate choice
        public bool CanMove(EDirection eDirection)
        {
            Location objTemporaryLocation = CurrentLocation.DeepClone<Location>(CurrentLocation);

            switch (eDirection)
            {
                case EDirection.North:
                    {
                        objTemporaryLocation.y++;            //North
                        break;
                    }
                case EDirection.East:
                    {
                        objTemporaryLocation.x++;            //East
                        break;
                    }
                case EDirection.West:
                    {
                        objTemporaryLocation.x--;            //West
                        break;
                    }
                case EDirection.South:
                    {
                        objTemporaryLocation.y--;            //South
                        break;
                    }
            }

            CurrentFloor.SetTemporaryRoom(objTemporaryLocation);

            if (CurrentFloor.TemporaryRoom != null && CurrentFloor.TemporaryRoom.Passable)
            {
                return true;
            }
            else
            {
                return false;
            }
        }
Esempio n. 2
0
        private void GoMoveState(EDirection eDirection)
        {
            PlayGameState = PlayGameStates.Move;

            if (objGetData.CanMove(eDirection))
            {
                lblMap[objGetData.CurrentLocation.x, objGetData.CurrentLocation.y].Image = null;

                objGetData.MoveCharacter();
                lblOutput.Text = objGetData.CurrentRoom.MovementText;

                //prints the image on the new Room
                lblMap[objGetData.CurrentLocation.x, objGetData.CurrentLocation.y].Image = Resources.sonic;

                LevelOverTransition();
            }
            else
            {
                PlayGameState = PlayGameStates.Interactive;
            }
        }