using SHADE; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks; using static PlayerController; namespace SHADE_Scripting.Gameplay.AIBehaviour.AIRework { public class HomeOwnerAttackHitbox : Script { public GameObject aiGO; Transform transform; Transform aiTransform; protected override void start() { transform = GetComponent(); aiTransform = aiGO.GetComponent(); } protected override void update() { if (transform && aiTransform) { transform.GlobalPosition = aiTransform.GlobalPosition + aiTransform.Forward * 0.7f; transform.GlobalEulerAngles = aiTransform.GlobalEulerAngles; } } protected override void onTriggerStay(CollisionInfo info) { PlayerController pc = info.GameObject.GetScript(); HomeOwnerAI ai = aiGO.GetScript(); if (pc) { pc.currentState = RaccoonStates.CAUGHT; if (pc.stateMachine && !pc.stateMachine.IsState(typeof(PlayerCaughtState))) pc.stateMachine.SetState(typeof(PlayerCaughtState)); pc.GotCaught(); if (ai) { ai.Reset(); GameObject.SetActive(false); } } } } }