diff --git a/Assets/Scenes/CoreScene.scene b/Assets/Scenes/CoreScene.scene index a0b3b28..31e5123 100644 --- a/Assets/Scenes/CoreScene.scene +++ b/Assets/Scenes/CoreScene.scene @@ -315,7 +315,7 @@ GameObject: - component: {fileID: 100839533} m_Layer: 5 m_HasEditorInfo: 1 - m_Name: "\u80FD\u91CF\u8C465" + m_Name: "\u80FD\u91CF\u8C466" m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -354,7 +354,7 @@ MonoBehaviour: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 + m_RaycastTarget: 0 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: @@ -834,9 +834,11 @@ GameObject: - component: {fileID: 366632241} - component: {fileID: 366632243} - component: {fileID: 366632242} + - component: {fileID: 366632245} + - component: {fileID: 366632244} m_Layer: 5 m_HasEditorInfo: 1 - m_Name: "\u5361\u72475" + m_Name: "\u5361\u72471" m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -853,7 +855,8 @@ RectTransform: m_LocalPosition: {x: 0, y: 0, z: -21} m_LocalScale: {x: 2.35, y: 2.35, z: 2.35} m_ConstrainProportionsScale: 1 - m_Children: [] + m_Children: + - {fileID: 1936296690} m_Father: {fileID: 2057800508} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} @@ -899,6 +902,63 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 366632240} m_CullTransparentMesh: 1 +--- !u!114 &366632244 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 366632240} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4ce4f9fc25a374346853b4acab3f2484, type: 3} + m_Name: + m_EditorClassIdentifier: + summonSlot: 1 +--- !u!114 &366632245 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 366632240} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 0 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 366632242} + m_OnClick: + m_PersistentCalls: + m_Calls: [] --- !u!1 &400225621 GameObject: m_ObjectHideFlags: 0 @@ -1814,7 +1874,7 @@ GameObject: - component: {fileID: 722552588} m_Layer: 5 m_HasEditorInfo: 1 - m_Name: "\u5361\u72471" + m_Name: "\u5361\u72475" m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -2056,7 +2116,7 @@ MonoBehaviour: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 + m_RaycastTarget: 0 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: @@ -2167,7 +2227,7 @@ GameObject: - component: {fileID: 833940069} m_Layer: 5 m_HasEditorInfo: 1 - m_Name: "\u80FD\u91CF\u8C464" + m_Name: "\u80FD\u91CF\u8C467" m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -2206,7 +2266,7 @@ MonoBehaviour: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 + m_RaycastTarget: 0 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: @@ -3321,7 +3381,7 @@ GameObject: - component: {fileID: 1354528298} m_Layer: 5 m_HasEditorInfo: 1 - m_Name: "\u80FD\u91CF\u8C4610" + m_Name: "\u80FD\u91CF\u8C461" m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -3360,7 +3420,7 @@ MonoBehaviour: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 + m_RaycastTarget: 0 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: @@ -3436,7 +3496,7 @@ MonoBehaviour: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 + m_RaycastTarget: 0 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: @@ -3473,7 +3533,7 @@ GameObject: - component: {fileID: 1495122837} m_Layer: 5 m_HasEditorInfo: 1 - m_Name: "\u80FD\u91CF\u8C468" + m_Name: "\u80FD\u91CF\u8C463" m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -3512,7 +3572,7 @@ MonoBehaviour: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 + m_RaycastTarget: 0 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: @@ -3581,7 +3641,7 @@ GameObject: - component: {fileID: 1580760511} m_Layer: 5 m_HasEditorInfo: 1 - m_Name: "\u80FD\u91CF\u8C466" + m_Name: "\u80FD\u91CF\u8C465" m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -3620,7 +3680,7 @@ MonoBehaviour: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 + m_RaycastTarget: 0 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: @@ -3746,7 +3806,7 @@ GameObject: - component: {fileID: 1611074743} m_Layer: 5 m_HasEditorInfo: 1 - m_Name: "\u80FD\u91CF\u8C469" + m_Name: "\u80FD\u91CF\u8C462" m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -3785,7 +3845,7 @@ MonoBehaviour: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 + m_RaycastTarget: 0 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: @@ -3822,7 +3882,7 @@ GameObject: - component: {fileID: 1617939209} m_Layer: 5 m_HasEditorInfo: 1 - m_Name: "\u80FD\u91CF\u8C461" + m_Name: "\u80FD\u91CF\u8C4610" m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -3861,7 +3921,7 @@ MonoBehaviour: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 + m_RaycastTarget: 0 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: @@ -4073,7 +4133,7 @@ GameObject: - component: {fileID: 1818604653} m_Layer: 5 m_HasEditorInfo: 1 - m_Name: "\u5361\u72472" + m_Name: "\u5361\u72474" m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -4223,7 +4283,7 @@ GameObject: - component: {fileID: 1829128965} m_Layer: 5 m_HasEditorInfo: 1 - m_Name: "\u80FD\u91CF\u8C467" + m_Name: "\u80FD\u91CF\u8C464" m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -4262,7 +4322,7 @@ MonoBehaviour: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 + m_RaycastTarget: 0 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: @@ -4468,7 +4528,7 @@ GameObject: - component: {fileID: 1857417479} m_Layer: 5 m_HasEditorInfo: 1 - m_Name: "\u80FD\u91CF\u8C463" + m_Name: "\u80FD\u91CF\u8C468" m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -4507,7 +4567,7 @@ MonoBehaviour: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 + m_RaycastTarget: 0 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: @@ -4544,7 +4604,7 @@ GameObject: - component: {fileID: 1911104686} m_Layer: 5 m_HasEditorInfo: 1 - m_Name: "\u5361\u72474" + m_Name: "\u5361\u72472" m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -4607,6 +4667,82 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1911104684} m_CullTransparentMesh: 1 +--- !u!1 &1936296689 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 7 + m_Component: + - component: {fileID: 1936296690} + - component: {fileID: 1936296692} + - component: {fileID: 1936296691} + m_Layer: 5 + m_HasEditorInfo: 1 + m_Name: Image + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1936296690 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1936296689} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} + m_ConstrainProportionsScale: 1 + m_Children: [] + m_Father: {fileID: 366632241} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: -1} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1936296691 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1936296689} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 0 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 21300000, guid: ac0c2d42f9a144e5b9e9b0d16590d58b, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1936296692 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1936296689} + m_CullTransparentMesh: 1 --- !u!1 &1946004731 GameObject: m_ObjectHideFlags: 0 @@ -4620,7 +4756,7 @@ GameObject: - component: {fileID: 1946004733} m_Layer: 5 m_HasEditorInfo: 1 - m_Name: "\u80FD\u91CF\u8C462" + m_Name: "\u80FD\u91CF\u8C469" m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -4659,7 +4795,7 @@ MonoBehaviour: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 + m_RaycastTarget: 0 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: @@ -4786,16 +4922,16 @@ RectTransform: m_LocalScale: {x: 0.18382353, y: 0.18382353, z: 0.18382353} m_ConstrainProportionsScale: 0 m_Children: - - {fileID: 1617939208} - - {fileID: 1946004732} - - {fileID: 1857417478} - - {fileID: 833940068} - - {fileID: 100839532} - - {fileID: 1580760510} - - {fileID: 1829128964} - - {fileID: 1495122836} - - {fileID: 1611074742} - {fileID: 1354528297} + - {fileID: 1611074742} + - {fileID: 1495122836} + - {fileID: 1829128964} + - {fileID: 1580760510} + - {fileID: 100839532} + - {fileID: 833940068} + - {fileID: 1857417478} + - {fileID: 1946004732} + - {fileID: 1617939208} m_Father: {fileID: 784281427} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} @@ -4905,11 +5041,11 @@ RectTransform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - - {fileID: 722552587} - - {fileID: 1818604652} - - {fileID: 1156052318} - - {fileID: 1911104685} - {fileID: 366632241} + - {fileID: 1911104685} + - {fileID: 1156052318} + - {fileID: 1818604652} + - {fileID: 722552587} m_Father: {fileID: 573684586} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} diff --git a/Assets/Script/MainCharacterCombat.cs b/Assets/Script/MainCharacterCombat.cs index ed920d9..aae44cd 100644 --- a/Assets/Script/MainCharacterCombat.cs +++ b/Assets/Script/MainCharacterCombat.cs @@ -119,30 +119,47 @@ public class MainCharacterCombat : MonoBehaviour private void HandleSummonInput() { - if (summoning || animator == null || movement == null) - { - return; - } - - if (Input.GetKeyDown(KeyCode.Alpha1) || Input.GetKeyDown(KeyCode.Alpha2)) - { - movement.StopMovement(); - if (attacking) - { - FinishAttack(); - } - } - if (Input.GetKeyDown(KeyCode.Alpha1)) { - BeginSummon(humanSoldierPrefab); + RequestSummon(1); } else if (Input.GetKeyDown(KeyCode.Alpha2)) { - BeginSummon(archerPrefab); + RequestSummon(2); } } + public bool RequestSummon(int slot) + { + if (summoning || animator == null) + { + return false; + } + + GameObject prefab = slot == 1 + ? humanSoldierPrefab + : slot == 2 + ? archerPrefab + : null; + if (prefab == null) + { + return false; + } + + if (movement != null) + { + movement.StopMovement(); + } + + if (attacking) + { + FinishAttack(); + } + + BeginSummon(prefab); + return true; + } + private void BeginSummon(GameObject prefab) { if (prefab == null) diff --git a/Assets/Script/MainCharacterDebugMovement.cs b/Assets/Script/MainCharacterDebugMovement.cs index 21d6e2b..e58eff9 100644 --- a/Assets/Script/MainCharacterDebugMovement.cs +++ b/Assets/Script/MainCharacterDebugMovement.cs @@ -1,4 +1,5 @@ using UnityEngine; +using UnityEngine.EventSystems; public class MainCharacterDebugMovement : MonoBehaviour { @@ -71,6 +72,11 @@ public class MainCharacterDebugMovement : MonoBehaviour return; } + if (EventSystem.current != null && EventSystem.current.IsPointerOverGameObject()) + { + return; + } + Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); if (!Physics.Raycast(ray, out RaycastHit hit)) { diff --git a/Assets/Script/SummonCardButton.cs b/Assets/Script/SummonCardButton.cs new file mode 100644 index 0000000..0a03056 --- /dev/null +++ b/Assets/Script/SummonCardButton.cs @@ -0,0 +1,40 @@ +using UnityEngine; +using UnityEngine.UI; + +[RequireComponent(typeof(Button))] +public class SummonCardButton : MonoBehaviour +{ + [Min(1)] + public int summonSlot = 1; + + private Button button; + private MainCharacterCombat combat; + + private void Awake() + { + button = GetComponent