public static void UpdateBoneIKKind(List <PmxBone> boneList) { for (int i = 0; i < boneList.Count; i++) { boneList[i].IKKind = PmxBone.IKKindType.None; } for (int j = 0; j < boneList.Count; j++) { PmxBone pmxBone = boneList[j]; if (!pmxBone.GetFlag(PmxBone.BoneFlags.IK)) { continue; } pmxBone.IKKind = PmxBone.IKKindType.IK; int target = pmxBone.IK.Target; if (CP.InRange(boneList, target)) { boneList[target].IKKind = PmxBone.IKKindType.Target; } for (int k = 0; k < pmxBone.IK.LinkList.Count; k++) { int bone = pmxBone.IK.LinkList[k].Bone; if (CP.InRange(boneList, bone)) { boneList[bone].IKKind = PmxBone.IKKindType.Link; } } } }
// Token: 0x060000B6 RID: 182 RVA: 0x0000D528 File Offset: 0x0000B728 public static void UpdateBoneIKKind(List <PmxBone> boneList) { for (int i = 0; i < boneList.Count; i++) { PmxBone pmxBone = boneList[i]; pmxBone.IKKind = PmxBone.IKKindType.None; } for (int j = 0; j < boneList.Count; j++) { PmxBone pmxBone2 = boneList[j]; bool flag = pmxBone2.GetFlag(PmxBone.BoneFlags.IK); if (flag) { pmxBone2.IKKind = PmxBone.IKKindType.IK; int target = pmxBone2.IK.Target; bool flag2 = CP.InRange <PmxBone>(boneList, target); if (flag2) { boneList[target].IKKind = PmxBone.IKKindType.Target; } for (int k = 0; k < pmxBone2.IK.LinkList.Count; k++) { int bone = pmxBone2.IK.LinkList[k].Bone; bool flag3 = CP.InRange <PmxBone>(boneList, bone); if (flag3) { boneList[bone].IKKind = PmxBone.IKKindType.Link; } } } } }