2 Commits

Author SHA1 Message Date
1e762fb4f7 refactor(gui): 优化角色界面预制件结构和样式
- 更新了多个组件的引用ID,提升资源管理一致性
- 调整节点位置,优化界面布局,使元素排布更合理
- 重命名节点,提升命名的语义化和可识别性
- 替换部分Sprite为Label,改进文字显示效果
- 修改标签字体属性,增强字体样式与可读性
- 更新图片资源及相关SpriteAtlas,优化视觉表现
- 移除冗余组件和节点,减少预制件复杂度
- 调整组件属性,修正控件对齐与缩放问题
- 恢复阴影及描边效果,提升界面细节表现
2025-10-20 16:53:42 +08:00
d67c63b768 refactor(gui): 优化role_controller.prefab结构和视觉表现
- 调整多个组件的__id__以规范资源引用
- 修改部分节点名称以提升可读性和管理
- 优化节点的位置、旋转和缩放参数
- 更新Sprite和Label组件的颜色及资源关联
- 替换部分SpriteFrame资源,提高图像清晰度
- 修改UITransform尺寸和锚点以匹配设计需求
- 添加新的Animation和Widget组件,完善动画与布局
- 调整光源节点的变换参数以改善光照效果
- 清理和重组节点层次结构,简化子节点管理
- 改进字体样式及视觉表现,符合设计规范
2025-10-20 16:53:35 +08:00
4 changed files with 576 additions and 255 deletions

View File

@@ -0,0 +1,210 @@
[
{
"__type__": "cc.Prefab",
"_name": "hui",
"_objFlags": 0,
"__editorExtras__": {},
"_native": "",
"data": {
"__id__": 1
},
"optimizationPolicy": 0,
"persistent": false
},
{
"__type__": "cc.Node",
"_name": "hui",
"_objFlags": 0,
"__editorExtras__": {},
"_parent": null,
"_children": [],
"_active": true,
"_components": [
{
"__id__": 2
},
{
"__id__": 4
},
{
"__id__": 6
},
{
"__id__": 8
}
],
"_prefab": {
"__id__": 10
},
"_lpos": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_lrot": {
"__type__": "cc.Quat",
"x": 0,
"y": 0,
"z": 0,
"w": 1
},
"_lscale": {
"__type__": "cc.Vec3",
"x": -0.8,
"y": 0.8,
"z": 1
},
"_mobility": 0,
"_layer": 1073741824,
"_euler": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_id": ""
},
{
"__type__": "cc.UITransform",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 1
},
"_enabled": true,
"__prefab": {
"__id__": 3
},
"_contentSize": {
"__type__": "cc.Size",
"width": 256,
"height": 256
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0
},
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "cewibQgK1ALbFhMuuspMmN"
},
{
"__type__": "cc.Sprite",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 1
},
"_enabled": true,
"__prefab": {
"__id__": 5
},
"_customMaterial": null,
"_srcBlendFactor": 2,
"_dstBlendFactor": 4,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_spriteFrame": {
"__uuid__": "9e5ec114-01a4-47d3-b7b7-df3b90209c91@6ce90",
"__expectedType__": "cc.SpriteFrame"
},
"_type": 0,
"_fillType": 0,
"_sizeMode": 1,
"_fillCenter": {
"__type__": "cc.Vec2",
"x": 0,
"y": 0
},
"_fillStart": 0,
"_fillRange": 0,
"_isTrimmedMode": true,
"_useGrayscale": false,
"_atlas": null,
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "ed71tIQFtJtbSwrQYOmOPP"
},
{
"__type__": "cc.Animation",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 1
},
"_enabled": true,
"__prefab": {
"__id__": 7
},
"playOnLoad": true,
"_clips": [],
"_defaultClip": null,
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "3dBJqUbmFPGIhxjbVKe/vR"
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 1
},
"_enabled": false,
"__prefab": {
"__id__": 9
},
"_alignFlags": 18,
"_target": null,
"_left": 180.8,
"_right": 180.8,
"_top": 460.8,
"_bottom": 450,
"_horizontalCenter": 0,
"_verticalCenter": 160,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 256,
"_originalHeight": 0,
"_alignMode": 2,
"_lockFlags": 0,
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "bbvPKZM+VNTrQG0iMfRGDW"
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__id__": 0
},
"fileId": "9anvHdhj5D1opINsPLBLgs",
"instance": null,
"targetOverrides": null
}
]

