public void SetCurrentObject(GameobjectListItem objectContainer)
    {
        CurrentObject = objectContainer.Object;
        Ray mouseRay = Camera.main.ScreenPointToRay(Input.mousePosition);

        Physics.Raycast(mouseRay, out RaycastHit gridPosition, int.MaxValue, BuildMask);

        Destroy(ghostObject);
        ghostObject = Instantiate(CurrentObject, FixToGrid(gridPosition.point, CurrentObject.GetComponent <Renderer>().bounds.size.y / 2), new Quaternion());

        ghostObject.GetComponent <Renderer>().materials[0].mainTexture = ObjectTexture;
        ghostObject.GetComponent <Renderer>().materials[0]             = GhostifyMaterial(ghostObject.GetComponent <Renderer>().materials[0], 2);
    }
    public void AddCategory(Dropdown dropDown)
    {
        dropDownMenu = dropDown;
        CategoryPanel.SetActive(true);

        foreach (GameObject listObject in ObjectList.items)
        {
            GameObject             newTileItem    = ListItem;
            CategoryObjectListItem listItemScript = newTileItem.GetComponent <CategoryObjectListItem>();
            GameobjectListItem     listItem       = listObject.GetComponent <GameobjectListItem>();

            listItemScript.ObjectThumbnail.sprite = listItem.ObjectThumbnail.sprite;
            listItemScript.ObjectName.text        = listItem.ObjectName.text;
            listItemScript.Object = listItem.Object;
            listItemScript.Item   = listObject.GetComponent <GameobjectListItem>();

            newTileItem = Instantiate(newTileItem) as GameObject;
            newTileItem.transform.SetParent(Content.transform);
            newTileItem.SetActive(true);
        }
    }
Exemplo n.º 3
0
    public void PopulateList()
    {
        foreach (GameObject terrainTile in terrainTiles)
        {
            GameObject         newTileItem    = gameobjectItem;
            GameobjectListItem listItemScript = newTileItem.GetComponent <GameobjectListItem>();


            Texture2D objectThumbnail = RuntimePreviewGenerator.GenerateModelPreview(terrainTile.transform);
            if (objectThumbnail != null)
            {
                listItemScript.ObjectThumbnail.sprite = Sprite.Create(objectThumbnail, new Rect(0.0f, 0.0f, objectThumbnail.width, objectThumbnail.height), new Vector2(), 100.0f);
            }
            listItemScript.ObjectName.text = terrainTile.name;
            listItemScript.Object          = terrainTile;

            newTileItem = Instantiate(newTileItem) as GameObject;
            newTileItem.transform.SetParent(contentPanel);
            newTileItem.SetActive(true);

            items.Add(newTileItem);
        }
    }