Esempio n. 1
0
    private void AddPartButtons(WorkshopItemType part, string prefix)
    {
        if (RagdollPresetPartMetadata.IsEmpty(CustomizationController.instance.activeCustomization.preset.GetPart(part)))
        {
            return;
        }
        RagdollModel model = CustomizationController.instance.activeCustomization.GetModel(part);

        if (!(model == null))
        {
            if (model.mask1)
            {
                AddChannelButton(part, 1, string.Format(prefix, 1));
            }
            if (model.mask2)
            {
                AddChannelButton(part, 2, string.Format(prefix, 2));
            }
            if (model.mask3)
            {
                AddChannelButton(part, 3, string.Format(prefix, 3));
            }
            if (channelButtons.Count > 9)
            {
                title.gameObject.SetActive(value: false);
                buttons.pivot = new Vector2(0f, 0.3f);
            }
            else
            {
                title.gameObject.SetActive(value: true);
                buttons.pivot = new Vector2(0f, 0.4f);
            }
        }
    }
Esempio n. 2
0
    private void Render()
    {
        hasChanges = true;
        if (!inStroke)
        {
            for (int i = 0; i < parts.Count; i++)
            {
                parts[i].texture.BeginStroke();
            }
            inStroke = true;
        }
        myCam.transform.position = unprojectCamera.transform.position;
        myCam.transform.rotation = unprojectCamera.transform.rotation;
        myCam.nearClipPlane      = unprojectCamera.nearClipPlane;
        myCam.farClipPlane       = unprojectCamera.farClipPlane;
        myCam.fieldOfView        = unprojectCamera.fieldOfView;
        myCam.aspect             = unprojectCamera.aspect;
        Matrix4x4 projectionMatrix = unprojectCamera.projectionMatrix;

        projectionMatrix[0, 2] = MenuCameraEffects.instance.cameraCenter.x;
        projectionMatrix[1, 2] = MenuCameraEffects.instance.cameraCenter.y;
        myCam.projectionMatrix = projectionMatrix;
        for (int j = 0; j < parts.Count; j++)
        {
            RagdollModel ragdollModel = parts[j];
            ragdollModel.texture.PaintStep(myCam, unprojectMaterial, mask[ragdollModel.ragdollPart]);
            ragdollModel.padded.Enable(enable: true);
            ragdollModel.padded.SetMaterial(unprojectMaterial);
            myCam.Render();
            myCam.targetTexture = null;
            ragdollModel.padded.Enable(enable: false);
        }
    }
Esempio n. 3
0
    public void SetMask(WorkshopItemType part, int number, bool on)
    {
        int num = 1 << number - 1;

        mask[part] = ((mask[part] & ~num) | (on ? num : 0));
        RagdollModel model = customization.GetModel(part);

        if (model != null)
        {
            model.SetMask(mask[part]);
        }
    }
Esempio n. 4
0
    private void ShowMask(WorkshopItemType part, bool show)
    {
        RagdollModel model = CustomizationController.instance.activeCustomization.GetModel(part);

        if (!(model == null))
        {
            model.ShowMask(show);
            if (show)
            {
                model.SetMask(paint.GetMask(part));
            }
        }
    }
    public void SetPart(WorkshopItemType part, RagdollPresetPartMetadata data)
    {
        if (data != null)
        {
            data.suppressCustomTexture = true;
        }
        activeCustomization.preset.SetPart(part, data);
        activeCustomization.ApplyPreset(activeCustomization.preset);
        RagdollModel model = activeCustomization.GetModel(part);

        if (model != null)
        {
            data.color1 = HexConverter.ColorToHex(model.color1);
            data.color2 = HexConverter.ColorToHex(model.color2);
            data.color3 = HexConverter.ColorToHex(model.color3);
        }
        activeCustomization.RebindColors(bake: false);
    }
Esempio n. 6
0
    private void AddPartButtons(WorkshopItemType part, string prefix)
    {
        if (RagdollPresetPartMetadata.IsEmpty(CustomizationController.instance.activeCustomization.preset.GetPart(part)))
        {
            return;
        }
        RagdollModel model = CustomizationController.instance.activeCustomization.GetModel(part);

        if (!(model == null))
        {
            if (model.mask1)
            {
                AddChannelButton(part, 1, string.Format(prefix, 1));
            }
            if (model.mask2)
            {
                AddChannelButton(part, 2, string.Format(prefix, 2));
            }
            if (model.mask3)
            {
                AddChannelButton(part, 3, string.Format(prefix, 3));
            }
        }
    }
Esempio n. 7
0
 public void BindToModel(RagdollModel model)
 {
     part       = model.ragdollPart;
     this.model = model;
 }