diff --git a/Assets/Prefab/第一章/人类士兵.prefab b/Assets/Prefab/第一章/人类士兵.prefab index dfec74f..3c6d031 100644 --- a/Assets/Prefab/第一章/人类士兵.prefab +++ b/Assets/Prefab/第一章/人类士兵.prefab @@ -140,6 +140,10 @@ PrefabInstance: type: 3} insertIndex: -1 addedObject: {fileID: 4111165692813349771} + - targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: 5072af719b9b1401787c6c55f048d8ed, + type: 3} + insertIndex: -1 + addedObject: {fileID: 6149369975191414129} m_SourcePrefab: {fileID: 100100000, guid: 5072af719b9b1401787c6c55f048d8ed, type: 3} --- !u!1 &7945271050725079514 stripped GameObject: @@ -190,6 +194,8 @@ MonoBehaviour: range: 500 detectRange: 200 attackRange: 1 + modelFacingOffset: 0 + useRootMotion: 1 attackPower: 28 attackDuration: 1 attackType: 0 @@ -234,6 +240,21 @@ MonoBehaviour: m_EditorClassIdentifier: bonusAttackMultiplier: 0.5 skillAnimationDuration: 1 +--- !u!114 &6149369975191414129 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7945271050725079514} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8250ea299184b428ea8f0fa765c39264, type: 3} + m_Name: + m_EditorClassIdentifier: + showStunIndicator: 1 + indicatorHeight: 0.35 + stunIndicatorPrefab: {fileID: 0} --- !u!4 &8878706989061864259 stripped Transform: m_CorrespondingSourceObject: {fileID: 1852576806548013000, guid: 5072af719b9b1401787c6c55f048d8ed, diff --git a/Assets/Prefab/第一章/盾卫.prefab b/Assets/Prefab/第一章/盾卫.prefab index a77b60c..9e71d47 100644 --- a/Assets/Prefab/第一章/盾卫.prefab +++ b/Assets/Prefab/第一章/盾卫.prefab @@ -266,7 +266,7 @@ MonoBehaviour: range: 18 detectRange: 20 attackRange: 1.2 - modelFacingOffset: 90 + modelFacingOffset: 45 useRootMotion: 1 attackPower: 24 attackDuration: 1.54 diff --git a/Assets/Scenes/CoreScene.scene b/Assets/Scenes/CoreScene.scene index 2b0f314..7e21b71 100644 --- a/Assets/Scenes/CoreScene.scene +++ b/Assets/Scenes/CoreScene.scene @@ -747,6 +747,110 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 302678475} m_Mesh: {fileID: -3362887337151679087, guid: 9940402c67c3da542ac427b39d393a10, type: 3} +--- !u!1 &400225621 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 7 + m_Component: + - component: {fileID: 400225625} + - component: {fileID: 400225624} + - component: {fileID: 400225623} + - component: {fileID: 400225622} + m_Layer: 5 + m_HasEditorInfo: 1 + m_Name: Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &400225622 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 400225621} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &400225623 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 400225621} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 800, y: 600} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 + m_PresetInfoIsWorld: 0 +--- !u!223 &400225624 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 400225621} + m_Enabled: 1 + serializedVersion: 4 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 0 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_VertexColorAlwaysGammaSpace: 0 + m_AlwaysInGammaSpace: 0 + m_AdditionalShaderChannelsFlag: 0 + m_UpdateRectTransformForStandalone: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!224 &400225625 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 400225621} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1390049224} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} --- !u!1 &431816156 GameObject: m_ObjectHideFlags: 0 @@ -1867,7 +1971,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: target: {fileID: 1830287376} - offset: {x: 0, y: 14, z: 5.44} + offset: {x: 0, y: 10, z: 5.44} smoothSpeed: 0.125 --- !u!1001 &1014049291 PrefabInstance: @@ -2106,6 +2210,75 @@ Transform: type: 3} m_PrefabInstance: {fileID: 1035204941} m_PrefabAsset: {fileID: 0} +--- !u!1 &1039023781 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 7 + m_Component: + - component: {fileID: 1039023784} + - component: {fileID: 1039023783} + - component: {fileID: 1039023782} + m_Layer: 0 + m_HasEditorInfo: 1 + m_Name: EventSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1039023782 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1039023781} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3} + m_Name: + m_EditorClassIdentifier: + m_SendPointerHoverToParent: 1 + m_HorizontalAxis: Horizontal + m_VerticalAxis: Vertical + m_SubmitButton: Submit + m_CancelButton: Cancel + m_InputActionsPerSecond: 10 + m_RepeatDelay: 0.5 + m_ForceModuleActive: 0 +--- !u!114 &1039023783 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1039023781} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_FirstSelected: {fileID: 0} + m_sendNavigationEvents: 1 + m_DragThreshold: 10 +--- !u!4 &1039023784 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1039023781} + 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: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &1110942579 PrefabInstance: m_ObjectHideFlags: 0 @@ -2602,6 +2775,82 @@ Transform: type: 3} m_PrefabInstance: {fileID: 1312570349} m_PrefabAsset: {fileID: 0} +--- !u!1 &1390049223 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 7 + m_Component: + - component: {fileID: 1390049224} + - component: {fileID: 1390049226} + - component: {fileID: 1390049225} + 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 &1390049224 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1390049223} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 11.5, y: 11.5, z: 11.5} + m_ConstrainProportionsScale: 1 + m_Children: [] + m_Father: {fileID: 400225625} + 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: -815.3} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1390049225 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1390049223} + 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: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 21300000, guid: 14f4066ed17bd40df8c6709992504ac7, type: 3} + m_Type: 0 + m_PreserveAspect: 1 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1390049226 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1390049223} + m_CullTransparentMesh: 1 --- !u!1 &1525972580 GameObject: m_ObjectHideFlags: 0 @@ -2983,7 +3232,7 @@ PrefabInstance: - target: {fileID: -8679921383154817045, guid: 6b859b567d8ba4a7a87c03aa4b87c18c, type: 3} propertyPath: m_LocalPosition.x - value: 0 + value: -0.12 objectReference: {fileID: 0} - target: {fileID: -8679921383154817045, guid: 6b859b567d8ba4a7a87c03aa4b87c18c, type: 3} @@ -2993,7 +3242,7 @@ PrefabInstance: - target: {fileID: -8679921383154817045, guid: 6b859b567d8ba4a7a87c03aa4b87c18c, type: 3} propertyPath: m_LocalPosition.z - value: 10 + value: 9.02 objectReference: {fileID: 0} - target: {fileID: -8679921383154817045, guid: 6b859b567d8ba4a7a87c03aa4b87c18c, type: 3} @@ -3130,10 +3379,15 @@ MonoBehaviour: attackPos: {fileID: 1525972581} humanSoldierPrefab: {fileID: 7945271050725079514, guid: 04ae1b1fe51474dda8ae5daf0b1df7c1, type: 3} - archerPrefab: {fileID: 5200308054099318121, guid: 7d2074c48a1b3544eb534bb509ffc845, + archerPrefab: {fileID: 1242979668690031507, guid: 5a43e36885a204515891085639dd22c4, type: 3} summonDistance: 1.5 summonSideOffset: 0.8 + summonSearchStep: 0.8 + summonSearchCount: 5 + summonDepthSearchStep: 1 + summonDepthSearchCount: 2 + summonAnimationTimeout: 2.5 projectileSpeed: 12 projectileLifetime: 5 --- !u!1001 &1964018368 @@ -3221,7 +3475,7 @@ PrefabInstance: - target: {fileID: 6220015408525696565, guid: f3b0d9efccd74475dbbbcdc1ddcdf129, type: 3} propertyPath: m_LocalPosition.x - value: -0.682 + value: -0.72 objectReference: {fileID: 0} - target: {fileID: 6220015408525696565, guid: f3b0d9efccd74475dbbbcdc1ddcdf129, type: 3} @@ -3231,7 +3485,7 @@ PrefabInstance: - target: {fileID: 6220015408525696565, guid: f3b0d9efccd74475dbbbcdc1ddcdf129, type: 3} propertyPath: m_LocalPosition.z - value: 1.367 + value: -5.91 objectReference: {fileID: 0} - target: {fileID: 6220015408525696565, guid: f3b0d9efccd74475dbbbcdc1ddcdf129, type: 3} @@ -3441,3 +3695,5 @@ SceneRoots: - {fileID: 697244585} - {fileID: 1830287371} - {fileID: 2020792184} + - {fileID: 400225625} + - {fileID: 1039023784} diff --git a/Assets/TJGenerators/History/GameUIKit_20260906_200229.png.meta b/Assets/TJGenerators/History/GameUIKit_20260906_200229.png.meta new file mode 100644 index 0000000..af02b0b --- /dev/null +++ b/Assets/TJGenerators/History/GameUIKit_20260906_200229.png.meta @@ -0,0 +1,166 @@ +fileFormatVersion: 2 +guid: CX8esX/+WnhGV+Q9+OVih5cIpgDrQRSTgxlgKlEuVxebDa+0qcx9oKg= +labels: +- Session_846555c7-08dc-4757-92f5-f91d19d3e9a8 +- TuanjieAI +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 14 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + webStreaming: 0 + priorityLevel: 0 + uploadedMode: 2 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Server + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WeixinMiniGame + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: PlayableAds + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + doOverrideTextureManagerOperations: 0 + platformOperationGroupSettings: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/UI.meta b/Assets/UI.meta new file mode 100644 index 0000000..cc94e08 --- /dev/null +++ b/Assets/UI.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: Di4ftSn4ByrjotZVINSfLUZa747qB+xkRteOdkP7Uag39avW0S7j/t8= +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/UI/去除图片能量条 (1).png b/Assets/UI/去除图片能量条 (1).png new file mode 100644 index 0000000..69e5ccf Binary files /dev/null and b/Assets/UI/去除图片能量条 (1).png differ diff --git a/Assets/UI/去除图片能量条 (1).png.meta b/Assets/UI/去除图片能量条 (1).png.meta new file mode 100644 index 0000000..57ffe06 --- /dev/null +++ b/Assets/UI/去除图片能量条 (1).png.meta @@ -0,0 +1,149 @@ +fileFormatVersion: 2 +guid: WX4X4C2sWnnZEw6nUN23NitPPsCCgQD8QjyfBtE/11MtUQ0zC1n8sj0= +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 14 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + webStreaming: 0 + priorityLevel: 0 + uploadedMode: 2 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Server + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WeixinMiniGame + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + doOverrideTextureManagerOperations: 0 + platformOperationGroupSettings: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/UI/去除图片能量条 (2).png b/Assets/UI/去除图片能量条 (2).png new file mode 100644 index 0000000..fbf7ae0 Binary files /dev/null and b/Assets/UI/去除图片能量条 (2).png differ diff --git a/Assets/UI/去除图片能量条 (2).png.meta b/Assets/UI/去除图片能量条 (2).png.meta new file mode 100644 index 0000000..4d399e0 --- /dev/null +++ b/Assets/UI/去除图片能量条 (2).png.meta @@ -0,0 +1,149 @@ +fileFormatVersion: 2 +guid: Bnwd4HmkVnmkGaJbxZdli5ohDHz2ssyxSebkjz3oCZt6fZQy+tLYHU0= +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 14 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + webStreaming: 0 + priorityLevel: 0 + uploadedMode: 2 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Server + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WeixinMiniGame + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + doOverrideTextureManagerOperations: 0 + platformOperationGroupSettings: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/UI/去除图片能量条 (3).png b/Assets/UI/去除图片能量条 (3).png new file mode 100644 index 0000000..5c109bc Binary files /dev/null and b/Assets/UI/去除图片能量条 (3).png differ diff --git a/Assets/UI/去除图片能量条 (3).png.meta b/Assets/UI/去除图片能量条 (3).png.meta new file mode 100644 index 0000000..af0730c --- /dev/null +++ b/Assets/UI/去除图片能量条 (3).png.meta @@ -0,0 +1,149 @@ +fileFormatVersion: 2 +guid: DCwcs3uqVy5mzkpwwpcdVnwIKkswkspN9bGvDssQiJEU7O8YZ1701FI= +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 14 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + webStreaming: 0 + priorityLevel: 0 + uploadedMode: 2 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Server + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WeixinMiniGame + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + doOverrideTextureManagerOperations: 0 + platformOperationGroupSettings: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/UI/角色边框.png b/Assets/UI/角色边框.png new file mode 100644 index 0000000..1388a54 Binary files /dev/null and b/Assets/UI/角色边框.png differ diff --git a/Assets/UI/角色边框.png.meta b/Assets/UI/角色边框.png.meta new file mode 100644 index 0000000..6f6a47b --- /dev/null +++ b/Assets/UI/角色边框.png.meta @@ -0,0 +1,163 @@ +fileFormatVersion: 2 +guid: CHwb5Cj5V3y3FyC49iHxIRZuakrsNBg0oCrA6zitSsCyn93/KMkAeWM= +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 14 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + webStreaming: 0 + priorityLevel: 0 + uploadedMode: 2 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 512 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Server + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WeixinMiniGame + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: PlayableAds + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + doOverrideTextureManagerOperations: 0 + platformOperationGroupSettings: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/UI/角色选择框UI.png b/Assets/UI/角色选择框UI.png new file mode 100644 index 0000000..4c19c57 Binary files /dev/null and b/Assets/UI/角色选择框UI.png differ diff --git a/Assets/UI/角色选择框UI.png.meta b/Assets/UI/角色选择框UI.png.meta new file mode 100644 index 0000000..afebae4 --- /dev/null +++ b/Assets/UI/角色选择框UI.png.meta @@ -0,0 +1,163 @@ +fileFormatVersion: 2 +guid: Dn5JsSqrVS7sbZqRkT9tfUZJ202tUuH0uT71i3IPZoQm4wKXJ5R091M= +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 14 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + webStreaming: 0 + priorityLevel: 0 + uploadedMode: 2 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 0 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 99, y: 120, z: 100, w: 122} + spriteGenerateFallbackPhysicsShape: 0 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 1024 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Server + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WeixinMiniGame + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: PlayableAds + maxTextureSize: 2048 + maxPlaceholderSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 1537655665 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + doOverrideTextureManagerOperations: 0 + platformOperationGroupSettings: + userData: + assetBundleName: + assetBundleVariant: diff --git a/CODELY.md b/CODELY.md index 4c846e5..b096052 100644 --- a/CODELY.md +++ b/CODELY.md @@ -26,6 +26,7 @@ - [2026-09-03 18:09:56] 《召唤之战》大招统一在下一次普攻开始前判定:先通过现有寻敌逻辑获得有效目标,能量满则优先释放大招并消耗能量,跳过本次普攻;没有有效目标时不释放且保留能量。**Why:** 避免普攻命中击杀目标后仍立即触发大招。**How to apply:** 后续新增或修改角色技能时遵循该统一触发时机。 - [2026-09-03 18:52:21] 《召唤之战》采用 2.5D 战斗呈现,角色设计需要在俯视斜角和远距离下保持清晰剪影与可读的大色块。**Why:** 用户希望角色在实际战斗镜头中仍容易区分。**How to apply:** 后续角色图片、模型、服装和特效设计优先考虑 2.5D 视角下的轮廓识别,不依赖细小装饰。 - [2026-09-03 19:12:39] 角色图片提示词与游戏内装备分离:盾卫的角色本体图片必须明确不出现盾牌,塔盾作为独立武器/装备资产单独生成与配置。**Why:** 便于后续替换和挂载装备,避免角色模型自带盾牌影响游戏配置。**How to apply:** 后续生成盾卫或其他可换装角色图片时,只描述身体与服装本体,不把可独立配置的装备画进角色图。 +- [2026-09-06 22:14:43] 《召唤之战》当前先确定每关携带 5 种角色,战斗中固定显示 5 张召唤卡;UI 采用大框底图加独立可复用卡片、角色头像和运行时状态元素。**Why:** 先控制竖屏战斗界面复杂度并便于调试。**How to apply:** 后续召唤 UI、卡组和能量系统按 5 个固定卡位设计,不把动态文字、冷却和能量豆烘焙进静态图片。 ### Reference diff --git a/Packages/manifest.json b/Packages/manifest.json index 1e2f94a..a52f6c2 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -2,7 +2,9 @@ "dependencies": { "cn.tuanjie.ai.generators": "file:../.codely-cli/extensions/TJGenerators/Packages/cn.tuanjie.ai.generators", "cn.tuanjie.ai.graph": "1.0.10", + "cn.tuanjie.codely.bridge": "1.0.81", "com.qq.weixin.minigame": "https://gitee.com/wechat-minigame/minigame-tuanjie-transform-sdk.git", + "com.unity.2d.sprite": "1.0.0", "com.unity.adaptiveperformance": "4.0.1", "com.unity.feature.mobile": "1.0.0", "com.unity.ide.rider": "3.0.36", @@ -43,7 +45,6 @@ "com.unity.modules.video": "1.0.0", "com.unity.modules.vr": "1.0.0", "com.unity.modules.wind": "1.0.0", - "com.unity.modules.xr": "1.0.0", - "cn.tuanjie.codely.bridge": "1.0.81" + "com.unity.modules.xr": "1.0.0" } } diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index d4549e3..f0ec5ab 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -47,6 +47,12 @@ "dependencies": {}, "hash": "cefa752ab07f46e43a1a4ab3b180904cac6f1fdd" }, + "com.unity.2d.sprite": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, "com.unity.adaptiveperformance": { "version": "4.0.1", "depth": 0, diff --git a/第一关地图与装饰设计.md b/第一关地图与装饰设计.md index 0d4d112..85f0fcf 100644 --- a/第一关地图与装饰设计.md +++ b/第一关地图与装饰设计.md @@ -267,3 +267,94 @@ Z=-25 第一关终点或关底战入口 10. 城堡门廊或主厅入口组合物。 第一版只要完成前 6 类装饰物,就可以搭出有灰石城堡辨识度的地图。其余装饰物用于补充区域差异,不影响核心移动、战斗和召唤流程。 + +## 十、第一关战斗 UI 层级设计 + +第一关 UI 采用竖屏屏幕空间界面,不随相机移动。每关固定携带 5 种角色,战斗中固定显示 5 张召唤卡片。 + +### 1. 整体层级 + +```text +Canvas(Screen Space - Overlay) +└── BattleHUD + ├── TopBar + │ ├── 关卡信息 + │ ├── 敌方状态 + │ │ ├── 敌方名称 + │ │ └── 敌方生命条 + │ └── 暂停按钮 + └── BottomSummonPanel + ├── PanelBackground(召唤栏大框) + ├── ManaRow(10 个能量豆) + └── CardRow(5 个角色卡片) + ├── RoleCard_01 + ├── RoleCard_02 + ├── RoleCard_03 + ├── RoleCard_04 + └── RoleCard_05 + +WorldSpaceCanvas(按单位生成) +└── 单位头顶生命条与状态提示 +``` + +`WorldSpaceCanvas` 的单位头顶生命条与底部召唤栏分开管理,不把战斗角色的世界空间血条塞进屏幕空间 Canvas。 + +### 2. 大框、卡片与头像 + +- `PanelBackground` 使用独立的透明 PNG,只负责召唤栏整体背景和边框。 +- 大框内部不放完整角色头像和动态文字,可保留低对比度的 5 个卡位凹槽作为布局提示。 +- `RoleCard` 使用一个可复用的卡片外框 Prefab,在 `CardRow` 中复用 5 次。 +- 每个角色头像使用独立的透明 PNG,叠加到对应卡片中。 +- 能量消耗、角色名称、冷却倒计时和选中状态由 Unity 运行时组件显示,不烘焙进静态图片。 + +单张角色卡片的推荐层级: + +```text +RoleCard +├── CardFrame(通用卡片外框) +├── Portrait(角色透明头像) +├── CostText(能量消耗) +├── CooldownMask(冷却遮罩) +├── SelectedHighlight(选中高亮) +└── Button(点击区域) +``` + +### 3. 能量豆设计 + +- 最大能量为 10 个能量豆。 +- 10 个能量豆统一使用蓝色,与主角普攻的蓝色能量球保持一致。 +- 已拥有的能量显示为明亮蓝色,未拥有的能量显示为暗蓝色或半透明。 +- 能量按固定时间回复 1 个,不能超过上限 10。 +- 召唤卡点击后先播放主角召唤动画,真正执行 `OnSkillHit1` 并成功生成单位时再扣除能量。 +- 召唤资源独立于 `WorldHealthBar` 的角色技能能量,不使用同一条数值。 + +```text +ManaRow +├── ManaBead_01 +├── ManaBead_02 +├── …… +└── ManaBead_10 +``` + +### 4. 召唤交互流程 + +```text +点击 RoleCard +→ 检查能量和卡片冷却 +→ 记录要召唤的角色 +→ 播放主角 skill 动画 +→ 动画 Event 调用 OnSkillHit1 +→ 扣除能量并生成召唤单位 +→ 更新卡片冷却与能量豆显示 +``` + +电脑调试阶段,键盘 `1/2` 与卡片按钮调用同一个召唤请求,不保留两套独立逻辑。召唤动画播放期间暂时禁止重复请求,避免一次动画生成多个单位。 + +### 5. 第一版布局原则 + +- 底部召唤栏固定在安全区域内,不随主角和相机移动。 +- 召唤栏高度控制在屏幕底部约 20%~25%,不能遮挡主角、敌人和投射物轨迹。 +- 能量豆放在 5 张角色卡片上方,形成“能量 → 卡片”的直接操作关系。 +- 5 张卡片水平排列,保持相同尺寸和间距。 +- 顶部只放关卡信息、敌方状态和暂停按钮,不增加技能、背包或属性入口。 +- 所有 UI 美术资源优先使用透明 RGBA PNG;动态文字、数字、冷却和能量状态由 Unity 运行时绘制。