diff --git a/Assets/Scripts/Fishing2/Data.meta b/Assets/Scripts/Fishing2/Data.meta new file mode 100644 index 000000000..012ad5b85 --- /dev/null +++ b/Assets/Scripts/Fishing2/Data.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 81e60ce9e4a944739d285ad0c562a4a0 +timeCreated: 1755914112 \ No newline at end of file diff --git a/Assets/Scripts/Fishing2/Data/Gear.meta b/Assets/Scripts/Fishing2/Data/Gear.meta new file mode 100644 index 000000000..3f39121c4 --- /dev/null +++ b/Assets/Scripts/Fishing2/Data/Gear.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 70bbe8d6e0c04cdaa553cacaee37fe59 +timeCreated: 1755921259 \ No newline at end of file diff --git a/Assets/Scripts/Fishing2/Data/Gear/Configs.meta b/Assets/Scripts/Fishing2/Data/Gear/Configs.meta new file mode 100644 index 000000000..acec2aa17 --- /dev/null +++ b/Assets/Scripts/Fishing2/Data/Gear/Configs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 1258cbf54dfc4d1c906fd83dfa5943be +timeCreated: 1755921708 \ No newline at end of file diff --git a/Assets/Scripts/Fishing2/Data/Gear/UnitGearComponent.cs b/Assets/Scripts/Fishing2/Data/Gear/UnitGearComponent.cs new file mode 100644 index 000000000..be6ceadc7 --- /dev/null +++ b/Assets/Scripts/Fishing2/Data/Gear/UnitGearComponent.cs @@ -0,0 +1,31 @@ +using NBC; +using NBC.Entitas; + +namespace NBF.Fishing2 +{ + /// + /// 钓组组件 + /// + public class UnitGearComponent : Entity + { + /// + /// 线长度 + /// + public float LineLength { get; set; } + + /// + /// 旋转速度 + /// + public float ReelSpeed { get; set; } + + /// + /// 打开手电筒 + /// + public bool OpenLight { get; set; } + + /// + /// 鱼竿设置 + /// + public int RedSetting { get; set; } + } +} \ No newline at end of file diff --git a/Assets/Scripts/Fishing2/Data/Gear/UnitGearComponent.cs.meta b/Assets/Scripts/Fishing2/Data/Gear/UnitGearComponent.cs.meta new file mode 100644 index 000000000..c121b1132 --- /dev/null +++ b/Assets/Scripts/Fishing2/Data/Gear/UnitGearComponent.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 3c9a70a1145b41e2ad6c57384d7c922c +timeCreated: 1755921173 \ No newline at end of file diff --git a/Assets/Scripts/Fishing2/Data/Unit.meta b/Assets/Scripts/Fishing2/Data/Unit.meta new file mode 100644 index 000000000..555668742 --- /dev/null +++ b/Assets/Scripts/Fishing2/Data/Unit.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 1fb0ee12d9cf40408478e8f9ad9aafdd +timeCreated: 1755915944 \ No newline at end of file diff --git a/Assets/Scripts/Fishing2/Data/Unit/Unit.cs b/Assets/Scripts/Fishing2/Data/Unit/Unit.cs new file mode 100644 index 000000000..a29726ad7 --- /dev/null +++ b/Assets/Scripts/Fishing2/Data/Unit/Unit.cs @@ -0,0 +1,49 @@ +using NBC.Entitas; +using Unity.Mathematics; + +namespace NBF.Fishing2 +{ + public class Unit : Entity + { + public int ConfigId { get; set; } //配置表id + + private float3 position; //坐标 + + public float3 Position + { + get => position; + set + { + float3 oldPos = position; + position = value; + Scene.EventComponent.Publish(new ChangePosition() { Unit = this, OldPos = oldPos }); + } + } + + public float3 Forward + { + get => math.mul(Rotation, math.forward()); + set => Rotation = quaternion.LookRotation(value, math.up()); + } + + private quaternion rotation; + + public quaternion Rotation + { + get => rotation; + set + { + rotation = value; + Scene.EventComponent.Publish(new ChangeRotation() { Unit = this }); + } + } + + public uint State { get; set; } + public string StateArgs { get; set; } + + public void ChangeState(uint state, string args) + { + Scene.EventComponent.Publish(new ChangeState() { Unit = this, State = state, Args = args }); + } + } +} \ No newline at end of file diff --git a/Assets/Scripts/Fishing2/Data/Unit/Unit.cs.meta b/Assets/Scripts/Fishing2/Data/Unit/Unit.cs.meta new file mode 100644 index 000000000..77267fbef --- /dev/null +++ b/Assets/Scripts/Fishing2/Data/Unit/Unit.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: ff176fc098254fe2a1b48ea26eaf8857 +timeCreated: 1755915448 \ No newline at end of file diff --git a/Assets/Scripts/Fishing2/Data/Unit/UnitEventType.cs b/Assets/Scripts/Fishing2/Data/Unit/UnitEventType.cs new file mode 100644 index 000000000..ca900bbb0 --- /dev/null +++ b/Assets/Scripts/Fishing2/Data/Unit/UnitEventType.cs @@ -0,0 +1,22 @@ +using Unity.Mathematics; + +namespace NBF.Fishing2 +{ + public struct ChangePosition + { + public Unit Unit; + public float3 OldPos; + } + + public struct ChangeRotation + { + public Unit Unit; + } + + public struct ChangeState + { + public Unit Unit; + public uint State; + public string Args; + } +} \ No newline at end of file diff --git a/Assets/Scripts/Fishing2/Data/Unit/UnitEventType.cs.meta b/Assets/Scripts/Fishing2/Data/Unit/UnitEventType.cs.meta new file mode 100644 index 000000000..c5d4557d1 --- /dev/null +++ b/Assets/Scripts/Fishing2/Data/Unit/UnitEventType.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: cd2dd8a7207544b19be4b51b2a6ef215 +timeCreated: 1755915609 \ No newline at end of file diff --git a/Assets/Scripts/Fishing2/Data/Unit/UnitStateArgs.cs b/Assets/Scripts/Fishing2/Data/Unit/UnitStateArgs.cs new file mode 100644 index 000000000..26fd114f8 --- /dev/null +++ b/Assets/Scripts/Fishing2/Data/Unit/UnitStateArgs.cs @@ -0,0 +1,33 @@ +namespace NBF.Fishing2 +{ + public class UnitStateArgsFactory + { + public static UnitStateArgs Create(Unit unit, string[] args) + { + UnitStateArgs ret = null; + // return new UnitStateArgs() + // { + // + // } + if (ret != null) + { + ret.SetArgs(args); + } + + return ret; + } + } + + public abstract class UnitStateArgs + { + protected string[] Args; + + public void SetArgs(string[] args) + { + Args = args; + OnParseArgs(); + } + + public abstract void OnParseArgs(); + } +} \ No newline at end of file diff --git a/Assets/Scripts/Fishing2/Data/Unit/UnitStateArgs.cs.meta b/Assets/Scripts/Fishing2/Data/Unit/UnitStateArgs.cs.meta new file mode 100644 index 000000000..1c8bf9554 --- /dev/null +++ b/Assets/Scripts/Fishing2/Data/Unit/UnitStateArgs.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 6afa60e6892f49d0aed14024432ab10d +timeCreated: 1755917036 \ No newline at end of file diff --git a/Assets/Scripts/Fishing2/Data/Unit/UnitType.cs b/Assets/Scripts/Fishing2/Data/Unit/UnitType.cs new file mode 100644 index 000000000..c4867ff21 --- /dev/null +++ b/Assets/Scripts/Fishing2/Data/Unit/UnitType.cs @@ -0,0 +1,25 @@ +namespace NBF.Fishing2 +{ + public enum UnitType : byte + { + /// + /// 玩家 + /// + Player = 1, + + /// + /// 鱼 + /// + Fish = 2, + + /// + /// 船 + /// + Boat = 3, + + /// + /// 车 + /// + Car = 4, + } +} \ No newline at end of file diff --git a/Assets/Scripts/Fishing2/Data/Unit/UnitType.cs.meta b/Assets/Scripts/Fishing2/Data/Unit/UnitType.cs.meta new file mode 100644 index 000000000..cd6cc5596 --- /dev/null +++ b/Assets/Scripts/Fishing2/Data/Unit/UnitType.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: f13efb3457f04307b46bbfc54422cf48 +timeCreated: 1755915952 \ No newline at end of file diff --git a/Assets/Scripts/Fishing2/Player/Unit.meta b/Assets/Scripts/Fishing2/Player/Unit.meta new file mode 100644 index 000000000..3bfe47b61 --- /dev/null +++ b/Assets/Scripts/Fishing2/Player/Unit.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: a0e14a90077c49ed84df06845dc694f0 +timeCreated: 1755919232 \ No newline at end of file diff --git a/Assets/Scripts/Fishing2/Player/Unit/UnitHUDComponent.cs b/Assets/Scripts/Fishing2/Player/Unit/UnitHUDComponent.cs new file mode 100644 index 000000000..1205dc3f3 --- /dev/null +++ b/Assets/Scripts/Fishing2/Player/Unit/UnitHUDComponent.cs @@ -0,0 +1,12 @@ +using NBC.Entitas; + +namespace NBF.Fishing2 +{ + /// + /// Unit 对应的 HUD对象 + /// + public class UnitHUDComponent : Entity + { + + } +} \ No newline at end of file diff --git a/Assets/Scripts/Fishing2/Player/Unit/UnitHUDComponent.cs.meta b/Assets/Scripts/Fishing2/Player/Unit/UnitHUDComponent.cs.meta new file mode 100644 index 000000000..b2422159e --- /dev/null +++ b/Assets/Scripts/Fishing2/Player/Unit/UnitHUDComponent.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 7b8cd51029604d83a328fd19b8b80d53 +timeCreated: 1755921088 \ No newline at end of file diff --git a/Assets/Scripts/Fishing2/Player/Unit/UnitUnityComponent.cs b/Assets/Scripts/Fishing2/Player/Unit/UnitUnityComponent.cs new file mode 100644 index 000000000..ab83f2801 --- /dev/null +++ b/Assets/Scripts/Fishing2/Player/Unit/UnitUnityComponent.cs @@ -0,0 +1,15 @@ +using NBC.Entitas; +using UnityEngine; + +namespace NBF.Fishing2 +{ + /// + /// Unit 对应的unity对象组件 + /// + public class UnitUnityComponent : Entity + { + public GameObject GameObject { get; set; } + + public Transform Transform { get; set; } + } +} \ No newline at end of file diff --git a/Assets/Scripts/Fishing2/Player/Unit/UnitUnityComponent.cs.meta b/Assets/Scripts/Fishing2/Player/Unit/UnitUnityComponent.cs.meta new file mode 100644 index 000000000..75eae011c --- /dev/null +++ b/Assets/Scripts/Fishing2/Player/Unit/UnitUnityComponent.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 0d2c42a4bc1347cebc390147a1a95c54 +timeCreated: 1755921030 \ No newline at end of file diff --git a/Assets/Scripts/Startup/Init.cs b/Assets/Scripts/Startup/Init.cs index 39da618d1..36ba4a4ba 100644 --- a/Assets/Scripts/Startup/Init.cs +++ b/Assets/Scripts/Startup/Init.cs @@ -1,10 +1,7 @@ using System; using System.Collections.Generic; -using Assets.Scripts.Entity; -using Assets.Scripts.Hotfix; using FairyGUI; using NBC; -using NBC.Network; using UnityEngine; using UnityEngine.Video;