void Awake() { input = GetComponent <PlayerInput>(); camera = FindObjectOfType <CameraController>(); audioManager = FindObjectOfType <AudioManager>(); rb = GetComponent <Rigidbody>(); mainCollider = GetComponent <CapsuleCollider>(); modelTransform = GameObject.Find("PlayerModel").transform; animator = modelTransform.GetComponent <Animator>(); debugText = GameObject.Find("debugText").GetComponent <Text>(); hangCollider = GameObject.Find("HangCollider").GetComponent <DelayedCollider>(); grabArmCollider = GameObject.Find("GrabArmCollider").GetComponent <DelayedCollider>(); interactHintText = GameObject.Find("InteractHint").GetComponent <Text>(); groundDetector = new GroundDetector(transform); interactDetector = new InteractDetector(transform, modelTransform); ledgeDetector = new LedgeDetector(transform, modelTransform); climbController = GetComponent <ClimbController>(); dialogueManager = FindObjectOfType <DialogueManager>(); currentCheckpoint = GameObject.Find(defaultCheckpoint).GetComponent <CheckpointManager>(); livesUI = new LivesUI(lives); }
public override TaskStatus OnUpdate() { if (target.Value == null) { return(TaskStatus.Failure); } detector = subject.Value.GetComponent <InteractDetector>(); interactable = target.Value.GetComponent <Interactable>(); if (detector.GetActions(interactable).Contains(action)) { return(TaskStatus.Success); } else { return(TaskStatus.Failure); } }