From 7b57b715d7a540ee55474429339a8e9a7481e865 Mon Sep 17 00:00:00 2001 From: SnowShow Date: Tue, 15 Apr 2025 15:30:07 +0800 Subject: [PATCH] =?UTF-8?q?1.=20=E6=B7=BB=E5=8A=A0=E6=95=B0=E5=80=BC?= =?UTF-8?q?=E7=B3=BB=E7=BB=9F=20=202.=20=E6=88=98=E6=96=97=E7=B3=BB?= =?UTF-8?q?=E7=BB=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../{GamePlay/ECS.meta => BattleSystem.meta} | 0 .../RPG/BattleSystem/BattleSystem.cs | 32 ++ .../RPG/BattleSystem/BattleSystem.cs.meta | 3 + .../ECS => BattleSystem}/Commom.meta | 0 .../ECS => BattleSystem}/Commom/Enum.meta | 0 .../RPG/BattleSystem/Commom/Enum/Combat.meta | 3 + .../Commom/Enum/Combat/NumericType.cs | 22 ++ .../Commom/Enum/Combat/NumericType.cs.meta | 3 + .../Commom/Enum/EAttributeType.cs | 5 +- .../Commom/Enum/EAttributeType.cs.meta | 0 .../RPG/BattleSystem/Commom/Event.meta | 3 + .../Commom/Event/IEventAttributeUpdate.cs | 12 + .../Event/IEventAttributeUpdate.cs.meta | 3 + .../EntityMobel.meta} | 0 .../EntityMobel}/Combat.meta | 0 .../EntityMobel/Combat/Attribute.meta | 3 + .../EntityMobel/Combat/Attribute/Attribute.cs | 9 + .../Combat/Attribute/Attribute.cs.meta | 3 + .../Combat/Attribute/AttributeComponent.cs | 11 + .../Attribute}/AttributeComponent.cs.meta | 0 .../EntityMobel/Combat/CombatUnit.cs | 11 + .../EntityMobel/Combat/CombatUnit.cs.meta} | 0 .../EntityMobel/Combat/Numeric.meta | 3 + .../Combat/Numeric/NumericComponent.cs | 16 + .../Combat/Numeric/NumericComponent.cs.meta | 3 + .../Combat/Numeric/NumericModify.cs | 10 + .../Combat/Numeric/NumericModify.cs.meta | 3 + .../Combat/Numeric/NumericModifyCollection.cs | 11 + .../Numeric/NumericModifyCollection.cs.meta | 3 + .../Hotfix.meta} | 2 +- .../Hotfix/Combat.meta} | 2 +- .../BattleSystem/Hotfix/Combat/Attribute.meta | 3 + .../Attribute/GameAttributeComponentSystem.cs | 50 +++ .../GameAttributeComponentSystem.cs.meta | 3 + .../Combat/Attribute/GameAttributeFactory.cs | 14 + .../Attribute/GameAttributeFactory.cs.meta | 3 + .../Combat/Attribute/GameAttributeSystem.cs | 67 ++++ .../Attribute/GameAttributeSystem.cs.meta | 3 + .../Hotfix/Combat/CombatSystem.cs | 42 +++ .../Hotfix/Combat/CombatSystem.cs.meta | 3 + .../Hotfix/Combat/Numeric.meta} | 2 +- .../Combat/Numeric/NumericComponentSystem.cs | 107 ++++++ .../Numeric/NumericComponentSystem.cs.meta | 3 + .../Hotfix/Combat/Numeric/NumericFactory.cs | 20 ++ .../Combat/Numeric/NumericFactory.cs.meta | 3 + .../Numeric/NumericModifyCollectionSystem.cs | 29 ++ .../NumericModifyCollectionSystem.cs.meta | 3 + .../Combat/Numeric/NumericModifySystem.cs | 12 + .../Numeric/NumericModifySystem.cs.meta | 3 + .../GameAbilitySystem/Ability/Fire/Fire.cs | 19 -- .../Ability/Fire/Fire.cs.meta | 2 - .../Ability/Fire/FireAsset.cs | 14 - .../Ability/Fire/FireAsset.cs.meta | 2 - .../Ability/Fire/FireSpec.cs | 31 -- .../Ability/Fire/FireSpec.cs.meta | 2 - .../AbilitySystemComponentExtension.gen.cs | 44 --- ...bilitySystemComponentExtension.gen.cs.meta | 2 - .../RPG/GameAbilitySystem/GAbilityLib.gen.cs | 34 -- .../GameAbilitySystem/GAbilityLib.gen.cs.meta | 2 - .../RPG/GameAbilitySystem/GAttrLib.gen.cs | 41 --- .../GameAbilitySystem/GAttrLib.gen.cs.meta | 2 - .../RPG/GameAbilitySystem/GAttrSetLib.gen.cs | 315 ------------------ .../GameAbilitySystem/GAttrSetLib.gen.cs.meta | 2 - .../RPG/GameAbilitySystem/GTagLib.gen.cs | 49 --- .../RPG/GameAbilitySystem/GTagLib.gen.cs.meta | 2 - .../HotFix/GameLogic/RPG/GameManager.cs | 12 +- .../RPG/GamePlay/ECS/ICombatComponent.cs | 14 - .../RPG/GamePlay/ECS/ICombatComponent.cs.meta | 3 - .../GamePlay/ECS/Mobel/Combat/CombatEntity.cs | 37 -- .../GamePlay/ECS/Mobel/Combat/Component.meta | 3 - .../Combat/Component/AttributeComponent.cs | 118 ------- .../GamePlay/System/GameNet/GameNetSystem.cs | 5 +- EintooAR/Packages/manifest.json | 2 +- EintooAR/Packages/packages-lock.json | 2 +- EintooAR/ProjectSettings/AttributeAsset.asset | 2 +- 75 files changed, 557 insertions(+), 750 deletions(-) rename EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/{GamePlay/ECS.meta => BattleSystem.meta} (100%) create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/BattleSystem.cs create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/BattleSystem.cs.meta rename EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/{GamePlay/ECS => BattleSystem}/Commom.meta (100%) rename EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/{GamePlay/ECS => BattleSystem}/Commom/Enum.meta (100%) create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Enum/Combat.meta create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Enum/Combat/NumericType.cs create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Enum/Combat/NumericType.cs.meta rename EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/{GamePlay/ECS => BattleSystem}/Commom/Enum/EAttributeType.cs (72%) rename EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/{GamePlay/ECS => BattleSystem}/Commom/Enum/EAttributeType.cs.meta (100%) create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Event.meta create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Event/IEventAttributeUpdate.cs create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Event/IEventAttributeUpdate.cs.meta rename EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/{GamePlay/ECS/Mobel.meta => BattleSystem/EntityMobel.meta} (100%) rename EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/{GamePlay/ECS/Mobel => BattleSystem/EntityMobel}/Combat.meta (100%) create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Attribute.meta create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Attribute/Attribute.cs create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Attribute/Attribute.cs.meta create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Attribute/AttributeComponent.cs rename EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/{GamePlay/ECS/Mobel/Combat/Component => BattleSystem/EntityMobel/Combat/Attribute}/AttributeComponent.cs.meta (100%) create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/CombatUnit.cs rename EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/{GamePlay/ECS/Mobel/Combat/CombatEntity.cs.meta => BattleSystem/EntityMobel/Combat/CombatUnit.cs.meta} (100%) create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric.meta create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericComponent.cs create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericComponent.cs.meta create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericModify.cs create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericModify.cs.meta create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericModifyCollection.cs create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericModifyCollection.cs.meta rename EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/{GameAbilitySystem.meta => BattleSystem/Hotfix.meta} (77%) rename EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/{GameAbilitySystem/Ability.meta => BattleSystem/Hotfix/Combat.meta} (77%) create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute.meta create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeComponentSystem.cs create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeComponentSystem.cs.meta create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeFactory.cs create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeFactory.cs.meta create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeSystem.cs create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeSystem.cs.meta create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/CombatSystem.cs create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/CombatSystem.cs.meta rename EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/{GameAbilitySystem/Ability/Fire.meta => BattleSystem/Hotfix/Combat/Numeric.meta} (77%) create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericComponentSystem.cs create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericComponentSystem.cs.meta create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericFactory.cs create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericFactory.cs.meta create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericModifyCollectionSystem.cs create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericModifyCollectionSystem.cs.meta create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericModifySystem.cs create mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericModifySystem.cs.meta delete mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/Fire.cs delete mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/Fire.cs.meta delete mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/FireAsset.cs delete mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/FireAsset.cs.meta delete mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/FireSpec.cs delete mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/FireSpec.cs.meta delete mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/AbilitySystemComponentExtension.gen.cs delete mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/AbilitySystemComponentExtension.gen.cs.meta delete mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAbilityLib.gen.cs delete mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAbilityLib.gen.cs.meta delete mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAttrLib.gen.cs delete mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAttrLib.gen.cs.meta delete mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAttrSetLib.gen.cs delete mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAttrSetLib.gen.cs.meta delete mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GTagLib.gen.cs delete mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GTagLib.gen.cs.meta delete mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/ICombatComponent.cs delete mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/ICombatComponent.cs.meta delete mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Mobel/Combat/CombatEntity.cs delete mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Mobel/Combat/Component.meta delete mode 100644 EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Mobel/Combat/Component/AttributeComponent.cs diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem.meta similarity index 100% rename from EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS.meta rename to EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem.meta diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/BattleSystem.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/BattleSystem.cs new file mode 100644 index 00000000..704e34c1 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/BattleSystem.cs @@ -0,0 +1,32 @@ +using Fantasy.Entitas; +using TEngine; + +namespace GameLogic +{ + public class BattleSystem : BaseLogicSys,IEventAttributeUpdate + { + public override bool OnInit() + { + GameEvent.AddEventListener(IEventAttributeUpdate_Event.AttributeUpdate, + AttributeUpdate); + return base.OnInit(); + } + + public override void OnStart() + { + base.OnStart(); + } + + public override void OnDestroy() + { + base.OnDestroy(); + GameEvent.RemoveEventListener(IEventAttributeUpdate_Event.AttributeUpdate, + AttributeUpdate); + } + + public void AttributeUpdate(AttributeType attributeType, float value) + { + Log.Info(attributeType.ToString() + " : " + value); + } + } +} \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/BattleSystem.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/BattleSystem.cs.meta new file mode 100644 index 00000000..0891b057 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/BattleSystem.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 2e41988cff5945bf996cafcb511ed38c +timeCreated: 1744698261 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Commom.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom.meta similarity index 100% rename from EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Commom.meta rename to EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom.meta diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Commom/Enum.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Enum.meta similarity index 100% rename from EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Commom/Enum.meta rename to EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Enum.meta diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Enum/Combat.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Enum/Combat.meta new file mode 100644 index 00000000..0948a3cb --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Enum/Combat.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 30e8f64e12874c63976fa0992492e464 +timeCreated: 1744689626 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Enum/Combat/NumericType.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Enum/Combat/NumericType.cs new file mode 100644 index 00000000..148b2c26 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Enum/Combat/NumericType.cs @@ -0,0 +1,22 @@ +namespace GameLogic +{ + public enum NumericType + { + /// + /// 基础值添加 + /// + BaseAdd, + /// + /// 基础百分比添加 + /// + BaseAddPct, + /// + /// 最终值添加 + /// + FinalAdd, + /// + /// 最终百分比添加 + /// + FinalPct + } +} \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Enum/Combat/NumericType.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Enum/Combat/NumericType.cs.meta new file mode 100644 index 00000000..1aa7bf06 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Enum/Combat/NumericType.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: e58deca923444384b44bc3dea63bab1a +timeCreated: 1744689635 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Commom/Enum/EAttributeType.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Enum/EAttributeType.cs similarity index 72% rename from EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Commom/Enum/EAttributeType.cs rename to EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Enum/EAttributeType.cs index f6bbce27..0399b810 100644 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Commom/Enum/EAttributeType.cs +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Enum/EAttributeType.cs @@ -2,11 +2,12 @@ using Sirenix.OdinInspector; namespace GameLogic { - public enum EAttributeType + public enum AttributeType { + + None, [LabelText("生命值")]Hp, [LabelText("魔法值")]Mp, - [LabelText("攻击力")]Attack, [LabelText("移动速度")]MoveSpeed, } } \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Commom/Enum/EAttributeType.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Enum/EAttributeType.cs.meta similarity index 100% rename from EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Commom/Enum/EAttributeType.cs.meta rename to EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Enum/EAttributeType.cs.meta diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Event.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Event.meta new file mode 100644 index 00000000..a6e489ae --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Event.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 27625cf85a714acc9c48a0428d5569c7 +timeCreated: 1744696274 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Event/IEventAttributeUpdate.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Event/IEventAttributeUpdate.cs new file mode 100644 index 00000000..4875bd6b --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Event/IEventAttributeUpdate.cs @@ -0,0 +1,12 @@ +using Fantasy.Entitas; +using TEngine; + +namespace GameLogic +{ + + [EventInterface(EEventGroup.GroupLogic)] + public interface IEventAttributeUpdate + { + void AttributeUpdate(AttributeType attributeType,float value); + } +} \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Event/IEventAttributeUpdate.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Event/IEventAttributeUpdate.cs.meta new file mode 100644 index 00000000..4301e4ee --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Commom/Event/IEventAttributeUpdate.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: e970508288fb421197b5249dc3ebfe37 +timeCreated: 1744696279 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Mobel.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel.meta similarity index 100% rename from EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Mobel.meta rename to EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel.meta diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Mobel/Combat.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat.meta similarity index 100% rename from EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Mobel/Combat.meta rename to EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat.meta diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Attribute.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Attribute.meta new file mode 100644 index 00000000..987fca17 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Attribute.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 56c4a0e9d7c04144b57e0835916e6693 +timeCreated: 1744696119 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Attribute/Attribute.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Attribute/Attribute.cs new file mode 100644 index 00000000..47e15588 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Attribute/Attribute.cs @@ -0,0 +1,9 @@ +using Fantasy.Entitas; + +namespace GameLogic +{ + public class GameAttribute : Entity + { + public AttributeType AttributeType; + } +} \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Attribute/Attribute.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Attribute/Attribute.cs.meta new file mode 100644 index 00000000..9effb7c8 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Attribute/Attribute.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: f59051adf2f14430a39ec492e171d9ec +timeCreated: 1744696126 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Attribute/AttributeComponent.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Attribute/AttributeComponent.cs new file mode 100644 index 00000000..64048173 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Attribute/AttributeComponent.cs @@ -0,0 +1,11 @@ +using System.Collections.Generic; +using Fantasy.Entitas; +using GAS.Runtime; + +namespace GameLogic +{ + public class AttributeComponent : Entity + { + public readonly Dictionary Attributes = new Dictionary(); + } +} \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Mobel/Combat/Component/AttributeComponent.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Attribute/AttributeComponent.cs.meta similarity index 100% rename from EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Mobel/Combat/Component/AttributeComponent.cs.meta rename to EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Attribute/AttributeComponent.cs.meta diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/CombatUnit.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/CombatUnit.cs new file mode 100644 index 00000000..9df1f3a4 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/CombatUnit.cs @@ -0,0 +1,11 @@ +using Fantasy.Entitas; +using GAS.Runtime; +using UnityEngine; + +namespace GameLogic +{ + public class CombatUnit : Entity + { + + } +} diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Mobel/Combat/CombatEntity.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/CombatUnit.cs.meta similarity index 100% rename from EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Mobel/Combat/CombatEntity.cs.meta rename to EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/CombatUnit.cs.meta diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric.meta new file mode 100644 index 00000000..31883f64 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 67200439e91a4cebbef820589c225c59 +timeCreated: 1744688715 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericComponent.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericComponent.cs new file mode 100644 index 00000000..ce8b1268 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericComponent.cs @@ -0,0 +1,16 @@ +using System.Collections.Generic; +using Fantasy.Entitas; + +namespace GameLogic +{ + public class NumericComponent : Entity + { + public float Value; + public float BaseValue; + public float BaseAdd; + public float BaseAddPct; + public float FinalAdd; + public float FinalAddPct; + public readonly Dictionary ModifyCollections = new Dictionary(); + } +} \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericComponent.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericComponent.cs.meta new file mode 100644 index 00000000..599713d9 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericComponent.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: ca63bb9196664804bb766677aae6a4c5 +timeCreated: 1744688875 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericModify.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericModify.cs new file mode 100644 index 00000000..f2ba1655 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericModify.cs @@ -0,0 +1,10 @@ +using Fantasy.Entitas; + +namespace GameLogic +{ + public class NumericModify : Entity + { + public float Value; + } + +} \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericModify.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericModify.cs.meta new file mode 100644 index 00000000..17eb539a --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericModify.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: ffafb053a37346e6b8282b45c13cc455 +timeCreated: 1744688983 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericModifyCollection.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericModifyCollection.cs new file mode 100644 index 00000000..8add0590 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericModifyCollection.cs @@ -0,0 +1,11 @@ +using System.Collections.Generic; +using Fantasy.Entitas; + +namespace GameLogic +{ + public class NumericModifyCollection : Entity + { + public float TotalValue = 0; + public readonly List Modifiers = new List(); + } +} \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericModifyCollection.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericModifyCollection.cs.meta new file mode 100644 index 00000000..0a9b5266 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/EntityMobel/Combat/Numeric/NumericModifyCollection.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 81190edc97fa4d01b00ed5012c8fa95e +timeCreated: 1744689104 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix.meta similarity index 77% rename from EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem.meta rename to EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix.meta index 26c74153..ada4ff91 100644 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem.meta +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 4e24d18095dde964a835aa9ee0220519 +guid: e9a676c8c28b8e34a86386a6fae2d6ee folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat.meta similarity index 77% rename from EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability.meta rename to EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat.meta index d556da39..411802b6 100644 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability.meta +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 6c31e74b39dbf604ea6964cd2ea97cc4 +guid: e4aa22096f74feb4eb25608e1a54dd5f folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute.meta new file mode 100644 index 00000000..89fff909 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: d35ed0655a094c73be40e9f641335920 +timeCreated: 1744696112 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeComponentSystem.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeComponentSystem.cs new file mode 100644 index 00000000..10196755 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeComponentSystem.cs @@ -0,0 +1,50 @@ +using System.Collections.Generic; +using Fantasy.Entitas.Interface; +using TEngine; + +namespace GameLogic +{ + + public class GameAttributeComponentAwakeSystem : AwakeSystem + { + protected override void Awake(AttributeComponent self) + { + self.AddAttribute(AttributeType.Hp,1000); + self.AddAttribute(AttributeType.Mp,1000); + self.AddAttribute(AttributeType.MoveSpeed,100); + } + } + + public class GameAttributeComponentDestroySystem : DestroySystem + { + protected override void Destroy(AttributeComponent self) + { + foreach (var attribute in self.Attributes.Values) + { + attribute.Dispose(); + } + self.Attributes.Clear(); + } + } + + public static class GameAttributeComponentSystem + { + public static void AddAttribute(this AttributeComponent self, AttributeType attributeType,float baseValue = 0) + { + if (self.Attributes.TryGetValue((int)attributeType,out var attribute)) + { + Log.Warning($"Attribute {attributeType} already exists.(属性已经存在)"); + return; + } + attribute = GameAttributeFactory.Create(attributeType); + attribute.SetBase(baseValue); + self.Attributes.Add((int)attributeType, attribute); + } + + public static GameAttribute GetAttribute(this AttributeComponent self, AttributeType attributeType) + { + return self.Attributes.GetValueOrDefault((int)attributeType); + } + + } +} \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeComponentSystem.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeComponentSystem.cs.meta new file mode 100644 index 00000000..6c1304fe --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeComponentSystem.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 762295776d374735a314b4512e52f2b5 +timeCreated: 1744696826 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeFactory.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeFactory.cs new file mode 100644 index 00000000..52d63b60 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeFactory.cs @@ -0,0 +1,14 @@ +using Fantasy.Entitas; + +namespace GameLogic +{ + public static class GameAttributeFactory + { + public static GameAttribute Create(AttributeType attributeType) + { + var attribute = Entity.Create(GameManager.GameScene, true, true); + attribute.AttributeType = attributeType; + return attribute; + } + } +} \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeFactory.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeFactory.cs.meta new file mode 100644 index 00000000..833a3290 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeFactory.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: df3a99798d5e4584ac1b38b72b2ac9ee +timeCreated: 1744697416 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeSystem.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeSystem.cs new file mode 100644 index 00000000..74545efe --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeSystem.cs @@ -0,0 +1,67 @@ +using Fantasy.Entitas.Interface; +using TEngine; + +namespace GameLogic +{ + public class AttributeAwakeSystem : AwakeSystem + { + protected override void Awake(GameAttribute self) + { + self.AddComponent(); + } + } + + public class AttributeDestroySystem : DestroySystem + { + protected override void Destroy(GameAttribute self) + { + self.AttributeType = AttributeType.None; + } + } + + public static class GameAttributeSystem + { + public static void SetBase(this GameAttribute self,float baseValue) + { + self.GetComponent().SetBase(NumericType.BaseAdd,baseValue); + self.UpdateHandle(); + + } + + public static void AddBase(this GameAttribute self, float baseValue) + { + self.GetComponent().AddBase(NumericType.BaseAdd,baseValue); + self.UpdateHandle(); + } + + public static void MinusBase(this GameAttribute self, float baseValue) + { + self.GetComponent().MinusBase(NumericType.BaseAdd,baseValue); + self.UpdateHandle(); + } + + public static void AddModify(this GameAttribute self,NumericType numericType,NumericModify modify) + { + self.GetComponent().AddModify(numericType,modify); + self.UpdateHandle(); + } + public static void RemoveModify(this GameAttribute self,NumericType numericType,NumericModify modify) + { + self.GetComponent().RemoveModify(numericType,modify); + self.UpdateHandle(); + } + + + + private static void UpdateAttribute(this GameAttribute self,AttributeType attributeType, float value) + { + GameEvent.Get().AttributeUpdate(attributeType, value); + } + + private static void UpdateHandle(this GameAttribute self) + { + var numericComponent = self.GetComponent(); + self.UpdateAttribute(self.AttributeType, numericComponent.GetValue()); + } + } +} \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeSystem.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeSystem.cs.meta new file mode 100644 index 00000000..5d38cde0 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Attribute/GameAttributeSystem.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 5f717193353e45928f0089f0b4ba4675 +timeCreated: 1744696147 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/CombatSystem.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/CombatSystem.cs new file mode 100644 index 00000000..ad4aad46 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/CombatSystem.cs @@ -0,0 +1,42 @@ +using Fantasy.Entitas.Interface; +using TEngine; +using UnityEngine; + +namespace GameLogic +{ + public class CombatUnitAwakeSystem : AwakeSystem + { + protected override void Awake(CombatUnit self) + { + self.AddComponent(); + } + } + + public class CombatUnitUpdateSystem : UpdateSystem + { + protected override void Update(CombatUnit self) + { + if (Input.GetKeyDown(KeyCode.S)) + { + var hp = self.GetComponent().GetAttribute(AttributeType.Hp); + + if (hp == null) + { + Log.Warning($"Attribute is not exist{hp.AttributeType}"); + return; + } + + var modify = NumericFactory.CreateModify(); + modify.Value = 20; + + hp.AddModify(NumericType.BaseAddPct, modify); + Log.Info("修改生命数值"); + } + } + } + + public static class CombatUnitSystem + { + + } +} \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/CombatSystem.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/CombatSystem.cs.meta new file mode 100644 index 00000000..b87cb229 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/CombatSystem.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 1bbafd8f30924b5e9f9847660559c65c +timeCreated: 1744698864 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric.meta similarity index 77% rename from EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire.meta rename to EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric.meta index a8181c09..e7585136 100644 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire.meta +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: acb10d4e7ff416f4981f2b8f1b0aefc8 +guid: b61b8b26dc492e141938c4cf5c98978b folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericComponentSystem.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericComponentSystem.cs new file mode 100644 index 00000000..6ff8138d --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericComponentSystem.cs @@ -0,0 +1,107 @@ +using Animancer; +using Fantasy.Entitas.Interface; + +namespace GameLogic +{ + + public class NumericComponentAwakeSystem : AwakeSystem + { + protected override void Awake(NumericComponent self) + { + self.Value = 0; + self.BaseValue = 0; + self.BaseAdd = 0; + self.BaseAddPct = 0; + self.FinalAdd = 0; + self.FinalAddPct = 0; + + self.ModifyCollections.Add((int)NumericType.BaseAdd, NumericFactory.CreateModifyCollection()); + self.ModifyCollections.Add((int)NumericType.BaseAddPct, NumericFactory.CreateModifyCollection()); + self.ModifyCollections.Add((int)NumericType.FinalAdd, NumericFactory.CreateModifyCollection()); + self.ModifyCollections.Add((int)NumericType.FinalPct, NumericFactory.CreateModifyCollection()); + } + } + + public class NumericComponentDestroySystem : DestroySystem + { + protected override void Destroy(NumericComponent self) + { + self.Value = 0; + self.BaseValue = 0; + self.BaseAdd = 0; + self.BaseAddPct = 0; + self.FinalAdd = 0; + self.FinalAddPct = 0; + + foreach (var collection in self.ModifyCollections.Values ) + { + collection.Dispose(); + } + self.ModifyCollections.Clear(); + } + } + public static class NumericComponentSystem + { + public static void SetBase(this NumericComponent self,NumericType numericType,float value) + { + self.BaseValue = value; + self.CalculateNumeric(); + } + + public static void AddBase(this NumericComponent self, NumericType numericType, float value) + { + self.BaseValue += value; + self.CalculateNumeric(); + } + + public static void MinusBase(this NumericComponent self, NumericType numericType, float value) + { + self.BaseValue -= value; + self.CalculateNumeric(); + } + + public static void AddModify(this NumericComponent self, NumericType numericType,NumericModify modify) + { + var value = self.ModifyCollections[(int)numericType].AddModify(modify); + SetNumericParameters(self, numericType, value); + } + + public static void RemoveModify(this NumericComponent self, NumericType numericType, NumericModify modify) + { + var value = self.ModifyCollections[(int)numericType].RemoveModify(modify); + if(numericType == NumericType.BaseAdd) self.BaseAdd = value; + if(numericType == NumericType.BaseAddPct) self.BaseAddPct = value; + if(numericType == NumericType.FinalAdd) self.FinalAdd = value; + if(numericType == NumericType.BaseAddPct) self.BaseAddPct = value; + self.CalculateNumeric(); + + } + + + private static void SetNumericParameters(NumericComponent self, NumericType numericType, float value) + { + if(numericType == NumericType.BaseAdd) self.BaseAdd = value; + if(numericType == NumericType.BaseAddPct) self.BaseAddPct = value; + if(numericType == NumericType.FinalAdd) self.FinalAdd = value; + if(numericType == NumericType.BaseAddPct) self.BaseAddPct = value; + self.CalculateNumeric(); + } + private static void CalculateNumeric(this NumericComponent self) + { + var baseValue =(self.BaseValue + self.BaseAdd) * (100 + self.BaseAddPct) / 100f; + var finalValue = (baseValue + self.FinalAdd) * (100 + self.FinalAddPct) / 100f; + self.Value = finalValue; + } + + + public static float GetValue(this NumericComponent self) + { + return self.Value; + } + } + + + + + +} \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericComponentSystem.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericComponentSystem.cs.meta new file mode 100644 index 00000000..6743ea72 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericComponentSystem.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 68517455694e4d179c4e75295a1ff290 +timeCreated: 1744689616 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericFactory.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericFactory.cs new file mode 100644 index 00000000..74c733d5 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericFactory.cs @@ -0,0 +1,20 @@ +using Fantasy.Entitas; + +namespace GameLogic +{ + public static class NumericFactory + { + public static NumericModifyCollection CreateModifyCollection() + { + var collection = Entity.Create(GameManager.GameScene,false,false); + return collection; + } + + public static NumericModify CreateModify() + { + var modify = Entity.Create(GameManager.GameScene,true,true); + return modify; + } + + } +} \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericFactory.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericFactory.cs.meta new file mode 100644 index 00000000..f96b012c --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericFactory.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 5a58c981254c4ea7b67355e475c25985 +timeCreated: 1744695167 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericModifyCollectionSystem.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericModifyCollectionSystem.cs new file mode 100644 index 00000000..76a3cc5e --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericModifyCollectionSystem.cs @@ -0,0 +1,29 @@ +namespace GameLogic +{ + public static class NumericModifyCollectionSystem + { + + public static float AddModify(this NumericModifyCollection self,NumericModify numericModify) + { + self.Modifiers.Add(numericModify); + CalculateValue(self); + return self.TotalValue; + } + public static float RemoveModify(this NumericModifyCollection self, NumericModify numericModify) + { + self.Modifiers.Remove(numericModify); + CalculateValue(self); + return self.TotalValue; + } + private static void CalculateValue(this NumericModifyCollection self) + { + self.TotalValue = 0; + foreach (var modify in self.Modifiers) + { + self.TotalValue += modify.Value; + } + } + + + } +} \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericModifyCollectionSystem.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericModifyCollectionSystem.cs.meta new file mode 100644 index 00000000..bf618569 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericModifyCollectionSystem.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 6605a7d28bc04814b5da01523ec935fd +timeCreated: 1744689192 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericModifySystem.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericModifySystem.cs new file mode 100644 index 00000000..071fcb03 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericModifySystem.cs @@ -0,0 +1,12 @@ +using Fantasy.Entitas.Interface; + +namespace GameLogic +{ + public class NumericModifyDestroySystem : DestroySystem + { + protected override void Destroy(NumericModify self) + { + self.Value = 0; + } + } +} \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericModifySystem.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericModifySystem.cs.meta new file mode 100644 index 00000000..a3ed4492 --- /dev/null +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/BattleSystem/Hotfix/Combat/Numeric/NumericModifySystem.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: e81986e5ada54a62adf92c09ec1b2b53 +timeCreated: 1744701940 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/Fire.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/Fire.cs deleted file mode 100644 index 95a7846f..00000000 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/Fire.cs +++ /dev/null @@ -1,19 +0,0 @@ -using GAS.Runtime; -using UnityEngine; - -namespace GameLogic -{ - public class Fire : AbstractAbility - { - - public GameObject m_bulletPrefab => AbilityAsset.m_bulletPrefab; - public Fire(FireAsset abilityAsset) : base(abilityAsset) - { - } - - public override AbilitySpec CreateSpec(AbilitySystemComponent owner) - { - return new FireSpec(this, owner); // 对应下文Fire的AbilitySpec - } - } -} diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/Fire.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/Fire.cs.meta deleted file mode 100644 index 251e07b2..00000000 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/Fire.cs.meta +++ /dev/null @@ -1,2 +0,0 @@ -fileFormatVersion: 2 -guid: 217d9cb626844b44a82164647f7e5824 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/FireAsset.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/FireAsset.cs deleted file mode 100644 index d3acc68b..00000000 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/FireAsset.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System; -using GAS.Runtime; -using UnityEngine; - -namespace GameLogic -{ - public class FireAsset : AbilityAsset - { - - public GameObject m_bulletPrefab; - public override Type AbilityType() => typeof(Fire); - - } -} diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/FireAsset.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/FireAsset.cs.meta deleted file mode 100644 index d121ad8b..00000000 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/FireAsset.cs.meta +++ /dev/null @@ -1,2 +0,0 @@ -fileFormatVersion: 2 -guid: 6824f0c9f4933ff4c8137122a38997dd \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/FireSpec.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/FireSpec.cs deleted file mode 100644 index a163e8b3..00000000 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/FireSpec.cs +++ /dev/null @@ -1,31 +0,0 @@ -using GAS.Runtime; -using UnityEngine; - -namespace GameLogic -{ - public class FireSpec : AbilitySpec - { - public FireSpec(Fire ability, AbilitySystemComponent owner) : base(ability, owner) - { - } - - public override void ActivateAbility(params object[] args) - { - - var bullet = Object.Instantiate(Data.m_bulletPrefab).GetComponent(); - var transform = Owner.transform; - //bullet.InitAttack(); - TryEndAbility(); - } - - public override void CancelAbility() - { - - } - - public override void EndAbility() - { - //throw new System.NotImplementedException(); - } - } -} diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/FireSpec.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/FireSpec.cs.meta deleted file mode 100644 index 3642b22f..00000000 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/Ability/Fire/FireSpec.cs.meta +++ /dev/null @@ -1,2 +0,0 @@ -fileFormatVersion: 2 -guid: 8ecd860ce3143ad43842b9ffa20084f9 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/AbilitySystemComponentExtension.gen.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/AbilitySystemComponentExtension.gen.cs deleted file mode 100644 index 99a386eb..00000000 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/AbilitySystemComponentExtension.gen.cs +++ /dev/null @@ -1,44 +0,0 @@ -/////////////////////////////////// -//// This is a generated file. //// -//// Do not modify it. //// -/////////////////////////////////// - -using System; -using System.Linq; -using UnityEngine; - -namespace GAS.Runtime -{ - public static class AbilitySystemComponentExtension - { - public static Type[] PresetAttributeSetTypes(this AbilitySystemComponent asc) - { - if (asc.Preset == null) return null; - var attrSetTypes = new Type[asc.Preset.AttributeSets.Length]; - for (var i = 0; i < asc.Preset.AttributeSets.Length; i++) - attrSetTypes[i] = GAttrSetLib.AttrSetTypeDict[asc.Preset.AttributeSets[i]]; - return attrSetTypes; - } - - public static GameplayTag[] PresetBaseTags(this AbilitySystemComponent asc) - { - if (asc.Preset == null) return null; - return asc.Preset.BaseTags; - } - - public static void InitWithPreset(this AbilitySystemComponent asc, int level, AbilitySystemComponentPreset preset = null) - { - if (preset != null) asc.SetPreset(preset); - if (asc.Preset == null) return; - -#if UNITY_EDITOR - if (asc.Preset.BaseAbilities != null && asc.Preset.BaseAbilities.Any(x => x == null)) - { - Debug.LogWarning($"BaseAbilities contains null in preset: {asc.Preset.name}"); - } -#endif - - asc.Init(asc.PresetBaseTags(), asc.PresetAttributeSetTypes(), asc.Preset.BaseAbilities, level); - } - } -} \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/AbilitySystemComponentExtension.gen.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/AbilitySystemComponentExtension.gen.cs.meta deleted file mode 100644 index 3fbd4492..00000000 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/AbilitySystemComponentExtension.gen.cs.meta +++ /dev/null @@ -1,2 +0,0 @@ -fileFormatVersion: 2 -guid: 6992ebd7ea621634a80aca4770919b2e \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAbilityLib.gen.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAbilityLib.gen.cs deleted file mode 100644 index 2afa3965..00000000 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAbilityLib.gen.cs +++ /dev/null @@ -1,34 +0,0 @@ -/////////////////////////////////// -//// This is a generated file. //// -//// Do not modify it. //// -/////////////////////////////////// - -using System; -using System.Collections.Generic; - -namespace GAS.Runtime -{ - public static class GAbilityLib - { - public struct AbilityInfo - { - public string Name; - public string AssetPath; - public Type AbilityClassType; - } - - public static AbilityInfo Bomb = new AbilityInfo { Name = "Bomb", AssetPath = "Assets/AssetRaw/Configs/GAS/GameplayAbilityLib/Bomb.asset",AbilityClassType = typeof(GAS.Runtime.TimelineAbility) }; - - public static AbilityInfo Fire = new AbilityInfo { Name = "Fire", AssetPath = "Assets/AssetRaw/Configs/GAS/GameplayAbilityLib/Fire.asset",AbilityClassType = typeof(GameLogic.Fire) }; - - public static AbilityInfo Sweep = new AbilityInfo { Name = "Sweep", AssetPath = "Assets/AssetRaw/Configs/GAS/GameplayAbilityLib/Sweep.asset",AbilityClassType = typeof(GAS.Runtime.TimelineAbility) }; - - - public static Dictionary AbilityMap = new Dictionary - { - ["Bomb"] = Bomb, - ["Fire"] = Fire, - ["Sweep"] = Sweep, - }; - } -} \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAbilityLib.gen.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAbilityLib.gen.cs.meta deleted file mode 100644 index a46e653a..00000000 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAbilityLib.gen.cs.meta +++ /dev/null @@ -1,2 +0,0 @@ -fileFormatVersion: 2 -guid: df6bef22cd394324688e0bf862d9f41f \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAttrLib.gen.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAttrLib.gen.cs deleted file mode 100644 index 3da225a8..00000000 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAttrLib.gen.cs +++ /dev/null @@ -1,41 +0,0 @@ -/////////////////////////////////// -//// This is a generated file. //// -//// Do not modify it. //// -/////////////////////////////////// - -using System.Collections.Generic; - -namespace GAS.Runtime -{ - public static class GAttrLib - { - /// - /// 生命值 - /// - public const string HP = "HP"; - - /// - /// 移动速度 - /// - public const string Speed = "Speed"; - - /// - /// 攻击力 - /// - public const string Attack = "Attack"; - - /// - /// 魔法值 - /// - public const string MP = "MP"; - - // For facilitating the creation of a Value Dropdown in the editor. - public static List AttributeNames = new List() - { - "HP", - "Speed", - "Attack", - "MP", - }; - } -} \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAttrLib.gen.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAttrLib.gen.cs.meta deleted file mode 100644 index ed5b63fd..00000000 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAttrLib.gen.cs.meta +++ /dev/null @@ -1,2 +0,0 @@ -fileFormatVersion: 2 -guid: 84494e6afc8339a48914aa0cced3aa46 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAttrSetLib.gen.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAttrSetLib.gen.cs deleted file mode 100644 index 7281262e..00000000 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAttrSetLib.gen.cs +++ /dev/null @@ -1,315 +0,0 @@ -/////////////////////////////////// -//// This is a generated file. //// -//// Do not modify it. //// -/////////////////////////////////// - -using System; -using System.Collections.Generic; - -namespace GAS.Runtime -{ - public class AS_Bullet : AttributeSet - { - #region Attack - - /// - /// 攻击力 - /// - public AttributeBase Attack { get; } = new ("AS_Bullet", "Attack", 0f, CalculateMode.Stacking, (SupportedOperation)31, 0, 150); - - public void InitAttack(float value) - { - Attack.SetBaseValue(value); - Attack.SetCurrentValue(value); - } - - public void SetCurrentAttack(float value) - { - Attack.SetCurrentValue(value); - } - - public void SetBaseAttack(float value) - { - Attack.SetBaseValue(value); - } - - public void SetMinAttack(float value) - { - Attack.SetMinValue(value); - } - - public void SetMaxAttack(float value) - { - Attack.SetMaxValue(value); - } - - public void SetMinMaxAttack(float min, float max) - { - Attack.SetMinMaxValue(min, max); - } - - #endregion Attack - - public override AttributeBase this[string key] - { - get - { - switch (key) - { - case "Attack": - return Attack; - } - - return null; - } - } - - public override string[] AttributeNames { get; } = - { - "Attack", - }; - - public override void SetOwner(AbilitySystemComponent owner) - { - _owner = owner; - Attack.SetOwner(owner); - } - - public static class Lookup - { - public const string Attack = "AS_Bullet.Attack"; - } - } - - public class AS_Fight : AttributeSet - { - #region Attack - - /// - /// 攻击力 - /// - public AttributeBase Attack { get; } = new ("AS_Fight", "Attack", 0f, CalculateMode.Stacking, (SupportedOperation)31, 0, 150); - - public void InitAttack(float value) - { - Attack.SetBaseValue(value); - Attack.SetCurrentValue(value); - } - - public void SetCurrentAttack(float value) - { - Attack.SetCurrentValue(value); - } - - public void SetBaseAttack(float value) - { - Attack.SetBaseValue(value); - } - - public void SetMinAttack(float value) - { - Attack.SetMinValue(value); - } - - public void SetMaxAttack(float value) - { - Attack.SetMaxValue(value); - } - - public void SetMinMaxAttack(float min, float max) - { - Attack.SetMinMaxValue(min, max); - } - - #endregion Attack - - #region HP - - /// - /// 生命值 - /// - public AttributeBase HP { get; } = new ("AS_Fight", "HP", 0f, CalculateMode.Stacking, (SupportedOperation)31, 0, 10000); - - public void InitHP(float value) - { - HP.SetBaseValue(value); - HP.SetCurrentValue(value); - } - - public void SetCurrentHP(float value) - { - HP.SetCurrentValue(value); - } - - public void SetBaseHP(float value) - { - HP.SetBaseValue(value); - } - - public void SetMinHP(float value) - { - HP.SetMinValue(value); - } - - public void SetMaxHP(float value) - { - HP.SetMaxValue(value); - } - - public void SetMinMaxHP(float min, float max) - { - HP.SetMinMaxValue(min, max); - } - - #endregion HP - - #region MP - - /// - /// 魔法值 - /// - public AttributeBase MP { get; } = new ("AS_Fight", "MP", 0f, CalculateMode.Stacking, (SupportedOperation)31, 0, 1000); - - public void InitMP(float value) - { - MP.SetBaseValue(value); - MP.SetCurrentValue(value); - } - - public void SetCurrentMP(float value) - { - MP.SetCurrentValue(value); - } - - public void SetBaseMP(float value) - { - MP.SetBaseValue(value); - } - - public void SetMinMP(float value) - { - MP.SetMinValue(value); - } - - public void SetMaxMP(float value) - { - MP.SetMaxValue(value); - } - - public void SetMinMaxMP(float min, float max) - { - MP.SetMinMaxValue(min, max); - } - - #endregion MP - - #region Speed - - /// - /// 移动速度 - /// - public AttributeBase Speed { get; } = new ("AS_Fight", "Speed", 0f, CalculateMode.Stacking, (SupportedOperation)31, 0, 3.402823E+38f); - - public void InitSpeed(float value) - { - Speed.SetBaseValue(value); - Speed.SetCurrentValue(value); - } - - public void SetCurrentSpeed(float value) - { - Speed.SetCurrentValue(value); - } - - public void SetBaseSpeed(float value) - { - Speed.SetBaseValue(value); - } - - public void SetMinSpeed(float value) - { - Speed.SetMinValue(value); - } - - public void SetMaxSpeed(float value) - { - Speed.SetMaxValue(value); - } - - public void SetMinMaxSpeed(float min, float max) - { - Speed.SetMinMaxValue(min, max); - } - - #endregion Speed - - public override AttributeBase this[string key] - { - get - { - switch (key) - { - case "HP": - return HP; - case "Speed": - return Speed; - case "Attack": - return Attack; - case "MP": - return MP; - } - - return null; - } - } - - public override string[] AttributeNames { get; } = - { - "HP", - "Speed", - "Attack", - "MP", - }; - - public override void SetOwner(AbilitySystemComponent owner) - { - _owner = owner; - HP.SetOwner(owner); - Speed.SetOwner(owner); - Attack.SetOwner(owner); - MP.SetOwner(owner); - } - - public static class Lookup - { - public const string HP = "AS_Fight.HP"; - public const string Speed = "AS_Fight.Speed"; - public const string Attack = "AS_Fight.Attack"; - public const string MP = "AS_Fight.MP"; - } - } - - public static class GAttrSetLib - { - public static readonly Dictionary AttrSetTypeDict = new Dictionary() - { - { "Fight", typeof(AS_Fight) }, - { "Bullet", typeof(AS_Bullet) }, - }; - - public static readonly Dictionary TypeToName = new Dictionary - { - { typeof(AS_Fight), nameof(AS_Fight) }, - { typeof(AS_Bullet), nameof(AS_Bullet) }, - }; - - public static List AttributeFullNames = new List() - { - "AS_Fight.HP", - "AS_Fight.Speed", - "AS_Fight.Attack", - "AS_Fight.MP", - "AS_Bullet.Attack", - }; - } -} \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAttrSetLib.gen.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAttrSetLib.gen.cs.meta deleted file mode 100644 index 63794a18..00000000 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GAttrSetLib.gen.cs.meta +++ /dev/null @@ -1,2 +0,0 @@ -fileFormatVersion: 2 -guid: c28e24a4401272a4ba8ae2194b529340 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GTagLib.gen.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GTagLib.gen.cs deleted file mode 100644 index b9e43e87..00000000 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GTagLib.gen.cs +++ /dev/null @@ -1,49 +0,0 @@ -/////////////////////////////////// -//// This is a generated file. //// -//// Do not modify it. //// -/////////////////////////////////// - -using System.Collections.Generic; - -namespace GAS.Runtime -{ - public static class GTagLib - { - public static GameplayTag Ability { get; } = new GameplayTag("Ability"); - public static GameplayTag Ability_Die { get; } = new GameplayTag("Ability.Die"); - public static GameplayTag Ability_Fire { get; } = new GameplayTag("Ability.Fire"); - public static GameplayTag Ability_Jump { get; } = new GameplayTag("Ability.Jump"); - public static GameplayTag Ability_Move { get; } = new GameplayTag("Ability.Move"); - public static GameplayTag Ability_NormalAttack { get; } = new GameplayTag("Ability.NormalAttack"); - public static GameplayTag CD { get; } = new GameplayTag("CD"); - public static GameplayTag CD_Sweep { get; } = new GameplayTag("CD.Sweep"); - public static GameplayTag Event { get; } = new GameplayTag("Event"); - public static GameplayTag Event_Moving { get; } = new GameplayTag("Event.Moving"); - public static GameplayTag Faction { get; } = new GameplayTag("Faction"); - public static GameplayTag Faction_Emeny { get; } = new GameplayTag("Faction.Emeny"); - public static GameplayTag Faction_Player { get; } = new GameplayTag("Faction.Player"); - public static GameplayTag State { get; } = new GameplayTag("State"); - public static GameplayTag State_Debuff { get; } = new GameplayTag("State.Debuff"); - public static GameplayTag State_Debuff_Cold { get; } = new GameplayTag("State.Debuff.Cold"); - - public static Dictionary TagMap = new Dictionary - { - ["Ability"] = Ability, - ["Ability.Die"] = Ability_Die, - ["Ability.Fire"] = Ability_Fire, - ["Ability.Jump"] = Ability_Jump, - ["Ability.Move"] = Ability_Move, - ["Ability.NormalAttack"] = Ability_NormalAttack, - ["CD"] = CD, - ["CD.Sweep"] = CD_Sweep, - ["Event"] = Event, - ["Event.Moving"] = Event_Moving, - ["Faction"] = Faction, - ["Faction.Emeny"] = Faction_Emeny, - ["Faction.Player"] = Faction_Player, - ["State"] = State, - ["State.Debuff"] = State_Debuff, - ["State.Debuff.Cold"] = State_Debuff_Cold, - }; - } -} \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GTagLib.gen.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GTagLib.gen.cs.meta deleted file mode 100644 index 72e40377..00000000 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameAbilitySystem/GTagLib.gen.cs.meta +++ /dev/null @@ -1,2 +0,0 @@ -fileFormatVersion: 2 -guid: 9c0673795bc107440961382b92f70529 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameManager.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameManager.cs index 9c2abf63..efc5c721 100644 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameManager.cs +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GameManager.cs @@ -14,7 +14,7 @@ namespace GameLogic public class GameManager : SingletonBehaviour { - public static Scene GameScene { get; set; } + public static Scene GameScene => GameNetSystem.Instance.m_gameScene; private List _logicSystems = new List(); private IFsm _modeFsm; @@ -56,6 +56,7 @@ namespace GameLogic _logicSystems.Add(WeatherSystem.Instance); _logicSystems.Add(CameraSystem.Instance); _logicSystems.Add(GameNetSystem.Instance); + _logicSystems.Add(BattleSystem.Instance); for (int i = 0; i < _logicSystems.Count; i++) { @@ -71,7 +72,14 @@ namespace GameLogic _modeFsm = GameModule.Fsm.CreateFsm("ModeFsm", this,_states); _modeFsm.Start(); } - + + private void Start() + { + foreach (var system in _logicSystems.ToArray()) + { + system.OnStart(); + } + } public void Update() { diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/ICombatComponent.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/ICombatComponent.cs deleted file mode 100644 index a78bbe77..00000000 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/ICombatComponent.cs +++ /dev/null @@ -1,14 +0,0 @@ -using GAS.Runtime; - -namespace GameLogic -{ - public interface ICombatComponent - { - AbilitySystemComponent ASC { get;} - void Init(); - void OnEnable(); - void OnUpdate(); - void OnDisable(); - void OnDestroy(); - } -} \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/ICombatComponent.cs.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/ICombatComponent.cs.meta deleted file mode 100644 index c03aeb4a..00000000 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/ICombatComponent.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 42076b4c306f433aa7a2eaa20d8edeea -timeCreated: 1743497803 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Mobel/Combat/CombatEntity.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Mobel/Combat/CombatEntity.cs deleted file mode 100644 index 3690cd67..00000000 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Mobel/Combat/CombatEntity.cs +++ /dev/null @@ -1,37 +0,0 @@ -using Fantasy.Entitas; -using GAS.Runtime; -using UnityEngine; - -namespace GameLogic -{ - public class CombatEntity : Entity - { - private AbilitySystemComponent m_abilitySystem; - public AbilitySystemComponent ASC => m_abilitySystem; - #region 生命周期 - /// - /// 初始化 - /// - public void Init(AbilitySystemComponent asc) - { - m_abilitySystem = asc; - AddComponent(); - - } - - private void OnUpdate() - { - - } - - private void OnDestroy() - { - - } - #endregion - - - - - } -} diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Mobel/Combat/Component.meta b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Mobel/Combat/Component.meta deleted file mode 100644 index f85a789e..00000000 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Mobel/Combat/Component.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: ebcad2909c4f452ba2b8940ebde8eaab -timeCreated: 1743497187 \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Mobel/Combat/Component/AttributeComponent.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Mobel/Combat/Component/AttributeComponent.cs deleted file mode 100644 index 6bc1f3aa..00000000 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/ECS/Mobel/Combat/Component/AttributeComponent.cs +++ /dev/null @@ -1,118 +0,0 @@ -using Fantasy.Entitas; -using GAS.Runtime; - -namespace GameLogic -{ - public class AttributeComponent : Entity,ICombatComponent - { - public AbilitySystemComponent ASC => (Parent as CombatEntity)?.ASC; - #region 生命周期 - public void Init() - { - var roleUnit = DataSystem.Instance.GetData().GetRoleUnit((int)Parent.Id); - if(roleUnit == null) return; - ASC.AttrSet().InitHP(roleUnit.Hp); - ASC.AttrSet().InitMP(roleUnit.Mp); - ASC.AttrSet().InitAttack(roleUnit.Attck); - ASC.AttrSet().InitSpeed(roleUnit.MoveSpeed); - } - - public void OnEnable() - { - - } - - public void OnUpdate() - { - - } - - public void OnDisable() - { - - } - - public void OnDestroy() - { - - } - - #endregion - - public void SetBaseValue(EAttributeType attribute,float value) - { - switch (attribute) - { - case EAttributeType.Hp: - ASC.AttrSet().SetBaseHP(value); - break; - case EAttributeType.Mp: - ASC.AttrSet().SetBaseMP(value); - break; - case EAttributeType.Attack: - ASC.AttrSet().SetBaseAttack(value); - break; - case EAttributeType.MoveSpeed: - ASC.AttrSet().SetBaseSpeed(value); - break; - } - } - - public void SetCurrentValue(EAttributeType attribute,float value) - { - switch (attribute) - { - case EAttributeType.Hp: - ASC.AttrSet().SetCurrentHP(value); - break; - case EAttributeType.Mp: - ASC.AttrSet().SetCurrentMP(value); - break; - case EAttributeType.Attack: - ASC.AttrSet().SetCurrentAttack(value); - break; - case EAttributeType.MoveSpeed: - ASC.AttrSet().SetCurrentSpeed(value); - break; - } - } - - public void SetMaxValue(EAttributeType attribute,float value) - { - switch (attribute) - { - case EAttributeType.Hp: - ASC.AttrSet().SetMaxHP(value); - break; - case EAttributeType.Mp: - ASC.AttrSet().SetMaxMP(value); - break; - case EAttributeType.Attack: - ASC.AttrSet().SetMaxAttack(value); - break; - case EAttributeType.MoveSpeed: - ASC.AttrSet().SetMaxSpeed(value); - break; - } - } - - public void SetMinValue(EAttributeType attribute,float value) - { - switch (attribute) - { - case EAttributeType.Hp: - ASC.AttrSet().SetMinHP(value); - break; - case EAttributeType.Mp: - ASC.AttrSet().SetMinMP(value); - break; - case EAttributeType.Attack: - ASC.AttrSet().SetMinAttack(value); - break; - case EAttributeType.MoveSpeed: - ASC.AttrSet().SetMinSpeed(value); - break; - } - } - } -} \ No newline at end of file diff --git a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/System/GameNet/GameNetSystem.cs b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/System/GameNet/GameNetSystem.cs index 5835bc64..4003cff2 100644 --- a/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/System/GameNet/GameNetSystem.cs +++ b/EintooAR/Assets/GameScripts/HotFix/GameLogic/RPG/GamePlay/System/GameNet/GameNetSystem.cs @@ -36,14 +36,15 @@ namespace GameLogic // 创建一个Scene,这个Scene代表一个客户端的场景,客户端的所有逻辑都可以写这里 // 如果有自己的框架,也可以就单纯拿这个Scene做网络通讯也没问题。 m_gameScene = await Scene.Create(SceneRuntimeType.MainThread); - GameManager.GameScene = m_gameScene; if (m_gameScene == null) { Log.Info("连接服务器失败"); return; } - + InitCommand(); + + CombatUnit combat = Entity.Create(GameManager.GameScene,true,true); } diff --git a/EintooAR/Packages/manifest.json b/EintooAR/Packages/manifest.json index d83d4dc2..51deab93 100644 --- a/EintooAR/Packages/manifest.json +++ b/EintooAR/Packages/manifest.json @@ -2,7 +2,7 @@ "dependencies": { "com.code-philosophy.hybridclr": "https://gitee.com/focus-creative-games/hybridclr_unity.git", "com.coffee.ui-effect": "5.6.1", - "com.fantasy.unity": "2024.2.24", + "com.fantasy.unity": "2024.2.25", "com.tuyoogame.yooasset": "2.1.2", "com.unity.2d.sprite": "1.0.0", "com.unity.2d.tilemap": "1.0.0", diff --git a/EintooAR/Packages/packages-lock.json b/EintooAR/Packages/packages-lock.json index c4a73d63..cf9bf8ff 100644 --- a/EintooAR/Packages/packages-lock.json +++ b/EintooAR/Packages/packages-lock.json @@ -29,7 +29,7 @@ "dependencies": {} }, "com.fantasy.unity": { - "version": "2024.2.24", + "version": "2024.2.25", "depth": 0, "source": "registry", "dependencies": { diff --git a/EintooAR/ProjectSettings/AttributeAsset.asset b/EintooAR/ProjectSettings/AttributeAsset.asset index 49fc0160..87671133 100644 --- a/EintooAR/ProjectSettings/AttributeAsset.asset +++ b/EintooAR/ProjectSettings/AttributeAsset.asset @@ -30,7 +30,7 @@ MonoBehaviour: LimitMinValue: 1 MinValue: 0 LimitMaxValue: 1 - MaxValue: 3.4028235e+38 + MaxValue: 300 - Name: Attack Comment: "\u653B\u51FB\u529B" CalculateMode: 0