private static OCIChar.IKInfo AddIKTarget( OCIChar _ociChar, IKCtrl _ikCtrl, int _no, FBIKChain _chain, bool _usedRot, Transform _bone) { OCIChar.IKInfo ikInfo = AddObjectAssist.AddIKTarget(_ociChar, _ikCtrl, _no, (Transform)((IKConstraintBend)_chain.bendConstraint).bendGoal, _usedRot, _bone, false); ((IKConstraintBend)_chain.bendConstraint).weight = (__Null)1.0; ((IKConstraintBend)_chain.bendConstraint).bendGoal = (__Null)ikInfo.targetObject; return(ikInfo); }
private static OCIChar.IKInfo AddIKTarget( OCIChar _ociChar, IKCtrl _ikCtrl, int _no, IKEffector _effector, bool _usedRot, Transform _bone) { OCIChar.IKInfo ikInfo = AddObjectAssist.AddIKTarget(_ociChar, _ikCtrl, _no, (Transform)_effector.target, _usedRot, _bone, true); _effector.positionWeight = (__Null)1.0; _effector.rotationWeight = !_usedRot ? (__Null)0.0 : (__Null)1.0; _effector.target = (__Null)ikInfo.targetObject; return(ikInfo); }
private static OCIChar.IKInfo AddIKTarget( OCIChar _ociChar, IKCtrl _ikCtrl, int _no, Transform _target, bool _usedRot, Transform _bone, bool _isRed) { OIIKTargetInfo _targetInfo = (OIIKTargetInfo)null; bool flag = !_ociChar.oiCharInfo.ikTarget.TryGetValue(_no, out _targetInfo); if (flag) { _targetInfo = new OIIKTargetInfo(Studio.Studio.GetNewIndex()); _ociChar.oiCharInfo.ikTarget.Add(_no, _targetInfo); } switch (_no) { case 0: _targetInfo.group = OIBoneInfo.BoneGroup.Body; break; case 1: case 2: case 3: _targetInfo.group = OIBoneInfo.BoneGroup.LeftArm; break; case 4: case 5: case 6: _targetInfo.group = OIBoneInfo.BoneGroup.RightArm; break; case 7: case 8: case 9: _targetInfo.group = OIBoneInfo.BoneGroup.LeftLeg; break; case 10: case 11: case 12: _targetInfo.group = OIBoneInfo.BoneGroup.RightLeg; break; } GameObject gameObject = new GameObject(((Object)_target).get_name() + "(work)"); gameObject.get_transform().SetParent(((Component)_ociChar.charInfo).get_transform()); GuideObject _guideObject = Singleton <GuideObjectManager> .Instance.Add(gameObject.get_transform(), _targetInfo.dicKey); _guideObject.mode = GuideObject.Mode.LocalIK; _guideObject.enableRot = _usedRot; _guideObject.enableScale = false; _guideObject.enableMaluti = false; _guideObject.calcScale = false; _guideObject.scaleRate = 0.5f; _guideObject.scaleRot = 0.05f; _guideObject.scaleSelect = 0.1f; _guideObject.parentGuide = _ociChar.guideObject; _guideObject.guideSelect.color = !_isRed?Color.get_blue() : Color.get_red(); _guideObject.moveCalc = GuideMove.MoveCalc.TYPE3; OCIChar.IKInfo ikInfo = new OCIChar.IKInfo(_guideObject, _targetInfo, _target, gameObject.get_transform(), _bone); if (!flag) { _targetInfo.changeAmount.OnChange(); } _ikCtrl.addIKInfo = ikInfo; _ociChar.listIKTarget.Add(ikInfo); _guideObject.SetActive(false, true); return(ikInfo); }