private string SelectLinkAnimation() { currentLinkInformation = agent_.GetCurrentOffMeshLinkInformation(); Vector3 startPos = currentLinkInformation.start.transform.position; Vector3 endPos = currentLinkInformation.end.transform.position; float distS = (transform.position - startPos).magnitude; float distE = (transform.position - endPos).magnitude; if (distS < distE) { linkStart_ = startPos; linkEnd_ = endPos; } else { linkStart_ = endPos; linkEnd_ = startPos; } Vector3 alignDir = linkEnd_ - linkStart_; alignDir.y = 0; linkRot_ = Quaternion.LookRotation(alignDir); string linkAnimation = ""; switch (currentLinkInformation.linkType) { case LinkType.JumpLink: linkAnimation = "Locomotion_JumpAnimation"; break; case LinkType.LadderLink: linkAnimation = "Locomotion_LadderAnimation"; break; default: Debug.LogWarning("Should never comhe here"); linkAnimation = "Locomotion_LadderAnimation"; break; } //Debug.LogWarning("link animation " + linkAnimation); return(linkAnimation); }
private string SelectLinkAnimation() { currentLinkInformation = agent_.GetCurrentOffMeshLinkInformation (); Vector3 startPos = currentLinkInformation.start.transform.position; Vector3 endPos = currentLinkInformation.end.transform.position; float distS = (transform.position - startPos).magnitude; float distE = (transform.position - endPos).magnitude; if(distS < distE) { linkStart_ = startPos; linkEnd_ = endPos; } else { linkStart_ = endPos; linkEnd_ = startPos; } Vector3 alignDir = linkEnd_ - linkStart_; alignDir.y = 0; linkRot_ = Quaternion.LookRotation(alignDir); string linkAnimation = ""; switch( currentLinkInformation.linkType) { case LinkType.JumpLink : linkAnimation = "Locomotion_JumpAnimation"; break; case LinkType.LadderLink : linkAnimation = "Locomotion_LadderAnimation"; break; default : Debug.LogWarning("Should never comhe here"); linkAnimation = "Locomotion_LadderAnimation"; break; } //Debug.LogWarning("link animation " + linkAnimation); return linkAnimation; }