View File

@@ -0,0 +1,13 @@
{
"ver": "1.1.50",
"importer": "prefab",
"imported": true,
"uuid": "4489091b-29ab-4906-972b-978bd4279a8e",
"files": [
".json"
],
"subMetas": {},
"userData": {
"syncNodeName": "hui"
}
}

View File

@@ -25,29 +25,29 @@
"__id__": 53 "__id__": 53
}, },
{ {
"__id__": 276 "__id__": 272
}, },
{ {
"__id__": 304 "__id__": 300
} }
], ],
"_active": true, "_active": true,
"_components": [ "_components": [
{
"__id__": 346
},
{
"__id__": 348
},
{ {
"__id__": 350 "__id__": 350
}, },
{ {
"__id__": 352 "__id__": 352
},
{
"__id__": 354
},
{
"__id__": 356
} }
], ],
"_prefab": { "_prefab": {
"__id__": 358 "__id__": 354
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -1241,21 +1241,21 @@
], ],
"_active": true, "_active": true,
"_components": [ "_components": [
{
"__id__": 263
},
{
"__id__": 265
},
{ {
"__id__": 267 "__id__": 267
}, },
{ {
"__id__": 269 "__id__": 269
},
{
"__id__": 271
},
{
"__id__": 273
} }
], ],
"_prefab": { "_prefab": {
"__id__": 275 "__id__": 271
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -1561,7 +1561,7 @@
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
"x": 0, "x": 0,
"y": 180.984, "y": 286.646,
"z": 0 "z": 0
}, },
"_lrot": { "_lrot": {
@@ -3619,7 +3619,7 @@
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
"x": 0, "x": 0,
"y": 108.116, "y": 203.619,
"z": 0 "z": 0
}, },
"_lrot": { "_lrot": {
@@ -5593,16 +5593,10 @@
}, },
{ {
"__id__": 260 "__id__": 260
},
{
"__id__": 262
},
{
"__id__": 264
} }
], ],
"_prefab": { "_prefab": {
"__id__": 266 "__id__": 262
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -5619,7 +5613,7 @@
}, },
"_lscale": { "_lscale": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
"x": -1, "x": 1,
"y": 1, "y": 1,
"z": 1 "z": 1
}, },
@@ -5662,10 +5656,10 @@
}, },
"_lrot": { "_lrot": {
"__type__": "cc.Quat", "__type__": "cc.Quat",
"x": 0, "x": 6.123233995736766e-17,
"y": 0, "y": 6.123233995736766e-17,
"z": 1, "z": -1,
"w": 0 "w": 3.749399456654644e-33
}, },
"_lscale": { "_lscale": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -5815,7 +5809,7 @@
}, },
"_lscale": { "_lscale": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
"x": -1, "x": 1,
"y": 1, "y": 1,
"z": 1 "z": 1
}, },
@@ -6303,72 +6297,6 @@
"__type__": "cc.CompPrefabInfo", "__type__": "cc.CompPrefabInfo",
"fileId": "4be4ucTplO1LpzEBua5Rde" "fileId": "4be4ucTplO1LpzEBua5Rde"
}, },
{
"__type__": "cc.Sprite",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 231
},
"_enabled": true,
"__prefab": {
"__id__": 261
},
"_customMaterial": null,
"_srcBlendFactor": 2,
"_dstBlendFactor": 4,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_spriteFrame": {
"__uuid__": "9e5ec114-01a4-47d3-b7b7-df3b90209c91@6ce90",
"__expectedType__": "cc.SpriteFrame"
},
"_type": 0,
"_fillType": 0,
"_sizeMode": 1,
"_fillCenter": {
"__type__": "cc.Vec2",
"x": 0,
"y": 0
},
"_fillStart": 0,
"_fillRange": 0,
"_isTrimmedMode": true,
"_useGrayscale": false,
"_atlas": null,
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "adp+p/S4ZNhZrkdN80wVui"
},
{
"__type__": "cc.Animation",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 231
},
"_enabled": true,
"__prefab": {
"__id__": 263
},
"playOnLoad": true,
"_clips": [],
"_defaultClip": null,
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "dbiFfJVHVCu6rHpcpMTXrT"
},
{ {
"__type__": "cc.Widget", "__type__": "cc.Widget",
"_name": "", "_name": "",
@@ -6379,7 +6307,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 265 "__id__": 261
}, },
"_alignFlags": 18, "_alignFlags": 18,
"_target": null, "_target": null,
@@ -6428,7 +6356,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 268 "__id__": 264
}, },
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
@@ -6456,7 +6384,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 270 "__id__": 266
}, },
"_alignFlags": 21, "_alignFlags": 21,
"_target": null, "_target": null,
@@ -6492,7 +6420,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 272 "__id__": 268
}, },
"_id": "" "_id": ""
}, },
@@ -6510,7 +6438,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 274 "__id__": 270
}, },
"_id": "" "_id": ""
}, },
@@ -6541,26 +6469,26 @@
}, },
"_children": [ "_children": [
{ {
"__id__": 277 "__id__": 273
}, },
{ {
"__id__": 285 "__id__": 281
} }
], ],
"_active": false, "_active": false,
"_components": [ "_components": [
{
"__id__": 293
},
{
"__id__": 295
},
{ {
"__id__": 297 "__id__": 297
},
{
"__id__": 299
},
{
"__id__": 301
} }
], ],
"_prefab": { "_prefab": {
"__id__": 303 "__id__": 299
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -6597,23 +6525,23 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"_parent": { "_parent": {
"__id__": 276 "__id__": 272
}, },
"_children": [], "_children": [],
"_active": true, "_active": true,
"_components": [ "_components": [
{
"__id__": 274
},
{
"__id__": 276
},
{ {
"__id__": 278 "__id__": 278
},
{
"__id__": 280
},
{
"__id__": 282
} }
], ],
"_prefab": { "_prefab": {
"__id__": 284 "__id__": 280
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -6650,11 +6578,11 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"node": { "node": {
"__id__": 277 "__id__": 273
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 279 "__id__": 275
}, },
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
@@ -6678,11 +6606,11 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"node": { "node": {
"__id__": 277 "__id__": 273
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 281 "__id__": 277
}, },
"_customMaterial": null, "_customMaterial": null,
"_srcBlendFactor": 2, "_srcBlendFactor": 2,
@@ -6726,11 +6654,11 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"node": { "node": {
"__id__": 277 "__id__": 273
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 283 "__id__": 279
}, },
"_alignFlags": 45, "_alignFlags": 45,
"_target": null, "_target": null,
@@ -6773,17 +6701,17 @@
"__type__": "cc.Node", "__type__": "cc.Node",
"_objFlags": 0, "_objFlags": 0,
"_parent": { "_parent": {
"__id__": 276 "__id__": 272
}, },
"_prefab": { "_prefab": {
"__id__": 286 "__id__": 282
}, },
"__editorExtras__": {} "__editorExtras__": {}
}, },
{ {
"__type__": "cc.PrefabInfo", "__type__": "cc.PrefabInfo",
"root": { "root": {
"__id__": 285 "__id__": 281
}, },
"asset": { "asset": {
"__uuid__": "9cc71d8c-192a-4234-8204-352f42b95c65", "__uuid__": "9cc71d8c-192a-4234-8204-352f42b95c65",
@@ -6791,7 +6719,7 @@
}, },
"fileId": "a0daVw8DRLi6ToMaTA0VS2", "fileId": "a0daVw8DRLi6ToMaTA0VS2",
"instance": { "instance": {
"__id__": 287 "__id__": 283
}, },
"targetOverrides": null "targetOverrides": null
}, },
@@ -6804,23 +6732,23 @@
"mountedChildren": [], "mountedChildren": [],
"mountedComponents": [], "mountedComponents": [],
"propertyOverrides": [ "propertyOverrides": [
{
"__id__": 284
},
{
"__id__": 286
},
{
"__id__": 287
},
{ {
"__id__": 288 "__id__": 288
}, },
{ {
"__id__": 290 "__id__": 289
}, },
{ {
"__id__": 291 "__id__": 291
},
{
"__id__": 292
},
{
"__id__": 293
},
{
"__id__": 295
} }
], ],
"removedComponents": [] "removedComponents": []
@@ -6828,7 +6756,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 289 "__id__": 285
}, },
"propertyPath": [ "propertyPath": [
"_name" "_name"
@@ -6844,7 +6772,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 289 "__id__": 285
}, },
"propertyPath": [ "propertyPath": [
"_lpos" "_lpos"
@@ -6859,7 +6787,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 289 "__id__": 285
}, },
"propertyPath": [ "propertyPath": [
"_lrot" "_lrot"
@@ -6875,7 +6803,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 289 "__id__": 285
}, },
"propertyPath": [ "propertyPath": [
"_euler" "_euler"
@@ -6890,7 +6818,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 294 "__id__": 290
}, },
"propertyPath": [ "propertyPath": [
"_contentSize" "_contentSize"
@@ -6910,7 +6838,7 @@
{ {
"__type__": "CCPropertyOverrideInfo", "__type__": "CCPropertyOverrideInfo",
"targetInfo": { "targetInfo": {
"__id__": 296 "__id__": 292
}, },
"propertyPath": [ "propertyPath": [
"_contentSize" "_contentSize"
@@ -6933,11 +6861,11 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"node": { "node": {
"__id__": 276 "__id__": 272
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 298 "__id__": 294
}, },
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
@@ -6961,11 +6889,11 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"node": { "node": {
"__id__": 276 "__id__": 272
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 300 "__id__": 296
}, },
"_alignFlags": 45, "_alignFlags": 45,
"_target": null, "_target": null,
@@ -6997,11 +6925,11 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"node": { "node": {
"__id__": 276 "__id__": 272
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 302 "__id__": 298
}, },
"_id": "" "_id": ""
}, },
@@ -7032,23 +6960,23 @@
}, },
"_children": [ "_children": [
{ {
"__id__": 305 "__id__": 301
} }
], ],
"_active": true, "_active": true,
"_components": [ "_components": [
{
"__id__": 339
},
{
"__id__": 341
},
{ {
"__id__": 343 "__id__": 343
},
{
"__id__": 345
},
{
"__id__": 347
} }
], ],
"_prefab": { "_prefab": {
"__id__": 349 "__id__": 345
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -7085,30 +7013,30 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"_parent": { "_parent": {
"__id__": 304 "__id__": 300
}, },
"_children": [ "_children": [
{ {
"__id__": 306 "__id__": 302
} }
], ],
"_active": true, "_active": true,
"_components": [ "_components": [
{
"__id__": 330
},
{
"__id__": 332
},
{ {
"__id__": 334 "__id__": 334
}, },
{ {
"__id__": 336 "__id__": 336
},
{
"__id__": 338
},
{
"__id__": 340
} }
], ],
"_prefab": { "_prefab": {
"__id__": 342 "__id__": 338
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -7145,27 +7073,27 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"_parent": { "_parent": {
"__id__": 305 "__id__": 301
}, },
"_children": [ "_children": [
{ {
"__id__": 307 "__id__": 303
}, },
{ {
"__id__": 315 "__id__": 311
}, },
{ {
"__id__": 321 "__id__": 317
} }
], ],
"_active": true, "_active": true,
"_components": [ "_components": [
{ {
"__id__": 331 "__id__": 327
} }
], ],
"_prefab": { "_prefab": {
"__id__": 333 "__id__": 329
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -7202,23 +7130,23 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"_parent": { "_parent": {
"__id__": 306 "__id__": 302
}, },
"_children": [], "_children": [],
"_active": true, "_active": true,
"_components": [ "_components": [
{
"__id__": 304
},
{
"__id__": 306
},
{ {
"__id__": 308 "__id__": 308
},
{
"__id__": 310
},
{
"__id__": 312
} }
], ],
"_prefab": { "_prefab": {
"__id__": 314 "__id__": 310
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -7255,11 +7183,11 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"node": { "node": {
"__id__": 307 "__id__": 303
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 309 "__id__": 305
}, },
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
@@ -7283,11 +7211,11 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"node": { "node": {
"__id__": 307 "__id__": 303
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 311 "__id__": 307
}, },
"_customMaterial": null, "_customMaterial": null,
"_srcBlendFactor": 2, "_srcBlendFactor": 2,
@@ -7331,11 +7259,11 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"node": { "node": {
"__id__": 307 "__id__": 303
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 313 "__id__": 309
}, },
"_alignFlags": 40, "_alignFlags": 40,
"_target": null, "_target": null,
@@ -7380,20 +7308,20 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"_parent": { "_parent": {
"__id__": 306 "__id__": 302
}, },
"_children": [], "_children": [],
"_active": true, "_active": true,
"_components": [ "_components": [
{ {
"__id__": 316 "__id__": 312
}, },
{ {
"__id__": 318 "__id__": 314
} }
], ],
"_prefab": { "_prefab": {
"__id__": 320 "__id__": 316
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -7430,11 +7358,11 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"node": { "node": {
"__id__": 315 "__id__": 311
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 317 "__id__": 313
}, },
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
@@ -7458,11 +7386,11 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"node": { "node": {
"__id__": 315 "__id__": 311
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 319 "__id__": 315
}, },
"_customMaterial": null, "_customMaterial": null,
"_srcBlendFactor": 2, "_srcBlendFactor": 2,
@@ -7519,26 +7447,26 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"_parent": { "_parent": {
"__id__": 306 "__id__": 302
}, },
"_children": [], "_children": [],
"_active": true, "_active": true,
"_components": [ "_components": [
{
"__id__": 318
},
{
"__id__": 320
},
{ {
"__id__": 322 "__id__": 322
}, },
{ {
"__id__": 324 "__id__": 324
},
{
"__id__": 326
},
{
"__id__": 328
} }
], ],
"_prefab": { "_prefab": {
"__id__": 330 "__id__": 326
}, },
"_lpos": { "_lpos": {
"__type__": "cc.Vec3", "__type__": "cc.Vec3",
@@ -7575,11 +7503,11 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"node": { "node": {
"__id__": 321 "__id__": 317
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 323 "__id__": 319
}, },
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
@@ -7603,11 +7531,11 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"node": { "node": {
"__id__": 321 "__id__": 317
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 325 "__id__": 321
}, },
"_customMaterial": null, "_customMaterial": null,
"_srcBlendFactor": 2, "_srcBlendFactor": 2,
@@ -7671,11 +7599,11 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"node": { "node": {
"__id__": 321 "__id__": 317
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 327 "__id__": 323
}, },
"_alignFlags": 10, "_alignFlags": 10,
"_target": null, "_target": null,
@@ -7707,11 +7635,11 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"node": { "node": {
"__id__": 321 "__id__": 317
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 329 "__id__": 325
}, },
"templateMode": true, "templateMode": true,
"watchPath": "data.data.gold", "watchPath": "data.data.gold",
@@ -7744,11 +7672,11 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"node": { "node": {
"__id__": 306 "__id__": 302
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 332 "__id__": 328
}, },
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
@@ -7785,11 +7713,11 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"node": { "node": {
"__id__": 305 "__id__": 301
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 335 "__id__": 331
}, },
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
@@ -7813,11 +7741,11 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"node": { "node": {
"__id__": 305 "__id__": 301
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 337 "__id__": 333
}, },
"_alignFlags": 8, "_alignFlags": 8,
"_target": null, "_target": null,
@@ -7849,11 +7777,11 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"node": { "node": {
"__id__": 305 "__id__": 301
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 339 "__id__": 335
}, },
"_resizeMode": 0, "_resizeMode": 0,
"_layoutType": 1, "_layoutType": 1,
@@ -7887,11 +7815,11 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"node": { "node": {
"__id__": 305 "__id__": 301
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 341 "__id__": 337
}, },
"_alignFlags": 40, "_alignFlags": 40,
"_target": null, "_target": null,
@@ -7936,11 +7864,11 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"node": { "node": {
"__id__": 304 "__id__": 300
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 344 "__id__": 340
}, },
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
@@ -7964,11 +7892,11 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"node": { "node": {
"__id__": 304 "__id__": 300
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 346 "__id__": 342
}, },
"_alignFlags": 17, "_alignFlags": 17,
"_target": null, "_target": null,
@@ -8000,11 +7928,11 @@
"_objFlags": 0, "_objFlags": 0,
"__editorExtras__": {}, "__editorExtras__": {},
"node": { "node": {
"__id__": 304 "__id__": 300
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 348 "__id__": 344
}, },
"_id": "" "_id": ""
}, },
@@ -8035,7 +7963,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 351 "__id__": 347
}, },
"_contentSize": { "_contentSize": {
"__type__": "cc.Size", "__type__": "cc.Size",
@@ -8063,7 +7991,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 353 "__id__": 349
}, },
"_alignFlags": 45, "_alignFlags": 45,
"_target": null, "_target": null,
@@ -8099,7 +8027,7 @@
}, },
"_enabled": true, "_enabled": true,
"__prefab": { "__prefab": {
"__id__": 355 "__id__": 351
}, },
"_id": "" "_id": ""
}, },
@@ -8117,7 +8045,7 @@
}, },
"_enabled": false, "_enabled": false,
"__prefab": { "__prefab": {
"__id__": 357 "__id__": 353
}, },
"_id": "" "_id": ""
}, },
@@ -8138,7 +8066,7 @@
"targetOverrides": [], "targetOverrides": [],
"nestedPrefabInstanceRoots": [ "nestedPrefabInstanceRoots": [
{ {
"__id__": 285 "__id__": 281
} }
] ]
} }

