TargetAnimal.cs 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. public class TargetAnimal : MonoBehaviour
  5. {
  6. public Transform animalsBaseT {
  7. get {
  8. return this.transform.parent;
  9. }
  10. }
  11. public Vector3 hunterPosition {
  12. get {
  13. return ArmBow.ins.transform.position;
  14. }
  15. }
  16. //获取猎人到我的指针向量
  17. public Vector3 GetPointerHunterToMe() {
  18. Vector3 hunterPos = hunterPosition;
  19. Vector3 myPos = transform.position;
  20. hunterPos.y = myPos.y;
  21. return myPos - hunterPos;
  22. }
  23. public virtual void OnHit(Arrow arrow, Vector3 hitPoint, string partName)
  24. {
  25. }
  26. public void RotateByWorldY(float angle) {
  27. transform.forward = Quaternion.AngleAxis(angle, Vector3.up) * transform.forward;
  28. }
  29. public void GetTargetAnimalParts(Transform transformBase, List<Transform> outList) {
  30. for (int i = 0; i < transformBase.childCount; i++) {
  31. Transform child = transformBase.GetChild(i);
  32. if (child.gameObject.name.StartsWith("TargetAnimalPart")) {
  33. outList.Add(child);
  34. }
  35. GetTargetAnimalParts(child, outList);
  36. }
  37. }
  38. }