diff --git a/BlueWater/Assets/02.Scritps/Ai/AiController.cs b/BlueWater/Assets/02.Scritps/Ai/AiController.cs index be962e5a5..1fd0dc23d 100644 --- a/BlueWater/Assets/02.Scritps/Ai/AiController.cs +++ b/BlueWater/Assets/02.Scritps/Ai/AiController.cs @@ -1,28 +1,76 @@ using System; using UnityEngine; +using Random = UnityEngine.Random; // ReSharper disable once CheckNamespace namespace BlueWater { [Serializable] - public abstract class AiController : MonoBehaviour, IAiStat + public abstract class AiController : MonoBehaviour, IDamageable { - #region interface property + #region Property and variable - [field: SerializeField] public AiStat AiStat { get; set; } = new(); + private Animator aiAnimator; + + private static readonly int DeathHash = Animator.StringToHash("Death"); + private static readonly int DamageHash = Animator.StringToHash("TakeDamage"); #endregion + #region abstract function + + //protected abstract void Attack(); + + #endregion + #region Unity built-in function private void Awake() { - SetCurrentHp(AiStat.maxHp); + aiAnimator = Utils.GetComponentAndAssert(transform); } private void Start() { + SetCurrentHp(AiStat.maxHp); + } + + #endregion + + #region interface property and function + + [field: SerializeField] public AiStat AiStat { get; set; } = new(); + + public void TakeDamage(AiStat attacker, AiStat defender) + { + // 회피 성공 체크 + if (Random.Range(0, 100) < defender.avoidanceRate) + { + // TODO : 회피 처리 + return; + } + var finalDamage = Utils.CalcDamage(attacker, defender); + + // 방패 막기 체크 + if (finalDamage == 0f) + { + // TODO : 방패로 막힘 처리(애니메이션 등) + return; + } + + var changeHp = Mathf.Max(defender.currentHp - finalDamage, 0); + SetCurrentHp(changeHp); + + // 죽었는지 체크 + if (changeHp == 0f) + { + // TODO : 죽었을 때 처리(죽는 애니메이션 이후 사라지는 효과 등) + aiAnimator.SetTrigger(DeathHash); + return; + } + + aiAnimator.SetTrigger(DamageHash); } #endregion diff --git a/BlueWater/Assets/02.Scritps/Ai/AiStat.cs b/BlueWater/Assets/02.Scritps/Ai/AiStat.cs index 6c23ed5d4..ece6bcb5f 100644 --- a/BlueWater/Assets/02.Scritps/Ai/AiStat.cs +++ b/BlueWater/Assets/02.Scritps/Ai/AiStat.cs @@ -33,5 +33,8 @@ namespace BlueWater [Tooltip("방패 캐릭터가 관통 당할 확률을 줄여주는 관통 저항률")] [Range(0, 100)] public int penetrationResistivity; + + [Tooltip("공격을 피할 수 있는 회피율")] + [Range(0, 100)] public int avoidanceRate; } } \ No newline at end of file diff --git a/BlueWater/Assets/02.Scritps/Interface/IAiBase.cs b/BlueWater/Assets/02.Scritps/Interface/IAiBase.cs new file mode 100644 index 000000000..e0a271316 --- /dev/null +++ b/BlueWater/Assets/02.Scritps/Interface/IAiBase.cs @@ -0,0 +1,12 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +// ReSharper disable once CheckNamespace +namespace BlueWater +{ + public interface IAiBase + { + + } +} \ No newline at end of file diff --git a/BlueWater/Assets/02.Scritps/Interface/IAiBase.cs.meta b/BlueWater/Assets/02.Scritps/Interface/IAiBase.cs.meta new file mode 100644 index 000000000..2f49f7343 --- /dev/null +++ b/BlueWater/Assets/02.Scritps/Interface/IAiBase.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9768d3f2214ba044f8af4513230ebab2 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/BlueWater/Assets/02.Scritps/Interface/IAiStat.cs b/BlueWater/Assets/02.Scritps/Interface/IAiStat.cs index 9cfd27cff..a0928a68b 100644 --- a/BlueWater/Assets/02.Scritps/Interface/IAiStat.cs +++ b/BlueWater/Assets/02.Scritps/Interface/IAiStat.cs @@ -1,7 +1,7 @@ // ReSharper disable once CheckNamespace namespace BlueWater { - public interface IAiStat + public interface IAiStat : IAiBase { public AiStat AiStat { get; set; } } diff --git a/BlueWater/Assets/02.Scritps/Interface/IDamageable.cs b/BlueWater/Assets/02.Scritps/Interface/IDamageable.cs new file mode 100644 index 000000000..a85baca92 --- /dev/null +++ b/BlueWater/Assets/02.Scritps/Interface/IDamageable.cs @@ -0,0 +1,12 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +// ReSharper disable once CheckNamespace +namespace BlueWater +{ + public interface IDamageable : IAiStat + { + public void TakeDamage(AiStat attacker, AiStat defender); + } +} \ No newline at end of file diff --git a/BlueWater/Assets/02.Scritps/Interface/IDamageable.cs.meta b/BlueWater/Assets/02.Scritps/Interface/IDamageable.cs.meta new file mode 100644 index 000000000..53805376b --- /dev/null +++ b/BlueWater/Assets/02.Scritps/Interface/IDamageable.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 907795d3776a2264991fe009b5ef974a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/BlueWater/Assets/02.Scritps/Utility/Utils.cs b/BlueWater/Assets/02.Scritps/Utility/Utils.cs index 81bf26a36..17bc908a9 100644 --- a/BlueWater/Assets/02.Scritps/Utility/Utils.cs +++ b/BlueWater/Assets/02.Scritps/Utility/Utils.cs @@ -49,5 +49,32 @@ namespace BlueWater var methodName = method.Name; UnityEngine.Debug.Log($"Call {className}.{methodName}"); } + + public static float CalcDamage(AiStat attacker, AiStat defender) + { + var finalDamage = 0f; + + if (defender.usingShield) + { + var penetrationChance = attacker.shieldPenetrationRate - + (attacker.shieldPenetrationRate * defender.penetrationResistivity * 0.01f); + + // 방패를 관통했다면, + if (Random.Range(0, 100) < penetrationChance) + { + finalDamage = attacker.atk - defender.def; + finalDamage = Mathf.Max(finalDamage, 0); + return finalDamage; + } + + // 방패를 관통하지 못 함 + return 0; + } + + finalDamage = attacker.atk - defender.def; + finalDamage = Mathf.Max(finalDamage, 0); + + return finalDamage; + } } } \ No newline at end of file diff --git a/BlueWater/Assets/05.Prefabs/Enemy/Archer_E.prefab b/BlueWater/Assets/05.Prefabs/Enemy/Archer_E.prefab index 6ed653a69..5f4c688fc 100644 --- a/BlueWater/Assets/05.Prefabs/Enemy/Archer_E.prefab +++ b/BlueWater/Assets/05.Prefabs/Enemy/Archer_E.prefab @@ -8839,8 +8839,10 @@ GameObject: m_Component: - component: {fileID: 438990} - component: {fileID: 9542722} + - component: {fileID: 7168357575438651213} + - component: {fileID: 7791165217067826530} - component: {fileID: 7907774551260894579} - m_Layer: 0 + m_Layer: 9 m_Name: Archer_E m_TagString: Untagged m_Icon: {fileID: 0} @@ -8860,6 +8862,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: + - {fileID: 8358902892934034910} - {fileID: 413610} - {fileID: 475862} - {fileID: 420290} @@ -8945,6 +8948,56 @@ Animator: m_AllowConstantClipSamplingOptimization: 1 m_KeepAnimatorStateOnDisable: 0 m_WriteDefaultValuesOnDisable: 0 +--- !u!54 &7168357575438651213 +Rigidbody: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 155132} + serializedVersion: 4 + m_Mass: 1 + m_Drag: 0 + m_AngularDrag: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 + m_UseGravity: 1 + m_IsKinematic: 0 + m_Interpolate: 0 + m_Constraints: 0 + m_CollisionDetection: 0 +--- !u!136 &7791165217067826530 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 155132} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.3 + m_Height: 1.6 + m_Direction: 1 + m_Center: {x: 0, y: 0.8, z: 0} --- !u!114 &7907774551260894579 MonoBehaviour: m_ObjectHideFlags: 0 @@ -8962,8 +9015,12 @@ MonoBehaviour: currentHp: 0 atk: 50 def: 0 - spd: 0 + moveSpd: 0 + atkSpd: 0 usingShield: 0 + shieldPenetrationRate: 25 + penetrationResistivity: 0 + avoidanceRate: 20 --- !u!1 &156456 GameObject: m_ObjectHideFlags: 0 @@ -19204,6 +19261,61 @@ SkinnedMeshRenderer: m_Center: {x: -0.09100516, y: -0.05209069, z: 0.00000014901161} m_Extent: {x: 0.56203955, y: 0.351475, z: 0.7707151} m_DirtyAABB: 0 +--- !u!1 &8201522163013243715 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8358902892934034910} + - component: {fileID: 8182090084654357926} + m_Layer: 12 + m_Name: HitBox + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8358902892934034910 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8201522163013243715} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 438990} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!136 &8182090084654357926 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8201522163013243715} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 1 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.3 + m_Height: 1.6 + m_Direction: 1 + m_Center: {x: 0, y: 0.8, z: 0} --- !u!1 &8853814020345294409 GameObject: m_ObjectHideFlags: 0 diff --git a/BlueWater/Assets/05.Prefabs/Enemy/SpearKight_E.prefab b/BlueWater/Assets/05.Prefabs/Enemy/SpearKight_E.prefab index f26f9646a..8d9044044 100644 --- a/BlueWater/Assets/05.Prefabs/Enemy/SpearKight_E.prefab +++ b/BlueWater/Assets/05.Prefabs/Enemy/SpearKight_E.prefab @@ -8839,6 +8839,8 @@ GameObject: m_Component: - component: {fileID: 438990} - component: {fileID: 9542722} + - component: {fileID: 6873184234425177088} + - component: {fileID: 3683547817894632574} - component: {fileID: 7182214291447694529} m_Layer: 0 m_Name: SpearKight_E @@ -8860,6 +8862,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: + - {fileID: 688715153218578868} - {fileID: 413610} - {fileID: 475862} - {fileID: 420290} @@ -8945,6 +8948,56 @@ Animator: m_AllowConstantClipSamplingOptimization: 1 m_KeepAnimatorStateOnDisable: 0 m_WriteDefaultValuesOnDisable: 0 +--- !u!54 &6873184234425177088 +Rigidbody: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 155132} + serializedVersion: 4 + m_Mass: 1 + m_Drag: 0 + m_AngularDrag: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 + m_UseGravity: 1 + m_IsKinematic: 0 + m_Interpolate: 0 + m_Constraints: 0 + m_CollisionDetection: 0 +--- !u!136 &3683547817894632574 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 155132} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.3 + m_Height: 1.6 + m_Direction: 1 + m_Center: {x: 0, y: 0.8, z: 0} --- !u!114 &7182214291447694529 MonoBehaviour: m_ObjectHideFlags: 0 @@ -8958,12 +9011,16 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: k__BackingField: - maxHp: 0 + maxHp: 60 currentHp: 0 - atk: 30 + atk: 40 def: 10 - spd: 0 + moveSpd: 0 + atkSpd: 0 usingShield: 1 + shieldPenetrationRate: 75 + penetrationResistivity: 0 + avoidanceRate: 10 --- !u!1 &156456 GameObject: m_ObjectHideFlags: 0 @@ -19204,6 +19261,61 @@ SkinnedMeshRenderer: m_Center: {x: -0.09100516, y: -0.05209069, z: 0.00000014901161} m_Extent: {x: 0.56203955, y: 0.351475, z: 0.7707151} m_DirtyAABB: 0 +--- !u!1 &8500999496236282310 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 688715153218578868} + - component: {fileID: 5959726075807422171} + m_Layer: 12 + m_Name: HitBox + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &688715153218578868 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8500999496236282310} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 438990} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!136 &5959726075807422171 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8500999496236282310} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 1 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.3 + m_Height: 1.6 + m_Direction: 1 + m_Center: {x: 0, y: 0.8, z: 0} --- !u!1 &8853814020345294409 GameObject: m_ObjectHideFlags: 0 diff --git a/BlueWater/Assets/05.Prefabs/Enemy/Spearman_E.prefab b/BlueWater/Assets/05.Prefabs/Enemy/Spearman_E.prefab index d1657029c..df452a2c9 100644 --- a/BlueWater/Assets/05.Prefabs/Enemy/Spearman_E.prefab +++ b/BlueWater/Assets/05.Prefabs/Enemy/Spearman_E.prefab @@ -8839,6 +8839,8 @@ GameObject: m_Component: - component: {fileID: 438990} - component: {fileID: 9542722} + - component: {fileID: 3624658373763787491} + - component: {fileID: 4122610663137176938} - component: {fileID: 7704073908654393070} m_Layer: 0 m_Name: Spearman_E @@ -8860,6 +8862,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: + - {fileID: 5377982392436714879} - {fileID: 413610} - {fileID: 475862} - {fileID: 420290} @@ -8945,6 +8948,56 @@ Animator: m_AllowConstantClipSamplingOptimization: 1 m_KeepAnimatorStateOnDisable: 0 m_WriteDefaultValuesOnDisable: 0 +--- !u!54 &3624658373763787491 +Rigidbody: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 155132} + serializedVersion: 4 + m_Mass: 1 + m_Drag: 0 + m_AngularDrag: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 + m_UseGravity: 1 + m_IsKinematic: 0 + m_Interpolate: 0 + m_Constraints: 0 + m_CollisionDetection: 0 +--- !u!136 &4122610663137176938 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 155132} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.3 + m_Height: 1.6 + m_Direction: 1 + m_Center: {x: 0, y: 0.8, z: 0} --- !u!114 &7704073908654393070 MonoBehaviour: m_ObjectHideFlags: 0 @@ -8958,11 +9011,16 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: k__BackingField: - maxHp: 0 + maxHp: 40 currentHp: 0 - atk: 0 - def: 0 - spd: 0 + atk: 50 + def: 5 + moveSpd: 0 + atkSpd: 0 + usingShield: 0 + shieldPenetrationRate: 75 + penetrationResistivity: 0 + avoidanceRate: 20 --- !u!1 &156456 GameObject: m_ObjectHideFlags: 0 @@ -18671,6 +18729,61 @@ SkinnedMeshRenderer: m_Center: {x: -0.06806499, y: -0.041668788, z: 0.00000014901161} m_Extent: {x: 0.5174373, y: 0.34905136, z: 0.7707151} m_DirtyAABB: 0 +--- !u!1 &4905133638556378809 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5377982392436714879} + - component: {fileID: 3275332057743206174} + m_Layer: 12 + m_Name: HitBox + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5377982392436714879 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4905133638556378809} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 438990} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!136 &3275332057743206174 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4905133638556378809} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 1 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.3 + m_Height: 1.6 + m_Direction: 1 + m_Center: {x: 0, y: 0.8, z: 0} --- !u!1 &5732821683789387958 GameObject: m_ObjectHideFlags: 0 diff --git a/BlueWater/Assets/05.Prefabs/Enemy/SwordKnight_E.prefab b/BlueWater/Assets/05.Prefabs/Enemy/SwordKnight_E.prefab index b00a2d044..0f1bb74a5 100644 --- a/BlueWater/Assets/05.Prefabs/Enemy/SwordKnight_E.prefab +++ b/BlueWater/Assets/05.Prefabs/Enemy/SwordKnight_E.prefab @@ -8839,6 +8839,8 @@ GameObject: m_Component: - component: {fileID: 438990} - component: {fileID: 9542722} + - component: {fileID: 1866651242933062860} + - component: {fileID: 1995768815968683845} - component: {fileID: 6047348452593534959} m_Layer: 0 m_Name: SwordKnight_E @@ -8860,6 +8862,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: + - {fileID: 530419259345177510} - {fileID: 413610} - {fileID: 475862} - {fileID: 420290} @@ -8945,6 +8948,56 @@ Animator: m_AllowConstantClipSamplingOptimization: 1 m_KeepAnimatorStateOnDisable: 0 m_WriteDefaultValuesOnDisable: 0 +--- !u!54 &1866651242933062860 +Rigidbody: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 155132} + serializedVersion: 4 + m_Mass: 1 + m_Drag: 0 + m_AngularDrag: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 + m_UseGravity: 1 + m_IsKinematic: 0 + m_Interpolate: 0 + m_Constraints: 0 + m_CollisionDetection: 0 +--- !u!136 &1995768815968683845 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 155132} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.3 + m_Height: 1.6 + m_Direction: 1 + m_Center: {x: 0, y: 0.8, z: 0} --- !u!114 &6047348452593534959 MonoBehaviour: m_ObjectHideFlags: 0 @@ -8958,12 +9011,16 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: k__BackingField: - maxHp: 80 + maxHp: 60 currentHp: 0 atk: 30 def: 10 - spd: 0 + moveSpd: 0 + atkSpd: 0 usingShield: 1 + shieldPenetrationRate: 50 + penetrationResistivity: 0 + avoidanceRate: 10 --- !u!1 &156456 GameObject: m_ObjectHideFlags: 0 @@ -18372,6 +18429,61 @@ SkinnedMeshRenderer: m_Center: {x: -0.069048375, y: -0.043781057, z: 0.00000014901161} m_Extent: {x: 0.5184207, y: 0.35116535, z: 0.7707151} m_DirtyAABB: 0 +--- !u!1 &2241435465937139341 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 530419259345177510} + - component: {fileID: 5295021211657267008} + m_Layer: 12 + m_Name: HitBox + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &530419259345177510 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2241435465937139341} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 438990} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!136 &5295021211657267008 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2241435465937139341} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 1 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.3 + m_Height: 1.6 + m_Direction: 1 + m_Center: {x: 0, y: 0.8, z: 0} --- !u!1 &3691294109611859228 GameObject: m_ObjectHideFlags: 0 diff --git a/BlueWater/Assets/05.Prefabs/Enemy/Swordman_E.prefab b/BlueWater/Assets/05.Prefabs/Enemy/Swordman_E.prefab index 1b3c34574..d8d85fee8 100644 --- a/BlueWater/Assets/05.Prefabs/Enemy/Swordman_E.prefab +++ b/BlueWater/Assets/05.Prefabs/Enemy/Swordman_E.prefab @@ -8839,6 +8839,8 @@ GameObject: m_Component: - component: {fileID: 438990} - component: {fileID: 9542722} + - component: {fileID: 5315314452492636260} + - component: {fileID: 4374537182398505653} - component: {fileID: 1001412064052513076} m_Layer: 0 m_Name: Swordman_E @@ -8860,6 +8862,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: + - {fileID: 4738425987681673866} - {fileID: 413610} - {fileID: 475862} - {fileID: 420290} @@ -8945,6 +8948,56 @@ Animator: m_AllowConstantClipSamplingOptimization: 1 m_KeepAnimatorStateOnDisable: 0 m_WriteDefaultValuesOnDisable: 0 +--- !u!54 &5315314452492636260 +Rigidbody: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 155132} + serializedVersion: 4 + m_Mass: 1 + m_Drag: 0 + m_AngularDrag: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 + m_UseGravity: 1 + m_IsKinematic: 0 + m_Interpolate: 0 + m_Constraints: 0 + m_CollisionDetection: 0 +--- !u!136 &4374537182398505653 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 155132} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.3 + m_Height: 1.6 + m_Direction: 1 + m_Center: {x: 0, y: 0.8, z: 0} --- !u!114 &1001412064052513076 MonoBehaviour: m_ObjectHideFlags: 0 @@ -8958,11 +9011,16 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: k__BackingField: - maxHp: 0 + maxHp: 45 currentHp: 0 - atk: 0 - def: 0 - spd: 0 + atk: 35 + def: 5 + moveSpd: 0 + atkSpd: 0 + usingShield: 0 + shieldPenetrationRate: 50 + penetrationResistivity: 0 + avoidanceRate: 30 --- !u!1 &156456 GameObject: m_ObjectHideFlags: 0 @@ -18371,6 +18429,61 @@ SkinnedMeshRenderer: m_Center: {x: -0.069048375, y: -0.043781057, z: 0.00000014901161} m_Extent: {x: 0.5184207, y: 0.35116535, z: 0.7707151} m_DirtyAABB: 0 +--- !u!1 &1932773443749356590 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4738425987681673866} + - component: {fileID: 1178726280298706751} + m_Layer: 12 + m_Name: HitBox + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4738425987681673866 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1932773443749356590} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 438990} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!136 &1178726280298706751 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1932773443749356590} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 1 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.3 + m_Height: 1.6 + m_Direction: 1 + m_Center: {x: 0, y: 0.8, z: 0} --- !u!1 &3691294109611859228 GameObject: m_ObjectHideFlags: 0 diff --git a/BlueWater/Assets/05.Prefabs/Pirate/Archer_P.prefab b/BlueWater/Assets/05.Prefabs/Pirate/Archer_P.prefab index 9937c1685..6adc77bec 100644 --- a/BlueWater/Assets/05.Prefabs/Pirate/Archer_P.prefab +++ b/BlueWater/Assets/05.Prefabs/Pirate/Archer_P.prefab @@ -8839,6 +8839,8 @@ GameObject: m_Component: - component: {fileID: 438990} - component: {fileID: 9542722} + - component: {fileID: 7512442584761959655} + - component: {fileID: 1485348745952943168} - component: {fileID: 5368244484501432161} m_Layer: 0 m_Name: Archer_P @@ -8860,6 +8862,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: + - {fileID: 2919486955934960903} - {fileID: 413610} - {fileID: 475862} - {fileID: 420290} @@ -8945,6 +8948,56 @@ Animator: m_AllowConstantClipSamplingOptimization: 1 m_KeepAnimatorStateOnDisable: 0 m_WriteDefaultValuesOnDisable: 0 +--- !u!54 &7512442584761959655 +Rigidbody: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 155132} + serializedVersion: 4 + m_Mass: 1 + m_Drag: 0 + m_AngularDrag: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 + m_UseGravity: 1 + m_IsKinematic: 0 + m_Interpolate: 0 + m_Constraints: 0 + m_CollisionDetection: 0 +--- !u!136 &1485348745952943168 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 155132} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.3 + m_Height: 1.6 + m_Direction: 1 + m_Center: {x: 0, y: 0.8, z: 0} --- !u!114 &5368244484501432161 MonoBehaviour: m_ObjectHideFlags: 0 @@ -8958,11 +9011,16 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: k__BackingField: - maxHp: 0 + maxHp: 30 currentHp: 0 - atk: 0 + atk: 50 def: 0 - spd: 0 + moveSpd: 0 + atkSpd: 0 + usingShield: 0 + shieldPenetrationRate: 25 + penetrationResistivity: 0 + avoidanceRate: 20 --- !u!1 &156456 GameObject: m_ObjectHideFlags: 0 @@ -19203,6 +19261,61 @@ SkinnedMeshRenderer: m_Center: {x: -0.09100516, y: -0.05209069, z: 0.00000014901161} m_Extent: {x: 0.56203955, y: 0.351475, z: 0.7707151} m_DirtyAABB: 0 +--- !u!1 &8781667112109168643 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2919486955934960903} + - component: {fileID: 1931168354309611384} + m_Layer: 12 + m_Name: HitBox + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2919486955934960903 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8781667112109168643} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 438990} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!136 &1931168354309611384 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8781667112109168643} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 1 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.3 + m_Height: 1.6 + m_Direction: 1 + m_Center: {x: 0, y: 0.8, z: 0} --- !u!1 &8853814020345294409 GameObject: m_ObjectHideFlags: 0 diff --git a/BlueWater/Assets/05.Prefabs/Pirate/Axeman_P.prefab b/BlueWater/Assets/05.Prefabs/Pirate/Axeman_P.prefab index 086bd6b4e..435dfd594 100644 --- a/BlueWater/Assets/05.Prefabs/Pirate/Axeman_P.prefab +++ b/BlueWater/Assets/05.Prefabs/Pirate/Axeman_P.prefab @@ -8839,6 +8839,8 @@ GameObject: m_Component: - component: {fileID: 438990} - component: {fileID: 9542722} + - component: {fileID: 2614437605201190422} + - component: {fileID: 2219967035923003510} - component: {fileID: 6907943215527842660} m_Layer: 0 m_Name: Axeman_P @@ -8860,6 +8862,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: + - {fileID: 4791113098303950241} - {fileID: 413610} - {fileID: 475862} - {fileID: 420290} @@ -8945,6 +8948,56 @@ Animator: m_AllowConstantClipSamplingOptimization: 1 m_KeepAnimatorStateOnDisable: 0 m_WriteDefaultValuesOnDisable: 0 +--- !u!54 &2614437605201190422 +Rigidbody: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 155132} + serializedVersion: 4 + m_Mass: 1 + m_Drag: 0 + m_AngularDrag: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 + m_UseGravity: 1 + m_IsKinematic: 0 + m_Interpolate: 0 + m_Constraints: 0 + m_CollisionDetection: 0 +--- !u!136 &2219967035923003510 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 155132} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.3 + m_Height: 1.6 + m_Direction: 1 + m_Center: {x: 0, y: 0.8, z: 0} --- !u!114 &6907943215527842660 MonoBehaviour: m_ObjectHideFlags: 0 @@ -8958,11 +9011,16 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: k__BackingField: - maxHp: 0 + maxHp: 50 currentHp: 0 - atk: 0 + atk: 50 def: 0 - spd: 0 + moveSpd: 0 + atkSpd: 0 + usingShield: 0 + shieldPenetrationRate: 100 + penetrationResistivity: 0 + avoidanceRate: 10 --- !u!1 &156456 GameObject: m_ObjectHideFlags: 0 @@ -18371,6 +18429,61 @@ SkinnedMeshRenderer: m_Center: {x: -0.069048375, y: -0.043781057, z: 0.00000014901161} m_Extent: {x: 0.5184207, y: 0.35116535, z: 0.7707151} m_DirtyAABB: 0 +--- !u!1 &1897466342555018887 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4791113098303950241} + - component: {fileID: 5546785881875289881} + m_Layer: 12 + m_Name: HitBox + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4791113098303950241 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1897466342555018887} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 438990} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!136 &5546785881875289881 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1897466342555018887} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 1 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.3 + m_Height: 1.6 + m_Direction: 1 + m_Center: {x: 0, y: 0.8, z: 0} --- !u!1 &3691294109611859228 GameObject: m_ObjectHideFlags: 0 diff --git a/BlueWater/Assets/05.Prefabs/Pirate/Spearman_P.prefab b/BlueWater/Assets/05.Prefabs/Pirate/Spearman_P.prefab index 9b01ac468..9bdb4804a 100644 --- a/BlueWater/Assets/05.Prefabs/Pirate/Spearman_P.prefab +++ b/BlueWater/Assets/05.Prefabs/Pirate/Spearman_P.prefab @@ -8839,6 +8839,8 @@ GameObject: m_Component: - component: {fileID: 438990} - component: {fileID: 9542722} + - component: {fileID: 8718300241156730733} + - component: {fileID: 13124744015303705} - component: {fileID: 5358608732463309424} m_Layer: 0 m_Name: Spearman_P @@ -8860,6 +8862,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: + - {fileID: 645799968535820937} - {fileID: 413610} - {fileID: 475862} - {fileID: 420290} @@ -8945,6 +8948,56 @@ Animator: m_AllowConstantClipSamplingOptimization: 1 m_KeepAnimatorStateOnDisable: 0 m_WriteDefaultValuesOnDisable: 0 +--- !u!54 &8718300241156730733 +Rigidbody: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 155132} + serializedVersion: 4 + m_Mass: 1 + m_Drag: 0 + m_AngularDrag: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 + m_UseGravity: 1 + m_IsKinematic: 0 + m_Interpolate: 0 + m_Constraints: 0 + m_CollisionDetection: 0 +--- !u!136 &13124744015303705 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 155132} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.3 + m_Height: 1.6 + m_Direction: 1 + m_Center: {x: 0, y: 0.8, z: 0} --- !u!114 &5358608732463309424 MonoBehaviour: m_ObjectHideFlags: 0 @@ -8958,11 +9011,16 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: k__BackingField: - maxHp: 0 + maxHp: 40 currentHp: 0 - atk: 0 - def: 0 - spd: 0 + atk: 50 + def: 5 + moveSpd: 0 + atkSpd: 0 + usingShield: 0 + shieldPenetrationRate: 75 + penetrationResistivity: 0 + avoidanceRate: 20 --- !u!1 &156456 GameObject: m_ObjectHideFlags: 0 @@ -17740,6 +17798,61 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &68385371985969476 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 645799968535820937} + - component: {fileID: 5714371243005721170} + m_Layer: 12 + m_Name: HitBox + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &645799968535820937 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 68385371985969476} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 438990} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!136 &5714371243005721170 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 68385371985969476} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 1 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.3 + m_Height: 1.6 + m_Direction: 1 + m_Center: {x: 0, y: 0.8, z: 0} --- !u!1 &637545170343980029 GameObject: m_ObjectHideFlags: 0 diff --git a/BlueWater/Assets/05.Prefabs/Pirate/SwordKnight_P.prefab b/BlueWater/Assets/05.Prefabs/Pirate/SwordKnight_P.prefab index 35b986401..8d7e049cd 100644 --- a/BlueWater/Assets/05.Prefabs/Pirate/SwordKnight_P.prefab +++ b/BlueWater/Assets/05.Prefabs/Pirate/SwordKnight_P.prefab @@ -8839,6 +8839,8 @@ GameObject: m_Component: - component: {fileID: 438990} - component: {fileID: 9542722} + - component: {fileID: 4974866494169781262} + - component: {fileID: 9121247047284190495} - component: {fileID: 577732947051587098} m_Layer: 0 m_Name: SwordKnight_P @@ -8860,6 +8862,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: + - {fileID: 8704968101649663153} - {fileID: 413610} - {fileID: 475862} - {fileID: 420290} @@ -8945,6 +8948,56 @@ Animator: m_AllowConstantClipSamplingOptimization: 1 m_KeepAnimatorStateOnDisable: 0 m_WriteDefaultValuesOnDisable: 0 +--- !u!54 &4974866494169781262 +Rigidbody: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 155132} + serializedVersion: 4 + m_Mass: 1 + m_Drag: 0 + m_AngularDrag: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 + m_UseGravity: 1 + m_IsKinematic: 0 + m_Interpolate: 0 + m_Constraints: 0 + m_CollisionDetection: 0 +--- !u!136 &9121247047284190495 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 155132} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.3 + m_Height: 1.6 + m_Direction: 1 + m_Center: {x: 0, y: 0.8, z: 0} --- !u!114 &577732947051587098 MonoBehaviour: m_ObjectHideFlags: 0 @@ -8958,11 +9011,16 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: k__BackingField: - maxHp: 0 + maxHp: 60 currentHp: 0 - atk: 0 - def: 0 - spd: 0 + atk: 30 + def: 10 + moveSpd: 0 + atkSpd: 0 + usingShield: 1 + shieldPenetrationRate: 50 + penetrationResistivity: 0 + avoidanceRate: 10 --- !u!1 &156456 GameObject: m_ObjectHideFlags: 0 @@ -18671,6 +18729,61 @@ SkinnedMeshRenderer: m_Center: {x: -0.06806499, y: -0.041668788, z: 0.00000014901161} m_Extent: {x: 0.5174373, y: 0.34905136, z: 0.7707151} m_DirtyAABB: 0 +--- !u!1 &5678980123350837785 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8704968101649663153} + - component: {fileID: 2829027457767136232} + m_Layer: 12 + m_Name: HitBox + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8704968101649663153 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5678980123350837785} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 438990} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!136 &2829027457767136232 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5678980123350837785} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 1 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.3 + m_Height: 1.6 + m_Direction: 1 + m_Center: {x: 0, y: 0.8, z: 0} --- !u!1 &5732821683789387958 GameObject: m_ObjectHideFlags: 0 diff --git a/BlueWater/Assets/05.Prefabs/Pirate/Swordman_P.prefab b/BlueWater/Assets/05.Prefabs/Pirate/Swordman_P.prefab index 00964fc14..6b3b2a873 100644 --- a/BlueWater/Assets/05.Prefabs/Pirate/Swordman_P.prefab +++ b/BlueWater/Assets/05.Prefabs/Pirate/Swordman_P.prefab @@ -8839,6 +8839,8 @@ GameObject: m_Component: - component: {fileID: 438990} - component: {fileID: 9542722} + - component: {fileID: 4344432134670323988} + - component: {fileID: 6882424985411624636} - component: {fileID: 1136834195750313725} m_Layer: 0 m_Name: Swordman_P @@ -8860,6 +8862,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: + - {fileID: 141002451771819996} - {fileID: 413610} - {fileID: 475862} - {fileID: 420290} @@ -8945,6 +8948,56 @@ Animator: m_AllowConstantClipSamplingOptimization: 1 m_KeepAnimatorStateOnDisable: 0 m_WriteDefaultValuesOnDisable: 0 +--- !u!54 &4344432134670323988 +Rigidbody: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 155132} + serializedVersion: 4 + m_Mass: 1 + m_Drag: 0 + m_AngularDrag: 0.05 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 + m_UseGravity: 1 + m_IsKinematic: 0 + m_Interpolate: 0 + m_Constraints: 0 + m_CollisionDetection: 0 +--- !u!136 &6882424985411624636 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 155132} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.3 + m_Height: 1.6 + m_Direction: 1 + m_Center: {x: 0, y: 0.8, z: 0} --- !u!114 &1136834195750313725 MonoBehaviour: m_ObjectHideFlags: 0 @@ -8958,11 +9011,16 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: k__BackingField: - maxHp: 0 + maxHp: 45 currentHp: 0 - atk: 0 - def: 0 - spd: 0 + atk: 35 + def: 5 + moveSpd: 0 + atkSpd: 0 + usingShield: 0 + shieldPenetrationRate: 50 + penetrationResistivity: 0 + avoidanceRate: 30 --- !u!1 &156456 GameObject: m_ObjectHideFlags: 0 @@ -18571,6 +18629,61 @@ SkinnedMeshRenderer: m_Center: {x: -0.09022954, y: -0.04376401, z: 0.00000014901161} m_Extent: {x: 0.5396018, y: 0.35118246, z: 0.7707151} m_DirtyAABB: 0 +--- !u!1 &4327845818968299326 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 141002451771819996} + - component: {fileID: 6546119915803687715} + m_Layer: 12 + m_Name: HitBox + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &141002451771819996 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4327845818968299326} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 438990} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!136 &6546119915803687715 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4327845818968299326} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 1 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.3 + m_Height: 1.6 + m_Direction: 1 + m_Center: {x: 0, y: 0.8, z: 0} --- !u!1 &4431473811645379896 GameObject: m_ObjectHideFlags: 0 diff --git a/BlueWater/ProjectSettings/DynamicsManager.asset b/BlueWater/ProjectSettings/DynamicsManager.asset index 1596c4230..b68f3eda7 100644 --- a/BlueWater/ProjectSettings/DynamicsManager.asset +++ b/BlueWater/ProjectSettings/DynamicsManager.asset @@ -3,10 +3,11 @@ --- !u!55 &1 PhysicsManager: m_ObjectHideFlags: 0 - serializedVersion: 13 + serializedVersion: 14 m_Gravity: {x: 0, y: -9.81, z: 0} m_DefaultMaterial: {fileID: 0} m_BounceThreshold: 2 + m_DefaultMaxDepenetrationVelocity: 10 m_SleepThreshold: 0.005 m_DefaultContactOffset: 0.01 m_DefaultSolverIterations: 6 @@ -17,10 +18,11 @@ PhysicsManager: m_ClothInterCollisionDistance: 0.1 m_ClothInterCollisionStiffness: 0.2 m_ContactsGeneration: 1 - m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff - m_AutoSimulation: 1 + m_LayerCollisionMatrix: 0000000000000000000000000000000000000000000000000000000000000000000700000007000000070000001000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_SimulationMode: 0 m_AutoSyncTransforms: 0 m_ReuseCollisionCallbacks: 0 + m_InvokeCollisionCallbacks: 1 m_ClothInterCollisionSettingsToggle: 0 m_ClothGravity: {x: 0, y: -9.81, z: 0} m_ContactPairsMode: 0 @@ -32,5 +34,6 @@ PhysicsManager: m_FrictionType: 0 m_EnableEnhancedDeterminism: 0 m_EnableUnifiedHeightmaps: 1 + m_ImprovedPatchFriction: 0 m_SolverType: 0 m_DefaultMaxAngularSpeed: 50 diff --git a/BlueWater/ProjectSettings/TagManager.asset b/BlueWater/ProjectSettings/TagManager.asset index 1c92a7840..98d353269 100644 --- a/BlueWater/ProjectSettings/TagManager.asset +++ b/BlueWater/ProjectSettings/TagManager.asset @@ -13,11 +13,11 @@ TagManager: - UI - - - - - - - - - - - - + - Player + - Pirate + - Enemy + - Weapon + - HitBox - - -