예제 #1
0
        private void OnSelectWork(TreeNodeObject node)
        {
            ObjectCtrlInfo objectCtrlInfo = null;

            if (studio.dicInfo.TryGetValue(node, out objectCtrlInfo))
            {
                if (objectCtrlInfo.kind == 0)
                {
                    OCIChar ocichar = objectCtrlInfo as OCIChar;

                    if (ocichar != currentCharaOCI)
                    {
                        currentCharaOCI  = ocichar;
                        currentCharaInfo = ocichar.charInfo;
                        shouldResetLock  = true;

                        boobs = null;
                        if (ocichar is OCICharFemale)
                        {
                            CharFemaleBody body = (CharFemaleBody)ocichar.charBody;
                            boobs = new List <DynamicBone_Ver02>
                            {
                                body.getDynamicBone(CharFemaleBody.DynamicBoneKind.BreastL),
                                body.getDynamicBone(CharFemaleBody.DynamicBoneKind.BreastR),
                            };
                        }

                        if (autoSwitchLock && lockOnTarget)
                        {
                            if (LockOn(lockOnTarget.name, true, false))
                            {
                                shouldResetLock = false;
                            }
                            else
                            {
                                LockOnRelease();
                            }
                        }
                    }
                    else
                    {
                        currentCharaOCI  = ocichar;
                        currentCharaInfo = ocichar.charInfo;
                    }

                    return;
                }
            }

            currentCharaOCI  = null;
            currentCharaInfo = null;
        }
예제 #2
0
        private void OnSelectWork(TreeNodeObject node)
        {
            ObjectCtrlInfo objectCtrlInfo = null;

            if (studio.dicInfo.TryGetValue(node, out objectCtrlInfo))
            {
                if (objectCtrlInfo.kind == 0)
                {
                    OCIChar ocichar = objectCtrlInfo as OCIChar;

                    if (ocichar != currentCharaOCI)
                    {
                        currentCharaOCI  = ocichar;
                        currentCharaInfo = ocichar.charInfo;
                        targetManager.UpdateAllTargets(ocichar.charInfo);

                        boobs = null;
                        if (ocichar is OCICharFemale)
                        {
                            CharFemaleBody body = (CharFemaleBody)ocichar.charBody;
                            boobs = new List <DynamicBone_Ver02>
                            {
                                body.getDynamicBone(CharFemaleBody.DynamicBoneKind.BreastL),
                                body.getDynamicBone(CharFemaleBody.DynamicBoneKind.BreastR),
                            };
                        }

                        if (lockOnTarget)
                        {
                            if (!LockOn(lockOnTarget.name, true, false))
                            {
                                LockOnRelease();
                            }
                        }
                    }
                    else
                    {
                        currentCharaOCI  = ocichar;
                        currentCharaInfo = ocichar.charInfo;
                    }

                    return;
                }
            }

            LockOnRelease();
            showLockOnTargets = false;

            currentCharaOCI  = null;
            currentCharaInfo = null;
            targetManager.UpdateAllTargets(null);
        }