Ejemplo n.º 1
0
    // add a list item to the content panel for spawning the specified result
    private void CreateListItem(DevSpawnerDocument doc)
    {
        GameObject listItem = Instantiate(listItemPrefab, contentPanel.transform);

        listItem.GetComponent <DevSpawnerListItemController>().Initialize(doc);
        listItem.transform.localScale = Vector3.one;
    }
    /// <summary>
    /// Initializes it to display the document
    /// </summary>
    /// <param name="resultDoc">document to display</param>
    public void Initialize(DevSpawnerDocument resultDoc)
    {
        prefab = resultDoc.Prefab;
        Sprite toUse = prefab.GetComponentInChildren <SpriteRenderer>()?.sprite;

        if (toUse != null)
        {
            image.sprite = toUse;
            CheckAndApplyPalette();
        }

        detailText.text = "Prefab";

        titleText.text = resultDoc.Prefab.name;
    }
Ejemplo n.º 3
0
    void Start()
    {
        ConfigureLucene();

        //get prefabs
        var toIndex = Spawn.SpawnablePrefabs().Select(DevSpawnerDocument.ForPrefab).ToList();

        //get clothing
        foreach (var clothData in Spawn.AllClothData)
        {
            toIndex.Add(DevSpawnerDocument.ForClothing(clothData));
        }

        //start indexing
        StartCoroutine(lucene.IndexCoroutine(toIndex));
    }
Ejemplo n.º 4
0
    /// <summary>
    /// Create a spawner search which provides search capabilities over the indicated prefabs.
    /// </summary>
    /// <param name="prefabs"></param>
    /// <returns></returns>
    public static SpawnerSearch ForPrefabs(IEnumerable <GameObject> prefabs)
    {
        List <DevSpawnerDocument> documents = new List <DevSpawnerDocument>();

        foreach (var prefab in prefabs)
        {
            if (prefab.GetComponent <NetworkIdentity>() == null)
            {
                Logger.LogTraceFormat("{0} omitted from dev spawner because it has no network identity. Only" +
                                      " networked prefabs can be spawned.", Category.Admin);
                continue;
            }
            documents.Add(DevSpawnerDocument.ForPrefab(prefab));
        }

        return(new SpawnerSearch(documents.OrderBy(doc => doc.SearchableName).ToArray()));
    }
Ejemplo n.º 5
0
    void Start()
    {
        ConfigureLucene();

        //get prefabs
        var toIndex = PoolManager.SpawnablePrefabs.Select(DevSpawnerDocument.ForPrefab).ToList();

        //get clothing
        var data = Resources.FindObjectsOfTypeAll <ClothingData>();

        //force clothfactory to load all clothing data
        foreach (var clothData in data)
        {
            if (!ClothFactory.Instance.ClothingStoredData.ContainsKey(clothData.name))
            {
                ClothFactory.Instance.ClothingStoredData.Add(clothData.name, clothData);
            }

            toIndex.Add(DevSpawnerDocument.ForClothing(clothData));
        }

        //start indexing
        StartCoroutine(lucene.IndexCoroutine(toIndex));
    }