View File

@@ -1,4 +1,4 @@
import { _decorator, Animation, AnimationClip, Component, Label, Node, resources, Sprite, SpriteFrame } from 'cc'; import { _decorator, Animation, AnimationClip, Component, instantiate, Label, Node, Prefab, resources, Sprite, SpriteFrame, v3, tween, Vec3 } from 'cc';
import { oops } from 'db://oops-framework/core/Oops'; import { oops } from 'db://oops-framework/core/Oops';
import { getHeroList, HeroInfo, HType, HTypeName } from '../common/config/heroSet'; import { getHeroList, HeroInfo, HType, HTypeName } from '../common/config/heroSet';
import { smc } from '../common/SingletonModuleComp'; import { smc } from '../common/SingletonModuleComp';
@@ -12,6 +12,24 @@ export class HInfoComp extends Component {
ap_node:any=null ap_node:any=null
hp_node:any=null hp_node:any=null
def_node:any=null def_node:any=null
// 重新定义节点映射,使名称更清晰
// 当前显示的英雄节点数组7个位置
heroNodes: (Node | null)[] = [null, null, null, null, null, null, null];
// 英雄位置定义
hero_pos:any={
0:v3(420,-109,0), // 不在屏幕内
1:v3(280,-109,0),
2:v3(140,-109,0),
3:v3(0,-109,0),
4:v3(-140,-109,0),
5:v3(-280,-109,0),
6:v3(-420,-109,0), // 不在屏幕内
}
// 位置索引常量
private static center_pos = 3;
start() { start() {
this.name_node=this.node.getChildByName("hero").getChildByName("hname").getChildByName("name") this.name_node=this.node.getChildByName("hero").getChildByName("hname").getChildByName("name")
this.type_node=this.node.getChildByName("hero").getChildByName("hname").getChildByName("type") this.type_node=this.node.getChildByName("hero").getChildByName("hname").getChildByName("type")
@@ -20,41 +38,195 @@ export class HInfoComp extends Component {
this.def_node=this.node.getChildByName("info").getChildByName("base").getChildByName("def").getChildByName("num") this.def_node=this.node.getChildByName("info").getChildByName("base").getChildByName("def").getChildByName("num")
this.h_uuid=smc.fight_hero this.h_uuid=smc.fight_hero
this.update_data(this.h_uuid) this.update_data(this.h_uuid)
this.load_all_hero(this.h_uuid)
} }
update(deltaTime: number) { update(deltaTime: number) {
} }
update_data(uuid:number){ update_data(uuid:number){
this.h_uuid=uuid this.h_uuid=uuid
let hero_data = HeroInfo[uuid] this.name_node.getComponent(Label).string=HeroInfo[uuid].name
console.log("[HInfoComp]:update_data",uuid,hero_data,this.node) this.type_node.getComponent(Label).string=HTypeName[HeroInfo[uuid].type]
this.name_node.getComponent(Label).string=hero_data.name this.ap_node.getComponent(Label).string=HeroInfo[uuid].ap.toString()
this.type_node.getComponent(Label).string=HTypeName[hero_data.type] this.hp_node.getComponent(Label).string=HeroInfo[uuid].hp.toString()
this.ap_node.getComponent(Label).string=hero_data.ap.toString() this.def_node.getComponent(Label).string=HeroInfo[uuid].def.toString()
this.hp_node.getComponent(Label).string=hero_data.hp.toString() }
this.def_node.getComponent(Label).string=hero_data.def.toString() load_all_hero(uuid:number){
let anm_path=hero_data.path // 清除之前的英雄节点
this.claear_hero();
// 获取英雄列表
let heros = getHeroList();
let currentIndex = heros.indexOf(uuid);
// 载入7个英雄节点当前英雄及前后各3个
for(let i = 0; i < 7; i++) {
// 计算索引位置(考虑循环)
let indexOffset = i - 3; // -3, -2, -1, 0, 1, 2, 3
let heroIndex = currentIndex + indexOffset;
// 处理循环边界
if(heroIndex < 0) {
heroIndex = heros.length + heroIndex;
} else if(heroIndex >= heros.length) {
heroIndex = heroIndex - heros.length;
}
// 获取英雄UUID
let heroUuid = heros[heroIndex];
// 载入英雄预制体并设置位置
this.heroNodes[i] = this.load_hui(heroUuid, i);
}
}
load_hui(uuid:number, pos_index: number){
var path = "game/gui/hui";
var prefab: Prefab = oops.res.get(path, Prefab)!;
var node = instantiate(prefab);
// 将节点添加到父节点下
this.node.getChildByName("hero").addChild(node);
// 设置节点位置
node.setPosition(this.hero_pos[pos_index]);
// 加载并播放动画
let anm_path=HeroInfo[uuid].path;
resources.load("game/heros/hero/"+anm_path+"/idle", AnimationClip, (err, clip) => { resources.load("game/heros/hero/"+anm_path+"/idle", AnimationClip, (err, clip) => {
this.node.getChildByName("hero").getComponent(Animation).addClip(clip); if (!err && clip) {
this.node.getChildByName("hero").getComponent(Animation).play("idle"); let animComponent = node.getComponent(Animation);
if(animComponent) {
animComponent.addClip(clip);
animComponent.play("idle");
}
} else {
console.error(`[HInfoComp]: Failed to load animation for hero ${uuid}`, err);
}
}); });
return node;
} }
claear_hero(){
for (let i = 0; i < this.heroNodes.length; i++) {
if (this.heroNodes[i]) {
this.heroNodes[i].destroy();
this.heroNodes[i] = null;
}
}
}
next_hero(){ next_hero(){
let heros=getHeroList() // 获取英雄列表
let heros = getHeroList();
let index = heros.indexOf(this.h_uuid); let index = heros.indexOf(this.h_uuid);
index++ index++;
if(index==heros.length) index=0 if(index == heros.length) index = 0;
let nextHero = heros[index]; let nextHero = heros[index];
this.update_data(nextHero)
// 更新数据
this.h_uuid = nextHero;
this.update_data(nextHero);
// 执行平滑移动动画
this.moveHeroesRight();
} }
prev_hero(){ prev_hero(){
let heros=getHeroList() // 获取英雄列表
let heros = getHeroList();
let index = heros.indexOf(this.h_uuid); let index = heros.indexOf(this.h_uuid);
index-- index--;
if(index==-1) index=heros.length-1 if(index == -1) index = heros.length - 1;
let prevHero = heros[index]; let prevHero = heros[index];
this.update_data(prevHero)
// 更新数据
this.h_uuid = prevHero;
this.update_data(prevHero);
// 执行平滑移动动画
this.moveHeroesLeft();
} }
moveHeroesRight() {
// 移动所有现有节点向右
for (let i = 0; i < this.heroNodes.length; i++) {
if (this.heroNodes[i]) {
// 计算目标位置
let targetPos = this.hero_pos[i + 1] || this.hero_pos[0];
// 使用Tween执行平滑移动
tween(this.heroNodes[i])
.to(0.3, { position: targetPos })
.start();
}
}
// 延迟创建新节点和删除旧节点,等待动画完成
setTimeout(() => {
// 删除原先位于hero_pos[6]位置的节点
if (this.heroNodes[6]) {
this.heroNodes[6].destroy();
}
// 移动数组元素
for (let i = 6; i > 0; i--) {
this.heroNodes[i] = this.heroNodes[i - 1];
}
// 创建新节点放在hero_pos[0]位置
let heros = getHeroList();
let currentIndex = heros.indexOf(this.h_uuid);
let newIndex = currentIndex - 3; // 新的最左侧英雄索引
// 处理循环边界
if (newIndex < 0) {
newIndex = heros.length + newIndex;
}
this.heroNodes[0] = this.load_hui(heros[newIndex], 0);
}, 300); // 与动画时间保持一致
}
moveHeroesLeft() {
// 移动所有现有节点向左
for (let i = 0; i < this.heroNodes.length; i++) {
if (this.heroNodes[i]) {
// 计算目标位置
let targetPos = this.hero_pos[i - 1] || this.hero_pos[6];
// 使用Tween执行平滑移动
tween(this.heroNodes[i])
.to(0.3, { position: targetPos })
.start();
}
}
// 延迟创建新节点和删除旧节点,等待动画完成
setTimeout(() => {
// 删除原先位于hero_pos[0]位置的节点
if (this.heroNodes[0]) {
this.heroNodes[0].destroy();
}
// 移动数组元素
for (let i = 0; i < 6; i++) {
this.heroNodes[i] = this.heroNodes[i + 1];
}
// 创建新节点放在hero_pos[6]位置
let heros = getHeroList();
let currentIndex = heros.indexOf(this.h_uuid);
let newIndex = currentIndex + 3; // 新的最右侧英雄索引
// 处理循环边界
if (newIndex >= heros.length) {
newIndex = newIndex - heros.length;
}
this.heroNodes[6] = this.load_hui(heros[newIndex], 6);
}, 300); // 与动画时间保持一致
}
close(){ close(){
oops.gui.removeByNode(this.node) oops.gui.removeByNode(this.node)
} }
@@ -62,5 +234,3 @@ export class HInfoComp extends Component {
this.node.destroy() this.node.destroy()
} }
} }