docs(clipboard): 添加剪贴板功能相关图片资源

添加了两个剪贴板功能的截图文件,用于文档说明和功能展示。
```
This commit is contained in:
huadexuan committed 2026-09-09 23:59:15 +08:00
1 parent 47f01ecd2e
commit f93d69d8ee
77 files changed
+5482 -307

No files matched your search

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.0 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 494 KiB

@@ -0,0 +1,15 @@
%YAML 1.1
%TAG !u! tag:yousandi.cn,2023:
--- !u!221 &22100000
AnimatorOverrideController:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u6CD5\u5E08"
m_Controller: {fileID: 9100000, guid: 040acc435cecb4b16b965a1136ce6834, type: 2}
m_Clips:
- m_OriginalClip: {fileID: -203655887218126122, guid: 5072af719b9b1401787c6c55f048d8ed,
type: 3}
m_OverrideClip: {fileID: -203655887218126122, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541,
type: 3}
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: XX9J5CyvUH46oWPtVpPisIfeo2T/nuW47XOxns0s3opsFchiyfs6/0I=
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 22100000
userData:
assetBundleName:
assetBundleVariant:
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: C34dsCurVnrlVITVjItF/WctNok+y18W0KOIm5xL0gZ1PDr9n6T4WO0=
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
+28
View File
@@ -0,0 +1,28 @@
%YAML 1.1
%TAG !u! tag:yousandi.cn,2023:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6769361b152df4efb933934b84a6e673, type: 3}
m_Name: HumanSoldierData
m_EditorClassIdentifier:
characterId: human_soldier
characterName: "\u4EBA\u7C7B\u58EB\u5175"
description: "\u57FA\u7840\u8FD1\u6218\u5355\u4F4D\uFF0C\u653B\u51FB\u529B\u9002\u4E2D\uFF0C\u9002\u5408\u524D\u6392\u4F5C\u6218"
cardIcon: {fileID: 21300000, guid: ac0c2d42f9a144e5b9e9b0d16590d58b, type: 3}
unitPrefab: {fileID: 7945271050725079514, guid: 04ae1b1fe51474dda8ae5daf0b1df7c1,
type: 3}
manaCost: 2
cooldownTime: 1
baseMaxHealth: 100
baseAttackPower: 50
baseMoveSpeed: 3
healthPerLevel: 10
attackPerLevel: 5
moveSpeedPerLevel: 0
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: DnxLvHioWy/Y8BQTJXvfgy4EY9ORY5NTkgRou5DX6985cCP+TJ5xtIQ=
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
+28
View File
@@ -0,0 +1,28 @@
%YAML 1.1
%TAG !u! tag:yousandi.cn,2023:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6769361b152df4efb933934b84a6e673, type: 3}
m_Name: "\u4EBA\u7C7B\u58EB\u5175Data"
m_EditorClassIdentifier:
characterId: human_soldier
characterName: "\u4EBA\u7C7B\u58EB\u5175"
description: "\u57FA\u7840\u8FD1\u6218\u5355\u4F4D\uFF0C\u653B\u51FB\u529B\u9002\u4E2D\uFF0C\u9002\u5408\u524D\u6392\u4F5C\u6218"
cardIcon: {fileID: 21300000, guid: 3f35fdb898d8648e0a01f5f7c6e5943c, type: 3}
unitPrefab: {fileID: 7945271050725079514, guid: 04ae1b1fe51474dda8ae5daf0b1df7c1,
type: 3}
manaCost: 2
cooldownTime: 1
baseMaxHealth: 100
baseAttackPower: 50
baseMoveSpeed: 3
healthPerLevel: 10
attackPerLevel: 5
moveSpeedPerLevel: 0
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: CSwetiL4AHqP39E/7qazwPZM8aFtE3j4gg8BRoM4G8fsabJg0VD7Kt0=
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
+28
View File
@@ -0,0 +1,28 @@
%YAML 1.1
%TAG !u! tag:yousandi.cn,2023:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6769361b152df4efb933934b84a6e673, type: 3}
m_Name: "\u5F13\u7BAD\u624BData"
m_EditorClassIdentifier:
characterId: archer
characterName: "\u5F13\u7BAD\u624B"
description: "\u8FDC\u7A0B\u653B\u51FB\u5355\u4F4D\uFF0C\u4F24\u5BB3\u8F83\u9AD8\uFF0C\u8840\u91CF\u8F83\u4F4E"
cardIcon: {fileID: 21300000, guid: 4e0429f3f8a3046c590d7fc5ce85c915, type: 3}
unitPrefab: {fileID: 5200308054099318121, guid: 7d2074c48a1b3544eb534bb509ffc845,
type: 3}
manaCost: 3
cooldownTime: 1
baseMaxHealth: 80
baseAttackPower: 60
baseMoveSpeed: 3.5
healthPerLevel: 8
attackPerLevel: 6
moveSpeedPerLevel: 0
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: CisYtyz8UXkfhsMYtyb4qnJz1RJ6ZyGwJSDFdEQJWYqrDqe2/KDR9Kk=
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
+28
View File
@@ -0,0 +1,28 @@
%YAML 1.1
%TAG !u! tag:yousandi.cn,2023:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6769361b152df4efb933934b84a6e673, type: 3}
m_Name: "\u6CD5\u5E08Data"
m_EditorClassIdentifier:
characterId: mage
characterName: "\u6CD5\u5E08"
description: "\u9B54\u6CD5\u653B\u51FB\u5355\u4F4D\uFF0C\u4F24\u5BB3\u6781\u9AD8\uFF0C\u8840\u91CF\u6781\u4F4E"
cardIcon: {fileID: 21300000, guid: d6b94f721183e428f9a7d708ab1c6386, type: 3}
unitPrefab: {fileID: 7062617501994129594, guid: 6fb249c0311f442ecb190db77248eafc,
type: 3}
manaCost: 6
cooldownTime: 1
baseMaxHealth: 70
baseAttackPower: 100
baseMoveSpeed: 3
healthPerLevel: 7
attackPerLevel: 10
moveSpeedPerLevel: 0
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: C3NJsn+kAnzT3QxMl9XPBoCD2AyysX9k5k7P22mEaZsEZKcHn277IEA=
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
+28
View File
@@ -0,0 +1,28 @@
%YAML 1.1
%TAG !u! tag:yousandi.cn,2023:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6769361b152df4efb933934b84a6e673, type: 3}
m_Name: "\u76FE\u536BData"
m_EditorClassIdentifier:
characterId: shield_guard
characterName: "\u76FE\u536B"
description: "\u91CD\u88C5\u9632\u5FA1\u5355\u4F4D\uFF0C\u8840\u91CF\u6781\u9AD8\uFF0C\u79FB\u52A8\u7F13\u6162"
cardIcon: {fileID: 21300000, guid: edea9239670494fc69b62e2fdc8525f5, type: 3}
unitPrefab: {fileID: 1242979668690031507, guid: 5a43e36885a204515891085639dd22c4,
type: 3}
manaCost: 4
cooldownTime: 1
baseMaxHealth: 150
baseAttackPower: 40
baseMoveSpeed: 2.5
healthPerLevel: 15
attackPerLevel: 4
moveSpeedPerLevel: 0
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: CntLtH78ACmcTgKYPiztAEDp2DI5raow4oaoECxfNVZUzjxIAWi0C9c=
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
+28
View File
@@ -0,0 +1,28 @@
%YAML 1.1
%TAG !u! tag:yousandi.cn,2023:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6769361b152df4efb933934b84a6e673, type: 3}
m_Name: "\u7CBE\u9510\u58EB\u5175Data"
m_EditorClassIdentifier:
characterId: elite_soldier
characterName: "\u7CBE\u9510\u58EB\u5175"
description: "\u9AD8\u7EA7\u8FD1\u6218\u5355\u4F4D\uFF0C\u653B\u9632\u517C\u5907\uFF0C\u6D88\u8017\u8F83\u9AD8"
cardIcon: {fileID: 21300000, guid: b86682305b7af4a5983b9f24110d7055, type: 3}
unitPrefab: {fileID: 3933539425749946856, guid: 6be579752d2424feea054ce267928002,
type: 3}
manaCost: 5
cooldownTime: 1
baseMaxHealth: 120
baseAttackPower: 80
baseMoveSpeed: 3.5
healthPerLevel: 12
attackPerLevel: 8
moveSpeedPerLevel: 0
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: CSsYvCn5AnKrZ2x8zfotbnn6DBxVlh5MG698DxSk8Z0Rgcngig2ZoA4=
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
+2 -2
View File
@@ -41,11 +41,11 @@ Material:
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Scale: {x: 3, y: 10}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: 4435756e5310e408fb125e8f4bcee9bd, type: 3}
m_Scale: {x: 3, y: 4.5}
m_Scale: {x: 3, y: 10}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: C38c53iqV3/vcSzJXWVIi4YsWKYa3aL4Swd/pbYP0iVFMA4Y2Au3tPc=
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.
+210
View File
@@ -0,0 +1,210 @@
fileFormatVersion: 2
guid: DX4ctCKuVS8HyqBfRGlWM6Uuwr/Ym0ebJyQjrRrmrcMqeuGBaeMS1lg=
ModelImporter:
serializedVersion: 22361
internalIDToNameTable: []
externalObjects:
- first:
type: UnityEngine:Material
assembly: UnityEngine.CoreModule
name: Material.001
second: {fileID: 2100000, guid: 50978bd724de24a5fb30f89222597897, type: 2}
materials:
materialImportMode: 2
materialName: 0
materialSearch: 1
materialLocation: 1
animations:
legacyGenerateAnimations: 4
bakeSimulation: 0
resampleCurves: 1
optimizeGameObjects: 0
removeConstantScaleCurves: 0
motionNodeName:
rigImportErrors:
rigImportWarnings:
animationImportErrors:
animationImportWarnings:
animationRetargetingWarnings:
animationDoRetargetingWarnings: 0
importAnimatedCustomProperties: 0
importConstraints: 0
animationCompression: 1
aCLCompressionLevel: 3
aCLCurvePrecision: 0.01
aCLFastSampleMode: 1
animationRotationError: 0.5
animationPositionError: 0.5
animationScaleError: 0.5
animationWrapMode: 0
extraExposedTransformPaths: []
extraUserProperties: []
clipAnimations: []
isReadable: 0
tuanjieGIEnable: 0
tuanjieGIGenSDFFactor: 1
tuanjieGIGenSDFBias: 0.25
tuanjieGIDoubleSidedMode: 0
tuanjieGIGenFacetNums: 12
meshes:
lODScreenPercentages: []
globalScale: 0.3
meshCompression: 0
totalVerticesCount: 490
totalTrianglesCount: 250
addColliders: 0
useSRGBMaterialColor: 1
sortHierarchyByName: 1
importPhysicalCameras: 1
importVisibility: 1
importBlendShapes: 1
importCameras: 1
importLights: 1
nodeNameCollisionStrategy: 1
fileIdsGeneration: 2
swapUVChannels: 0
generateSecondaryUV: 0
useFileUnits: 1
keepQuads: 0
weldVertices: 1
bakeAxisConversion: 0
preserveHierarchy: 0
skinWeightsMode: 0
maxBonesPerVertex: 4
minBoneWeight: 0.001
optimizeBones: 1
meshOptimizationFlags: -1
indexFormat: 0
secondaryUVAngleDistortion: 8
secondaryUVAreaDistortion: 15.000001
secondaryUVHardAngle: 88
secondaryUVMarginMethod: 1
secondaryUVMinLightmapResolution: 40
secondaryUVMinObjectScale: 1
secondaryUVPackMargin: 4
useFileScale: 1
strictVertexDataChecks: 0
virtualGeometry:
virtualGeometry: 0
useTransparent: 0
setVGForeachMesh: 0
isFirstUse: 1
virtualGeometrySettings:
generateGeometryBuffer: 0
surfaceCompensation: 0
allMeshUse: 1
ignoreSimpleMesh: 0
transformScaleState: 0
isPossibleOverflow: 0
hasBoneData: 0
isBoneCountOverflow: 0
virtualGeometryPlatformSettings:
- serializedVersion: 0
overridden: 0
ignorePlatformSupport: 0
buildTarget: DefaultVirtualGeometryPlatform
positionPrecision: -2147483648
normalPrecision: -2147483648
tangentPrecision: -2147483648
boneWeightPrecision: -2147483648
detailedTriangleCount: 0
detailedVertexCount: 0
rootPageSize: 0
streamablePageSize: 0
reserveTrianglePercent: 100
reserveDetailLevel: 0
- serializedVersion: 0
overridden: 0
ignorePlatformSupport: 0
buildTarget: Standalone
positionPrecision: -2147483648
normalPrecision: -2147483648
tangentPrecision: -2147483648
boneWeightPrecision: -2147483648
detailedTriangleCount: 0
detailedVertexCount: 0
rootPageSize: 0
streamablePageSize: 0
reserveTrianglePercent: 100
reserveDetailLevel: 0
- serializedVersion: 0
overridden: 0
ignorePlatformSupport: 0
buildTarget: iPhone
positionPrecision: -2147483648
normalPrecision: -2147483648
tangentPrecision: -2147483648
boneWeightPrecision: -2147483648
detailedTriangleCount: 0
detailedVertexCount: 0
rootPageSize: 0
streamablePageSize: 0
reserveTrianglePercent: 100
reserveDetailLevel: 0
- serializedVersion: 0
overridden: 0
ignorePlatformSupport: 0
buildTarget: Android
positionPrecision: -2147483648
normalPrecision: -2147483648
tangentPrecision: -2147483648
boneWeightPrecision: -2147483648
detailedTriangleCount: 0
detailedVertexCount: 0
rootPageSize: 0
streamablePageSize: 0
reserveTrianglePercent: 100
reserveDetailLevel: 0
selectedVGMeshes:
- index: 0
meshName: node_0
lodLevel: 0
meshGeometryBuffer: 0
supportVGMeshes:
- index: 0
meshName: node_0
lodLevel: 0
meshGeometryBuffer: 0
tangentSpace:
normalSmoothAngle: 60
normalImportMode: 0
tangentImportMode: 3
normalCalculationMode: 4
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
blendShapeNormalImportMode: 1
normalSmoothingSource: 0
referencedClips: []
importAnimation: 1
overrideDefaultPose: 0
humanDescription:
serializedVersion: 3
human: []
skeleton: []
namedPoseList:
- name: Default
skeleton: []
armTwist: 0.5
foreArmTwist: 0.5
upperLegTwist: 0.5
legTwist: 0.5
armStretch: 0.05
legStretch: 0.05
feetSpacing: 0
globalScale: 0.003
rootMotionBoneName:
defaultPoseIndex: -1
hasTranslationDoF: 0
hasExtraRoot: 0
skeletonHasParents: 1
lastHumanDescriptionAvatarSource: {instanceID: 0}
autoGenerateAvatarMappingIfUnspecified: 1
animationType: 2
humanoidOversampling: 1
avatarSetup: 0
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
importBlendShapeDeformPercent: 1
remapMaterialsIfMaterialImportModeIsNone: 0
additionalBone: 0
userData:
assetBundleName:
assetBundleVariant:
+83
View File
@@ -0,0 +1,83 @@
%YAML 1.1
%TAG !u! tag:yousandi.cn,2023:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u706B\u7403"
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: f1862d5a2dc78468fa7236242a1c3b02, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
m_BuildTextureStacks: []
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: CnoWsiL/B3zlkl6j6Oyjvom2vjspgQoH8st5cXUespCJv+1iNNssMuA=
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:
+163
View File
@@ -0,0 +1,163 @@
fileFormatVersion: 2
guid: WXsXsyj5VioLVQJuZ6OmEDiiKokNchYlYt1llnIal3subXoKr+77z4Y=
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: 128
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:
@@ -39,7 +39,49 @@ ModelImporter:
animationWrapMode: 0
extraExposedTransformPaths: []
extraUserProperties: []
clipAnimations: []
clipAnimations:
- serializedVersion: 18
name: "\u6CD5\u5E08\u653B\u51FB"
takeName: mixamo.com
internalID: -203655887218126122
firstFrame: 0
lastFrame: 79
wrapMode: 0
orientationOffsetY: 0
level: 0
cycleOffset: 0
loop: 0
hasAdditiveReferencePose: 0
lockToRoot: 0
loopTime: 0
loopBlend: 0
loopBlendOrientation: 0
loopBlendPositionY: 0
loopBlendPositionXZ: 0
keepOriginalOrientation: 0
keepOriginalPositionY: 1
keepOriginalPositionXZ: 0
heightFromFeet: 0
mirror: 0
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
curves: []
events:
- time: 0.5272408
functionName: OnAttackEffect
data:
objectReferenceParameter: {instanceID: 0}
floatParameter: 0
intParameter: 0
messageOptions: 0
intervals: []
transformMask: []
maskType: 3
maskSource: {instanceID: 0}
additiveReferencePoseFrame: 0
additiveType: 0
basePoseType: 0
additiveSelectedAnimation: {instanceID: 0}
additiveSelectedAnimationFrameIndex: 0
isReadable: 0
tuanjieGIEnable: 0
tuanjieGIGenSDFFactor: 1
@@ -48,7 +90,7 @@ ModelImporter:
tuanjieGIGenFacetNums: 12
meshes:
lODScreenPercentages: []
globalScale: 1
globalScale: 150
meshCompression: 0
totalVerticesCount: 7837
totalTrianglesCount: 5998
@@ -368,130 +410,130 @@ ModelImporter:
scale: {x: 1, y: 1, z: 1}
- name: mixamorig:Hips
parentName: "\u6CD5\u5E08\u653B\u51FB(Clone)"
position: {x: -0.0000074754116, y: 0.004151704, z: -0.00002420703}
position: {x: -0.0011213118, y: 0.6227555, z: -0.0036310542}
rotation: {x: 0.0000000014551915, y: 0.000000023283064, z: 0.0000000014551915,
w: 1}
scale: {x: 1.0000001, y: 1, z: 0.99999994}
- name: mixamorig:LeftUpLeg
parentName: mixamorig:Hips
position: {x: -0.0007289625, y: -0.00037142128, z: 0.000034795798}
position: {x: -0.109344386, y: -0.0557132, z: 0.00521937}
rotation: {x: 0.00074160506, y: -0.03174065, z: 0.9992232, w: 0.023347553}
scale: {x: 1.0000004, y: 1.0000006, z: 1.0000001}
- name: mixamorig:LeftLeg
parentName: mixamorig:LeftUpLeg
position: {x: -0, y: 0.0016675115, z: 0}
position: {x: -0, y: 0.25012672, z: 0}
rotation: {x: 0.03747526, y: -0.00029713972, z: -0.00792327, w: 0.9992661}
scale: {x: 0.99999994, y: 0.99999994, z: 1.0000004}
- name: mixamorig:LeftFoot
parentName: mixamorig:LeftLeg
position: {x: 1.3877787e-19, y: 0.0011319033, z: 0}
position: {x: 2.0816683e-17, y: 0.16978548, z: 0}
rotation: {x: 0.3981487, y: 0.1500844, z: -0.06505626, w: 0.90261835}
scale: {x: 1.0000001, y: 1, z: 0.9999998}
- name: mixamorig:LeftToeBase
parentName: mixamorig:LeftFoot
position: {x: 1.3877787e-19, y: 0.0013501688, z: 1.3877787e-19}
position: {x: 2.0816683e-17, y: 0.20252532, z: 2.0816683e-17}
rotation: {x: 0.33827373, y: 0.043317553, z: -0.0155898, w: 0.939921}
scale: {x: 1.0000001, y: 1.0000001, z: 1}
- name: mixamorig:LeftToe_End
parentName: mixamorig:LeftToeBase
position: {x: -0, y: 0.0005317036, z: -1.7347234e-20}
position: {x: -0, y: 0.07975553, z: -2.6020854e-18}
rotation: {x: 0, y: -0, z: -0, w: 1}
scale: {x: 1, y: 1, z: 1}
- name: mixamorig:Spine
parentName: mixamorig:Hips
position: {x: -0, y: 0.0006685549, z: -0.000025646132}
position: {x: -0, y: 0.100283235, z: -0.0038469199}
rotation: {x: -0.019169705, y: -0.000000023250891, z: -0.0000000019012536, w: 0.9998163}
scale: {x: 0.9999999, y: 1.0000001, z: 1.0000001}
- name: mixamorig:Spine1
parentName: mixamorig:Spine
position: {x: -0, y: 0.0007805541, z: 0}
position: {x: -0, y: 0.11708312, z: 0}
rotation: {x: -0.00000001117587, y: -0.000000022819703, z: -0.00000001252547,
w: 1}
scale: {x: 1.0000002, y: 0.9999999, z: 1.0000001}
- name: mixamorig:Spine2
parentName: mixamorig:Spine1
position: {x: -0, y: 0.0008920615, z: 0}
position: {x: -0, y: 0.13380922, z: 0}
rotation: {x: 0.000000026077029, y: 0.000000011632977, z: 4.4624787e-10, w: 1}
scale: {x: 0.99999976, y: 0.9999999, z: 0.9999999}
- name: mixamorig:Neck
parentName: mixamorig:Spine2
position: {x: -0, y: 0.0010035697, z: 3.143857e-11}
position: {x: -0, y: 0.15053543, z: 0.0000000047157855}
rotation: {x: 0.019169692, y: 0.000000011193063, z: 0.00000002350195, w: 0.9998163}
scale: {x: 1.0000001, y: 1, z: 1}
- name: mixamorig:Head
parentName: mixamorig:Neck
position: {x: -0, y: 0.0003375828, z: 0.0000075757594}
position: {x: -0, y: 0.050637424, z: 0.0011363638}
rotation: {x: -0.000000014551915, y: -0.000000005820767, z: -0.0000000065483596,
w: 1}
scale: {x: 0.9999999, y: 1.0000001, z: 0.9999999}
- name: mixamorig:HeadTop_End
parentName: mixamorig:Head
position: {x: -0, y: 0.0030948115, z: 0.00006945128}
position: {x: -0, y: 0.46422175, z: 0.010417692}
rotation: {x: 0, y: -0, z: -0, w: 1}
scale: {x: 1, y: 1, z: 1}
- name: mixamorig:RightShoulder
parentName: mixamorig:Spine2
position: {x: 0.0003882962, y: 0.00079582154, z: -0.000009511547}
position: {x: 0.05824443, y: 0.119373225, z: -0.001426732}
rotation: {x: -0.56814146, y: -0.41603026, z: 0.58017933, w: -0.40929958}
scale: {x: 1.0000001, y: 1, z: 1.0000001}
- name: mixamorig:RightArm
parentName: mixamorig:RightShoulder
position: {x: 3.469447e-20, y: 0.00087823515, z: -1.110223e-18}
position: {x: 5.204171e-18, y: 0.13173528, z: -1.6653347e-16}
rotation: {x: 0.13937366, y: -0.051219333, z: 0.0035402467, w: -0.988908}
scale: {x: 1, y: 1.0000001, z: 1.0000001}
- name: mixamorig:RightForeArm
parentName: mixamorig:RightArm
position: {x: -0, y: 0.0013082612, z: -5.551115e-19}
position: {x: -0, y: 0.19623922, z: -8.3266733e-17}
rotation: {x: -0.05341374, y: -0.0013536698, z: 0.02529931, w: 0.998251}
scale: {x: 1.0000001, y: 1.0000005, z: 1}
- name: mixamorig:RightHand
parentName: mixamorig:RightForeArm
position: {x: -0, y: 0.0013825204, z: -5.551115e-19}
position: {x: -0, y: 0.20737809, z: -8.3266733e-17}
rotation: {x: -0, y: -0, z: 0.0000000014479153, w: 1}
scale: {x: 1, y: 1, z: 1}
- name: mixamorig:LeftShoulder
parentName: mixamorig:Spine2
position: {x: -0.0003882962, y: 0.0007957034, z: -0.0000064316}
position: {x: -0.05824443, y: 0.11935551, z: -0.00096474006}
rotation: {x: 0.5711396, y: -0.41326442, z: 0.5774085, w: 0.41183934}
scale: {x: 1, y: 0.99999964, z: 1.0000002}
- name: mixamorig:LeftArm
parentName: mixamorig:LeftShoulder
position: {x: -0, y: 0.00087823515, z: 0}
position: {x: -0, y: 0.13173528, z: 0}
rotation: {x: -0.13941151, y: -0.047370788, z: -0.0002166032, w: 0.9891008}
scale: {x: 1.0000001, y: 1.0000001, z: 0.9999999}
- name: mixamorig:LeftForeArm
parentName: mixamorig:LeftArm
position: {x: -0, y: 0.0013080271, z: 5.551115e-19}
position: {x: -0, y: 0.19620405, z: 8.3266733e-17}
rotation: {x: -0.053470403, y: 0.0013769642, z: -0.025705442, w: 0.9982376}
scale: {x: 1, y: 1.0000005, z: 1.0000006}
- name: mixamorig:LeftHand
parentName: mixamorig:LeftForeArm
position: {x: -0, y: 0.0013828536, z: 0}
position: {x: -0, y: 0.20742802, z: 0}
rotation: {x: -0, y: -0, z: -0, w: 1}
scale: {x: 1, y: 1, z: 1}
- name: mixamorig:RightUpLeg
parentName: mixamorig:Hips
position: {x: 0.0007289625, y: -0.00037142128, z: 0.000015105201}
position: {x: 0.109344386, y: -0.0557132, z: 0.0022657802}
rotation: {x: -0.00046709552, y: -0.019965075, z: 0.9995271, w: -0.02338314}
scale: {x: 1.0000001, y: 1.0000001, z: 1}
- name: mixamorig:RightLeg
parentName: mixamorig:RightUpLeg
position: {x: -0, y: 0.0016654828, z: 0}
position: {x: -0, y: 0.24982241, z: 0}
rotation: {x: 0.012299303, y: 0.00009616383, z: 0.007819844, w: 0.99989384}
scale: {x: 1.0000002, y: 1.0000002, z: 1}
- name: mixamorig:RightFoot
parentName: mixamorig:RightLeg
position: {x: -0, y: 0.0011319607, z: 0}
position: {x: -0, y: 0.1697941, z: 0}
rotation: {x: 0.41092637, y: -0.15256651, z: 0.06979724, w: 0.8960979}
scale: {x: 1.0000001, y: 1, z: 1}
- name: mixamorig:RightToeBase
parentName: mixamorig:RightFoot
position: {x: 1.3877787e-19, y: 0.0013582797, z: 0}
position: {x: 2.0816683e-17, y: 0.203742, z: 0}
rotation: {x: 0.33611518, y: -0.041657105, z: 0.014882982, w: 0.9407815}
scale: {x: 1.0000001, y: 1.0000004, z: 1.0000001}
- name: mixamorig:RightToe_End
parentName: mixamorig:RightToeBase
position: {x: -0, y: 0.0005494347, z: 8.673617e-21}
position: {x: -0, y: 0.082415216, z: 1.3010427e-18}
rotation: {x: 0, y: -0, z: -0, w: 1}
scale: {x: 1, y: 1, z: 1}
namedPoseList:
@@ -504,7 +546,7 @@ ModelImporter:
armStretch: 0.05
legStretch: 0.05
feetSpacing: 0
globalScale: 1
globalScale: 150
rootMotionBoneName:
defaultPoseIndex: -1
hasTranslationDoF: 0
@@ -0,0 +1,92 @@
%YAML 1.1
%TAG !u! tag:yousandi.cn,2023:
--- !u!1001 &2564164096022838833
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: -8679921383154817045, guid: 2431836d9bf5b4d18a189866b2fdc744,
type: 3}
propertyPath: m_LocalPosition.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 2431836d9bf5b4d18a189866b2fdc744,
type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 2431836d9bf5b4d18a189866b2fdc744,
type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 2431836d9bf5b4d18a189866b2fdc744,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 2431836d9bf5b4d18a189866b2fdc744,
type: 3}
propertyPath: m_LocalRotation.x
value: -0.00000003774895
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 2431836d9bf5b4d18a189866b2fdc744,
type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 2431836d9bf5b4d18a189866b2fdc744,
type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 2431836d9bf5b4d18a189866b2fdc744,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 2431836d9bf5b4d18a189866b2fdc744,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 2431836d9bf5b4d18a189866b2fdc744,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 2431836d9bf5b4d18a189866b2fdc744,
type: 3}
propertyPath: m_Name
value: "\u706B\u7403"
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents:
- targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: 2431836d9bf5b4d18a189866b2fdc744,
type: 3}
insertIndex: -1
addedObject: {fileID: 1919514275150446602}
m_SourcePrefab: {fileID: 100100000, guid: 2431836d9bf5b4d18a189866b2fdc744, type: 3}
--- !u!1 &3410584434205606752 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: 2431836d9bf5b4d18a189866b2fdc744,
type: 3}
m_PrefabInstance: {fileID: 2564164096022838833}
m_PrefabAsset: {fileID: 0}
--- !u!114 &1919514275150446602
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3410584434205606752}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 8b59fcde30d274e6b8813e5df7d6e791, type: 3}
m_Name:
m_EditorClassIdentifier:
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: WiscvX77B39sLAXgwMIrlsqC7XtQT3haNosIMFUsQ67M9PkDGK2a/Fw=
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
+260
View File
@@ -0,0 +1,260 @@
%YAML 1.1
%TAG !u! tag:yousandi.cn,2023:
--- !u!1 &3671937800742460533
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 7
m_Component:
- component: {fileID: 7498589538563774666}
m_Layer: 0
m_HasEditorInfo: 1
m_Name: attackPos
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &7498589538563774666
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3671937800742460533}
serializedVersion: 2
m_LocalRotation: {x: -0.00000010349317, y: 0.00000008195635, z: 0.00000006627303,
w: 1}
m_LocalPosition: {x: 0.055999987, y: 0.26200005, z: 0.044000078}
m_LocalScale: {x: 100, y: 99.999985, z: 100}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 8608542904823568931}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1001 &7980973251924600299
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: -8679921383154817045, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541,
type: 3}
propertyPath: m_LocalPosition.x
value: 1.66
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541,
type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541,
type: 3}
propertyPath: m_LocalPosition.z
value: 7.54
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541,
type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541,
type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541,
type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541,
type: 3}
propertyPath: m_Name
value: "\u6CD5\u5E08"
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541,
type: 3}
propertyPath: m_TagString
value: Friend
objectReference: {fileID: 0}
- target: {fileID: 5866666021909216657, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541,
type: 3}
propertyPath: m_Controller
value:
objectReference: {fileID: 22100000, guid: b5fa6235363e048b6ba902336fdf070e,
type: 2}
- target: {fileID: 5866666021909216657, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541,
type: 3}
propertyPath: m_ApplyRootMotion
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects:
- targetCorrespondingSourceObject: {fileID: 1852576806548013000, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541,
type: 3}
insertIndex: -1
addedObject: {fileID: 7498589538563774666}
m_AddedComponents:
- targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541,
type: 3}
insertIndex: -1
addedObject: {fileID: 6320542991241058202}
- targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541,
type: 3}
insertIndex: -1
addedObject: {fileID: 4270851649574006868}
- targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541,
type: 3}
insertIndex: -1
addedObject: {fileID: 7693557031437858142}
- targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541,
type: 3}
insertIndex: -1
addedObject: {fileID: 990449840913200210}
- targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541,
type: 3}
insertIndex: -1
addedObject: {fileID: 3887798621029042906}
m_SourcePrefab: {fileID: 100100000, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541, type: 3}
--- !u!1 &7062617501994129594 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541,
type: 3}
m_PrefabInstance: {fileID: 7980973251924600299}
m_PrefabAsset: {fileID: 0}
--- !u!143 &6320542991241058202
CharacterController:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7062617501994129594}
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: 3
m_Height: 2
m_Radius: 0.4
m_SlopeLimit: 45
m_StepOffset: 0.3
m_SkinWidth: 0.08
m_MinMoveDistance: 0.001
m_Center: {x: 0, y: 1, z: 0}
--- !u!114 &4270851649574006868
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7062617501994129594}
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!114 &7693557031437858142
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7062617501994129594}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b91aa6ae607324ce19fc46225a44e70a, type: 3}
m_Name:
m_EditorClassIdentifier:
speed: 3
gravity: -20
range: 18
detectRange: 20
attackRange: 6
modelFacingOffset: 45
useRootMotion: 1
attackPower: 42
attackDuration: 1.82
attackType: 2
projectilePrefab: {fileID: 3410584434205606752, guid: ea38dfd40c228456e8e1c98952673009,
type: 3}
projectileSpawnPoint: {fileID: 7498589538563774666}
projectileSpeed: 20
projectileLifetime: 5
energyPerAttack: 20
target: {fileID: 0}
--- !u!114 &990449840913200210
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7062617501994129594}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9355c53f591d4459ea620fc8191efa17, type: 3}
m_Name:
m_EditorClassIdentifier:
maxHealth: 135
currentHealth: 135
maxEnergy: 100
currentEnergy: 0
heightOffset: 0.25
barWidth: 1.2
borderColor: {r: 0.03, g: 0.03, b: 0.03, a: 0.95}
deathEffectDuration: 1.1
deathEffectColor: {r: 0.55, g: 0.9, b: 1, a: 1}
--- !u!114 &3887798621029042906
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7062617501994129594}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5447f3554883743bcbd347aed81b3a6e, type: 3}
m_Name:
m_EditorClassIdentifier:
explosionRadius: 1.8
explosionDamage: 85
--- !u!4 &8608542904823568931 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 1852576806548013000, guid: 9d4b54ec2c4f7754bb1fd5ec11a29541,
type: 3}
m_PrefabInstance: {fileID: 7980973251924600299}
m_PrefabAsset: {fileID: 0}
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: CSxNty6kAHuJvN51sq3RV7IUaah3oWM9uyAkhMqMaXpM7CNapJCzPiQ=
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
File diff suppressed because it is too large. Load diff
+52
View File
@@ -0,0 +1,52 @@
using System.Collections.Generic;
using UnityEngine;
public class CastleMageSkill : UnitSkill
{
[Header("小型魔爆参数")]
[Min(0.1f)]
public float explosionRadius = 1.8f;
[Min(0f)]
public float explosionDamage = 85f;
public override void ReleaseSkill()
{
GameObject target = unit.Target;
if (target == null)
{
return;
}
string opponentTag = unit.OpponentTag;
if (string.IsNullOrEmpty(opponentTag))
{
return;
}
Vector3 center = target.transform.position;
float radiusSquared = explosionRadius * explosionRadius;
HashSet<UnitBase> hitUnits = new HashSet<UnitBase>();
foreach (GameObject opponent in GameObject.FindGameObjectsWithTag(opponentTag))
{
if (opponent == null || opponent.transform.root == unit.transform.root)
{
continue;
}
Vector3 offset = opponent.transform.position - center;
offset.y = 0f;
if (offset.sqrMagnitude > radiusSquared)
{
continue;
}
UnitBase targetUnit = opponent.GetComponentInParent<UnitBase>();
if (targetUnit != null && hitUnits.Add(targetUnit))
{
targetUnit.ReceiveDamage(explosionDamage, unit.gameObject);
}
}
}
}
+11
View File
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: Cn4bsnyuVn6kevm8A3QZW4Oh8KCqLYuAMcb2daUizH+Zn45nRrCY42U=
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+59
View File
@@ -0,0 +1,59 @@
using UnityEngine;
[CreateAssetMenu(fileName = "NewCharacterData", menuName = "召唤之战/角色数据")]
public class CharacterData : ScriptableObject
{
[Header("基础信息")]
public string characterId = "unknown";
public string characterName = "未命名角色";
[TextArea(2, 4)]
public string description = "";
[Header("UI 显示")]
public Sprite cardIcon;
[Header("召唤配置")]
public GameObject unitPrefab;
[Min(0)]
public int manaCost = 1;
[Min(0f)]
public float cooldownTime = 1f;
[Header("基础属性(1级)")]
[Min(0f)]
public float baseMaxHealth = 100f;
[Min(0f)]
public float baseAttackPower = 10f;
[Min(0f)]
public float baseMoveSpeed = 3f;
[Header("升级成长")]
[Min(0f)]
public float healthPerLevel = 10f;
[Min(0f)]
public float attackPerLevel = 5f;
[Min(0f)]
public float moveSpeedPerLevel = 0f;
public float GetMaxHealth(int level)
{
return baseMaxHealth + (level - 1) * healthPerLevel;
}
public float GetAttackPower(int level)
{
return baseAttackPower + (level - 1) * attackPerLevel;
}
public float GetMoveSpeed(int level)
{
return baseMoveSpeed + (level - 1) * moveSpeedPerLevel;
}
}
+11
View File
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: CX0ZvCmrUiknanzzrRw7tS6o4/Rp0TGlIvuj81f1G/6JxI0yhleTFqk=
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+48 -11
View File
@@ -24,8 +24,7 @@ public class MainCharacterCombat : MonoBehaviour
public Transform attackPos;
[Header("召唤单位")]
public GameObject humanSoldierPrefab;
public GameObject archerPrefab;
public CharacterData[] summonableCharacters = new CharacterData[5];
public float summonDistance = 1.5f;
public float summonSideOffset = 0.8f;
public float summonSearchStep = 0.8f;
@@ -48,6 +47,8 @@ public class MainCharacterCombat : MonoBehaviour
private bool attacking;
private bool attackEffectTriggered;
private GameObject pendingSummonPrefab;
private CharacterData pendingSummonCharacterData;
private PlayerCharacterData pendingSummonPlayerData;
private float summonElapsed;
private bool summonSpawned;
private bool summoning;
@@ -136,16 +137,32 @@ public class MainCharacterCombat : MonoBehaviour
return false;
}
GameObject prefab = slot == 1
? humanSoldierPrefab
: slot == 2
? archerPrefab
: null;
if (prefab == null)
int index = slot - 1;
if (index < 0 || index >= summonableCharacters.Length)
{
return false;
}
CharacterData characterData = summonableCharacters[index];
if (characterData == null || characterData.unitPrefab == null)
{
return false;
}
if (ManaSystem.Instance == null || !ManaSystem.Instance.TryConsumeMana(characterData.manaCost))
{
return false;
}
PlayerCharacterData playerData = PlayerDataManager.Instance != null
? PlayerDataManager.Instance.GetDeckCharacter(index)
: null;
if (playerData == null)
{
playerData = new PlayerCharacterData(characterData.characterId, 1, 0);
}
if (movement != null)
{
movement.StopMovement();
@@ -156,11 +173,11 @@ public class MainCharacterCombat : MonoBehaviour
FinishAttack();
}
BeginSummon(prefab);
BeginSummon(characterData.unitPrefab, characterData, playerData);
return true;
}
private void BeginSummon(GameObject prefab)
private void BeginSummon(GameObject prefab, CharacterData characterData, PlayerCharacterData playerData)
{
if (prefab == null)
{
@@ -168,6 +185,8 @@ public class MainCharacterCombat : MonoBehaviour
}
pendingSummonPrefab = prefab;
pendingSummonCharacterData = characterData;
pendingSummonPlayerData = playerData;
summonElapsed = 0f;
summonSpawned = false;
summoning = true;
@@ -201,9 +220,27 @@ public class MainCharacterCombat : MonoBehaviour
spawnPosition,
Quaternion.LookRotation(direction, Vector3.up));
summoned.tag = "Friend";
UnitBase unitBase = summoned.GetComponent<UnitBase>();
if (unitBase != null && pendingSummonCharacterData != null && pendingSummonPlayerData != null)
{
float finalHealth = pendingSummonPlayerData.GetMaxHealth(pendingSummonCharacterData);
float finalAttack = pendingSummonPlayerData.GetAttackPower(pendingSummonCharacterData);
float finalSpeed = pendingSummonPlayerData.GetMoveSpeed(pendingSummonCharacterData);
unitBase.InitializeFromPlayerData(finalHealth, finalAttack, finalSpeed);
Debug.Log($"主角召唤单位:{summoned.name} Lv.{pendingSummonPlayerData.level} HP={finalHealth} ATK={finalAttack} position={spawnPosition}");
}
else
{
Debug.Log("主角召唤单位:" + summoned.name + " position=" + spawnPosition);
}
summonSpawned = true;
pendingSummonPrefab = null;
Debug.Log("主角召唤单位:" + summoned.name + " position=" + spawnPosition);
pendingSummonCharacterData = null;
pendingSummonPlayerData = null;
}
private bool TryFindSummonPosition(Vector3 direction, out Vector3 position)
+93
View File
@@ -0,0 +1,93 @@
using UnityEngine;
using UnityEngine.UI;
public class ManaSystem : MonoBehaviour
{
public static ManaSystem Instance { get; private set; }
[Header("能量配置")]
[Min(1)]
public int maxMana = 10;
[Min(0f)]
public float manaRegenRate = 1f;
[Header("UI 引用")]
public Image[] manaBeads;
private float currentMana;
private float manaRegenTimer;
public float CurrentMana => currentMana;
public int CurrentManaInt => Mathf.FloorToInt(currentMana);
private void Awake()
{
if (Instance != null && Instance != this)
{
Destroy(gameObject);
return;
}
Instance = this;
}
private void Start()
{
currentMana = maxMana;
UpdateManaUI();
}
private void Update()
{
if (currentMana < maxMana)
{
manaRegenTimer += Time.deltaTime;
if (manaRegenTimer >= manaRegenRate)
{
manaRegenTimer = 0f;
currentMana = Mathf.Min(currentMana + 1f, maxMana);
UpdateManaUI();
}
}
}
public bool TryConsumeMana(int cost)
{
if (CurrentManaInt < cost)
{
return false;
}
currentMana -= cost;
if (currentMana < 0f)
{
currentMana = 0f;
}
UpdateManaUI();
return true;
}
public void AddMana(int amount)
{
currentMana = Mathf.Min(currentMana + amount, maxMana);
UpdateManaUI();
}
private void UpdateManaUI()
{
if (manaBeads == null || manaBeads.Length == 0)
{
return;
}
int fullBeads = CurrentManaInt;
for (int i = 0; i < manaBeads.Length; i++)
{
if (manaBeads[i] != null)
{
manaBeads[i].enabled = i < fullBeads;
}
}
}
}
+11
View File
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: CX1N43j8An3F2SS5xfnnw0MEMGM1LHRi9Q5D/8G0X7pg6HMvFNxXEQw=
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+34
View File
@@ -0,0 +1,34 @@
using UnityEngine;
[System.Serializable]
public class PlayerCharacterData
{
public string characterId;
public int level = 1;
public int starLevel = 0;
public PlayerCharacterData(string id, int lvl = 1, int star = 0)
{
characterId = id;
level = lvl;
starLevel = star;
}
public float GetMaxHealth(CharacterData baseData)
{
if (baseData == null) return 100f;
return baseData.GetMaxHealth(level);
}
public float GetAttackPower(CharacterData baseData)
{
if (baseData == null) return 10f;
return baseData.GetAttackPower(level);
}
public float GetMoveSpeed(CharacterData baseData)
{
if (baseData == null) return 3f;
return baseData.GetMoveSpeed(level);
}
}
+11
View File
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: Xi9KvC3+B30tX+wHmYFe+bhJC4+O7cS3uMRPBwUDjR3vJnL0eZUuTnI=
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+60
View File
@@ -0,0 +1,60 @@
using System.Collections.Generic;
using UnityEngine;
public class PlayerDataManager : MonoBehaviour
{
public static PlayerDataManager Instance { get; private set; }
[Header("玩家拥有的角色(临时写死)")]
public List<PlayerCharacterData> ownedCharacters = new List<PlayerCharacterData>();
[Header("当前卡组(临时写死)")]
public PlayerCharacterData[] currentDeck = new PlayerCharacterData[5];
private void Awake()
{
if (Instance != null && Instance != this)
{
Destroy(gameObject);
return;
}
Instance = this;
InitializeTempData();
}
private void InitializeTempData()
{
ownedCharacters.Clear();
ownedCharacters.Add(new PlayerCharacterData("human_soldier", 1, 0));
ownedCharacters.Add(new PlayerCharacterData("archer", 1, 0));
currentDeck[0] = ownedCharacters[0];
currentDeck[1] = ownedCharacters[1];
}
public PlayerCharacterData GetCharacterData(string characterId)
{
return ownedCharacters.Find(c => c.characterId == characterId);
}
public PlayerCharacterData GetDeckCharacter(int slot)
{
if (slot < 0 || slot >= currentDeck.Length)
{
return null;
}
return currentDeck[slot];
}
public void UpgradeCharacter(string characterId)
{
var character = GetCharacterData(characterId);
if (character != null)
{
character.level++;
Debug.Log($"角色 {characterId} 升级到 {character.level} 级");
}
}
}
+11
View File
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: XXgYs3/+BXwaGUgnfPJroomJsvMXkT0jY2SiC+sLTmtNIlLz1jWA7qg=
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+116 -2
View File
@@ -4,17 +4,36 @@ using UnityEngine.UI;
[RequireComponent(typeof(Button))]
public class SummonCardButton : MonoBehaviour
{
[Header("角色数据")]
public CharacterData characterData;
[Header("卡槽配置")]
[Min(1)]
public int summonSlot = 1;
[Header("UI 引用")]
public Image cooldownMask;
public Text cooldownText;
public Image cardIcon;
public Text characterNameText;
public Text manaCostText;
private Button button;
private MainCharacterCombat combat;
private float cooldownTimer;
private bool isOnCooldown;
private void Awake()
{
button = GetComponent<Button>();
combat = FindObjectOfType<MainCharacterCombat>();
button.onClick.AddListener(OnClick);
isOnCooldown = false;
cooldownTimer = 0f;
UpdateCardUI();
UpdateCooldownUI();
}
private void OnDestroy()
@@ -25,16 +44,111 @@ public class SummonCardButton : MonoBehaviour
}
}
private void Update()
{
if (isOnCooldown)
{
cooldownTimer -= Time.deltaTime;
if (cooldownTimer <= 0f)
{
isOnCooldown = false;
cooldownTimer = 0f;
}
UpdateCooldownUI();
}
UpdateButtonState();
}
public void OnClick()
{
if (isOnCooldown || characterData == null)
{
return;
}
if (combat == null)
{
combat = FindObjectOfType<MainCharacterCombat>();
}
if (combat != null)
if (combat != null && combat.RequestSummon(summonSlot))
{
combat.RequestSummon(summonSlot);
StartCooldown();
}
}
private void StartCooldown()
{
if (characterData != null)
{
isOnCooldown = true;
cooldownTimer = characterData.cooldownTime;
UpdateCooldownUI();
}
}
private void UpdateCooldownUI()
{
if (cooldownMask != null)
{
cooldownMask.fillAmount = isOnCooldown ? (cooldownTimer / GetCooldownTime()) : 0f;
cooldownMask.enabled = isOnCooldown;
}
if (cooldownText != null)
{
cooldownText.text = isOnCooldown ? Mathf.CeilToInt(cooldownTimer).ToString() : "";
cooldownText.enabled = isOnCooldown;
}
}
private void UpdateButtonState()
{
if (button == null)
{
return;
}
button.interactable = !isOnCooldown && CanAfford();
}
private bool CanAfford()
{
if (ManaSystem.Instance == null || characterData == null)
{
return false;
}
return ManaSystem.Instance.CurrentManaInt >= characterData.manaCost;
}
private float GetCooldownTime()
{
return characterData != null ? characterData.cooldownTime : 5f;
}
private void UpdateCardUI()
{
if (characterData == null)
{
return;
}
if (cardIcon != null && characterData.cardIcon != null)
{
cardIcon.sprite = characterData.cardIcon;
}
if (characterNameText != null)
{
characterNameText.text = characterData.characterName;
}
if (manaCostText != null)
{
manaCostText.text = characterData.manaCost.ToString();
}
}
}
+17
View File
@@ -125,6 +125,23 @@ public class UnitBase : MonoBehaviour
// Start is called before the first frame update
public void InitializeFromPlayerData(float health, float attack, float moveSpeed)
{
attackPower = attack;
speed = moveSpeed;
if (worldHealthBar == null)
{
worldHealthBar = GetComponent<WorldHealthBar>();
}
if (worldHealthBar != null)
{
worldHealthBar.maxHealth = health;
worldHealthBar.currentHealth = health;
}
}
void Start()
{
//初始化
+115
View File
@@ -0,0 +1,115 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class WaveSpawner : MonoBehaviour
{
[System.Serializable]
public class Wave
{
public string waveName = "第一波";
public GameObject[] enemyPrefabs;
public Vector3[] spawnPositions;
public float spawnDelay = 0.5f;
}
[Header("波次配置")]
public Wave[] waves;
[Header("触发设置")]
public float triggerZPosition = 20f;
public bool autoStart = false;
private int currentWave = 0;
private bool waveStarted = false;
private bool waveCompleted = false;
private List<GameObject> activeEnemies = new List<GameObject>();
private Transform player;
private void Start()
{
player = GameObject.FindGameObjectWithTag("Player")?.transform;
if (player == null)
{
player = FindObjectOfType<MainCharacterCombat>()?.transform;
}
if (autoStart)
{
StartWave();
}
}
private void Update()
{
if (!waveStarted && !waveCompleted && player != null)
{
if (player.position.z >= triggerZPosition)
{
StartWave();
}
}
if (waveStarted && !waveCompleted)
{
CleanupDestroyedEnemies();
if (activeEnemies.Count == 0)
{
CompleteWave();
}
}
}
private void StartWave()
{
if (currentWave >= waves.Length)
{
return;
}
waveStarted = true;
StartCoroutine(SpawnWave(waves[currentWave]));
}
private IEnumerator SpawnWave(Wave wave)
{
Debug.Log($"开始生成:{wave.waveName}");
int count = Mathf.Min(wave.enemyPrefabs.Length, wave.spawnPositions.Length);
for (int i = 0; i < count; i++)
{
if (wave.enemyPrefabs[i] != null)
{
Vector3 spawnPos = transform.position + wave.spawnPositions[i];
GameObject enemy = Instantiate(wave.enemyPrefabs[i], spawnPos, Quaternion.identity);
enemy.tag = "Enemy";
activeEnemies.Add(enemy);
Debug.Log($"生成敌人:{enemy.name} 位置={spawnPos}");
yield return new WaitForSeconds(wave.spawnDelay);
}
}
}
private void CleanupDestroyedEnemies()
{
activeEnemies.RemoveAll(enemy => enemy == null);
}
private void CompleteWave()
{
waveCompleted = true;
Debug.Log($"完成:{waves[currentWave].waveName}");
}
public void NextWave()
{
currentWave++;
waveStarted = false;
waveCompleted = false;
activeEnemies.Clear();
}
}
+11
View File
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: XS4f4S7/WijE42v1mXpkmgvnNyaw2MphlMrkNdzMukMLev/BbsLYREs=
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: DHNO4S/4BX77kwvAo5poF6Otb/JUdQVh8fyVKVEbO5kcHcMRFAiAzYc=
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: DXwd4yv/Vy3zUebwiUAWVj6pRfpfe6zlgq6mJWJULYG9W1PxrerqzxQ=
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 MiB

@@ -0,0 +1,163 @@
fileFormatVersion: 2
guid: DCwcsHz5AXPNNwrNffV2Yt2S5NkJgtBh/m9SvLxElKEiCXVgBQxGMY0=
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: 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: 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: 256
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: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
doOverrideTextureManagerOperations: 0
platformOperationGroupSettings:
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 MiB

+163
View File
@@ -0,0 +1,163 @@
fileFormatVersion: 2
guid: Cy8fsSikBXhcKjWe0UDjjUTNL3U/zW8FZBIBIgbURNXdCgcKcEjVkkw=
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: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
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: 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: 256
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: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
doOverrideTextureManagerOperations: 0
platformOperationGroupSettings:
userData:
assetBundleName:
assetBundleVariant:
+163
View File
@@ -0,0 +1,163 @@
fileFormatVersion: 2
guid: W3xNvC77VHmxvepHFSVxoiTGOQxTKz2kqvbRUO4WecVsVEjz7Yq65B4=
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: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
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: 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: 256
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: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
doOverrideTextureManagerOperations: 0
platformOperationGroupSettings:
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 MiB

@@ -0,0 +1,163 @@
fileFormatVersion: 2
guid: Wi5K5COvUHLYe1malVFenRbeiCI/mFCB67t81qWn5g4eOiYAJjX21Mg=
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: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
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: 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: 256
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: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
doOverrideTextureManagerOperations: 0
platformOperationGroupSettings:
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,163 @@
fileFormatVersion: 2
guid: XXIZsyKvUHtP1Id4JGDZp2SAnb46iFfmb+uTHoKcJ+lPeqSrH9v15AI=
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: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
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: 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: 256
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: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
doOverrideTextureManagerOperations: 0
platformOperationGroupSettings:
userData:
assetBundleName:
assetBundleVariant:
+10 -1
View File
@@ -3,6 +3,7 @@
## Codely Structured Memories
### User
- [2026-09-09 13:43:50] 用户是 10 年 Java 后端开发,可以提供后端接口,但当前项目处于原型验证阶段,暂不需要服务器。
### Feedback
- [2026-08-28 11:36:37] 用户偏好 Unity 操作分步骤执行:一次只做一个明确动作并先验证结果,避免连续执行大量工具调用导致超时。**Why:** 之前连续操作出现 Stream idle timeout。**How to apply:** Unity 场景、Prefab、组件和运行验证都采用“读取→单步修改→确认”的节奏。
@@ -15,6 +16,9 @@
- [2026-09-04 11:21:06] 角色辨识度优先依靠大轮廓、简化脸部、职业特征大色块和少量核心识别点,不依赖复杂细节或精细贴图;尤其要适配 2.5D 远距离显示。**Why:** 用户希望即使模型和贴图较粗糙,也能一眼识别角色职业与身份。**How to apply:** 后续角色提示词优先设计头部框架、面部符号、服装剪影和能力核心,控制小装饰与高频纹理。
- [2026-09-04 14:12:02] 需要 Play Mode 验证时先询问用户,由用户手动点击 Play 并反馈结果,不要自动进入 Play Mode。**Why:** 可节约时间并避免 Unity 运行验证导致工具等待或超时。**How to apply:** Unity 动画、角色行为和运行时问题排查中,完成编辑态修改后停在编辑器等待用户验证。
- [2026-09-05 10:16:49] Unity 运行验证默认不由助手自动进入 Play Mode;完成编辑态修改、编译和场景保存后,等待用户手动点击 Play 并反馈结果。**Why:** 用户希望避免运行验证导致等待或超时。**How to apply:** 角色、动画 Event 和技能接入任务优先做编辑态验证,除非用户明确要求自动运行测试。
- [2026-09-09 12:11:59] 当用户明确指出现象和修复目标时,优先按用户给出的事实做针对性修改,不继续进行冗长排查。**Why:** 用户明确指出法师没有生成火球,并要求直接给新建火球 Prefab 补脚本。**How to apply:** 先读取目标资产确认,再执行最小必要修改;只有修改仍失败时才扩大排查范围。
- [2026-09-09 13:43:50] 能量恢复速度应该更慢一些,用户建议改为 3 秒恢复 1 格。**Why:** 1 秒 1 格太快,不利于战斗节奏控制。**How to apply:** 召唤系统能量恢复速率应偏慢,给玩家资源压力。
- [2026-09-09 20:37:24] 用户希望提前实现数据架构而非临时方案,即使当前阶段功能简单。**Why:** 用户有 10 年后端开发经验,理解数据分层的重要性,希望逐步完善而非推倒重来。**How to apply:** 对于有明确扩展方向的功能(升级、存档、联网),优先设计可扩展架构并临时写死数据,而非等需求明确后再重构。
### Project
- [2026-08-28 14:26:56] 弓箭手远程箭矢的设计要求:保持发射时高度水平飞行,命中目标后直接结算伤害并销毁,不产生实体物理击退。**Why:** 当前玩法希望远程攻击是命中判定而非物理推动。**How to apply:** 后续调整箭矢、Projectile 或弓箭手攻击逻辑时保持这一行为。
@@ -27,6 +31,11 @@
- [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 个固定卡位设计,不把动态文字、冷却和能量豆烘焙进静态图片。
- [2026-09-09 12:23:17] 攻击系统已从动画结束 Event 改为攻击命中 Event 触发。UnitBase 通过 OnAttackEffect() 统一处理四种攻击类型:MeleeDirect(近战直接伤害,已实现)、RangedProjectile(远程锁敌飞行物,已实现)、MeleeArea(近战范围,预留)、RangedArc(远程抛物线,预留)。攻击动画结束由脚本自动检测 normalizedTime,不再依赖 OnAttackAnimationEnd Event。**Why**: 用户需要远程攻击等箭矢碰撞后才扣血,而非动画中途直接伤害。**How to apply**: 所有攻击动画只需在命中帧添加 OnAttackEffect Event;近战保持 MeleeDirect,远程单位设为 RangedProjectile 并配置 projectilePrefab/projectileSpawnPoint。
- [2026-09-09 20:37:24] 召唤能量和冷却系统已完成,玩家角色数据架构已完成:ManaSystem 单例管理能量(最大 10,3 秒恢复 1 点),MainCharacterCombat 扩展能量检查(人类士兵消耗 2,弓箭手消耗 3),SummonCardButton 接入冷却逻辑(5 秒冷却,UI 显示遮罩和倒计时),能量豆 UI 已配置,冷却遮罩在非冷却时完全隐藏。CharacterData 支持基础属性和升级成长,PlayerCharacterData + PlayerDataManager 实现玩家角色等级和属性计算,召唤时传递最终属性给 UnitBase。
- [2026-09-09 20:37:24] 玩家角色数据架构已完成:CharacterData 存储基础属性(1级)和成长值(每级加成),PlayerCharacterData 存储玩家角色等级和星级,PlayerDataManager 单例管理玩家拥有的角色和当前卡组(临时写死)。召唤时从 CharacterData + PlayerCharacterData 计算最终属性并传递给 UnitBase.InitializeFromPlayerData()。升级系统正常工作(1级 100血/50攻,3级 120血/60攻)。后续扩展:存档系统、卡组配置界面、升级界面、角色解锁、后端接口。
- [2026-09-09 22:17:58] 第一关地图重新设计已完成:地图扩展到120单位(Z: -24到96),创建3个波次生成器(WaveSpawner)在Z=25/55/85,添加视觉标识物(旗帜、石柱、石墙)标记战斗区域。摄像机修正:旋转(43,0,0)位置(0,18,-5),朝向+Z方向与主角前进方向一致。召唤系统优化:初始状态无冷却遮罩,冷却时间从5秒改为1秒(能量已控制召唤频率)。
### Reference
- [2026-09-09 12:23:17] 飞行物脚本 Projectile.cs 负责锁敌追踪、碰撞检测和伤害结算。箭矢预制体 ArrowProjectile_White.prefab 已配置 Projectile 组件和 CapsuleCollider(Is Trigger)。远程单位需在攻击动画松弦帧添加 OnAttackEffect Event,并在 UnitBase 中设置 attackType=RangedProjectile、projectilePrefab、projectileSpawnPoint。
+4 -4
View File
@@ -2,16 +2,15 @@
"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",
"com.unity.ide.rider": "3.0.40",
"com.unity.ide.visualstudio": "2.0.22",
"com.unity.ide.vscode": "1.2.5",
"com.unity.test-framework": "1.1.33",
"com.unity.textmeshpro": "3.0.9",
"com.unity.textmeshpro": "3.0.10",
"com.unity.timeline": "1.8.9-t1",
"com.unity.ugui": "1.0.0",
"com.unity.visualscripting": "1.9.4",
@@ -45,6 +44,7 @@
"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"
"com.unity.modules.xr": "1.0.0",
"cn.tuanjie.codely.bridge": "1.0.80"
}
}
+4 -4
View File
@@ -5,7 +5,7 @@
"depth": 0,
"source": "local",
"dependencies": {
"cn.tuanjie.codely.bridge": "1.0.69",
"cn.tuanjie.codely.bridge": "1.0.76",
"com.unity.modules.jsonserialize": "1.0.0",
"com.unity.modules.unitywebrequest": "1.0.0",
"com.unity.modules.video": "1.0.0",
@@ -31,7 +31,7 @@
"url": "https://packages.tuanjie.cn"
},
"cn.tuanjie.codely.bridge": {
"version": "1.0.81",
"version": "1.0.80",
"depth": 0,
"source": "registry",
"dependencies": {
@@ -120,7 +120,7 @@
}
},
"com.unity.ide.rider": {
"version": "3.0.36",
"version": "3.0.40",
"depth": 0,
"source": "registry",
"dependencies": {
@@ -235,7 +235,7 @@
"url": "https://packages.tuanjie.cn"
},
"com.unity.textmeshpro": {
"version": "3.0.9",
"version": "3.0.10",
"depth": 0,
"source": "registry",
"dependencies": {