Beispiel #1
0
        public bool areRotatableConnected(int id1, int id2)
        {
            var c1 = Components.ComponentsManager.GetComponent(id1);
            var c2 = Components.ComponentsManager.GetComponent(id2);

            if (c1 == null || c2 == null)
            {
                return(false);
            }
            Components.RotatableConnector a = null;
            if (c1 is Components.Properties.IRotatable)
            {
                a = (c1 as Components.Properties.IRotatable).GetConnector();
            }
            else if (c1 is Components.Properties.IRotator)
            {
                a = (c1 as Components.Properties.IRotator).GetConnector();
            }
            if (a != null && ((a.ConnectedComponent1 == c1 && a.ConnectedComponent2 == c2) ||
                              (a.ConnectedComponent1 == c2 && a.ConnectedComponent2 == c1)))
            {
                return(true);
            }

            return(false);
        }
Beispiel #2
0
        public void Place(int x1, int y1, int x2, int y2)
        {
            var c  = Components.ComponentsManager.GetComponent(x1, y1);
            var c2 = Components.ComponentsManager.GetComponent(x2, y2);

            Components.RotatableConnector rc = new Components.RotatableConnector(c, c2);
            rc.Initialize();
            rc.AddComponentToManager();
            rc.OnPlaced();
        }
 public void Place(int x1, int y1, int x2, int y2)
 {
     var c = Components.ComponentsManager.GetComponent(x1, y1);
     var c2 = Components.ComponentsManager.GetComponent(x2, y2);
     Components.RotatableConnector rc = new Components.RotatableConnector(c, c2);
     rc.Initialize();
     rc.AddComponentToManager();
     rc.OnPlaced();
 }