using cfg; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.AddressableAssets; using UnityEngine.Playables; // [REMOVED] EventTargetDirty component no longer exists // The entire dirty/stuck mechanic has been disabled because the EventTargetDirty // MonoBehaviour component was part of a removed module. public partial class FishingBehaviorB : MonoBehaviour { // [REMOVED] EventTargetDirty type no longer exists // Dictionary dirtyDic = new Dictionary(); // EventTargetDirty curDirty; public bool isStuck { get; private set; } = false; bool gravityOnLineAdd = false; int dirtyName = 0; public async void ShowDirty(DirtyStuck dirtyStuck) { // [REMOVED] EventTargetDirty type no longer exists - dirty mechanic disabled /* dirtyName++; int TimelineCount = dirtyStuck.TimelineCount; int timelineIndex = Random.Range(0, TimelineCount); int dirtyIndex = Random.Range(0, dirtyStuck.DirtyPrefab.Count); var go = await Addressables.InstantiateAsync(dirtyStuck.DirtyPrefab[dirtyIndex], transform).Task; if (fishingData.dirtyStuckSpSkillData == null || fishingData.dirtyStuckSpSkillData.End) { Addressables.ReleaseInstance(go); return; } if (go != null) { var dirty = go.GetComponent(); if (dirty != null) { dirty.dirtyName = dirtyName; dirty.timelineIndex = timelineIndex; dirtyDic[dirtyName] = dirty; dirty.isShowDirty = true; Vector3 vector = _fish.transform.position; vector.y = _waterHeight; dirty.transform.position = vector; dirty.gameObject.SetActive(true); dirty.PlayTimeline(dirtyStuck.DirtyTimelineUp[timelineIndex], DirectorWrapMode.Hold, () => { dirty.PlayTimeline(dirtyStuck.DirtyTimelineIdle[timelineIndex], DirectorWrapMode.Loop); StartCoroutine(CheckDirtyStuck(dirtyStuck, dirty)); }); } } */ } /* IEnumerator CheckDirtyStuck(DirtyStuck dirtyStuck, EventTargetDirty dirty) { while (dirty != null && dirty.isShowDirty) { Vector3 dirtyPosition = dirty.transform.position; Vector3 rodPosition = _fish.transform.position; dirtyPosition.y = 0; rodPosition.y = 0; if (Vector3.Angle(dirtyPosition, rodPosition) < 1f) { curDirty = dirty; dirty.PlayTimeline(dirtyStuck.DirtyTimelineStuck[dirty.timelineIndex], DirectorWrapMode.Hold, () => { dirty.PlayTimeline(dirtyStuck.DirtyTimelineIdle[dirty.timelineIndex], DirectorWrapMode.Loop); }); FishingPanel_Advanced.Instance?.ShowDirtyStuckSkill(dirtyStuck); SetIKTarget(dirty.transform); isStuck = true; Debug.Log("显示技能提示 Stuck"); yield break; } yield return null; } } */ public void OnClickSkill(int freezeSkill) { // [REMOVED] EventTargetDirty type no longer exists - dirty mechanic disabled /* var data = fishingData.dirtyStuckSpSkillData; if (data != null && curDirty != null) { DirtyStuck dirtyStuck = data.spSkill; curDirty.PlayTimeline(dirtyStuck.DirtyTimelineClick[curDirty.timelineIndex], DirectorWrapMode.Hold, () => { curDirty.PlayTimeline(dirtyStuck.DirtyTimelineIdle[curDirty.timelineIndex], DirectorWrapMode.Loop); }); if (freezeSkill == 0) { HideSpSkillFx("DirtyStuck"); LoadEffectNoMove(dirtyStuck.StruggleWaterFx, false); HideDirty(curDirty); } } */ } void DelDirty() { // [REMOVED] EventTargetDirty type no longer exists - dirty mechanic disabled isStuck = false; dirtyName = 0; SetIKTarget(FishAnimationRoot); /* if (dirtyDic.Count > 0) { var data = fishingData.dirtyStuckSpSkillData; DirtyStuck dirtyStuck = data.spSkill; foreach (var item in dirtyDic) { var dirty = item.Value; if (dirty != null) { dirty.isShowDirty = false; if (dirty.gameObject.activeSelf) { dirty.PlayTimeline(dirtyStuck.DirtyTimelineDown[dirty.timelineIndex], DirectorWrapMode.Hold, () => { Addressables.ReleaseInstance(dirty.gameObject); }); } else { Addressables.ReleaseInstance(dirty.gameObject); } } } dirtyDic.Clear(); } SetIKTarget(FishAnimationRoot); isStuck = false; dirtyName = 0; */ } /* void HideDirty(EventTargetDirty dirty) { var data = fishingData.dirtyStuckSpSkillData; dirty.isShowDirty = false; isStuck = false; SetIKTarget(FishAnimationRoot); if (data != null && dirty != null) { DirtyStuck dirtyStuck = data.spSkill; if (dirty.timelineIndex < 0) { dirty.timelineIndex = 0; } dirty.PlayTimeline(dirtyStuck.DirtyTimelineDown[dirty.timelineIndex], DirectorWrapMode.Hold, () => { Addressables.ReleaseInstance(dirty.gameObject); dirtyDic.Remove(dirty.dirtyName); }); curDirty = null; } } */ }