コード例 #1
0
    private void OnSelect(ListViewItem item)
    {
        CustomizationSelectModelMenuItem customizationSelectModelMenuItem = item as CustomizationSelectModelMenuItem;

        if (selectedMenuItem != null)
        {
            selectedMenuItem.SetActive(active: false);
        }
        selectedMenuItem = customizationSelectModelMenuItem;
        selectedMenuItem.SetActive(active: true);
        RagdollModelMetadata ragdollModelMetadata = item.data as RagdollModelMetadata;

        if (selectedItem == null || !ragdollModelMetadata.folder.Equals(selectedItem.folder))
        {
            selectedItem = ragdollModelMetadata;
            if (RagdollPresetPartMetadata.IsEmpty(selectedItem.folder))
            {
                CustomizationController.instance.SetPart(part, null);
                return;
            }
            RagdollPresetPartMetadata ragdollPresetPartMetadata = new RagdollPresetPartMetadata();
            ragdollPresetPartMetadata.modelPath = selectedItem.folder;
            RagdollPresetPartMetadata data = ragdollPresetPartMetadata;
            CustomizationController.instance.SetPart(part, data);
        }
    }
コード例 #2
0
    public override void OnGotFocus()
    {
        base.OnGotFocus();
        CustomizationController.instance.cameraController.FocusPart(part);
        characterTitle.SetActive(part == WorkshopItemType.ModelFull);
        headTitle.SetActive(part == WorkshopItemType.ModelHead);
        upperBodyTitle.SetActive(part == WorkshopItemType.ModelUpperBody);
        lowerBodyTitle.SetActive(part == WorkshopItemType.ModelLowerBody);
        list.onSelect       = OnSelect;
        list.onPointerClick = OnPointerClick;
        list.onSubmit       = OnSubmit;
        selectedItem        = null;
        partBackup          = CustomizationController.instance.GetPart(part);
        RagdollModelMetadata        ragdollModelMetadata = null;
        List <RagdollModelMetadata> partRepository       = WorkshopRepository.instance.GetPartRepository(part);

        for (int i = 0; i < partRepository.Count; i++)
        {
            if (MatchesPart(partBackup, partRepository[i]))
            {
                selectedItem = partRepository[i];
            }
            if (RagdollPresetPartMetadata.IsEmpty(partRepository[i].folder))
            {
                ragdollModelMetadata = partRepository[i];
            }
        }
        if (selectedItem == null)
        {
            selectedItem = ragdollModelMetadata;
        }
        int num = partRepository.IndexOf(selectedItem);

        list.Bind(partRepository);
        if (num >= 0)
        {
            list.FocusItem(num);
        }
        PageLeftButton.SetActive(list.isCarousel);
        PageRightButton.SetActive(list.isCarousel);
    }