コード例 #1
0
    public void MoveAway(Room otherRoom)
    {
        Vector2 vectorBetween = this.GetCentre () - otherRoom.GetCentre ();

        int moveX = System.Math.Sign (vectorBetween.x);
        int moveY = System.Math.Sign (vectorBetween.y);

        if (moveX == 0 && moveY == 0){
            moveX = Random.Range (-1, 1);
            moveY = Random.Range (-1, 1);
        }

        UpdateLocations (this.originX + moveX, this.originY + moveY);
    }
コード例 #2
0
 private void Connect(Room r1, Room r2)
 {
     GameObject hall = GameObject.Instantiate (room) as GameObject;
     hall.transform.parent = this.transform;
     halls.Add (hall.GetComponent<Room>());
     hall.GetComponent<Room>().CreateHallway ((int)r1.GetCentre().x,
                                              (int)r1.GetCentre().y,
                                              (int)r2.GetCentre().x,
                                              (int)r2.GetCentre().y);
 }