Exemplo n.º 1
0
        public void ValidateSampleTwoFrom9To6()
        {
            var one    = new DirectionalNode("1");
            var two    = new DirectionalNode("2");
            var three  = new DirectionalNode("3");
            var four   = new DirectionalNode("4");
            var five   = new DirectionalNode("5");
            var six    = new DirectionalNode("6");
            var seven  = new DirectionalNode("7");
            var height = new DirectionalNode("8");
            var nine   = new DirectionalNode("9");
            var ten    = new DirectionalNode("10");

            one.ConnectTo(two, 10);
            one.ConnectTo(four, 20);
            one.ConnectTo(five, 20);
            one.ConnectTo(six, 5);
            one.ConnectTo(seven, 15);

            two.ConnectTo(four, 10);
            two.ConnectTo(three, 5);

            three.ConnectTo(four, 5);
            three.ConnectTo(two, 15);

            four.ConnectTo(five, 10);

            five.ConnectTo(six, 5);

            seven.ConnectTo(six, 10);

            height.ConnectTo(one, 5);
            height.ConnectTo(two, 20);
            height.ConnectTo(seven, 5);

            nine.ConnectTo(two, 15);
            nine.ConnectTo(height, 20);
            nine.ConnectTo(ten, 10);

            ten.ConnectTo(two, 5);
            ten.ConnectTo(three, 15);

            var dijkstra = new Dijkstra.Dijkstra();
            var result   = dijkstra.FindShortestPath(nine, six);

            Assert.NotNull(result);
            Assert.Equal(4, result.Length);
        }
    private void OnTriggerEnter2D(Collider2D other)
    {
        DirectionalNode dn = other.GetComponent <DirectionalNode>();

        Debug.Log(dn.current);

        //check direction, default to zero
        Vector3 dir = Vector3.zero;

        if (dn.current == "right")
        {
            dir = Vector3.back;
        }
        else if (dn.current == "left")
        {
            dir = Vector3.forward;
        }

        transform.Rotate(dir * 90); // back is right, forward is left
    }
Exemplo n.º 3
0
    private void OnTriggerEnter2D(Collider2D other)
    {
        DirectionalNode dn = other.GetComponent <DirectionalNode>();
        //check direction
        float   rot = 0;
        Vector3 dir = Vector3.zero;

        if (dn.current == "right")
        {
            dir = Vector3.back;
            rot = 90;
        }
        else if (dn.current == "left")
        {
            dir = Vector3.forward;
            rot = 90;
        }

        transform.Rotate(dir * rot);//back is right, forward is left
    }
Exemplo n.º 4
0
    private void OnTriggerEnter2D(Collider2D other)
    {
        // Debug.Log(other.gameObject.name);
        DirectionalNode dn = other.GetComponent <DirectionalNode>();

        Debug.Log(dn.current);

        //check direction
        float   rot = 0;
        Vector3 dir = Vector3.zero;

        if (dn.current == "right")
        {
            dir = Vector3.back;
            rot = 90;
        }
        else if (dn.current == "left")
        {
            dir = Vector3.forward;
            rot = 90;
        }

        transform.Rotate(dir * rot);
    }