Exemplo n.º 1
0
        private void GizmoDragEnd()
        {
            int selectedType = this.bgr.GetSelectedType();

            if (selectedType > 0 && selectedType <= 21)
            {
                int            targetSelectMode = Setting.targetSelectMode;
                BackUpBoneData backUpBoneData;
                if (targetSelectMode != 0)
                {
                    if (targetSelectMode != 1)
                    {
                        return;
                    }
                    backUpBoneData = BackUpData.GetOrAddBoneData(CommonUIData.obj, CommonUIData.bone);
                }
                else
                {
                    backUpBoneData = BackUpData.GetOrAddMaidBoneData(CommonUIData.maid, CommonUIData.slotNo, CommonUIData.obj, CommonUIData.bone);
                }
                if (selectedType <= 9)
                {
                    if (!backUpBoneData.changedPos)
                    {
                        backUpBoneData.position   = this.bgr.GetBackUpLocalPosition();
                        backUpBoneData.changedPos = true;
                        return;
                    }
                }
                else if (selectedType > 9 && selectedType <= 12)
                {
                    if (!backUpBoneData.changedRot)
                    {
                        backUpBoneData.rotation   = this.bgr.GetBackUpLocalRotation();
                        backUpBoneData.changedRot = true;
                        return;
                    }
                }
                else if (selectedType > 12 && !backUpBoneData.changedScl)
                {
                    backUpBoneData.scale      = this.bgr.GetBackUpLocalScale();
                    backUpBoneData.changedScl = true;
                }
            }
        }
        private static void ApplyObjectDataToObject(ObjectData objectData)
        {
            bool             flag = Setting.targetSelectMode == 0;
            BackUpObjectData backUpObjectData;
            BackUpBoneData   backUpBoneData;

            if (flag)
            {
                backUpObjectData = BackUpData.GetOrAddMaidObjectData(CommonUIData.maid, CommonUIData.slotNo, CommonUIData.obj);
                backUpBoneData   = BackUpData.GetOrAddMaidBoneData(CommonUIData.maid, CommonUIData.slotNo, CommonUIData.obj, CommonUIData.obj.transform);
            }
            else
            {
                backUpObjectData = BackUpData.GetOrAddObjectData(CommonUIData.obj);
                backUpBoneData   = BackUpData.GetOrAddBoneData(CommonUIData.obj, CommonUIData.obj.transform);
            }
            bool flag2 = Setting.targetSelectMode == 0;

            if (flag2)
            {
                bool flag3 = CommonUIData.slotNo != -1;
                if (flag3)
                {
                    bool changedYure = backUpObjectData.changedYure;
                    if (changedYure)
                    {
                        bool flag4 = YureUtil.GetYureState(CommonUIData.maid, CommonUIData.slotNo) != objectData.bYure;
                        if (flag4)
                        {
                            backUpObjectData.changedYure = false;
                            backUpObjectData.bYure       = true;
                            YureUtil.SetYureState(CommonUIData.maid, CommonUIData.slotNo, objectData.bYure);
                        }
                    }
                    else
                    {
                        bool flag5 = YureUtil.GetYureState(CommonUIData.maid, CommonUIData.slotNo) != objectData.bYure;
                        if (flag5)
                        {
                            backUpObjectData.changedYure = true;
                            backUpObjectData.bYure       = YureUtil.GetYureState(CommonUIData.maid, CommonUIData.slotNo);
                            YureUtil.SetYureState(CommonUIData.maid, CommonUIData.slotNo, objectData.bYure);
                        }
                    }
                }
                bool bMaidParts = objectData.bMaidParts;
                if (bMaidParts)
                {
                    bool flag6 = !backUpBoneData.changedPos;
                    if (flag6)
                    {
                        backUpBoneData.position   = CommonUIData.obj.transform.localPosition;
                        backUpBoneData.changedPos = true;
                    }
                    CommonUIData.obj.transform.localPosition = objectData.rootData.position;
                    bool flag7 = !backUpBoneData.changedRot;
                    if (flag7)
                    {
                        backUpBoneData.rotation   = CommonUIData.obj.transform.localRotation;
                        backUpBoneData.changedRot = true;
                    }
                    CommonUIData.obj.transform.localRotation = objectData.rootData.rotation;
                }
            }
            bool flag8 = !backUpBoneData.changedScl;

            if (flag8)
            {
                backUpBoneData.scale      = CommonUIData.obj.transform.localScale;
                backUpBoneData.changedScl = true;
            }
            CommonUIData.obj.transform.localScale = objectData.rootData.scale;
            foreach (ObjectData.TransformData transformData in objectData.transformDataList)
            {
                bool      flag9 = Setting.targetSelectMode == 0 && CommonUIData.slotNo == -1;
                Transform transform;
                if (flag9)
                {
                    transform = CMT.SearchObjName(CommonUIData.obj.transform, transformData.name, true);
                }
                else
                {
                    transform = CMT.SearchObjName(CommonUIData.obj.transform, transformData.name, false);
                }
                bool flag10 = !transform;
                if (!flag10)
                {
                    bool           flag11 = Setting.targetSelectMode == 0;
                    BackUpBoneData backUpBoneData2;
                    if (flag11)
                    {
                        backUpBoneData2 = BackUpData.GetOrAddMaidBoneData(CommonUIData.maid, CommonUIData.slotNo, CommonUIData.obj, transform);
                    }
                    else
                    {
                        backUpBoneData2 = BackUpData.GetOrAddBoneData(CommonUIData.obj, transform);
                    }
                    bool flag12 = !backUpBoneData2.changedPos;
                    if (flag12)
                    {
                        backUpBoneData2.position   = transform.localPosition;
                        backUpBoneData2.changedPos = true;
                    }
                    transform.localPosition = transformData.position;
                    bool flag13 = !backUpBoneData2.changedRot;
                    if (flag13)
                    {
                        backUpBoneData2.rotation   = transform.localRotation;
                        backUpBoneData2.changedRot = true;
                    }
                    transform.localRotation = transformData.rotation;
                    bool flag14 = !backUpBoneData2.changedScl;
                    if (flag14)
                    {
                        backUpBoneData2.scale      = transform.localScale;
                        backUpBoneData2.changedScl = true;
                    }
                    transform.localScale = transformData.scale;
                }
            }
        }