Ejemplo n.º 1
0
    //[SerializeField] private int width;

    public void Build()
    {
        Clear();
        pathPieces = new List <PathPiece>();
        //float offest = pathPiece.GetComponent<PathPiece>().offset;
        float xSize = (float)length;

        for (int i = 0; i < xSize; i++)
        {
            BoxCollider collider = colliderTrans.GetComponent <BoxCollider>();
            collider.size = new Vector3(length, collider.size.y, collider.size.z);
            //float xFloat = i;
            GameObject newObj       = Instantiate(pathPiece, pathPiecesTrans) as GameObject;
            PathPiece  newPathPiece = newObj.GetComponent <PathPiece>();
            Debug.Log(transform.eulerAngles.y);
            float xOffset = 0.5F;
            if (length % 2 == 0)
            {
                xOffset = 0.5F;
            }
            newPathPiece.Set(-xSize / 2 + i + xOffset, transform.eulerAngles.y);
            //newPathPiece.transform.position.Set(5F, 12F, 2F);
            pathPieces.Add(newPathPiece);
        }
        pathFence.Build();
    }
Ejemplo n.º 2
0
    public void NewTile(PathPiece tile)
    {
        //possible other tile types

        PathPiece.eDirection current = tile.Contribution;

        switch (current)
        {
        case PathPiece.eDirection.UP:
            m_direction = Vector2.up;
            break;

        case PathPiece.eDirection.DOWN:
            m_direction = Vector2.down;
            break;

        case PathPiece.eDirection.LEFT:
            m_direction = Vector2.left;
            break;

        case PathPiece.eDirection.RIGHT:
            m_direction = Vector2.right;
            break;

        default:
            m_direction = Vector2.zero;
            break;
        }
    }
Ejemplo n.º 3
0
 public void Clear()
 {
     pathFence.Clear();
     for (int i = 0; i < pathPieces.Count; i++)
     {
         PathPiece fenceToDestroy = pathPieces[i];
         DestroyImmediate(fenceToDestroy.gameObject);
     }
     pathPieces.Clear();
 }
Ejemplo n.º 4
0
    public void OnUsingWhiteAtNPC()
    {
        if (routers.Count != 0)
        {
            return;
        }

        routers       = new List <GameObject>();
        activeIndices = new List <int>();
        for (int i = 0; i < initialSpawnCount; i++)
        {
            int number = Random.Range(0, routerSpawns.Length);
            if (!activeIndices.Contains(number))
            {
                activeIndices.Add(number);
            }
            else
            {
                i--;
            }
        }

        for (int i = 0; i < routerSpawns.Length; i++)
        {
            PathPiece routerSpawn = routerSpawns[i];
            if (activeIndices.Contains(i))
            {
                routers.Add(Instantiate(Router, routerSpawn.transform.position, routerSpawn.transform.rotation));
                hasSpawnedAtIndex[i] = true;
            }
        }

        foreach (GameObject router in routers)
        {
            Router r = router.GetComponent <Router>();

            r.SetColor(Random.Range(0, 3));
            r.SetShape(Random.Range(0, 3));
            r.SetSize(Random.Range(0, 3));
        }
    }