예제 #1
0
        public void WallCollider_CollidesAny(double x1, double y1, int r1, double x2, double y2, int r2, bool expected)
        {
            var object1 = new TestWallObject(r1, new Vector(x1, y1));
            var object2 = new TestGameObject(r2, new Vector(x2, y2));

            LevelUtil.CreateLevel(new GameObject[] { object1, object2 });

            var result = object1.Collider.CollidesAny(object1.Location, true);

            Assert.AreEqual(expected, result);
        }
예제 #2
0
    /// <summary>Create a new blank level</summary>
    protected void OnNew(object o, EventArgs args)
    {
        if (!ChangeConfirm("create a blank level"))
        {
            return;
        }

        try {
            UndoManager.Clear();
            Level level = LevelUtil.CreateLevel();
            ChangeCurrentLevel(level);
        } catch (Exception e) {
            ErrorDialog.Exception("Couldn't create new level", e);
        }
        fileName = null;
        UpdateUndoButtons();
        UpdateTitlebar();
        UndoManager.MarkAsSaved();
    }
예제 #3
0
        public void Controller_FindPlayer(bool hasPlayer)
        {
            var player = new TestPlayer(new Vector(20, 20));

            LevelUtil.CreateLevel(hasPlayer ? new GameObject[] { player } : new GameObject[] { });

            void Action()
            {
                Controller.FindPlayer();
            }

            if (!hasPlayer)
            {
                Assert.Catch <NullReferenceException>(Action);
            }
            else
            {
                Assert.DoesNotThrow(Action);
            }
        }