diff --git a/Assets/Scripts/Common/Input.meta b/Assets/Scripts/Common/Input.meta
new file mode 100644
index 000000000..4bb19beda
--- /dev/null
+++ b/Assets/Scripts/Common/Input.meta
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 1977fd60c4b24f33bc4143aaed9fba8a
+timeCreated: 1755792367
\ No newline at end of file
diff --git a/Assets/Scripts/Fishing/InteractiveObject.cs b/Assets/Scripts/Common/Input/InteractiveObject.cs
similarity index 100%
rename from Assets/Scripts/Fishing/InteractiveObject.cs
rename to Assets/Scripts/Common/Input/InteractiveObject.cs
diff --git a/Assets/Scripts/Fishing/InteractiveObject.cs.meta b/Assets/Scripts/Common/Input/InteractiveObject.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/InteractiveObject.cs.meta
rename to Assets/Scripts/Common/Input/InteractiveObject.cs.meta
diff --git a/Assets/Scripts/Fishing/PlayerInputControl.cs b/Assets/Scripts/Common/Input/PlayerInputControl.cs
similarity index 100%
rename from Assets/Scripts/Fishing/PlayerInputControl.cs
rename to Assets/Scripts/Common/Input/PlayerInputControl.cs
diff --git a/Assets/Scripts/Fishing/PlayerInputControl.cs.meta b/Assets/Scripts/Common/Input/PlayerInputControl.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/PlayerInputControl.cs.meta
rename to Assets/Scripts/Common/Input/PlayerInputControl.cs.meta
diff --git a/Assets/Scripts/Fishing.meta b/Assets/Scripts/Fishing.meta
deleted file mode 100644
index 3ed20cb9c..000000000
--- a/Assets/Scripts/Fishing.meta
+++ /dev/null
@@ -1,3 +0,0 @@
-fileFormatVersion: 2
-guid: be6f9c9530834b2b815033abd2baa8c5
-timeCreated: 1742313357
\ No newline at end of file
diff --git a/Assets/Scripts/Fishing/New.meta b/Assets/Scripts/Fishing/New.meta
deleted file mode 100644
index 2e14a650d..000000000
--- a/Assets/Scripts/Fishing/New.meta
+++ /dev/null
@@ -1,3 +0,0 @@
-fileFormatVersion: 2
-guid: f2d7a4d07d944c37b715cd95b63b9868
-timeCreated: 1742567918
\ No newline at end of file
diff --git a/Assets/Scripts/Fishing2.meta b/Assets/Scripts/Fishing2.meta
new file mode 100644
index 000000000..69ab9d76e
--- /dev/null
+++ b/Assets/Scripts/Fishing2.meta
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: bd88d7e7b7f24428a3a67395265ba9b6
+timeCreated: 1755792122
\ No newline at end of file
diff --git a/Assets/Scripts/Fishing/New/Assets.meta b/Assets/Scripts/Fishing2/Assets.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets.meta
rename to Assets/Scripts/Fishing2/Assets.meta
diff --git a/Assets/Scripts/Fishing/New/Assets/BaitAsset.cs b/Assets/Scripts/Fishing2/Assets/BaitAsset.cs
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/BaitAsset.cs
rename to Assets/Scripts/Fishing2/Assets/BaitAsset.cs
diff --git a/Assets/Scripts/Fishing/New/Assets/BaitAsset.cs.meta b/Assets/Scripts/Fishing2/Assets/BaitAsset.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/BaitAsset.cs.meta
rename to Assets/Scripts/Fishing2/Assets/BaitAsset.cs.meta
diff --git a/Assets/Scripts/Fishing/New/Assets/BobberAsset.cs b/Assets/Scripts/Fishing2/Assets/BobberAsset.cs
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/BobberAsset.cs
rename to Assets/Scripts/Fishing2/Assets/BobberAsset.cs
diff --git a/Assets/Scripts/Fishing/New/Assets/BobberAsset.cs.meta b/Assets/Scripts/Fishing2/Assets/BobberAsset.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/BobberAsset.cs.meta
rename to Assets/Scripts/Fishing2/Assets/BobberAsset.cs.meta
diff --git a/Assets/Scripts/Fishing/New/Assets/FishAsset.cs b/Assets/Scripts/Fishing2/Assets/FishAsset.cs
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/FishAsset.cs
rename to Assets/Scripts/Fishing2/Assets/FishAsset.cs
diff --git a/Assets/Scripts/Fishing/New/Assets/FishAsset.cs.meta b/Assets/Scripts/Fishing2/Assets/FishAsset.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/FishAsset.cs.meta
rename to Assets/Scripts/Fishing2/Assets/FishAsset.cs.meta
diff --git a/Assets/Scripts/Fishing/New/Assets/FishGroupAsset.cs b/Assets/Scripts/Fishing2/Assets/FishGroupAsset.cs
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/FishGroupAsset.cs
rename to Assets/Scripts/Fishing2/Assets/FishGroupAsset.cs
diff --git a/Assets/Scripts/Fishing/New/Assets/FishGroupAsset.cs.meta b/Assets/Scripts/Fishing2/Assets/FishGroupAsset.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/FishGroupAsset.cs.meta
rename to Assets/Scripts/Fishing2/Assets/FishGroupAsset.cs.meta
diff --git a/Assets/Scripts/Fishing/New/Assets/HookAsset.cs b/Assets/Scripts/Fishing2/Assets/HookAsset.cs
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/HookAsset.cs
rename to Assets/Scripts/Fishing2/Assets/HookAsset.cs
diff --git a/Assets/Scripts/Fishing/New/Assets/HookAsset.cs.meta b/Assets/Scripts/Fishing2/Assets/HookAsset.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/HookAsset.cs.meta
rename to Assets/Scripts/Fishing2/Assets/HookAsset.cs.meta
diff --git a/Assets/Scripts/Fishing/New/Assets/LineAsset.cs b/Assets/Scripts/Fishing2/Assets/LineAsset.cs
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/LineAsset.cs
rename to Assets/Scripts/Fishing2/Assets/LineAsset.cs
diff --git a/Assets/Scripts/Fishing/New/Assets/LineAsset.cs.meta b/Assets/Scripts/Fishing2/Assets/LineAsset.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/LineAsset.cs.meta
rename to Assets/Scripts/Fishing2/Assets/LineAsset.cs.meta
diff --git a/Assets/Scripts/Fishing/New/Assets/LureAsset.cs b/Assets/Scripts/Fishing2/Assets/LureAsset.cs
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/LureAsset.cs
rename to Assets/Scripts/Fishing2/Assets/LureAsset.cs
diff --git a/Assets/Scripts/Fishing/New/Assets/LureAsset.cs.meta b/Assets/Scripts/Fishing2/Assets/LureAsset.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/LureAsset.cs.meta
rename to Assets/Scripts/Fishing2/Assets/LureAsset.cs.meta
diff --git a/Assets/Scripts/Fishing/New/Assets/PreviewableAsset.cs b/Assets/Scripts/Fishing2/Assets/PreviewableAsset.cs
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/PreviewableAsset.cs
rename to Assets/Scripts/Fishing2/Assets/PreviewableAsset.cs
diff --git a/Assets/Scripts/Fishing/New/Assets/PreviewableAsset.cs.meta b/Assets/Scripts/Fishing2/Assets/PreviewableAsset.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/PreviewableAsset.cs.meta
rename to Assets/Scripts/Fishing2/Assets/PreviewableAsset.cs.meta
diff --git a/Assets/Scripts/Fishing/New/Assets/PropAsset.cs b/Assets/Scripts/Fishing2/Assets/PropAsset.cs
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/PropAsset.cs
rename to Assets/Scripts/Fishing2/Assets/PropAsset.cs
diff --git a/Assets/Scripts/Fishing/New/Assets/PropAsset.cs.meta b/Assets/Scripts/Fishing2/Assets/PropAsset.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/PropAsset.cs.meta
rename to Assets/Scripts/Fishing2/Assets/PropAsset.cs.meta
diff --git a/Assets/Scripts/Fishing/New/Assets/ReelAsset.cs b/Assets/Scripts/Fishing2/Assets/ReelAsset.cs
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/ReelAsset.cs
rename to Assets/Scripts/Fishing2/Assets/ReelAsset.cs
diff --git a/Assets/Scripts/Fishing/New/Assets/ReelAsset.cs.meta b/Assets/Scripts/Fishing2/Assets/ReelAsset.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/ReelAsset.cs.meta
rename to Assets/Scripts/Fishing2/Assets/ReelAsset.cs.meta
diff --git a/Assets/Scripts/Fishing/New/Assets/RodAsset.cs b/Assets/Scripts/Fishing2/Assets/RodAsset.cs
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/RodAsset.cs
rename to Assets/Scripts/Fishing2/Assets/RodAsset.cs
diff --git a/Assets/Scripts/Fishing/New/Assets/RodAsset.cs.meta b/Assets/Scripts/Fishing2/Assets/RodAsset.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/RodAsset.cs.meta
rename to Assets/Scripts/Fishing2/Assets/RodAsset.cs.meta
diff --git a/Assets/Scripts/Fishing/New/Assets/RodRingAsset.cs b/Assets/Scripts/Fishing2/Assets/RodRingAsset.cs
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/RodRingAsset.cs
rename to Assets/Scripts/Fishing2/Assets/RodRingAsset.cs
diff --git a/Assets/Scripts/Fishing/New/Assets/RodRingAsset.cs.meta b/Assets/Scripts/Fishing2/Assets/RodRingAsset.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/RodRingAsset.cs.meta
rename to Assets/Scripts/Fishing2/Assets/RodRingAsset.cs.meta
diff --git a/Assets/Scripts/Fishing/New/Assets/SpinnerLureAsset.cs b/Assets/Scripts/Fishing2/Assets/SpinnerLureAsset.cs
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/SpinnerLureAsset.cs
rename to Assets/Scripts/Fishing2/Assets/SpinnerLureAsset.cs
diff --git a/Assets/Scripts/Fishing/New/Assets/SpinnerLureAsset.cs.meta b/Assets/Scripts/Fishing2/Assets/SpinnerLureAsset.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/Assets/SpinnerLureAsset.cs.meta
rename to Assets/Scripts/Fishing2/Assets/SpinnerLureAsset.cs.meta
diff --git a/Assets/Scripts/Fishing2/Player.meta b/Assets/Scripts/Fishing2/Player.meta
new file mode 100644
index 000000000..7e5375042
--- /dev/null
+++ b/Assets/Scripts/Fishing2/Player.meta
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: fb1bae7c41874855957fe654dec2dee5
+timeCreated: 1755792325
\ No newline at end of file
diff --git a/Assets/Scripts/Fishing/Data.meta b/Assets/Scripts/Fishing~/Data.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Data.meta
rename to Assets/Scripts/Fishing~/Data.meta
diff --git a/Assets/Scripts/Fishing/New/Datasource.meta b/Assets/Scripts/Fishing~/Data/Datasource.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/Datasource.meta
rename to Assets/Scripts/Fishing~/Data/Datasource.meta
diff --git a/Assets/Scripts/Fishing/New/Datasource/FishingDatasource.cs b/Assets/Scripts/Fishing~/Data/Datasource/FishingDatasource.cs
similarity index 100%
rename from Assets/Scripts/Fishing/New/Datasource/FishingDatasource.cs
rename to Assets/Scripts/Fishing~/Data/Datasource/FishingDatasource.cs
diff --git a/Assets/Scripts/Fishing/New/Datasource/FishingDatasource.cs.meta b/Assets/Scripts/Fishing~/Data/Datasource/FishingDatasource.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/Datasource/FishingDatasource.cs.meta
rename to Assets/Scripts/Fishing~/Data/Datasource/FishingDatasource.cs.meta
diff --git a/Assets/Scripts/Fishing/Data/FPlayerData.cs b/Assets/Scripts/Fishing~/Data/FPlayerData.cs
similarity index 97%
rename from Assets/Scripts/Fishing/Data/FPlayerData.cs
rename to Assets/Scripts/Fishing~/Data/FPlayerData.cs
index a01ab7efe..a7dacd0f8 100644
--- a/Assets/Scripts/Fishing/Data/FPlayerData.cs
+++ b/Assets/Scripts/Fishing~/Data/FPlayerData.cs
@@ -46,14 +46,7 @@ namespace NBF
/// 打开望远镜
///
public bool openTelescope;
-
- ///
- /// 当前状态
- ///
- public uint state;
-
-
- public float lineCutTimer = 0;
+
public SelectorRodSetting selectorRodSetting = SelectorRodSetting.Speed;
}
diff --git a/Assets/Scripts/Fishing/Data/FPlayerData.cs.meta b/Assets/Scripts/Fishing~/Data/FPlayerData.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Data/FPlayerData.cs.meta
rename to Assets/Scripts/Fishing~/Data/FPlayerData.cs.meta
diff --git a/Assets/Scripts/Fishing/Data/RodType.cs b/Assets/Scripts/Fishing~/Data/RodType.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Data/RodType.cs
rename to Assets/Scripts/Fishing~/Data/RodType.cs
diff --git a/Assets/Scripts/Fishing/Data/RodType.cs.meta b/Assets/Scripts/Fishing~/Data/RodType.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Data/RodType.cs.meta
rename to Assets/Scripts/Fishing~/Data/RodType.cs.meta
diff --git a/Assets/Scripts/Fishing/New/DatasourcePlayer.meta b/Assets/Scripts/Fishing~/DatasourcePlayer.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/DatasourcePlayer.meta
rename to Assets/Scripts/Fishing~/DatasourcePlayer.meta
diff --git a/Assets/Scripts/Fishing/New/DatasourcePlayer/FishingPlay.cs b/Assets/Scripts/Fishing~/DatasourcePlayer/FishingPlay.cs
similarity index 100%
rename from Assets/Scripts/Fishing/New/DatasourcePlayer/FishingPlay.cs
rename to Assets/Scripts/Fishing~/DatasourcePlayer/FishingPlay.cs
diff --git a/Assets/Scripts/Fishing/New/DatasourcePlayer/FishingPlay.cs.meta b/Assets/Scripts/Fishing~/DatasourcePlayer/FishingPlay.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/DatasourcePlayer/FishingPlay.cs.meta
rename to Assets/Scripts/Fishing~/DatasourcePlayer/FishingPlay.cs.meta
diff --git a/Assets/Scripts/Fishing/FFishRagDoll.cs b/Assets/Scripts/Fishing~/FFishRagDoll.cs
similarity index 100%
rename from Assets/Scripts/Fishing/FFishRagDoll.cs
rename to Assets/Scripts/Fishing~/FFishRagDoll.cs
diff --git a/Assets/Scripts/Fishing/FFishRagDoll.cs.meta b/Assets/Scripts/Fishing~/FFishRagDoll.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/FFishRagDoll.cs.meta
rename to Assets/Scripts/Fishing~/FFishRagDoll.cs.meta
diff --git a/Assets/Scripts/Fishing/FReelEvents.cs b/Assets/Scripts/Fishing~/FReelEvents.cs
similarity index 100%
rename from Assets/Scripts/Fishing/FReelEvents.cs
rename to Assets/Scripts/Fishing~/FReelEvents.cs
diff --git a/Assets/Scripts/Fishing/FReelEvents.cs.meta b/Assets/Scripts/Fishing~/FReelEvents.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/FReelEvents.cs.meta
rename to Assets/Scripts/Fishing~/FReelEvents.cs.meta
diff --git a/Assets/Scripts/Fishing/FWaterDisplacement.cs b/Assets/Scripts/Fishing~/FWaterDisplacement.cs
similarity index 100%
rename from Assets/Scripts/Fishing/FWaterDisplacement.cs
rename to Assets/Scripts/Fishing~/FWaterDisplacement.cs
diff --git a/Assets/Scripts/Fishing/FWaterDisplacement.cs.meta b/Assets/Scripts/Fishing~/FWaterDisplacement.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/FWaterDisplacement.cs.meta
rename to Assets/Scripts/Fishing~/FWaterDisplacement.cs.meta
diff --git a/Assets/Scripts/Fishing/New/Fishing.cs b/Assets/Scripts/Fishing~/Fishing.cs
similarity index 100%
rename from Assets/Scripts/Fishing/New/Fishing.cs
rename to Assets/Scripts/Fishing~/Fishing.cs
diff --git a/Assets/Scripts/Fishing/New/Fishing.cs.meta b/Assets/Scripts/Fishing~/Fishing.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/Fishing.cs.meta
rename to Assets/Scripts/Fishing~/Fishing.cs.meta
diff --git a/Assets/Scripts/Fishing/New/PlayArm.cs b/Assets/Scripts/Fishing~/PlayArm.cs
similarity index 100%
rename from Assets/Scripts/Fishing/New/PlayArm.cs
rename to Assets/Scripts/Fishing~/PlayArm.cs
diff --git a/Assets/Scripts/Fishing/New/PlayArm.cs.meta b/Assets/Scripts/Fishing~/PlayArm.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/PlayArm.cs.meta
rename to Assets/Scripts/Fishing~/PlayArm.cs.meta
diff --git a/Assets/Scripts/Fishing/Player.meta b/Assets/Scripts/Fishing~/Player.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player.meta
rename to Assets/Scripts/Fishing~/Player.meta
diff --git a/Assets/Scripts/Fishing/Player/Animations.meta b/Assets/Scripts/Fishing~/Player/Animations.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Animations.meta
rename to Assets/Scripts/Fishing~/Player/Animations.meta
diff --git a/Assets/Scripts/Fishing/Player/Animations/BobThrowAnim.cs b/Assets/Scripts/Fishing~/Player/Animations/BobThrowAnim.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Animations/BobThrowAnim.cs
rename to Assets/Scripts/Fishing~/Player/Animations/BobThrowAnim.cs
diff --git a/Assets/Scripts/Fishing/Player/Animations/BobThrowAnim.cs.meta b/Assets/Scripts/Fishing~/Player/Animations/BobThrowAnim.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Animations/BobThrowAnim.cs.meta
rename to Assets/Scripts/Fishing~/Player/Animations/BobThrowAnim.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/Animations/LureThrowAnim.cs b/Assets/Scripts/Fishing~/Player/Animations/LureThrowAnim.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Animations/LureThrowAnim.cs
rename to Assets/Scripts/Fishing~/Player/Animations/LureThrowAnim.cs
diff --git a/Assets/Scripts/Fishing/Player/Animations/LureThrowAnim.cs.meta b/Assets/Scripts/Fishing~/Player/Animations/LureThrowAnim.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Animations/LureThrowAnim.cs.meta
rename to Assets/Scripts/Fishing~/Player/Animations/LureThrowAnim.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/AnimatorCtrl.meta b/Assets/Scripts/Fishing~/Player/AnimatorCtrl.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/AnimatorCtrl.meta
rename to Assets/Scripts/Fishing~/Player/AnimatorCtrl.meta
diff --git a/Assets/Scripts/Fishing/Player/AnimatorCtrl/PlayerAnimator.cs b/Assets/Scripts/Fishing~/Player/AnimatorCtrl/PlayerAnimator.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/AnimatorCtrl/PlayerAnimator.cs
rename to Assets/Scripts/Fishing~/Player/AnimatorCtrl/PlayerAnimator.cs
diff --git a/Assets/Scripts/Fishing/Player/AnimatorCtrl/PlayerAnimator.cs.meta b/Assets/Scripts/Fishing~/Player/AnimatorCtrl/PlayerAnimator.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/AnimatorCtrl/PlayerAnimator.cs.meta
rename to Assets/Scripts/Fishing~/Player/AnimatorCtrl/PlayerAnimator.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/AnimatorCtrl/ReelAnimator.cs b/Assets/Scripts/Fishing~/Player/AnimatorCtrl/ReelAnimator.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/AnimatorCtrl/ReelAnimator.cs
rename to Assets/Scripts/Fishing~/Player/AnimatorCtrl/ReelAnimator.cs
diff --git a/Assets/Scripts/Fishing/Player/AnimatorCtrl/ReelAnimator.cs.meta b/Assets/Scripts/Fishing~/Player/AnimatorCtrl/ReelAnimator.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/AnimatorCtrl/ReelAnimator.cs.meta
rename to Assets/Scripts/Fishing~/Player/AnimatorCtrl/ReelAnimator.cs.meta
diff --git a/Assets/Scripts/Fishing/Boat.meta b/Assets/Scripts/Fishing~/Player/Boat.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Boat.meta
rename to Assets/Scripts/Fishing~/Player/Boat.meta
diff --git a/Assets/Scripts/Fishing/Boat/Boat.cs b/Assets/Scripts/Fishing~/Player/Boat/Boat.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Boat/Boat.cs
rename to Assets/Scripts/Fishing~/Player/Boat/Boat.cs
diff --git a/Assets/Scripts/Fishing/Boat/Boat.cs.meta b/Assets/Scripts/Fishing~/Player/Boat/Boat.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Boat/Boat.cs.meta
rename to Assets/Scripts/Fishing~/Player/Boat/Boat.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/FPlayer.Hand.cs b/Assets/Scripts/Fishing~/Player/FPlayer.Hand.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/FPlayer.Hand.cs
rename to Assets/Scripts/Fishing~/Player/FPlayer.Hand.cs
diff --git a/Assets/Scripts/Fishing/Player/FPlayer.Hand.cs.meta b/Assets/Scripts/Fishing~/Player/FPlayer.Hand.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/FPlayer.Hand.cs.meta
rename to Assets/Scripts/Fishing~/Player/FPlayer.Hand.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/FPlayer.cs b/Assets/Scripts/Fishing~/Player/FPlayer.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/FPlayer.cs
rename to Assets/Scripts/Fishing~/Player/FPlayer.cs
diff --git a/Assets/Scripts/Fishing/Player/FPlayer.cs.meta b/Assets/Scripts/Fishing~/Player/FPlayer.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/FPlayer.cs.meta
rename to Assets/Scripts/Fishing~/Player/FPlayer.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/FPlayerGear.cs b/Assets/Scripts/Fishing~/Player/FPlayerGear.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/FPlayerGear.cs
rename to Assets/Scripts/Fishing~/Player/FPlayerGear.cs
diff --git a/Assets/Scripts/Fishing/Player/FPlayerGear.cs.meta b/Assets/Scripts/Fishing~/Player/FPlayerGear.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/FPlayerGear.cs.meta
rename to Assets/Scripts/Fishing~/Player/FPlayerGear.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/FPlayerUseGear.cs b/Assets/Scripts/Fishing~/Player/FPlayerUseGear.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/FPlayerUseGear.cs
rename to Assets/Scripts/Fishing~/Player/FPlayerUseGear.cs
diff --git a/Assets/Scripts/Fishing/Player/FPlayerUseGear.cs.meta b/Assets/Scripts/Fishing~/Player/FPlayerUseGear.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/FPlayerUseGear.cs.meta
rename to Assets/Scripts/Fishing~/Player/FPlayerUseGear.cs.meta
diff --git a/Assets/Scripts/Fishing/Fish.meta b/Assets/Scripts/Fishing~/Player/Fish.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Fish.meta
rename to Assets/Scripts/Fishing~/Player/Fish.meta
diff --git a/Assets/Scripts/Fishing/Fish/FFish.cs b/Assets/Scripts/Fishing~/Player/Fish/FFish.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Fish/FFish.cs
rename to Assets/Scripts/Fishing~/Player/Fish/FFish.cs
diff --git a/Assets/Scripts/Fishing/Fish/FFish.cs.meta b/Assets/Scripts/Fishing~/Player/Fish/FFish.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Fish/FFish.cs.meta
rename to Assets/Scripts/Fishing~/Player/Fish/FFish.cs.meta
diff --git a/Assets/Scripts/Fishing/Fish/FFishSystem.cs b/Assets/Scripts/Fishing~/Player/Fish/FFishSystem.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Fish/FFishSystem.cs
rename to Assets/Scripts/Fishing~/Player/Fish/FFishSystem.cs
diff --git a/Assets/Scripts/Fishing/Fish/FFishSystem.cs.meta b/Assets/Scripts/Fishing~/Player/Fish/FFishSystem.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Fish/FFishSystem.cs.meta
rename to Assets/Scripts/Fishing~/Player/Fish/FFishSystem.cs.meta
diff --git a/Assets/Scripts/Fishing/Fish/FishFeedingZone.cs b/Assets/Scripts/Fishing~/Player/Fish/FishFeedingZone.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Fish/FishFeedingZone.cs
rename to Assets/Scripts/Fishing~/Player/Fish/FishFeedingZone.cs
diff --git a/Assets/Scripts/Fishing/Fish/FishFeedingZone.cs.meta b/Assets/Scripts/Fishing~/Player/Fish/FishFeedingZone.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Fish/FishFeedingZone.cs.meta
rename to Assets/Scripts/Fishing~/Player/Fish/FishFeedingZone.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/FixedLine.cs b/Assets/Scripts/Fishing~/Player/FixedLine.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/FixedLine.cs
rename to Assets/Scripts/Fishing~/Player/FixedLine.cs
diff --git a/Assets/Scripts/Fishing/Player/FixedLine.cs.meta b/Assets/Scripts/Fishing~/Player/FixedLine.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/FixedLine.cs.meta
rename to Assets/Scripts/Fishing~/Player/FixedLine.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/Gear.meta b/Assets/Scripts/Fishing~/Player/Gear.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Gear.meta
rename to Assets/Scripts/Fishing~/Player/Gear.meta
diff --git a/Assets/Scripts/Fishing/Player/Gear/FBait.cs b/Assets/Scripts/Fishing~/Player/Gear/FBait.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Gear/FBait.cs
rename to Assets/Scripts/Fishing~/Player/Gear/FBait.cs
diff --git a/Assets/Scripts/Fishing/Player/Gear/FBait.cs.meta b/Assets/Scripts/Fishing~/Player/Gear/FBait.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Gear/FBait.cs.meta
rename to Assets/Scripts/Fishing~/Player/Gear/FBait.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/Gear/FFeeder.cs b/Assets/Scripts/Fishing~/Player/Gear/FFeeder.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Gear/FFeeder.cs
rename to Assets/Scripts/Fishing~/Player/Gear/FFeeder.cs
diff --git a/Assets/Scripts/Fishing/Player/Gear/FFeeder.cs.meta b/Assets/Scripts/Fishing~/Player/Gear/FFeeder.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Gear/FFeeder.cs.meta
rename to Assets/Scripts/Fishing~/Player/Gear/FFeeder.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/Gear/FFloat.cs b/Assets/Scripts/Fishing~/Player/Gear/FFloat.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Gear/FFloat.cs
rename to Assets/Scripts/Fishing~/Player/Gear/FFloat.cs
diff --git a/Assets/Scripts/Fishing/Player/Gear/FFloat.cs.meta b/Assets/Scripts/Fishing~/Player/Gear/FFloat.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Gear/FFloat.cs.meta
rename to Assets/Scripts/Fishing~/Player/Gear/FFloat.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/Gear/FHook.cs b/Assets/Scripts/Fishing~/Player/Gear/FHook.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Gear/FHook.cs
rename to Assets/Scripts/Fishing~/Player/Gear/FHook.cs
diff --git a/Assets/Scripts/Fishing/Player/Gear/FHook.cs.meta b/Assets/Scripts/Fishing~/Player/Gear/FHook.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Gear/FHook.cs.meta
rename to Assets/Scripts/Fishing~/Player/Gear/FHook.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/Gear/FLine.cs b/Assets/Scripts/Fishing~/Player/Gear/FLine.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Gear/FLine.cs
rename to Assets/Scripts/Fishing~/Player/Gear/FLine.cs
diff --git a/Assets/Scripts/Fishing/Player/Gear/FLine.cs.meta b/Assets/Scripts/Fishing~/Player/Gear/FLine.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Gear/FLine.cs.meta
rename to Assets/Scripts/Fishing~/Player/Gear/FLine.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/Gear/FLineHandler.cs b/Assets/Scripts/Fishing~/Player/Gear/FLineHandler.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Gear/FLineHandler.cs
rename to Assets/Scripts/Fishing~/Player/Gear/FLineHandler.cs
diff --git a/Assets/Scripts/Fishing/Player/Gear/FLineHandler.cs.meta b/Assets/Scripts/Fishing~/Player/Gear/FLineHandler.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Gear/FLineHandler.cs.meta
rename to Assets/Scripts/Fishing~/Player/Gear/FLineHandler.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/Gear/FLure.cs b/Assets/Scripts/Fishing~/Player/Gear/FLure.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Gear/FLure.cs
rename to Assets/Scripts/Fishing~/Player/Gear/FLure.cs
diff --git a/Assets/Scripts/Fishing/Player/Gear/FLure.cs.meta b/Assets/Scripts/Fishing~/Player/Gear/FLure.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Gear/FLure.cs.meta
rename to Assets/Scripts/Fishing~/Player/Gear/FLure.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/Gear/FReel.cs b/Assets/Scripts/Fishing~/Player/Gear/FReel.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Gear/FReel.cs
rename to Assets/Scripts/Fishing~/Player/Gear/FReel.cs
diff --git a/Assets/Scripts/Fishing/Player/Gear/FReel.cs.meta b/Assets/Scripts/Fishing~/Player/Gear/FReel.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Gear/FReel.cs.meta
rename to Assets/Scripts/Fishing~/Player/Gear/FReel.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/Gear/FRod.cs b/Assets/Scripts/Fishing~/Player/Gear/FRod.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Gear/FRod.cs
rename to Assets/Scripts/Fishing~/Player/Gear/FRod.cs
diff --git a/Assets/Scripts/Fishing/Player/Gear/FRod.cs.meta b/Assets/Scripts/Fishing~/Player/Gear/FRod.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Gear/FRod.cs.meta
rename to Assets/Scripts/Fishing~/Player/Gear/FRod.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/Gear/FWeight.cs b/Assets/Scripts/Fishing~/Player/Gear/FWeight.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Gear/FWeight.cs
rename to Assets/Scripts/Fishing~/Player/Gear/FWeight.cs
diff --git a/Assets/Scripts/Fishing/Player/Gear/FWeight.cs.meta b/Assets/Scripts/Fishing~/Player/Gear/FWeight.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Gear/FWeight.cs.meta
rename to Assets/Scripts/Fishing~/Player/Gear/FWeight.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/Gear/LineJointPinchController.cs b/Assets/Scripts/Fishing~/Player/Gear/LineJointPinchController.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Gear/LineJointPinchController.cs
rename to Assets/Scripts/Fishing~/Player/Gear/LineJointPinchController.cs
diff --git a/Assets/Scripts/Fishing/Player/Gear/LineJointPinchController.cs.meta b/Assets/Scripts/Fishing~/Player/Gear/LineJointPinchController.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/Gear/LineJointPinchController.cs.meta
rename to Assets/Scripts/Fishing~/Player/Gear/LineJointPinchController.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/HandsAnimEvents.cs b/Assets/Scripts/Fishing~/Player/HandsAnimEvents.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/HandsAnimEvents.cs
rename to Assets/Scripts/Fishing~/Player/HandsAnimEvents.cs
diff --git a/Assets/Scripts/Fishing/Player/HandsAnimEvents.cs.meta b/Assets/Scripts/Fishing~/Player/HandsAnimEvents.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/HandsAnimEvents.cs.meta
rename to Assets/Scripts/Fishing~/Player/HandsAnimEvents.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/PlayerCharacter.meta b/Assets/Scripts/Fishing~/Player/PlayerCharacter.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/PlayerCharacter.meta
rename to Assets/Scripts/Fishing~/Player/PlayerCharacter.meta
diff --git a/Assets/Scripts/Fishing/Player/PlayerCharacter/Drives.meta b/Assets/Scripts/Fishing~/Player/PlayerCharacter/Drives.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/PlayerCharacter/Drives.meta
rename to Assets/Scripts/Fishing~/Player/PlayerCharacter/Drives.meta
diff --git a/Assets/Scripts/Fishing/Player/PlayerCharacter/Drives/PlayerDriveBase.cs b/Assets/Scripts/Fishing~/Player/PlayerCharacter/Drives/PlayerDriveBase.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/PlayerCharacter/Drives/PlayerDriveBase.cs
rename to Assets/Scripts/Fishing~/Player/PlayerCharacter/Drives/PlayerDriveBase.cs
diff --git a/Assets/Scripts/Fishing/Player/PlayerCharacter/Drives/PlayerDriveBase.cs.meta b/Assets/Scripts/Fishing~/Player/PlayerCharacter/Drives/PlayerDriveBase.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/PlayerCharacter/Drives/PlayerDriveBase.cs.meta
rename to Assets/Scripts/Fishing~/Player/PlayerCharacter/Drives/PlayerDriveBase.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/PlayerCharacter/Drives/PlayerLocalMover.cs b/Assets/Scripts/Fishing~/Player/PlayerCharacter/Drives/PlayerLocalMover.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/PlayerCharacter/Drives/PlayerLocalMover.cs
rename to Assets/Scripts/Fishing~/Player/PlayerCharacter/Drives/PlayerLocalMover.cs
diff --git a/Assets/Scripts/Fishing/Player/PlayerCharacter/Drives/PlayerLocalMover.cs.meta b/Assets/Scripts/Fishing~/Player/PlayerCharacter/Drives/PlayerLocalMover.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/PlayerCharacter/Drives/PlayerLocalMover.cs.meta
rename to Assets/Scripts/Fishing~/Player/PlayerCharacter/Drives/PlayerLocalMover.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/PlayerCharacter/PlayerCharacter.cs b/Assets/Scripts/Fishing~/Player/PlayerCharacter/PlayerCharacter.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/PlayerCharacter/PlayerCharacter.cs
rename to Assets/Scripts/Fishing~/Player/PlayerCharacter/PlayerCharacter.cs
diff --git a/Assets/Scripts/Fishing/Player/PlayerCharacter/PlayerCharacter.cs.meta b/Assets/Scripts/Fishing~/Player/PlayerCharacter/PlayerCharacter.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/PlayerCharacter/PlayerCharacter.cs.meta
rename to Assets/Scripts/Fishing~/Player/PlayerCharacter/PlayerCharacter.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/States.meta b/Assets/Scripts/Fishing~/Player/States.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/States.meta
rename to Assets/Scripts/Fishing~/Player/States.meta
diff --git a/Assets/Scripts/Fishing/Player/States/PlayerFight.cs b/Assets/Scripts/Fishing~/Player/States/PlayerFight.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/States/PlayerFight.cs
rename to Assets/Scripts/Fishing~/Player/States/PlayerFight.cs
diff --git a/Assets/Scripts/Fishing/Player/States/PlayerFight.cs.meta b/Assets/Scripts/Fishing~/Player/States/PlayerFight.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/States/PlayerFight.cs.meta
rename to Assets/Scripts/Fishing~/Player/States/PlayerFight.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/States/PlayerFishing.cs b/Assets/Scripts/Fishing~/Player/States/PlayerFishing.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/States/PlayerFishing.cs
rename to Assets/Scripts/Fishing~/Player/States/PlayerFishing.cs
diff --git a/Assets/Scripts/Fishing/Player/States/PlayerFishing.cs.meta b/Assets/Scripts/Fishing~/Player/States/PlayerFishing.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/States/PlayerFishing.cs.meta
rename to Assets/Scripts/Fishing~/Player/States/PlayerFishing.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/States/PlayerIdle.cs b/Assets/Scripts/Fishing~/Player/States/PlayerIdle.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/States/PlayerIdle.cs
rename to Assets/Scripts/Fishing~/Player/States/PlayerIdle.cs
diff --git a/Assets/Scripts/Fishing/Player/States/PlayerIdle.cs.meta b/Assets/Scripts/Fishing~/Player/States/PlayerIdle.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/States/PlayerIdle.cs.meta
rename to Assets/Scripts/Fishing~/Player/States/PlayerIdle.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/States/PlayerShowFish.cs b/Assets/Scripts/Fishing~/Player/States/PlayerShowFish.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/States/PlayerShowFish.cs
rename to Assets/Scripts/Fishing~/Player/States/PlayerShowFish.cs
diff --git a/Assets/Scripts/Fishing/Player/States/PlayerShowFish.cs.meta b/Assets/Scripts/Fishing~/Player/States/PlayerShowFish.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/States/PlayerShowFish.cs.meta
rename to Assets/Scripts/Fishing~/Player/States/PlayerShowFish.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/States/PlayerStateBase.cs b/Assets/Scripts/Fishing~/Player/States/PlayerStateBase.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/States/PlayerStateBase.cs
rename to Assets/Scripts/Fishing~/Player/States/PlayerStateBase.cs
diff --git a/Assets/Scripts/Fishing/Player/States/PlayerStateBase.cs.meta b/Assets/Scripts/Fishing~/Player/States/PlayerStateBase.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/States/PlayerStateBase.cs.meta
rename to Assets/Scripts/Fishing~/Player/States/PlayerStateBase.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/States/PlayerThrow.cs b/Assets/Scripts/Fishing~/Player/States/PlayerThrow.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/States/PlayerThrow.cs
rename to Assets/Scripts/Fishing~/Player/States/PlayerThrow.cs
diff --git a/Assets/Scripts/Fishing/Player/States/PlayerThrow.cs.meta b/Assets/Scripts/Fishing~/Player/States/PlayerThrow.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/States/PlayerThrow.cs.meta
rename to Assets/Scripts/Fishing~/Player/States/PlayerThrow.cs.meta
diff --git a/Assets/Scripts/Fishing/Player/States/PlayerWaitThrow.cs b/Assets/Scripts/Fishing~/Player/States/PlayerWaitThrow.cs
similarity index 100%
rename from Assets/Scripts/Fishing/Player/States/PlayerWaitThrow.cs
rename to Assets/Scripts/Fishing~/Player/States/PlayerWaitThrow.cs
diff --git a/Assets/Scripts/Fishing/Player/States/PlayerWaitThrow.cs.meta b/Assets/Scripts/Fishing~/Player/States/PlayerWaitThrow.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/Player/States/PlayerWaitThrow.cs.meta
rename to Assets/Scripts/Fishing~/Player/States/PlayerWaitThrow.cs.meta
diff --git a/Assets/Scripts/Fishing/New/Tasks.meta b/Assets/Scripts/Fishing~/Player/Tasks.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/Tasks.meta
rename to Assets/Scripts/Fishing~/Player/Tasks.meta
diff --git a/Assets/Scripts/Fishing/New/Tasks/EnterMapRoomTask.cs b/Assets/Scripts/Fishing~/Player/Tasks/EnterMapRoomTask.cs
similarity index 100%
rename from Assets/Scripts/Fishing/New/Tasks/EnterMapRoomTask.cs
rename to Assets/Scripts/Fishing~/Player/Tasks/EnterMapRoomTask.cs
diff --git a/Assets/Scripts/Fishing/New/Tasks/EnterMapRoomTask.cs.meta b/Assets/Scripts/Fishing~/Player/Tasks/EnterMapRoomTask.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/Tasks/EnterMapRoomTask.cs.meta
rename to Assets/Scripts/Fishing~/Player/Tasks/EnterMapRoomTask.cs.meta
diff --git a/Assets/Scripts/Fishing/New/Tasks/InitPlayersTask.cs b/Assets/Scripts/Fishing~/Player/Tasks/InitPlayersTask.cs
similarity index 100%
rename from Assets/Scripts/Fishing/New/Tasks/InitPlayersTask.cs
rename to Assets/Scripts/Fishing~/Player/Tasks/InitPlayersTask.cs
diff --git a/Assets/Scripts/Fishing/New/Tasks/InitPlayersTask.cs.meta b/Assets/Scripts/Fishing~/Player/Tasks/InitPlayersTask.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/Tasks/InitPlayersTask.cs.meta
rename to Assets/Scripts/Fishing~/Player/Tasks/InitPlayersTask.cs.meta
diff --git a/Assets/Scripts/Fishing/New/PlayerShoulder.cs b/Assets/Scripts/Fishing~/PlayerShoulder.cs
similarity index 100%
rename from Assets/Scripts/Fishing/New/PlayerShoulder.cs
rename to Assets/Scripts/Fishing~/PlayerShoulder.cs
diff --git a/Assets/Scripts/Fishing/New/PlayerShoulder.cs.meta b/Assets/Scripts/Fishing~/PlayerShoulder.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/PlayerShoulder.cs.meta
rename to Assets/Scripts/Fishing~/PlayerShoulder.cs.meta
diff --git a/Assets/Scripts/Fishing/New/SceneNode.cs b/Assets/Scripts/Fishing~/SceneNode.cs
similarity index 100%
rename from Assets/Scripts/Fishing/New/SceneNode.cs
rename to Assets/Scripts/Fishing~/SceneNode.cs
diff --git a/Assets/Scripts/Fishing/New/SceneNode.cs.meta b/Assets/Scripts/Fishing~/SceneNode.cs.meta
similarity index 100%
rename from Assets/Scripts/Fishing/New/SceneNode.cs.meta
rename to Assets/Scripts/Fishing~/SceneNode.cs.meta
diff --git a/Assets/Scripts/Generate/NetworkProtocol/Account.cs b/Assets/Scripts/Generate/NetworkProtocol/Account.cs
index 8acc528b4..24459a31c 100644
--- a/Assets/Scripts/Generate/NetworkProtocol/Account.cs
+++ b/Assets/Scripts/Generate/NetworkProtocol/Account.cs
@@ -127,6 +127,7 @@ namespace NBC
Currency.Clear();
Slots.Clear();
Skills.Clear();
+ MapId = default;
#if FANTASY_NET || FANTASY_UNITY
GetScene().MessagePoolComponent.Return(this);
#endif
@@ -147,6 +148,8 @@ namespace NBC
public List Slots = new List();
[ProtoMember(8)]
public List Skills = new List();
+ [ProtoMember(9)]
+ public int MapId { get; set; }
}
///
/// 角色信息
@@ -166,6 +169,7 @@ namespace NBC
Country = default;
Level = default;
Vip = default;
+ MapId = default;
#if FANTASY_NET || FANTASY_UNITY
GetScene().MessagePoolComponent.Return(this);
#endif
@@ -182,6 +186,8 @@ namespace NBC
public int Level { get; set; }
[ProtoMember(6)]
public bool Vip { get; set; }
+ [ProtoMember(7)]
+ public int MapId { get; set; }
}
///
/// VIP信息
diff --git a/Assets/Scripts/Generate/NetworkProtocol/MapMessage.cs b/Assets/Scripts/Generate/NetworkProtocol/MapMessage.cs
new file mode 100644
index 000000000..30c08eddf
--- /dev/null
+++ b/Assets/Scripts/Generate/NetworkProtocol/MapMessage.cs
@@ -0,0 +1,460 @@
+using ProtoBuf;
+
+using System.Collections.Generic;
+using Fantasy;
+using NBC;
+using NBC.Network.Interface;
+using NBC.Serialize;
+#pragma warning disable CS8618
+
+namespace NBC
+{
+ [ProtoContract]
+ public partial class RoleGearItemInfo : AMessage, IProto
+ {
+ public static RoleGearItemInfo Create(Scene scene)
+ {
+ return scene.MessagePoolComponent.Rent();
+ }
+ public override void Dispose()
+ {
+ Id = default;
+ ConfigId = default;
+#if FANTASY_NET || FANTASY_UNITY
+ GetScene().MessagePoolComponent.Return(this);
+#endif
+ }
+ [ProtoMember(1)]
+ public long Id { get; set; }
+ [ProtoMember(2)]
+ public int ConfigId { get; set; }
+ }
+ [ProtoContract]
+ public partial class RoleGearInfo : AMessage, IProto
+ {
+ public static RoleGearInfo Create(Scene scene)
+ {
+ return scene.MessagePoolComponent.Rent();
+ }
+ public override void Dispose()
+ {
+ Rod = default;
+ Reel = default;
+ Bobber = default;
+ Hook = default;
+ Bait = default;
+ Lure = default;
+ Weight = default;
+ Line = default;
+ Leader = default;
+ Feeder = default;
+#if FANTASY_NET || FANTASY_UNITY
+ GetScene().MessagePoolComponent.Return(this);
+#endif
+ }
+ [ProtoMember(1)]
+ public RoleGearItemInfo Rod { get; set; }
+ [ProtoMember(2)]
+ public RoleGearItemInfo Reel { get; set; }
+ [ProtoMember(3)]
+ public RoleGearItemInfo Bobber { get; set; }
+ [ProtoMember(4)]
+ public RoleGearItemInfo Hook { get; set; }
+ [ProtoMember(5)]
+ public RoleGearItemInfo Bait { get; set; }
+ [ProtoMember(6)]
+ public RoleGearItemInfo Lure { get; set; }
+ [ProtoMember(7)]
+ public RoleGearItemInfo Weight { get; set; }
+ [ProtoMember(8)]
+ public RoleGearItemInfo Line { get; set; }
+ [ProtoMember(9)]
+ public RoleGearItemInfo Leader { get; set; }
+ [ProtoMember(10)]
+ public RoleGearItemInfo Feeder { get; set; }
+ }
+ [ProtoContract]
+ public partial class Vector3Info : AMessage, IProto
+ {
+ public static Vector3Info Create(Scene scene)
+ {
+ return scene.MessagePoolComponent.Rent();
+ }
+ public override void Dispose()
+ {
+ x = default;
+ y = default;
+ z = default;
+#if FANTASY_NET || FANTASY_UNITY
+ GetScene().MessagePoolComponent.Return(this);
+#endif
+ }
+ [ProtoMember(1)]
+ public float x { get; set; }
+ [ProtoMember(2)]
+ public float y { get; set; }
+ [ProtoMember(3)]
+ public float z { get; set; }
+ }
+ [ProtoContract]
+ public partial class QuaternionInfo : AMessage, IProto
+ {
+ public static QuaternionInfo Create(Scene scene)
+ {
+ return scene.MessagePoolComponent.Rent();
+ }
+ public override void Dispose()
+ {
+ x = default;
+ y = default;
+ z = default;
+ w = default;
+#if FANTASY_NET || FANTASY_UNITY
+ GetScene().MessagePoolComponent.Return(this);
+#endif
+ }
+ [ProtoMember(1)]
+ public float x { get; set; }
+ [ProtoMember(2)]
+ public float y { get; set; }
+ [ProtoMember(3)]
+ public float z { get; set; }
+ [ProtoMember(4)]
+ public float w { get; set; }
+ }
+ [ProtoContract]
+ public partial class RoleFishingInfo : AMessage, IProto
+ {
+ public static RoleFishingInfo Create(Scene scene)
+ {
+ return scene.MessagePoolComponent.Rent();
+ }
+ public override void Dispose()
+ {
+ LineLength = default;
+ ReelSpeed = default;
+ OpenLight = default;
+ RodSetting = default;
+#if FANTASY_NET || FANTASY_UNITY
+ GetScene().MessagePoolComponent.Return(this);
+#endif
+ }
+ [ProtoMember(1)]
+ public float LineLength { get; set; }
+ [ProtoMember(2)]
+ public float ReelSpeed { get; set; }
+ [ProtoMember(3)]
+ public bool OpenLight { get; set; }
+ [ProtoMember(4)]
+ public int RodSetting { get; set; }
+ }
+ [ProtoContract]
+ public partial class RoleStateInfo : AMessage, IProto
+ {
+ public static RoleStateInfo Create(Scene scene)
+ {
+ return scene.MessagePoolComponent.Rent();
+ }
+ public override void Dispose()
+ {
+ State = default;
+ Args.Clear();
+#if FANTASY_NET || FANTASY_UNITY
+ GetScene().MessagePoolComponent.Return(this);
+#endif
+ }
+ [ProtoMember(1)]
+ public int State { get; set; }
+ [ProtoMember(2)]
+ public List Args = new List();
+ }
+ [ProtoContract]
+ public partial class MapRoleInfo : AMessage, IProto
+ {
+ public static MapRoleInfo Create(Scene scene)
+ {
+ return scene.MessagePoolComponent.Rent();
+ }
+ public override void Dispose()
+ {
+ Id = default;
+ RoleInfo = default;
+ Location = default;
+ State = default;
+ Gears = default;
+ FishingInfo = default;
+#if FANTASY_NET || FANTASY_UNITY
+ GetScene().MessagePoolComponent.Return(this);
+#endif
+ }
+ [ProtoMember(1)]
+ public long Id { get; set; }
+ [ProtoMember(2)]
+ public RoleSimpleInfo RoleInfo { get; set; }
+ [ProtoMember(3)]
+ public MapRolePositionInfo Location { get; set; }
+ [ProtoMember(4)]
+ public RoleStateInfo State { get; set; }
+ [ProtoMember(5)]
+ public RoleGearInfo Gears { get; set; }
+ [ProtoMember(6)]
+ public RoleFishingInfo FishingInfo { get; set; }
+ }
+ [ProtoContract]
+ public partial class MapRolePositionInfo : AMessage, IProto
+ {
+ public static MapRolePositionInfo Create(Scene scene)
+ {
+ return scene.MessagePoolComponent.Rent();
+ }
+ public override void Dispose()
+ {
+ Position = default;
+ Rotation = default;
+#if FANTASY_NET || FANTASY_UNITY
+ GetScene().MessagePoolComponent.Return(this);
+#endif
+ }
+ [ProtoMember(1)]
+ public Vector3Info Position { get; set; }
+ [ProtoMember(2)]
+ public QuaternionInfo Rotation { get; set; }
+ }
+ [ProtoContract]
+ public partial class Map2C_CreateMapResponse : AMessage, ICustomRouteResponse, IProto
+ {
+ public static Map2C_CreateMapResponse Create(Scene scene)
+ {
+ return scene.MessagePoolComponent.Rent();
+ }
+ public override void Dispose()
+ {
+ ErrorCode = default;
+ Roles.Clear();
+#if FANTASY_NET || FANTASY_UNITY
+ GetScene().MessagePoolComponent.Return(this);
+#endif
+ }
+ public uint OpCode() { return OuterOpcode.Map2C_CreateMapResponse; }
+ [ProtoMember(1)]
+ public List Roles = new List();
+ [ProtoMember(2)]
+ public uint ErrorCode { get; set; }
+ }
+ [ProtoContract]
+ public partial class C2Map_EnterMapRequest : AMessage, ICustomRouteRequest, IProto
+ {
+ public static C2Map_EnterMapRequest Create(Scene scene)
+ {
+ return scene.MessagePoolComponent.Rent();
+ }
+ public override void Dispose()
+ {
+ MapId = default;
+ RoomId = default;
+#if FANTASY_NET || FANTASY_UNITY
+ GetScene().MessagePoolComponent.Return(this);
+#endif
+ }
+ [ProtoIgnore]
+ public Map2C_EnterMapResponse ResponseType { get; set; }
+ public uint OpCode() { return OuterOpcode.C2Map_EnterMapRequest; }
+ [ProtoIgnore]
+ public int RouteType => Fantasy.RouteType.MapRoute;
+ [ProtoMember(1)]
+ public int MapId { get; set; }
+ [ProtoMember(2)]
+ public long RoomId { get; set; }
+ }
+ [ProtoContract]
+ public partial class Map2C_EnterMapResponse : AMessage, ICustomRouteResponse, IProto
+ {
+ public static Map2C_EnterMapResponse Create(Scene scene)
+ {
+ return scene.MessagePoolComponent.Rent();
+ }
+ public override void Dispose()
+ {
+ ErrorCode = default;
+ Roles.Clear();
+#if FANTASY_NET || FANTASY_UNITY
+ GetScene().MessagePoolComponent.Return(this);
+#endif
+ }
+ public uint OpCode() { return OuterOpcode.Map2C_EnterMapResponse; }
+ [ProtoMember(1)]
+ public List Roles = new List();
+ [ProtoMember(2)]
+ public uint ErrorCode { get; set; }
+ }
+ [ProtoContract]
+ public partial class C2Map_Move : AMessage, ICustomRouteMessage, IProto
+ {
+ public static C2Map_Move Create(Scene scene)
+ {
+ return scene.MessagePoolComponent.Rent();
+ }
+ public override void Dispose()
+ {
+ Location = default;
+ IsStop = default;
+#if FANTASY_NET || FANTASY_UNITY
+ GetScene().MessagePoolComponent.Return(this);
+#endif
+ }
+ public uint OpCode() { return OuterOpcode.C2Map_Move; }
+ [ProtoIgnore]
+ public int RouteType => Fantasy.RouteType.MapRoute;
+ [ProtoMember(1)]
+ public MapRolePositionInfo Location { get; set; }
+ [ProtoMember(2)]
+ public bool IsStop { get; set; }
+ }
+ ///
+ /// 用户进入地图
+ ///
+ [ProtoContract]
+ public partial class Map2C_RoleEnterMapNotify : AMessage, ICustomRouteMessage, IProto
+ {
+ public static Map2C_RoleEnterMapNotify Create(Scene scene)
+ {
+ return scene.MessagePoolComponent.Rent();
+ }
+ public override void Dispose()
+ {
+ Info = default;
+#if FANTASY_NET || FANTASY_UNITY
+ GetScene().MessagePoolComponent.Return(this);
+#endif
+ }
+ public uint OpCode() { return OuterOpcode.Map2C_RoleEnterMapNotify; }
+ [ProtoIgnore]
+ public int RouteType => Fantasy.RouteType.MapRoute;
+ [ProtoMember(1)]
+ public MapRoleInfo Info { get; set; }
+ }
+ ///
+ /// 用户离开地图
+ ///
+ [ProtoContract]
+ public partial class Map2C_RoleExitMapNotify : AMessage, ICustomRouteMessage, IProto
+ {
+ public static Map2C_RoleExitMapNotify Create(Scene scene)
+ {
+ return scene.MessagePoolComponent.Rent();
+ }
+ public override void Dispose()
+ {
+ Id = default;
+#if FANTASY_NET || FANTASY_UNITY
+ GetScene().MessagePoolComponent.Return(this);
+#endif
+ }
+ public uint OpCode() { return OuterOpcode.Map2C_RoleExitMapNotify; }
+ [ProtoIgnore]
+ public int RouteType => Fantasy.RouteType.MapRoute;
+ [ProtoMember(1)]
+ public long Id { get; set; }
+ }
+ ///
+ /// 玩家状态变化同步
+ ///
+ [ProtoContract]
+ public partial class Map2C_RoleStateNotify : AMessage, ICustomRouteMessage, IProto
+ {
+ public static Map2C_RoleStateNotify Create(Scene scene)
+ {
+ return scene.MessagePoolComponent.Rent();
+ }
+ public override void Dispose()
+ {
+ Id = default;
+ State = default;
+#if FANTASY_NET || FANTASY_UNITY
+ GetScene().MessagePoolComponent.Return(this);
+#endif
+ }
+ public uint OpCode() { return OuterOpcode.Map2C_RoleStateNotify; }
+ [ProtoIgnore]
+ public int RouteType => Fantasy.RouteType.MapRoute;
+ [ProtoMember(1)]
+ public long Id { get; set; }
+ [ProtoMember(2)]
+ public RoleStateInfo State { get; set; }
+ }
+ ///
+ /// 玩家钓组状态变化
+ ///
+ [ProtoContract]
+ public partial class Map2C_RoleGearStateNotify : AMessage, ICustomRouteMessage, IProto
+ {
+ public static Map2C_RoleGearStateNotify Create(Scene scene)
+ {
+ return scene.MessagePoolComponent.Rent();
+ }
+ public override void Dispose()
+ {
+ Id = default;
+ State = default;
+#if FANTASY_NET || FANTASY_UNITY
+ GetScene().MessagePoolComponent.Return(this);
+#endif
+ }
+ public uint OpCode() { return OuterOpcode.Map2C_RoleGearStateNotify; }
+ [ProtoIgnore]
+ public int RouteType => Fantasy.RouteType.MapRoute;
+ [ProtoMember(1)]
+ public long Id { get; set; }
+ [ProtoMember(2)]
+ public RoleFishingInfo State { get; set; }
+ }
+ ///
+ /// 玩家钓组变化
+ ///
+ [ProtoContract]
+ public partial class Map2C_RoleGearChangeNotify : AMessage, ICustomRouteMessage, IProto
+ {
+ public static Map2C_RoleGearChangeNotify Create(Scene scene)
+ {
+ return scene.MessagePoolComponent.Rent();
+ }
+ public override void Dispose()
+ {
+ Id = default;
+ Gears = default;
+#if FANTASY_NET || FANTASY_UNITY
+ GetScene().MessagePoolComponent.Return(this);
+#endif
+ }
+ public uint OpCode() { return OuterOpcode.Map2C_RoleGearChangeNotify; }
+ [ProtoIgnore]
+ public int RouteType => Fantasy.RouteType.MapRoute;
+ [ProtoMember(1)]
+ public long Id { get; set; }
+ [ProtoMember(2)]
+ public RoleGearInfo Gears { get; set; }
+ }
+ ///
+ /// 玩家位置变化
+ ///
+ [ProtoContract]
+ public partial class Map2C_MoveNotify : AMessage, IProto
+ {
+ public static Map2C_MoveNotify Create(Scene scene)
+ {
+ return scene.MessagePoolComponent.Rent();
+ }
+ public override void Dispose()
+ {
+ Id = default;
+ Location = default;
+#if FANTASY_NET || FANTASY_UNITY
+ GetScene().MessagePoolComponent.Return(this);
+#endif
+ }
+ [ProtoMember(1)]
+ public long Id { get; set; }
+ [ProtoMember(2)]
+ public MapRolePositionInfo Location { get; set; }
+ }
+}
diff --git a/Assets/Scripts/Generate/NetworkProtocol/MapMessage.cs.meta b/Assets/Scripts/Generate/NetworkProtocol/MapMessage.cs.meta
new file mode 100644
index 000000000..ee0e03f28
--- /dev/null
+++ b/Assets/Scripts/Generate/NetworkProtocol/MapMessage.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: d6085f4eaaf2809499f2c29d8ef32df7
\ No newline at end of file
diff --git a/Assets/Scripts/Generate/NetworkProtocol/OuterMessage.cs b/Assets/Scripts/Generate/NetworkProtocol/OuterMessage.cs
index 2ac97e3b7..d893fbd31 100644
--- a/Assets/Scripts/Generate/NetworkProtocol/OuterMessage.cs
+++ b/Assets/Scripts/Generate/NetworkProtocol/OuterMessage.cs
@@ -92,14 +92,14 @@ namespace NBC
public override void Dispose()
{
ErrorCode = default;
- GameAccountInfo = default;
+ RoleId = default;
#if FANTASY_NET || FANTASY_UNITY
GetScene().MessagePoolComponent.Return(this);
#endif
}
public uint OpCode() { return OuterOpcode.G2C_LoginResponse; }
[ProtoMember(1)]
- public GameAccountInfo GameAccountInfo { get; set; }
+ public long RoleId { get; set; }
[ProtoMember(2)]
public uint ErrorCode { get; set; }
}
@@ -121,29 +121,6 @@ namespace NBC
}
public uint OpCode() { return OuterOpcode.G2C_RepeatLogin; }
}
- ///
- /// GameAccount实体类
- ///
- [ProtoContract]
- public partial class GameAccountInfo : AMessage, IProto
- {
- public static GameAccountInfo Create(Scene scene)
- {
- return scene.MessagePoolComponent.Rent();
- }
- public override void Dispose()
- {
- CreateTime = default;
- LoginTime = default;
-#if FANTASY_NET || FANTASY_UNITY
- GetScene().MessagePoolComponent.Return(this);
-#endif
- }
- [ProtoMember(1)]
- public long CreateTime { get; set; }
- [ProtoMember(2)]
- public long LoginTime { get; set; }
- }
[ProtoContract]
public partial class C2Game_GetRoleInfoRequest : AMessage, ICustomRouteRequest, IProto
{
@@ -173,15 +150,18 @@ namespace NBC
public override void Dispose()
{
ErrorCode = default;
- Roles = default;
+ RoleInfo = default;
+ RoomId = default;
#if FANTASY_NET || FANTASY_UNITY
GetScene().MessagePoolComponent.Return(this);
#endif
}
public uint OpCode() { return OuterOpcode.Game2C_GetRoleInfoResponse; }
[ProtoMember(1)]
- public RoleSimpleInfo Roles { get; set; }
+ public RoleInfo RoleInfo { get; set; }
[ProtoMember(2)]
+ public long RoomId { get; set; }
+ [ProtoMember(3)]
public uint ErrorCode { get; set; }
}
}
diff --git a/Assets/Scripts/Generate/NetworkProtocol/OuterOpcode.cs b/Assets/Scripts/Generate/NetworkProtocol/OuterOpcode.cs
index b720b6c95..ebf427ed1 100644
--- a/Assets/Scripts/Generate/NetworkProtocol/OuterOpcode.cs
+++ b/Assets/Scripts/Generate/NetworkProtocol/OuterOpcode.cs
@@ -2,44 +2,53 @@ namespace Fantasy
{
public static partial class OuterOpcode
{
+ public const uint Map2C_CreateMapResponse = 2415929105;
+ public const uint C2Map_EnterMapRequest = 2281711377;
+ public const uint Map2C_EnterMapResponse = 2415929106;
+ public const uint C2Map_Move = 2147493649;
+ public const uint Map2C_RoleEnterMapNotify = 2147493650;
+ public const uint Map2C_RoleExitMapNotify = 2147493651;
+ public const uint Map2C_RoleStateNotify = 2147493652;
+ public const uint Map2C_RoleGearStateNotify = 2147493653;
+ public const uint Map2C_RoleGearChangeNotify = 2147493654;
public const uint C2A_LoginRequest = 268445457;
public const uint A2C_LoginResponse = 402663185;
public const uint C2G_LoginRequest = 268445458;
public const uint G2C_LoginResponse = 402663186;
public const uint G2C_RepeatLogin = 134227729;
- public const uint C2Game_GetRoleInfoRequest = 2281711377;
- public const uint Game2C_GetRoleInfoResponse = 2415929105;
- public const uint C2S_GetConversationsRequest = 2281711378;
- public const uint S2C_GetConversationsResponse = 2415929106;
- public const uint C2S_SendMailRequest = 2281711379;
- public const uint S2C_SendMailResponse = 2415929107;
- public const uint C2S_DeleteMailRequest = 2281711380;
- public const uint S2C_DeleteMailResponse = 2415929108;
- public const uint S2C_HaveMail = 2147493649;
- public const uint S2C_MailState = 2147493650;
- public const uint C2S_CreateChannelRequest = 2281711381;
- public const uint S2C_CreateChannelResponse = 2415929109;
- public const uint C2S_JoinChannelRequest = 2281711382;
- public const uint S2C_JoinChannelResponse = 2415929110;
- public const uint C2S_SendMessageRequest = 2281711383;
- public const uint S2C_SendMessageResponse = 2415929111;
- public const uint S2C_Message = 2147493651;
- public const uint C2S_CreateClubRequest = 2281711384;
- public const uint S2C_CreateClubResponse = 2415929112;
- public const uint C2S_GetClubInfoRequest = 2281711385;
- public const uint S2C_GetClubInfoResponse = 2415929113;
- public const uint C2S_GetMemberListRequest = 2281711386;
- public const uint S2C_GetMemberListResponse = 2415929114;
- public const uint C2S_GetClubListRequest = 2281711387;
- public const uint S2C_GetClubListResponse = 2415929115;
- public const uint C2S_JoinClubRequest = 2281711388;
- public const uint S2C_JoinClubResponse = 2415929116;
- public const uint C2S_LeaveClubRequest = 2281711389;
- public const uint S2C_LeaveClubResponse = 2415929117;
- public const uint C2S_DissolveClubRequest = 2281711390;
- public const uint S2C_DissolveClubResponse = 2415929118;
- public const uint C2S_DisposeJoinRequest = 2281711391;
- public const uint S2C_DisposeJoinResponse = 2415929119;
- public const uint S2C_ClubChange = 2147493652;
+ public const uint C2Game_GetRoleInfoRequest = 2281711378;
+ public const uint Game2C_GetRoleInfoResponse = 2415929107;
+ public const uint C2S_GetConversationsRequest = 2281711379;
+ public const uint S2C_GetConversationsResponse = 2415929108;
+ public const uint C2S_SendMailRequest = 2281711380;
+ public const uint S2C_SendMailResponse = 2415929109;
+ public const uint C2S_DeleteMailRequest = 2281711381;
+ public const uint S2C_DeleteMailResponse = 2415929110;
+ public const uint S2C_HaveMail = 2147493655;
+ public const uint S2C_MailState = 2147493656;
+ public const uint C2S_CreateChannelRequest = 2281711382;
+ public const uint S2C_CreateChannelResponse = 2415929111;
+ public const uint C2S_JoinChannelRequest = 2281711383;
+ public const uint S2C_JoinChannelResponse = 2415929112;
+ public const uint C2S_SendMessageRequest = 2281711384;
+ public const uint S2C_SendMessageResponse = 2415929113;
+ public const uint S2C_Message = 2147493657;
+ public const uint C2S_CreateClubRequest = 2281711385;
+ public const uint S2C_CreateClubResponse = 2415929114;
+ public const uint C2S_GetClubInfoRequest = 2281711386;
+ public const uint S2C_GetClubInfoResponse = 2415929115;
+ public const uint C2S_GetMemberListRequest = 2281711387;
+ public const uint S2C_GetMemberListResponse = 2415929116;
+ public const uint C2S_GetClubListRequest = 2281711388;
+ public const uint S2C_GetClubListResponse = 2415929117;
+ public const uint C2S_JoinClubRequest = 2281711389;
+ public const uint S2C_JoinClubResponse = 2415929118;
+ public const uint C2S_LeaveClubRequest = 2281711390;
+ public const uint S2C_LeaveClubResponse = 2415929119;
+ public const uint C2S_DissolveClubRequest = 2281711391;
+ public const uint S2C_DissolveClubResponse = 2415929120;
+ public const uint C2S_DisposeJoinRequest = 2281711392;
+ public const uint S2C_DisposeJoinResponse = 2415929121;
+ public const uint S2C_ClubChange = 2147493658;
}
}
diff --git a/Assets/Scripts/Generate/NetworkProtocol/RouteType.cs b/Assets/Scripts/Generate/NetworkProtocol/RouteType.cs
index ec2001761..0bdac1696 100644
--- a/Assets/Scripts/Generate/NetworkProtocol/RouteType.cs
+++ b/Assets/Scripts/Generate/NetworkProtocol/RouteType.cs
@@ -6,5 +6,6 @@ namespace Fantasy
public const int GateRoute = 1001; // Gate
public const int SocialRoute = 1002; // Social
public const int GameRoute = 1003; // Game
+ public const int MapRoute = 1004; // Map
}
}
diff --git a/Assets/Scripts/UI/Fishing/InteractiveTag.cs b/Assets/Scripts/UI/Fishing/InteractiveTag.cs
index 6d8051035..6db3d85a6 100644
--- a/Assets/Scripts/UI/Fishing/InteractiveTag.cs
+++ b/Assets/Scripts/UI/Fishing/InteractiveTag.cs
@@ -55,8 +55,8 @@ namespace NBF
{
//上船
Debug.Log("上船===");
- var boat = _interactiveObject.gameObject.GetComponent();
- Fishing.Inst.Player.SelfPlayer.EnterBoat(boat);
+ // var boat = _interactiveObject.gameObject.GetComponent();
+ // Fishing.Inst.Player.SelfPlayer.EnterBoat(boat);
// Fishing.Inst.Player
}
else if (_interactiveObject.Type == UIDef.InteractiveType.FishingShop)
diff --git a/Assets/Scripts/Utils/FishingTrajectoryCalculator.cs b/Assets/Scripts/Utils/FishingTrajectoryCalculator.cs
index d3a82b2d7..fe07dfe82 100644
--- a/Assets/Scripts/Utils/FishingTrajectoryCalculator.cs
+++ b/Assets/Scripts/Utils/FishingTrajectoryCalculator.cs
@@ -1,257 +1,257 @@
-using UnityEngine;
-using System.Collections.Generic;
-
-namespace NBF
-{
- public class LureTrajectorySimulator : MonoBehaviour
- {
- [Header("基础参数")] public int maxSimulationSteps = 1000;
- public float simulationDuration = 10f;
- public float timeStep = 0.02f;
-
- [Header("抛投力度")] public float minThrowPower = 15f;
- public float maxThrowPower = 45f;
-
- [Header("空气阻力参数")] [Tooltip("阻力系数,非流线钓饵建议 0.8~1.2")]
- public float dragCoefficient = 0.2f;
-
- [Tooltip("迎风面积,0.005m² ≈ 5cm²")] public float lureArea = 0.001f;
-
-
- public List CalculateTrajectory(FishingLureCastInput input, Vector3 startPosition,
- Vector3 castDirection)
- {
- List trajectory = new List();
-
- Vector3 position = startPosition;
- Vector3 direction = castDirection.normalized;
- float throwPower = Mathf.Lerp(minThrowPower, maxThrowPower, input.power);
- Vector3 velocity = direction * throwPower;
-
- float lureMass = input.lureWeight / 1000f; // 转 kg
- Vector3 windDir = input.windDirection.normalized;
- float windStrength = input.windStrength;
-
- float currentTime = 0f;
- int steps = 0;
-
- while (currentTime < simulationDuration && steps < maxSimulationSteps)
- {
- if (position.y <= 0f) break;
-
- // 模拟风力逐渐生效
- float windInfluenceFactor = Mathf.Clamp01(currentTime / 1.5f); // 1.5秒内增长
- Vector3 windVelocity = windDir * windStrength * windInfluenceFactor;
-
- // 真实空气阻力模型
- Vector3 relVelocity = velocity - windVelocity;
-
- // 空气阻力
- float dragMag = 0.5f * PhysicsHelper.AirDensity *
- relVelocity.sqrMagnitude *
- dragCoefficient * lureArea;
-
-
- // --- 钓线空气阻力模拟 ---
- // 假设飞行中展开的线长度近似为当前位置的XZ平面长度
- float lineLength = Vector3.Distance(new Vector3(position.x, 0, position.z),
- new Vector3(startPosition.x, 0, startPosition.z));
- float lineRadius = input.lineDiameter / 2000f; // mm转m再除以2得到半径
-
- // 钓线的迎风面积估算:长度 * 直径
- float lineArea = lineLength * (lineRadius * 2f); // 近似为圆柱体侧面积的一部分
-
- // 简化模型:线的附加空气阻力方向与当前速度方向相反
- float lineDragMag = 0.5f * PhysicsHelper.AirDensity * velocity.sqrMagnitude * dragCoefficient *
- lineArea;
- Vector3 lineDragForce = -velocity.normalized * lineDragMag;
-
-
- Vector3 dragForce = -relVelocity.normalized * dragMag;
-
- // 合力 = 重力 + 空气阻力
- // Vector3 acceleration = (Physics.gravity + dragForce / lureMass);
- Vector3 totalForce = dragForce + lineDragForce;
- // 合力 = 重力 + 空气阻力 + 线阻力
- Vector3 acceleration = (Physics.gravity + totalForce / lureMass);
-
-
- velocity += acceleration * timeStep;
- position += velocity * timeStep;
-
- trajectory.Add(position);
- currentTime += timeStep;
- steps++;
- }
-
- return trajectory;
- }
-
-
- // 示例调用
- private List _trajectory;
-
- private int _windIndex;
-
- public List Test(Transform cameraTransform)
- {
- Vector3[] directions =
- {
- Vector3.forward,
- Vector3.back,
- Vector3.right,
- Vector3.left,
- (Vector3.forward + Vector3.right).normalized,
- (Vector3.forward + Vector3.left).normalized,
- (Vector3.back + Vector3.right).normalized,
- (Vector3.back + Vector3.left).normalized
- };
-
- FishingLureCastInput baseInput = new FishingLureCastInput
- {
- power = 1f,
- lureWeight = 2.2f,
- windStrength = 0f, // 风力大小
- lineDiameter = 0.14f
- };
-
-
- Vector3 startPos = cameraTransform.position;
- Vector3 throwDir = cameraTransform.forward.normalized;
-
- baseInput.windDirection = directions[_windIndex];
- _trajectory = CalculateTrajectory(baseInput, startPos, throwDir);
- _trajectory = SimplifyTrajectoryRDP(_trajectory, 0.1f);
- _windIndex++;
- if (_windIndex >= directions.Length)
- {
- _windIndex = 0;
- }
-
- var length = CalculateTrajectoryLength(_trajectory);
- var distance = CalculateHorizontalDistance(_trajectory);
- Debug.LogError($"轨迹点位数={_trajectory.Count} length={length} distance={distance}");
- SceneSettings.Instance.LineRenderer.startWidth = 0.1f;
- SceneSettings.Instance.LineRenderer.endWidth = 0.1f;
- SceneSettings.Instance.LineRenderer.positionCount = _trajectory.Count;
- SceneSettings.Instance.LineRenderer.useWorldSpace = true;
- SceneSettings.Instance.LineRenderer.SetPositions(_trajectory.ToArray());
- return _trajectory;
- }
-
- ///
- /// 计算轨迹总长度(线的实际长度)
- ///
- public float CalculateTrajectoryLength(List trajectory)
- {
- if (trajectory == null || trajectory.Count < 2)
- return 0f;
-
- float totalLength = 0f;
- for (int i = 1; i < trajectory.Count; i++)
- {
- totalLength += Vector3.Distance(trajectory[i - 1], trajectory[i]);
- }
-
- return totalLength;
- }
-
- ///
- /// 计算水平距离(XZ平面上的直线距离)
- ///
- public float CalculateHorizontalDistance(List trajectory)
- {
- if (trajectory == null || trajectory.Count == 0)
- return 0f;
-
- Vector3 startPoint = trajectory[0];
- Vector3 endPoint = trajectory[trajectory.Count - 1];
-
- // 将Y坐标设为相同(地面高度)
- startPoint.y = 0;
- endPoint.y = 0;
-
- return Vector3.Distance(startPoint, endPoint);
- }
-
- private void OnDrawGizmos()
- {
- if (_trajectory == null) return;
-
- Gizmos.color = Color.cyan;
- for (int i = 0; i < _trajectory.Count - 1; i++)
- {
- Gizmos.DrawLine(_trajectory[i], _trajectory[i + 1]);
- }
-
- if (_trajectory.Count > 0)
- {
- Gizmos.color = Color.green;
- Gizmos.DrawSphere(_trajectory[0], 0.1f);
-
- Gizmos.color = Color.red;
- Gizmos.DrawSphere(_trajectory[_trajectory.Count - 1], 0.1f);
-
- for (int i = 1; i < _trajectory.Count; i += 10)
- {
- Gizmos.color = Color.Lerp(Color.green, Color.red, i / (float)_trajectory.Count);
- Gizmos.DrawSphere(_trajectory[i], 0.05f);
- }
- }
- }
-
-
- public static List SimplifyTrajectoryRDP(List points, float tolerance)
- {
- if (points == null || points.Count < 3)
- return new List(points);
-
- List result = new List();
- SimplifySection(points, 0, points.Count - 1, tolerance, result);
- result.Add(points[points.Count - 1]);
- return result;
- }
-
- private static void SimplifySection(List points, int start, int end, float tolerance,
- List result)
- {
- if (end <= start + 1)
- return;
-
- float maxDistance = -1f;
- int index = -1;
- Vector3 startPoint = points[start];
- Vector3 endPoint = points[end];
-
- for (int i = start + 1; i < end; i++)
- {
- float distance = PerpendicularDistance(points[i], startPoint, endPoint);
- if (distance > maxDistance)
- {
- maxDistance = distance;
- index = i;
- }
- }
-
- if (maxDistance > tolerance)
- {
- SimplifySection(points, start, index, tolerance, result);
- result.Add(points[index]);
- SimplifySection(points, index, end, tolerance, result);
- }
- }
-
- private static float PerpendicularDistance(Vector3 point, Vector3 lineStart, Vector3 lineEnd)
- {
- if (lineStart == lineEnd) return Vector3.Distance(point, lineStart);
- Vector3 projected = Vector3.Project(point - lineStart, lineEnd - lineStart);
- Vector3 closest = lineStart + projected;
- return Vector3.Distance(point, closest);
- }
- }
-
- public static class PhysicsHelper
- {
- public const float AirDensity = 1.225f;
- }
-}
\ No newline at end of file
+// using UnityEngine;
+// using System.Collections.Generic;
+//
+// namespace NBF
+// {
+// public class LureTrajectorySimulator : MonoBehaviour
+// {
+// [Header("基础参数")] public int maxSimulationSteps = 1000;
+// public float simulationDuration = 10f;
+// public float timeStep = 0.02f;
+//
+// [Header("抛投力度")] public float minThrowPower = 15f;
+// public float maxThrowPower = 45f;
+//
+// [Header("空气阻力参数")] [Tooltip("阻力系数,非流线钓饵建议 0.8~1.2")]
+// public float dragCoefficient = 0.2f;
+//
+// [Tooltip("迎风面积,0.005m² ≈ 5cm²")] public float lureArea = 0.001f;
+//
+//
+// public List CalculateTrajectory(FishingLureCastInput input, Vector3 startPosition,
+// Vector3 castDirection)
+// {
+// List trajectory = new List();
+//
+// Vector3 position = startPosition;
+// Vector3 direction = castDirection.normalized;
+// float throwPower = Mathf.Lerp(minThrowPower, maxThrowPower, input.power);
+// Vector3 velocity = direction * throwPower;
+//
+// float lureMass = input.lureWeight / 1000f; // 转 kg
+// Vector3 windDir = input.windDirection.normalized;
+// float windStrength = input.windStrength;
+//
+// float currentTime = 0f;
+// int steps = 0;
+//
+// while (currentTime < simulationDuration && steps < maxSimulationSteps)
+// {
+// if (position.y <= 0f) break;
+//
+// // 模拟风力逐渐生效
+// float windInfluenceFactor = Mathf.Clamp01(currentTime / 1.5f); // 1.5秒内增长
+// Vector3 windVelocity = windDir * windStrength * windInfluenceFactor;
+//
+// // 真实空气阻力模型
+// Vector3 relVelocity = velocity - windVelocity;
+//
+// // 空气阻力
+// float dragMag = 0.5f * PhysicsHelper.AirDensity *
+// relVelocity.sqrMagnitude *
+// dragCoefficient * lureArea;
+//
+//
+// // --- 钓线空气阻力模拟 ---
+// // 假设飞行中展开的线长度近似为当前位置的XZ平面长度
+// float lineLength = Vector3.Distance(new Vector3(position.x, 0, position.z),
+// new Vector3(startPosition.x, 0, startPosition.z));
+// float lineRadius = input.lineDiameter / 2000f; // mm转m再除以2得到半径
+//
+// // 钓线的迎风面积估算:长度 * 直径
+// float lineArea = lineLength * (lineRadius * 2f); // 近似为圆柱体侧面积的一部分
+//
+// // 简化模型:线的附加空气阻力方向与当前速度方向相反
+// float lineDragMag = 0.5f * PhysicsHelper.AirDensity * velocity.sqrMagnitude * dragCoefficient *
+// lineArea;
+// Vector3 lineDragForce = -velocity.normalized * lineDragMag;
+//
+//
+// Vector3 dragForce = -relVelocity.normalized * dragMag;
+//
+// // 合力 = 重力 + 空气阻力
+// // Vector3 acceleration = (Physics.gravity + dragForce / lureMass);
+// Vector3 totalForce = dragForce + lineDragForce;
+// // 合力 = 重力 + 空气阻力 + 线阻力
+// Vector3 acceleration = (Physics.gravity + totalForce / lureMass);
+//
+//
+// velocity += acceleration * timeStep;
+// position += velocity * timeStep;
+//
+// trajectory.Add(position);
+// currentTime += timeStep;
+// steps++;
+// }
+//
+// return trajectory;
+// }
+//
+//
+// // 示例调用
+// private List _trajectory;
+//
+// private int _windIndex;
+//
+// public List Test(Transform cameraTransform)
+// {
+// Vector3[] directions =
+// {
+// Vector3.forward,
+// Vector3.back,
+// Vector3.right,
+// Vector3.left,
+// (Vector3.forward + Vector3.right).normalized,
+// (Vector3.forward + Vector3.left).normalized,
+// (Vector3.back + Vector3.right).normalized,
+// (Vector3.back + Vector3.left).normalized
+// };
+//
+// FishingLureCastInput baseInput = new FishingLureCastInput
+// {
+// power = 1f,
+// lureWeight = 2.2f,
+// windStrength = 0f, // 风力大小
+// lineDiameter = 0.14f
+// };
+//
+//
+// Vector3 startPos = cameraTransform.position;
+// Vector3 throwDir = cameraTransform.forward.normalized;
+//
+// baseInput.windDirection = directions[_windIndex];
+// _trajectory = CalculateTrajectory(baseInput, startPos, throwDir);
+// _trajectory = SimplifyTrajectoryRDP(_trajectory, 0.1f);
+// _windIndex++;
+// if (_windIndex >= directions.Length)
+// {
+// _windIndex = 0;
+// }
+//
+// var length = CalculateTrajectoryLength(_trajectory);
+// var distance = CalculateHorizontalDistance(_trajectory);
+// Debug.LogError($"轨迹点位数={_trajectory.Count} length={length} distance={distance}");
+// SceneSettings.Instance.LineRenderer.startWidth = 0.1f;
+// SceneSettings.Instance.LineRenderer.endWidth = 0.1f;
+// SceneSettings.Instance.LineRenderer.positionCount = _trajectory.Count;
+// SceneSettings.Instance.LineRenderer.useWorldSpace = true;
+// SceneSettings.Instance.LineRenderer.SetPositions(_trajectory.ToArray());
+// return _trajectory;
+// }
+//
+// ///
+// /// 计算轨迹总长度(线的实际长度)
+// ///
+// public float CalculateTrajectoryLength(List trajectory)
+// {
+// if (trajectory == null || trajectory.Count < 2)
+// return 0f;
+//
+// float totalLength = 0f;
+// for (int i = 1; i < trajectory.Count; i++)
+// {
+// totalLength += Vector3.Distance(trajectory[i - 1], trajectory[i]);
+// }
+//
+// return totalLength;
+// }
+//
+// ///
+// /// 计算水平距离(XZ平面上的直线距离)
+// ///
+// public float CalculateHorizontalDistance(List trajectory)
+// {
+// if (trajectory == null || trajectory.Count == 0)
+// return 0f;
+//
+// Vector3 startPoint = trajectory[0];
+// Vector3 endPoint = trajectory[trajectory.Count - 1];
+//
+// // 将Y坐标设为相同(地面高度)
+// startPoint.y = 0;
+// endPoint.y = 0;
+//
+// return Vector3.Distance(startPoint, endPoint);
+// }
+//
+// private void OnDrawGizmos()
+// {
+// if (_trajectory == null) return;
+//
+// Gizmos.color = Color.cyan;
+// for (int i = 0; i < _trajectory.Count - 1; i++)
+// {
+// Gizmos.DrawLine(_trajectory[i], _trajectory[i + 1]);
+// }
+//
+// if (_trajectory.Count > 0)
+// {
+// Gizmos.color = Color.green;
+// Gizmos.DrawSphere(_trajectory[0], 0.1f);
+//
+// Gizmos.color = Color.red;
+// Gizmos.DrawSphere(_trajectory[_trajectory.Count - 1], 0.1f);
+//
+// for (int i = 1; i < _trajectory.Count; i += 10)
+// {
+// Gizmos.color = Color.Lerp(Color.green, Color.red, i / (float)_trajectory.Count);
+// Gizmos.DrawSphere(_trajectory[i], 0.05f);
+// }
+// }
+// }
+//
+//
+// public static List SimplifyTrajectoryRDP(List points, float tolerance)
+// {
+// if (points == null || points.Count < 3)
+// return new List(points);
+//
+// List result = new List();
+// SimplifySection(points, 0, points.Count - 1, tolerance, result);
+// result.Add(points[points.Count - 1]);
+// return result;
+// }
+//
+// private static void SimplifySection(List points, int start, int end, float tolerance,
+// List result)
+// {
+// if (end <= start + 1)
+// return;
+//
+// float maxDistance = -1f;
+// int index = -1;
+// Vector3 startPoint = points[start];
+// Vector3 endPoint = points[end];
+//
+// for (int i = start + 1; i < end; i++)
+// {
+// float distance = PerpendicularDistance(points[i], startPoint, endPoint);
+// if (distance > maxDistance)
+// {
+// maxDistance = distance;
+// index = i;
+// }
+// }
+//
+// if (maxDistance > tolerance)
+// {
+// SimplifySection(points, start, index, tolerance, result);
+// result.Add(points[index]);
+// SimplifySection(points, index, end, tolerance, result);
+// }
+// }
+//
+// private static float PerpendicularDistance(Vector3 point, Vector3 lineStart, Vector3 lineEnd)
+// {
+// if (lineStart == lineEnd) return Vector3.Distance(point, lineStart);
+// Vector3 projected = Vector3.Project(point - lineStart, lineEnd - lineStart);
+// Vector3 closest = lineStart + projected;
+// return Vector3.Distance(point, closest);
+// }
+// }
+//
+// public static class PhysicsHelper
+// {
+// public const float AirDensity = 1.225f;
+// }
+// }
\ No newline at end of file
diff --git a/Assets/Scripts/Utils/PrefabCreator.cs b/Assets/Scripts/Utils/PrefabCreator.cs
index a3d36e5e5..b3085b33a 100644
--- a/Assets/Scripts/Utils/PrefabCreator.cs
+++ b/Assets/Scripts/Utils/PrefabCreator.cs
@@ -4,156 +4,156 @@ namespace NBF
{
public static class PrefabCreator
{
- #region 轮
+ // #region 轮
+ //
+ // public static ReelAsset Create(this GameReels self, Transform parent, bool isPreview = false)
+ // {
+ // ReelAsset ret = null;
+ // var prefab = self.Instantiate(parent);
+ //
+ // prefab.transform.localPosition = Vector3.zero;
+ // prefab.transform.localRotation = Quaternion.identity;
+ //
+ // if (prefab.TryGetComponent(out var reel))
+ // {
+ // ret = reel;
+ //
+ // if (!isPreview)
+ // {
+ // prefab.AddComponent();
+ // // prefab.AddJoint();
+ // // var dis = prefab.AddComponent();
+ // // dis.moveCharacteristic = FWaterDisplacement.MoveCharacteristic.Custom;
+ // // dis.objectDisplacement = 2;
+ // // dis.outwaterMass = 0.1f;
+ // }
+ // }
+ //
+ // return ret;
+ // }
+ //
+ // #endregion
- public static ReelAsset Create(this GameReels self, Transform parent, bool isPreview = false)
- {
- ReelAsset ret = null;
- var prefab = self.Instantiate(parent);
-
- prefab.transform.localPosition = Vector3.zero;
- prefab.transform.localRotation = Quaternion.identity;
-
- if (prefab.TryGetComponent(out var reel))
- {
- ret = reel;
-
- if (!isPreview)
- {
- prefab.AddComponent();
- // prefab.AddJoint();
- // var dis = prefab.AddComponent();
- // dis.moveCharacteristic = FWaterDisplacement.MoveCharacteristic.Custom;
- // dis.objectDisplacement = 2;
- // dis.outwaterMass = 0.1f;
- }
- }
-
- return ret;
- }
-
- #endregion
-
- #region 浮漂
-
- public static BobberAsset Create(this GameFloats self, Transform parent, bool isPreview = false)
- {
- BobberAsset ret = null;
- var prefab = self.Instantiate(parent);
-
- prefab.transform.localPosition = Vector3.zero;
- prefab.transform.localRotation = Quaternion.identity;
-
- if (prefab.TryGetComponent(out var lure))
- {
- ret = lure;
-
- if (!isPreview)
- {
- prefab.AddComponent();
- prefab.AddJoint();
- var dis = prefab.AddComponent();
- dis.moveCharacteristic = FWaterDisplacement.MoveCharacteristic.Custom;
- dis.objectDisplacement = 2;
- dis.outwaterMass = 0.1f;
- }
- }
-
- return ret;
- }
-
- #endregion
-
-
- #region 饵
-
- public static LureAsset Create(this GameLures self, Transform parent, bool isPreview = false)
- {
- LureAsset ret = null;
- var prefab = self.Instantiate(parent);
-
-
- if (prefab.TryGetComponent(out var lure))
- {
- ret = lure;
-
- if (!isPreview)
- {
- prefab.AddComponent();
- prefab.AddJoint();
- var rigidbody = prefab.GetComponent();
- rigidbody.collisionDetectionMode = CollisionDetectionMode.ContinuousDynamic;
- rigidbody.linearDamping = 0.5f;
- var dis = prefab.AddComponent();
- // dis.moveCharacteristic = FWaterDisplacement.MoveCharacteristic.Custom;
- // dis.objectDisplacement = 2;
- dis.outwaterMass = 0.5f;
- }
-
- if (lure.hookPoints != null && lure.hookPoints.Length > 0)
- {
- for (int i = 0; i < lure.hookPoints.Length; i++)
- {
- var hookPoint = lure.hookPoints[i];
- var hook = self.hook[0];
- var hookConfig = GameHooks.Get(hook);
- var hookAsset = hookConfig.Create(hookPoint, true);
- hookAsset.transform.localPosition = Vector3.zero;
- hookAsset.transform.localRotation = Quaternion.identity;
- var configurableJoint = hookAsset.GetComponent();
- configurableJoint.connectedBody = prefab.GetComponent();
- }
- }
- }
-
- return ret;
- }
-
- public static BaitAsset Create(this GameBaits self, Transform parent, bool isPreview = false)
- {
- var prefab = self.Instantiate(parent);
- BaitAsset ret = null;
- if (prefab.TryGetComponent(out var hook))
- {
- ret = hook;
- }
-
- prefab.transform.localPosition = Vector3.zero;
- prefab.transform.localRotation = Quaternion.identity;
- if (!isPreview)
- {
- prefab.AddComponent();
- }
-
- return ret;
- }
-
- #endregion
-
- #region 钩
-
- public static HookAsset Create(this GameHooks self, Transform parent, bool isPreview = false)
- {
- var prefab = self.Instantiate(parent);
- HookAsset ret = null;
- if (prefab.TryGetComponent(out var hook))
- {
- ret = hook;
- }
-
- prefab.transform.localPosition = Vector3.zero;
- prefab.transform.localRotation = Quaternion.identity;
- if (!isPreview)
- {
- prefab.AddComponent();
- var d = prefab.AddComponent();
- d.outwaterMass = 0.1f;
- }
-
- return ret;
- }
-
- #endregion
+ // #region 浮漂
+ //
+ // public static BobberAsset Create(this GameFloats self, Transform parent, bool isPreview = false)
+ // {
+ // BobberAsset ret = null;
+ // var prefab = self.Instantiate(parent);
+ //
+ // prefab.transform.localPosition = Vector3.zero;
+ // prefab.transform.localRotation = Quaternion.identity;
+ //
+ // if (prefab.TryGetComponent(out var lure))
+ // {
+ // ret = lure;
+ //
+ // if (!isPreview)
+ // {
+ // prefab.AddComponent();
+ // prefab.AddJoint();
+ // var dis = prefab.AddComponent();
+ // dis.moveCharacteristic = FWaterDisplacement.MoveCharacteristic.Custom;
+ // dis.objectDisplacement = 2;
+ // dis.outwaterMass = 0.1f;
+ // }
+ // }
+ //
+ // return ret;
+ // }
+ //
+ // #endregion
+ //
+ //
+ // #region 饵
+ //
+ // public static LureAsset Create(this GameLures self, Transform parent, bool isPreview = false)
+ // {
+ // LureAsset ret = null;
+ // var prefab = self.Instantiate(parent);
+ //
+ //
+ // if (prefab.TryGetComponent(out var lure))
+ // {
+ // ret = lure;
+ //
+ // if (!isPreview)
+ // {
+ // prefab.AddComponent();
+ // prefab.AddJoint();
+ // var rigidbody = prefab.GetComponent();
+ // rigidbody.collisionDetectionMode = CollisionDetectionMode.ContinuousDynamic;
+ // rigidbody.linearDamping = 0.5f;
+ // var dis = prefab.AddComponent();
+ // // dis.moveCharacteristic = FWaterDisplacement.MoveCharacteristic.Custom;
+ // // dis.objectDisplacement = 2;
+ // dis.outwaterMass = 0.5f;
+ // }
+ //
+ // if (lure.hookPoints != null && lure.hookPoints.Length > 0)
+ // {
+ // for (int i = 0; i < lure.hookPoints.Length; i++)
+ // {
+ // var hookPoint = lure.hookPoints[i];
+ // var hook = self.hook[0];
+ // var hookConfig = GameHooks.Get(hook);
+ // var hookAsset = hookConfig.Create(hookPoint, true);
+ // hookAsset.transform.localPosition = Vector3.zero;
+ // hookAsset.transform.localRotation = Quaternion.identity;
+ // var configurableJoint = hookAsset.GetComponent();
+ // configurableJoint.connectedBody = prefab.GetComponent();
+ // }
+ // }
+ // }
+ //
+ // return ret;
+ // }
+ //
+ // public static BaitAsset Create(this GameBaits self, Transform parent, bool isPreview = false)
+ // {
+ // var prefab = self.Instantiate(parent);
+ // BaitAsset ret = null;
+ // if (prefab.TryGetComponent(out var hook))
+ // {
+ // ret = hook;
+ // }
+ //
+ // prefab.transform.localPosition = Vector3.zero;
+ // prefab.transform.localRotation = Quaternion.identity;
+ // if (!isPreview)
+ // {
+ // prefab.AddComponent();
+ // }
+ //
+ // return ret;
+ // }
+ //
+ // #endregion
+ //
+ // #region 钩
+ //
+ // public static HookAsset Create(this GameHooks self, Transform parent, bool isPreview = false)
+ // {
+ // var prefab = self.Instantiate(parent);
+ // HookAsset ret = null;
+ // if (prefab.TryGetComponent(out var hook))
+ // {
+ // ret = hook;
+ // }
+ //
+ // prefab.transform.localPosition = Vector3.zero;
+ // prefab.transform.localRotation = Quaternion.identity;
+ // if (!isPreview)
+ // {
+ // prefab.AddComponent();
+ // var d = prefab.AddComponent();
+ // d.outwaterMass = 0.1f;
+ // }
+ //
+ // return ret;
+ // }
+ //
+ // #endregion
#region 工具