@ -0,0 +1 @@ |
||||
{"ver":"1.2.0","importer":"directory","imported":true,"uuid":"f9c11b7b-02d2-4c9e-ae88-d6d3a6585102","files":[],"subMetas":{},"userData":{}} |
||||
@ -0,0 +1 @@ |
||||
{"ver":"1.2.0","importer":"directory","imported":true,"uuid":"e67dabc8-8016-454d-8c48-ab138e4b241e","files":[],"subMetas":{},"userData":{}} |
||||
@ -0,0 +1,13 @@ |
||||
{ |
||||
"ver": "1.1.50", |
||||
"importer": "prefab", |
||||
"imported": true, |
||||
"uuid": "8f6d72a3-b4d7-4186-ac66-329ae38c8651", |
||||
"files": [ |
||||
".json" |
||||
], |
||||
"subMetas": {}, |
||||
"userData": { |
||||
"syncNodeName": "PopGemInfo" |
||||
} |
||||
} |
||||
|
After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 49 KiB |
@ -1,134 +0,0 @@ |
||||
{ |
||||
"ver": "1.0.27", |
||||
"importer": "image", |
||||
"imported": true, |
||||
"uuid": "8e6253a0-a91d-49e1-bbb9-aa09d3e7e05b", |
||||
"files": [ |
||||
".json", |
||||
".png" |
||||
], |
||||
"subMetas": { |
||||
"6c48a": { |
||||
"importer": "texture", |
||||
"uuid": "8e6253a0-a91d-49e1-bbb9-aa09d3e7e05b@6c48a", |
||||
"displayName": "武器信息图标底框--绿", |
||||
"id": "6c48a", |
||||
"name": "texture", |
||||
"userData": { |
||||
"wrapModeS": "clamp-to-edge", |
||||
"wrapModeT": "clamp-to-edge", |
||||
"imageUuidOrDatabaseUri": "8e6253a0-a91d-49e1-bbb9-aa09d3e7e05b", |
||||
"isUuid": true, |
||||
"visible": false, |
||||
"minfilter": "linear", |
||||
"magfilter": "linear", |
||||
"mipfilter": "none", |
||||
"anisotropy": 0 |
||||
}, |
||||
"ver": "1.0.22", |
||||
"imported": true, |
||||
"files": [ |
||||
".json" |
||||
], |
||||
"subMetas": {} |
||||
}, |
||||
"f9941": { |
||||
"importer": "sprite-frame", |
||||
"uuid": "8e6253a0-a91d-49e1-bbb9-aa09d3e7e05b@f9941", |
||||
"displayName": "武器信息图标底框--绿", |
||||
"id": "f9941", |
||||
"name": "spriteFrame", |
||||
"userData": { |
||||
"trimThreshold": 1, |
||||
"rotated": false, |
||||
"offsetX": 0, |
||||
"offsetY": 0, |
||||
"trimX": 0, |
||||
"trimY": 0, |
||||
"width": 242, |
||||
"height": 243, |
||||
"rawWidth": 242, |
||||
"rawHeight": 243, |
||||
"borderTop": 0, |
||||
"borderBottom": 0, |
||||
"borderLeft": 0, |
||||
"borderRight": 0, |
||||
"packable": true, |
||||
"pixelsToUnit": 100, |
||||
"pivotX": 0.5, |
||||
"pivotY": 0.5, |
||||
"meshType": 0, |
||||
"vertices": { |
||||
"rawPosition": [ |
||||
-121, |
||||
-121.5, |
||||
0, |
||||
121, |
||||
-121.5, |
||||
0, |
||||
-121, |
||||
121.5, |
||||
0, |
||||
121, |
||||
121.5, |
||||
0 |
||||
], |
||||
"indexes": [ |
||||
0, |
||||
1, |
||||
2, |
||||
2, |
||||
1, |
||||
3 |
||||
], |
||||
"uv": [ |
||||
0, |
||||
243, |
||||
242, |
||||
243, |
||||
0, |
||||
0, |
||||
242, |
||||
0 |
||||
], |
||||
"nuv": [ |
||||
0, |
||||
0, |
||||
1, |
||||
0, |
||||
0, |
||||
1, |
||||
1, |
||||
1 |
||||
], |
||||
"minPos": [ |
||||
-121, |
||||
-121.5, |
||||
0 |
||||
], |
||||
"maxPos": [ |
||||
121, |
||||
121.5, |
||||
0 |
||||
] |
||||
}, |
||||
"isUuid": true, |
||||
"imageUuidOrDatabaseUri": "8e6253a0-a91d-49e1-bbb9-aa09d3e7e05b@6c48a", |
||||
"atlasUuid": "", |
||||
"trimType": "auto" |
||||
}, |
||||
"ver": "1.0.12", |
||||
"imported": true, |
||||
"files": [ |
||||
".json" |
||||
], |
||||
"subMetas": {} |
||||
} |
||||
}, |
||||
"userData": { |
||||
"type": "sprite-frame", |
||||
"fixAlphaTransparencyArtifacts": false, |
||||
"hasAlpha": true, |
||||
"redirect": "8e6253a0-a91d-49e1-bbb9-aa09d3e7e05b@6c48a" |
||||
} |
||||
} |
||||
|
Before Width: | Height: | Size: 50 KiB |
@ -1,134 +0,0 @@ |
||||
{ |
||||
"ver": "1.0.27", |
||||
"importer": "image", |
||||
"imported": true, |
||||
"uuid": "d4c1af99-1106-478e-9c7c-a1b75097d966", |
||||
"files": [ |
||||
".json", |
||||
".png" |
||||
], |
||||
"subMetas": { |
||||
"6c48a": { |
||||
"importer": "texture", |
||||
"uuid": "d4c1af99-1106-478e-9c7c-a1b75097d966@6c48a", |
||||
"displayName": "武器信息图标底框-橙", |
||||
"id": "6c48a", |
||||
"name": "texture", |
||||
"userData": { |
||||
"wrapModeS": "clamp-to-edge", |
||||
"wrapModeT": "clamp-to-edge", |
||||
"imageUuidOrDatabaseUri": "d4c1af99-1106-478e-9c7c-a1b75097d966", |
||||
"isUuid": true, |
||||
"visible": false, |
||||
"minfilter": "linear", |
||||
"magfilter": "linear", |
||||
"mipfilter": "none", |
||||
"anisotropy": 0 |
||||
}, |
||||
"ver": "1.0.22", |
||||
"imported": true, |
||||
"files": [ |
||||
".json" |
||||
], |
||||
"subMetas": {} |
||||
}, |
||||
"f9941": { |
||||
"importer": "sprite-frame", |
||||
"uuid": "d4c1af99-1106-478e-9c7c-a1b75097d966@f9941", |
||||
"displayName": "武器信息图标底框-橙", |
||||
"id": "f9941", |
||||
"name": "spriteFrame", |
||||
"userData": { |
||||
"trimThreshold": 1, |
||||
"rotated": false, |
||||
"offsetX": 0, |
||||
"offsetY": 0, |
||||
"trimX": 0, |
||||
"trimY": 0, |
||||
"width": 242, |
||||
"height": 243, |
||||
"rawWidth": 242, |
||||
"rawHeight": 243, |
||||
"borderTop": 0, |
||||
"borderBottom": 0, |
||||
"borderLeft": 0, |
||||
"borderRight": 0, |
||||
"packable": true, |
||||
"pixelsToUnit": 100, |
||||
"pivotX": 0.5, |
||||
"pivotY": 0.5, |
||||
"meshType": 0, |
||||
"vertices": { |
||||
"rawPosition": [ |
||||
-121, |
||||
-121.5, |
||||
0, |
||||
121, |
||||
-121.5, |
||||
0, |
||||
-121, |
||||
121.5, |
||||
0, |
||||
121, |
||||
121.5, |
||||
0 |
||||
], |
||||
"indexes": [ |
||||
0, |
||||
1, |
||||
2, |
||||
2, |
||||
1, |
||||
3 |
||||
], |
||||
"uv": [ |
||||
0, |
||||
243, |
||||
242, |
||||
243, |
||||
0, |
||||
0, |
||||
242, |
||||
0 |
||||
], |
||||
"nuv": [ |
||||
0, |
||||
0, |
||||
1, |
||||
0, |
||||
0, |
||||
1, |
||||
1, |
||||
1 |
||||
], |
||||
"minPos": [ |
||||
-121, |
||||
-121.5, |
||||
0 |
||||
], |
||||
"maxPos": [ |
||||
121, |
||||
121.5, |
||||
0 |
||||
] |
||||
}, |
||||
"isUuid": true, |
||||
"imageUuidOrDatabaseUri": "d4c1af99-1106-478e-9c7c-a1b75097d966@6c48a", |
||||
"atlasUuid": "", |
||||
"trimType": "auto" |
||||
}, |
||||
"ver": "1.0.12", |
||||
"imported": true, |
||||
"files": [ |
||||
".json" |
||||
], |
||||
"subMetas": {} |
||||
} |
||||
}, |
||||
"userData": { |
||||
"type": "sprite-frame", |
||||
"fixAlphaTransparencyArtifacts": false, |
||||
"hasAlpha": true, |
||||
"redirect": "d4c1af99-1106-478e-9c7c-a1b75097d966@6c48a" |
||||
} |
||||
} |
||||
|
Before Width: | Height: | Size: 50 KiB |
@ -1,134 +0,0 @@ |
||||
{ |
||||
"ver": "1.0.27", |
||||
"importer": "image", |
||||
"imported": true, |
||||
"uuid": "eff7397b-07f2-4843-b660-d491f2da6928", |
||||
"files": [ |
||||
".json", |
||||
".png" |
||||
], |
||||
"subMetas": { |
||||
"6c48a": { |
||||
"importer": "texture", |
||||
"uuid": "eff7397b-07f2-4843-b660-d491f2da6928@6c48a", |
||||
"displayName": "武器信息图标底框-紫", |
||||
"id": "6c48a", |
||||
"name": "texture", |
||||
"userData": { |
||||
"wrapModeS": "clamp-to-edge", |
||||
"wrapModeT": "clamp-to-edge", |
||||
"imageUuidOrDatabaseUri": "eff7397b-07f2-4843-b660-d491f2da6928", |
||||
"isUuid": true, |
||||
"visible": false, |
||||
"minfilter": "linear", |
||||
"magfilter": "linear", |
||||
"mipfilter": "none", |
||||
"anisotropy": 0 |
||||
}, |
||||
"ver": "1.0.22", |
||||
"imported": true, |
||||
"files": [ |
||||
".json" |
||||
], |
||||
"subMetas": {} |
||||
}, |
||||
"f9941": { |
||||
"importer": "sprite-frame", |
||||
"uuid": "eff7397b-07f2-4843-b660-d491f2da6928@f9941", |
||||
"displayName": "武器信息图标底框-紫", |
||||
"id": "f9941", |
||||
"name": "spriteFrame", |
||||
"userData": { |
||||
"trimThreshold": 1, |
||||
"rotated": false, |
||||
"offsetX": 0, |
||||
"offsetY": 0, |
||||
"trimX": 0, |
||||
"trimY": 0, |
||||
"width": 242, |
||||
"height": 243, |
||||
"rawWidth": 242, |
||||
"rawHeight": 243, |
||||
"borderTop": 0, |
||||
"borderBottom": 0, |
||||
"borderLeft": 0, |
||||
"borderRight": 0, |
||||
"packable": true, |
||||
"pixelsToUnit": 100, |
||||
"pivotX": 0.5, |
||||
"pivotY": 0.5, |
||||
"meshType": 0, |
||||
"vertices": { |
||||
"rawPosition": [ |
||||
-121, |
||||
-121.5, |
||||
0, |
||||
121, |
||||
-121.5, |
||||
0, |
||||
-121, |
||||
121.5, |
||||
0, |
||||
121, |
||||
121.5, |
||||
0 |
||||
], |
||||
"indexes": [ |
||||
0, |
||||
1, |
||||
2, |
||||
2, |
||||
1, |
||||
3 |
||||
], |
||||
"uv": [ |
||||
0, |
||||
243, |
||||
242, |
||||
243, |
||||
0, |
||||
0, |
||||
242, |
||||
0 |
||||
], |
||||
"nuv": [ |
||||
0, |
||||
0, |
||||
1, |
||||
0, |
||||
0, |
||||
1, |
||||
1, |
||||
1 |
||||
], |
||||
"minPos": [ |
||||
-121, |
||||
-121.5, |
||||
0 |
||||
], |
||||
"maxPos": [ |
||||
121, |
||||
121.5, |
||||
0 |
||||
] |
||||
}, |
||||
"isUuid": true, |
||||
"imageUuidOrDatabaseUri": "eff7397b-07f2-4843-b660-d491f2da6928@6c48a", |
||||
"atlasUuid": "", |
||||
"trimType": "auto" |
||||
}, |
||||
"ver": "1.0.12", |
||||
"imported": true, |
||||
"files": [ |
||||
".json" |
||||
], |
||||
"subMetas": {} |
||||
} |
||||
}, |
||||
"userData": { |
||||
"type": "sprite-frame", |
||||
"fixAlphaTransparencyArtifacts": false, |
||||
"hasAlpha": true, |
||||
"redirect": "eff7397b-07f2-4843-b660-d491f2da6928@6c48a" |
||||
} |
||||
} |
||||
|
Before Width: | Height: | Size: 50 KiB |
@ -1,134 +0,0 @@ |
||||
{ |
||||
"ver": "1.0.27", |
||||
"importer": "image", |
||||
"imported": true, |
||||
"uuid": "c3597ab8-38c4-4667-bf19-9e5279928276", |
||||
"files": [ |
||||
".json", |
||||
".png" |
||||
], |
||||
"subMetas": { |
||||
"6c48a": { |
||||
"importer": "texture", |
||||
"uuid": "c3597ab8-38c4-4667-bf19-9e5279928276@6c48a", |
||||
"displayName": "武器信息图标底框-红", |
||||
"id": "6c48a", |
||||
"name": "texture", |
||||
"userData": { |
||||
"wrapModeS": "clamp-to-edge", |
||||
"wrapModeT": "clamp-to-edge", |
||||
"imageUuidOrDatabaseUri": "c3597ab8-38c4-4667-bf19-9e5279928276", |
||||
"isUuid": true, |
||||
"visible": false, |
||||
"minfilter": "linear", |
||||
"magfilter": "linear", |
||||
"mipfilter": "none", |
||||
"anisotropy": 0 |
||||
}, |
||||
"ver": "1.0.22", |
||||
"imported": true, |
||||
"files": [ |
||||
".json" |
||||
], |
||||
"subMetas": {} |
||||
}, |
||||
"f9941": { |
||||
"importer": "sprite-frame", |
||||
"uuid": "c3597ab8-38c4-4667-bf19-9e5279928276@f9941", |
||||
"displayName": "武器信息图标底框-红", |
||||
"id": "f9941", |
||||
"name": "spriteFrame", |
||||
"userData": { |
||||
"trimThreshold": 1, |
||||
"rotated": false, |
||||
"offsetX": 0, |
||||
"offsetY": 0, |
||||
"trimX": 0, |
||||
"trimY": 0, |
||||
"width": 242, |
||||
"height": 243, |
||||
"rawWidth": 242, |
||||
"rawHeight": 243, |
||||
"borderTop": 0, |
||||
"borderBottom": 0, |
||||
"borderLeft": 0, |
||||
"borderRight": 0, |
||||
"packable": true, |
||||
"pixelsToUnit": 100, |
||||
"pivotX": 0.5, |
||||
"pivotY": 0.5, |
||||
"meshType": 0, |
||||
"vertices": { |
||||
"rawPosition": [ |
||||
-121, |
||||
-121.5, |
||||
0, |
||||
121, |
||||
-121.5, |
||||
0, |
||||
-121, |
||||
121.5, |
||||
0, |
||||
121, |
||||
121.5, |
||||
0 |
||||
], |
||||
"indexes": [ |
||||
0, |
||||
1, |
||||
2, |
||||
2, |
||||
1, |
||||
3 |
||||
], |
||||
"uv": [ |
||||
0, |
||||
243, |
||||
242, |
||||
243, |
||||
0, |
||||
0, |
||||
242, |
||||
0 |
||||
], |
||||
"nuv": [ |
||||
0, |
||||
0, |
||||
1, |
||||
0, |
||||
0, |
||||
1, |
||||
1, |
||||
1 |
||||
], |
||||
"minPos": [ |
||||
-121, |
||||
-121.5, |
||||
0 |
||||
], |
||||
"maxPos": [ |
||||
121, |
||||
121.5, |
||||
0 |
||||
] |
||||
}, |
||||
"isUuid": true, |
||||
"imageUuidOrDatabaseUri": "c3597ab8-38c4-4667-bf19-9e5279928276@6c48a", |
||||
"atlasUuid": "", |
||||
"trimType": "auto" |
||||
}, |
||||
"ver": "1.0.12", |
||||
"imported": true, |
||||
"files": [ |
||||
".json" |
||||
], |
||||
"subMetas": {} |
||||
} |
||||
}, |
||||
"userData": { |
||||
"type": "sprite-frame", |
||||
"fixAlphaTransparencyArtifacts": false, |
||||
"hasAlpha": true, |
||||
"redirect": "c3597ab8-38c4-4667-bf19-9e5279928276@6c48a" |
||||
} |
||||
} |
||||
|
Before Width: | Height: | Size: 48 KiB |
@ -1,134 +0,0 @@ |
||||
{ |
||||
"ver": "1.0.27", |
||||
"importer": "image", |
||||
"imported": true, |
||||
"uuid": "b8402838-97ca-49f8-a800-9ac9f59d710f", |
||||
"files": [ |
||||
".json", |
||||
".png" |
||||
], |
||||
"subMetas": { |
||||
"6c48a": { |
||||
"importer": "texture", |
||||
"uuid": "b8402838-97ca-49f8-a800-9ac9f59d710f@6c48a", |
||||
"displayName": "武器信息图标底框-蓝", |
||||
"id": "6c48a", |
||||
"name": "texture", |
||||
"userData": { |
||||
"wrapModeS": "clamp-to-edge", |
||||
"wrapModeT": "clamp-to-edge", |
||||
"imageUuidOrDatabaseUri": "b8402838-97ca-49f8-a800-9ac9f59d710f", |
||||
"isUuid": true, |
||||
"visible": false, |
||||
"minfilter": "linear", |
||||
"magfilter": "linear", |
||||
"mipfilter": "none", |
||||
"anisotropy": 0 |
||||
}, |
||||
"ver": "1.0.22", |
||||
"imported": true, |
||||
"files": [ |
||||
".json" |
||||
], |
||||
"subMetas": {} |
||||
}, |
||||
"f9941": { |
||||
"importer": "sprite-frame", |
||||
"uuid": "b8402838-97ca-49f8-a800-9ac9f59d710f@f9941", |
||||
"displayName": "武器信息图标底框-蓝", |
||||
"id": "f9941", |
||||
"name": "spriteFrame", |
||||
"userData": { |
||||
"trimThreshold": 1, |
||||
"rotated": false, |
||||
"offsetX": 0, |
||||
"offsetY": 0, |
||||
"trimX": 0, |
||||
"trimY": 0, |
||||
"width": 242, |
||||
"height": 243, |
||||
"rawWidth": 242, |
||||
"rawHeight": 243, |
||||
"borderTop": 0, |
||||
"borderBottom": 0, |
||||
"borderLeft": 0, |
||||
"borderRight": 0, |
||||
"packable": true, |
||||
"pixelsToUnit": 100, |
||||
"pivotX": 0.5, |
||||
"pivotY": 0.5, |
||||
"meshType": 0, |
||||
"vertices": { |
||||
"rawPosition": [ |
||||
-121, |
||||
-121.5, |
||||
0, |
||||
121, |
||||
-121.5, |
||||
0, |
||||
-121, |
||||
121.5, |
||||
0, |
||||
121, |
||||
121.5, |
||||
0 |
||||
], |
||||
"indexes": [ |
||||
0, |
||||
1, |
||||
2, |
||||
2, |
||||
1, |
||||
3 |
||||
], |
||||
"uv": [ |
||||
0, |
||||
243, |
||||
242, |
||||
243, |
||||
0, |
||||
0, |
||||
242, |
||||
0 |
||||
], |
||||
"nuv": [ |
||||
0, |
||||
0, |
||||
1, |
||||
0, |
||||
0, |
||||
1, |
||||
1, |
||||
1 |
||||
], |
||||
"minPos": [ |
||||
-121, |
||||
-121.5, |
||||
0 |
||||
], |
||||
"maxPos": [ |
||||
121, |
||||
121.5, |
||||
0 |
||||
] |
||||
}, |
||||
"isUuid": true, |
||||
"imageUuidOrDatabaseUri": "b8402838-97ca-49f8-a800-9ac9f59d710f@6c48a", |
||||
"atlasUuid": "", |
||||
"trimType": "auto" |
||||
}, |
||||
"ver": "1.0.12", |
||||
"imported": true, |
||||
"files": [ |
||||
".json" |
||||
], |
||||
"subMetas": {} |
||||
} |
||||
}, |
||||
"userData": { |
||||
"type": "sprite-frame", |
||||
"fixAlphaTransparencyArtifacts": false, |
||||
"hasAlpha": true, |
||||
"redirect": "b8402838-97ca-49f8-a800-9ac9f59d710f@6c48a" |
||||
} |
||||
} |
||||
|
Before Width: | Height: | Size: 3.8 KiB |
|
Before Width: | Height: | Size: 3.8 KiB |
@ -1,134 +0,0 @@ |
||||
{ |
||||
"ver": "1.0.27", |
||||
"importer": "image", |
||||
"imported": true, |
||||
"uuid": "025c6b9d-1242-40ed-9d79-96e7bc953c29", |
||||
"files": [ |
||||
".json", |
||||
".png" |
||||
], |
||||
"subMetas": { |
||||
"6c48a": { |
||||
"importer": "texture", |
||||
"uuid": "025c6b9d-1242-40ed-9d79-96e7bc953c29@6c48a", |
||||
"displayName": "矩形 798 拷贝 2", |
||||
"id": "6c48a", |
||||
"name": "texture", |
||||
"userData": { |
||||
"wrapModeS": "clamp-to-edge", |
||||
"wrapModeT": "clamp-to-edge", |
||||
"imageUuidOrDatabaseUri": "025c6b9d-1242-40ed-9d79-96e7bc953c29", |
||||
"isUuid": true, |
||||
"visible": false, |
||||
"minfilter": "linear", |
||||
"magfilter": "linear", |
||||
"mipfilter": "none", |
||||
"anisotropy": 0 |
||||
}, |
||||
"ver": "1.0.22", |
||||
"imported": true, |
||||
"files": [ |
||||
".json" |
||||
], |
||||
"subMetas": {} |
||||
}, |
||||
"f9941": { |
||||
"importer": "sprite-frame", |
||||
"uuid": "025c6b9d-1242-40ed-9d79-96e7bc953c29@f9941", |
||||
"displayName": "矩形 798 拷贝 2", |
||||
"id": "f9941", |
||||
"name": "spriteFrame", |
||||
"userData": { |
||||
"trimThreshold": 1, |
||||
"rotated": false, |
||||
"offsetX": 0, |
||||
"offsetY": 0, |
||||
"trimX": 0, |
||||
"trimY": 0, |
||||
"width": 63, |
||||
"height": 62, |
||||
"rawWidth": 63, |
||||
"rawHeight": 62, |
||||
"borderTop": 0, |
||||
"borderBottom": 0, |
||||
"borderLeft": 0, |
||||
"borderRight": 0, |
||||
"packable": true, |
||||
"pixelsToUnit": 100, |
||||
"pivotX": 0.5, |
||||
"pivotY": 0.5, |
||||
"meshType": 0, |
||||
"vertices": { |
||||
"rawPosition": [ |
||||
-31.5, |
||||
-31, |
||||
0, |
||||
31.5, |
||||
-31, |
||||
0, |
||||
-31.5, |
||||
31, |
||||
0, |
||||
31.5, |
||||
31, |
||||
0 |
||||
], |
||||
"indexes": [ |
||||
0, |
||||
1, |
||||
2, |
||||
2, |
||||
1, |
||||
3 |
||||
], |
||||
"uv": [ |
||||
0, |
||||
62, |
||||
63, |
||||
62, |
||||
0, |
||||
0, |
||||
63, |
||||
0 |
||||
], |
||||
"nuv": [ |
||||
0, |
||||
0, |
||||
1, |
||||
0, |
||||
0, |
||||
1, |
||||
1, |
||||
1 |
||||
], |
||||
"minPos": [ |
||||
-31.5, |
||||
-31, |
||||
0 |
||||
], |
||||
"maxPos": [ |
||||
31.5, |
||||
31, |
||||
0 |
||||
] |
||||
}, |
||||
"isUuid": true, |
||||
"imageUuidOrDatabaseUri": "025c6b9d-1242-40ed-9d79-96e7bc953c29@6c48a", |
||||
"atlasUuid": "", |
||||
"trimType": "auto" |
||||
}, |
||||
"ver": "1.0.12", |
||||
"imported": true, |
||||
"files": [ |
||||
".json" |
||||
], |
||||
"subMetas": {} |
||||
} |
||||
}, |
||||
"userData": { |
||||
"type": "sprite-frame", |
||||
"fixAlphaTransparencyArtifacts": false, |
||||
"hasAlpha": true, |
||||
"redirect": "025c6b9d-1242-40ed-9d79-96e7bc953c29@6c48a" |
||||
} |
||||
} |
||||
|
Before Width: | Height: | Size: 3.8 KiB |
@ -1,134 +0,0 @@ |
||||
{ |
||||
"ver": "1.0.27", |
||||
"importer": "image", |
||||
"imported": true, |
||||
"uuid": "ea4d4f68-8b22-44c5-8a22-6dcf096e80c8", |
||||
"files": [ |
||||
".json", |
||||
".png" |
||||
], |
||||
"subMetas": { |
||||
"6c48a": { |
||||
"importer": "texture", |
||||
"uuid": "ea4d4f68-8b22-44c5-8a22-6dcf096e80c8@6c48a", |
||||
"displayName": "矩形 798 拷贝 3-1", |
||||
"id": "6c48a", |
||||
"name": "texture", |
||||
"userData": { |
||||
"wrapModeS": "clamp-to-edge", |
||||
"wrapModeT": "clamp-to-edge", |
||||
"imageUuidOrDatabaseUri": "ea4d4f68-8b22-44c5-8a22-6dcf096e80c8", |
||||
"isUuid": true, |
||||
"visible": false, |
||||
"minfilter": "linear", |
||||
"magfilter": "linear", |
||||
"mipfilter": "none", |
||||
"anisotropy": 0 |
||||
}, |
||||
"ver": "1.0.22", |
||||
"imported": true, |
||||
"files": [ |
||||
".json" |
||||
], |
||||
"subMetas": {} |
||||
}, |
||||
"f9941": { |
||||
"importer": "sprite-frame", |
||||
"uuid": "ea4d4f68-8b22-44c5-8a22-6dcf096e80c8@f9941", |
||||
"displayName": "矩形 798 拷贝 3-1", |
||||
"id": "f9941", |
||||
"name": "spriteFrame", |
||||
"userData": { |
||||
"trimThreshold": 1, |
||||
"rotated": false, |
||||
"offsetX": 0, |
||||
"offsetY": 0, |
||||
"trimX": 0, |
||||
"trimY": 0, |
||||
"width": 62, |
||||
"height": 62, |
||||
"rawWidth": 62, |
||||
"rawHeight": 62, |
||||
"borderTop": 0, |
||||
"borderBottom": 0, |
||||
"borderLeft": 0, |
||||
"borderRight": 0, |
||||
"packable": true, |
||||
"pixelsToUnit": 100, |
||||
"pivotX": 0.5, |
||||
"pivotY": 0.5, |
||||
"meshType": 0, |
||||
"vertices": { |
||||
"rawPosition": [ |
||||
-31, |
||||
-31, |
||||
0, |
||||
31, |
||||
-31, |
||||
0, |
||||
-31, |
||||
31, |
||||
0, |
||||
31, |
||||
31, |
||||
0 |
||||
], |
||||
"indexes": [ |
||||
0, |
||||
1, |
||||
2, |
||||
2, |
||||
1, |
||||
3 |
||||
], |
||||
"uv": [ |
||||
0, |
||||
62, |
||||
62, |
||||
62, |
||||
0, |
||||
0, |
||||
62, |
||||
0 |
||||
], |
||||
"nuv": [ |
||||
0, |
||||
0, |
||||
1, |
||||
0, |
||||
0, |
||||
1, |
||||
1, |
||||
1 |
||||
], |
||||
"minPos": [ |
||||
-31, |
||||
-31, |
||||
0 |
||||
], |
||||
"maxPos": [ |
||||
31, |
||||
31, |
||||
0 |
||||
] |
||||
}, |
||||
"isUuid": true, |
||||
"imageUuidOrDatabaseUri": "ea4d4f68-8b22-44c5-8a22-6dcf096e80c8@6c48a", |
||||
"atlasUuid": "", |
||||
"trimType": "auto" |
||||
}, |
||||
"ver": "1.0.12", |
||||
"imported": true, |
||||
"files": [ |
||||
".json" |
||||
], |
||||
"subMetas": {} |
||||
} |
||||
}, |
||||
"userData": { |
||||
"type": "sprite-frame", |
||||
"fixAlphaTransparencyArtifacts": false, |
||||
"hasAlpha": true, |
||||
"redirect": "ea4d4f68-8b22-44c5-8a22-6dcf096e80c8@6c48a" |
||||
} |
||||
} |
||||
|
Before Width: | Height: | Size: 3.8 KiB |
@ -1,134 +0,0 @@ |
||||
{ |
||||
"ver": "1.0.27", |
||||
"importer": "image", |
||||
"imported": true, |
||||
"uuid": "8bce9335-cd65-40a4-9c1f-72c084304fff", |
||||
"files": [ |
||||
".json", |
||||
".png" |
||||
], |
||||
"subMetas": { |
||||
"6c48a": { |
||||
"importer": "texture", |
||||
"uuid": "8bce9335-cd65-40a4-9c1f-72c084304fff@6c48a", |
||||
"displayName": "矩形 798 拷贝 3", |
||||
"id": "6c48a", |
||||
"name": "texture", |
||||
"userData": { |
||||
"wrapModeS": "clamp-to-edge", |
||||
"wrapModeT": "clamp-to-edge", |
||||
"imageUuidOrDatabaseUri": "8bce9335-cd65-40a4-9c1f-72c084304fff", |
||||
"isUuid": true, |
||||
"visible": false, |
||||
"minfilter": "linear", |
||||
"magfilter": "linear", |
||||
"mipfilter": "none", |
||||
"anisotropy": 0 |
||||
}, |
||||
"ver": "1.0.22", |
||||
"imported": true, |
||||
"files": [ |
||||
".json" |
||||
], |
||||
"subMetas": {} |
||||
}, |
||||
"f9941": { |
||||
"importer": "sprite-frame", |
||||
"uuid": "8bce9335-cd65-40a4-9c1f-72c084304fff@f9941", |
||||
"displayName": "矩形 798 拷贝 3", |
||||
"id": "f9941", |
||||
"name": "spriteFrame", |
||||
"userData": { |
||||
"trimThreshold": 1, |
||||
"rotated": false, |
||||
"offsetX": 0, |
||||
"offsetY": 0, |
||||
"trimX": 0, |
||||
"trimY": 0, |
||||
"width": 62, |
||||
"height": 62, |
||||
"rawWidth": 62, |
||||
"rawHeight": 62, |
||||
"borderTop": 0, |
||||
"borderBottom": 0, |
||||
"borderLeft": 0, |
||||
"borderRight": 0, |
||||
"packable": true, |
||||
"pixelsToUnit": 100, |
||||
"pivotX": 0.5, |
||||
"pivotY": 0.5, |
||||
"meshType": 0, |
||||
"vertices": { |
||||
"rawPosition": [ |
||||
-31, |
||||
-31, |
||||
0, |
||||
31, |
||||
-31, |
||||
0, |
||||
-31, |
||||
31, |
||||
0, |
||||
31, |
||||
31, |
||||
0 |
||||
], |
||||
"indexes": [ |
||||
0, |
||||
1, |
||||
2, |
||||
2, |
||||
1, |
||||
3 |
||||
], |
||||
"uv": [ |
||||
0, |
||||
62, |
||||
62, |
||||
62, |
||||
0, |
||||
0, |
||||
62, |
||||
0 |
||||
], |
||||
"nuv": [ |
||||
0, |
||||
0, |
||||
1, |
||||
0, |
||||
0, |
||||
1, |
||||
1, |
||||
1 |
||||
], |
||||
"minPos": [ |
||||
-31, |
||||
-31, |
||||
0 |
||||
], |
||||
"maxPos": [ |
||||
31, |
||||
31, |
||||
0 |
||||
] |
||||
}, |
||||
"isUuid": true, |
||||
"imageUuidOrDatabaseUri": "8bce9335-cd65-40a4-9c1f-72c084304fff@6c48a", |
||||
"atlasUuid": "", |
||||
"trimType": "auto" |
||||
}, |
||||
"ver": "1.0.12", |
||||
"imported": true, |
||||
"files": [ |
||||
".json" |
||||
], |
||||
"subMetas": {} |
||||
} |
||||
}, |
||||
"userData": { |
||||
"type": "sprite-frame", |
||||
"fixAlphaTransparencyArtifacts": false, |
||||
"hasAlpha": true, |
||||
"redirect": "8bce9335-cd65-40a4-9c1f-72c084304fff@6c48a" |
||||
} |
||||
} |
||||
|
Before Width: | Height: | Size: 3.7 KiB |
@ -1,134 +0,0 @@ |
||||
{ |
||||
"ver": "1.0.27", |
||||
"importer": "image", |
||||
"imported": true, |
||||
"uuid": "5a1adc0b-057a-4c1f-9361-138325e51bb1", |
||||
"files": [ |
||||
".json", |
||||
".png" |
||||
], |
||||
"subMetas": { |
||||
"6c48a": { |
||||
"importer": "texture", |
||||
"uuid": "5a1adc0b-057a-4c1f-9361-138325e51bb1@6c48a", |
||||
"displayName": "矩形 798 拷贝-1", |
||||
"id": "6c48a", |
||||
"name": "texture", |
||||
"userData": { |
||||
"wrapModeS": "clamp-to-edge", |
||||
"wrapModeT": "clamp-to-edge", |
||||
"imageUuidOrDatabaseUri": "5a1adc0b-057a-4c1f-9361-138325e51bb1", |
||||
"isUuid": true, |
||||
"visible": false, |
||||
"minfilter": "linear", |
||||
"magfilter": "linear", |
||||
"mipfilter": "none", |
||||
"anisotropy": 0 |
||||
}, |
||||
"ver": "1.0.22", |
||||
"imported": true, |
||||
"files": [ |
||||
".json" |
||||
], |
||||
"subMetas": {} |
||||
}, |
||||
"f9941": { |
||||
"importer": "sprite-frame", |
||||
"uuid": "5a1adc0b-057a-4c1f-9361-138325e51bb1@f9941", |
||||
"displayName": "矩形 798 拷贝-1", |
||||
"id": "f9941", |
||||
"name": "spriteFrame", |
||||
"userData": { |
||||
"trimThreshold": 1, |
||||
"rotated": false, |
||||
"offsetX": 0, |
||||
"offsetY": 0, |
||||
"trimX": 0, |
||||
"trimY": 0, |
||||
"width": 62, |
||||
"height": 62, |
||||
"rawWidth": 62, |
||||
"rawHeight": 62, |
||||
"borderTop": 0, |
||||
"borderBottom": 0, |
||||
"borderLeft": 0, |
||||
"borderRight": 0, |
||||
"packable": true, |
||||
"pixelsToUnit": 100, |
||||
"pivotX": 0.5, |
||||
"pivotY": 0.5, |
||||
"meshType": 0, |
||||
"vertices": { |
||||
"rawPosition": [ |
||||
-31, |
||||
-31, |
||||
0, |
||||
31, |
||||
-31, |
||||
0, |
||||
-31, |
||||
31, |
||||
0, |
||||
31, |
||||
31, |
||||
0 |
||||
], |
||||
"indexes": [ |
||||
0, |
||||
1, |
||||
2, |
||||
2, |
||||
1, |
||||
3 |
||||
], |
||||
"uv": [ |
||||
0, |
||||
62, |
||||
62, |
||||
62, |
||||
0, |
||||
0, |
||||
62, |
||||
0 |
||||
], |
||||
"nuv": [ |
||||
0, |
||||
0, |
||||
1, |
||||
0, |
||||
0, |
||||
1, |
||||
1, |
||||
1 |
||||
], |
||||
"minPos": [ |
||||
-31, |
||||
-31, |
||||
0 |
||||
], |
||||
"maxPos": [ |
||||
31, |
||||
31, |
||||
0 |
||||
] |
||||
}, |
||||
"isUuid": true, |
||||
"imageUuidOrDatabaseUri": "5a1adc0b-057a-4c1f-9361-138325e51bb1@6c48a", |
||||
"atlasUuid": "", |
||||
"trimType": "auto" |
||||
}, |
||||
"ver": "1.0.12", |
||||
"imported": true, |
||||
"files": [ |
||||
".json" |
||||
], |
||||
"subMetas": {} |
||||
} |
||||
}, |
||||
"userData": { |
||||
"type": "sprite-frame", |
||||
"fixAlphaTransparencyArtifacts": false, |
||||
"hasAlpha": true, |
||||
"redirect": "5a1adc0b-057a-4c1f-9361-138325e51bb1@6c48a" |
||||
} |
||||
} |
||||
|
Before Width: | Height: | Size: 3.8 KiB |
@ -1,134 +0,0 @@ |
||||
{ |
||||
"ver": "1.0.27", |
||||
"importer": "image", |
||||
"imported": true, |
||||
"uuid": "8d14085d-8f15-4d38-8419-7cb5f82614fb", |
||||
"files": [ |
||||
".json", |
||||
".png" |
||||
], |
||||
"subMetas": { |
||||
"6c48a": { |
||||
"importer": "texture", |
||||
"uuid": "8d14085d-8f15-4d38-8419-7cb5f82614fb@6c48a", |
||||
"displayName": "矩形 798 拷贝", |
||||
"id": "6c48a", |
||||
"name": "texture", |
||||
"userData": { |
||||
"wrapModeS": "clamp-to-edge", |
||||
"wrapModeT": "clamp-to-edge", |
||||
"imageUuidOrDatabaseUri": "8d14085d-8f15-4d38-8419-7cb5f82614fb", |
||||
"isUuid": true, |
||||
"visible": false, |
||||
"minfilter": "linear", |
||||
"magfilter": "linear", |
||||
"mipfilter": "none", |
||||
"anisotropy": 0 |
||||
}, |
||||
"ver": "1.0.22", |
||||
"imported": true, |
||||
"files": [ |
||||
".json" |
||||
], |
||||
"subMetas": {} |
||||
}, |
||||
"f9941": { |
||||
"importer": "sprite-frame", |
||||
"uuid": "8d14085d-8f15-4d38-8419-7cb5f82614fb@f9941", |
||||
"displayName": "矩形 798 拷贝", |
||||
"id": "f9941", |
||||
"name": "spriteFrame", |
||||
"userData": { |
||||
"trimThreshold": 1, |
||||
"rotated": false, |
||||
"offsetX": 0, |
||||
"offsetY": 0, |
||||
"trimX": 0, |
||||
"trimY": 0, |
||||
"width": 63, |
||||
"height": 62, |
||||
"rawWidth": 63, |
||||
"rawHeight": 62, |
||||
"borderTop": 0, |
||||
"borderBottom": 0, |
||||
"borderLeft": 0, |
||||
"borderRight": 0, |
||||
"packable": true, |
||||
"pixelsToUnit": 100, |
||||
"pivotX": 0.5, |
||||
"pivotY": 0.5, |
||||
"meshType": 0, |
||||
"vertices": { |
||||
"rawPosition": [ |
||||
-31.5, |
||||
-31, |
||||
0, |
||||
31.5, |
||||
-31, |
||||
0, |
||||
-31.5, |
||||
31, |
||||
0, |
||||
31.5, |
||||
31, |
||||
0 |
||||
], |
||||
"indexes": [ |
||||
0, |
||||
1, |
||||
2, |
||||
2, |
||||
1, |
||||
3 |
||||
], |
||||
"uv": [ |
||||
0, |
||||
62, |
||||
63, |
||||
62, |
||||
0, |
||||
0, |
||||
63, |
||||
0 |
||||
], |
||||
"nuv": [ |
||||
0, |
||||
0, |
||||
1, |
||||
0, |
||||
0, |
||||
1, |
||||
1, |
||||
1 |
||||
], |
||||
"minPos": [ |
||||
-31.5, |
||||
-31, |
||||
0 |
||||
], |
||||
"maxPos": [ |
||||
31.5, |
||||
31, |
||||
0 |
||||
] |
||||
}, |
||||
"isUuid": true, |
||||
"imageUuidOrDatabaseUri": "8d14085d-8f15-4d38-8419-7cb5f82614fb@6c48a", |
||||
"atlasUuid": "", |
||||
"trimType": "auto" |
||||
}, |
||||
"ver": "1.0.12", |
||||
"imported": true, |
||||
"files": [ |
||||
".json" |
||||
], |
||||
"subMetas": {} |
||||
} |
||||
}, |
||||
"userData": { |
||||
"type": "sprite-frame", |
||||
"fixAlphaTransparencyArtifacts": false, |
||||
"hasAlpha": true, |
||||
"redirect": "8d14085d-8f15-4d38-8419-7cb5f82614fb@6c48a" |
||||
} |
||||
} |
||||
@ -0,0 +1,160 @@ |
||||
import type { BattleSession } from 'db://assets/mx/module/battle'; |
||||
import type { EntityId } from 'db://assets/mx/module/ecs'; |
||||
import { AttrId, AttributeComp } from 'db://assets/mx/module/battle/ecs/Components'; |
||||
import type { Player } from '../../game/Player'; |
||||
import { TableNames } from '../../game/ConfigTableData'; |
||||
import { parseEntryBaseAttr } from '../skill/SkillEntryParse'; |
||||
|
||||
const LOG = '[GemBattle]'; |
||||
/** modifier.source 前缀,刷新时整批清除 */ |
||||
const SOURCE_PREFIX = 'gem_'; |
||||
|
||||
/** 五行镶嵌解析结果(局内用) */ |
||||
export interface IGemBattleResolve { |
||||
/** 提供技能的宝石 id(0=无) */ |
||||
skillGemId: number; |
||||
/** Skill.id(0=无) */ |
||||
skillId: number; |
||||
/** 各槽属性条目(含来源槽,便于 source 去重) */ |
||||
attrs: IGemBattleAttr[]; |
||||
} |
||||
|
||||
/** 单条宝石属性 */ |
||||
export interface IGemBattleAttr { |
||||
/** Weapon.attritubes 类型 1~5 */ |
||||
type: number; |
||||
/** 万分比值 */ |
||||
value: number; |
||||
/** 宝石 id */ |
||||
gemId: number; |
||||
/** 槽位 0~3 */ |
||||
slot: number; |
||||
} |
||||
|
||||
/** |
||||
* 局内宝石生效:读镶嵌 → 属性 modifier → 技能宝石 id。 |
||||
* 仅本机玩家;AI 返回空。 |
||||
*/ |
||||
export class GemBattleEffect { |
||||
/** |
||||
* 解析某五行已镶嵌宝石。 |
||||
* @param element Hero.herotype / 镶嵌 element(1~5) |
||||
* @param player 部署所属玩家 |
||||
*/ |
||||
static resolve(element: number, player: Player | null | undefined): IGemBattleResolve { |
||||
const empty: IGemBattleResolve = { skillGemId: 0, skillId: 0, attrs: [] }; |
||||
if (!player || !player.isLocal) return empty; |
||||
const e = Math.floor(Number(element) || 0); |
||||
if (e < 1 || e > 5) return empty; |
||||
|
||||
let slots: number[]; |
||||
try { |
||||
slots = gg.gem.getElementSlots(e); |
||||
} catch (err) { |
||||
console.warn(LOG, 'getElementSlots 失败', e, err); |
||||
return empty; |
||||
} |
||||
|
||||
const attrs: IGemBattleAttr[] = []; |
||||
let skillGemId = 0; |
||||
let skillId = 0; |
||||
let skillQuality = -1; |
||||
|
||||
for (let slot = 0; slot < slots.length; slot++) { |
||||
const gemId = Math.floor(Number(slots[slot]) || 0); |
||||
if (gemId <= 0) continue; |
||||
const row = gg.data.table.getTableData<ITableWeapon>(TableNames.Weapon, gemId); |
||||
if (!row) { |
||||
console.warn(LOG, '宝石配表缺失', gemId, 'element', e, 'slot', slot); |
||||
continue; |
||||
} |
||||
const parsed = parseEntryBaseAttr(String(row.attritubes ?? '')); |
||||
for (let i = 0; i < parsed.length; i++) { |
||||
const p = parsed[i]; |
||||
if (p.type < 1 || p.type > 5) { |
||||
console.warn(LOG, 'attritubes 类型非法', gemId, p.type, row.attritubes); |
||||
continue; |
||||
} |
||||
if (!(p.value > 0)) { |
||||
console.warn(LOG, 'attritubes 参数非法', gemId, row.attritubes); |
||||
continue; |
||||
} |
||||
attrs.push({ type: p.type, value: p.value, gemId, slot }); |
||||
} |
||||
const sid = Math.floor(Number(row.act_skill) || 0); |
||||
if (sid <= 0) continue; |
||||
const q = Math.floor(Number(row.quality) || 0); |
||||
if (skillId > 0) { |
||||
console.warn(LOG, '同五行多颗技能宝石,取品质更高者', e, 'prev', skillGemId, 'next', gemId); |
||||
} |
||||
if (skillId <= 0 || q > skillQuality || (q === skillQuality && gemId > skillGemId)) { |
||||
skillGemId = gemId; |
||||
skillId = sid; |
||||
skillQuality = q; |
||||
} |
||||
} |
||||
return { skillGemId, skillId, attrs }; |
||||
} |
||||
|
||||
/** |
||||
* 清除实体上全部宝石属性 modifier。 |
||||
* @param session 战斗会话 |
||||
* @param entityId 塔实体 |
||||
*/ |
||||
static clear(session: BattleSession, entityId: EntityId): void { |
||||
const attr = session.world.getComponent(entityId, AttributeComp); |
||||
if (!attr) return; |
||||
attr.modifiers = attr.modifiers.filter(m => !String(m.source ?? '').startsWith(SOURCE_PREFIX)); |
||||
} |
||||
|
||||
/** |
||||
* 将解析结果写入属性(先 clear 再挂)。 |
||||
* @param session 战斗会话 |
||||
* @param entityId 塔实体 |
||||
* @param resolved 镶嵌解析 |
||||
*/ |
||||
static apply(session: BattleSession, entityId: EntityId, resolved: IGemBattleResolve): void { |
||||
this.clear(session, entityId); |
||||
if (!resolved.attrs.length) return; |
||||
if (!session.world.isAlive(entityId)) return; |
||||
if (!session.world.getComponent(entityId, AttributeComp)) { |
||||
session.world.addComponent(entityId, new AttributeComp()); |
||||
} |
||||
const attrSvc = session.attributes; |
||||
for (let i = 0; i < resolved.attrs.length; i++) { |
||||
const a = resolved.attrs[i]; |
||||
const source = `${SOURCE_PREFIX}${a.gemId}_s${a.slot}_${i}`; |
||||
const wan = a.value; |
||||
switch (a.type) { |
||||
case 1: |
||||
attrSvc.addModifier(entityId, { |
||||
attr: AttrId.Attack, op: 'Mul', value: 1 + wan / 10000, source, |
||||
}); |
||||
break; |
||||
case 2: |
||||
attrSvc.addModifier(entityId, { |
||||
attr: AttrId.CritRate, op: 'Add', value: wan / 10000, source, |
||||
}); |
||||
break; |
||||
case 3: |
||||
attrSvc.addModifier(entityId, { |
||||
attr: AttrId.CritDamage, op: 'Add', value: wan / 10000, source, |
||||
}); |
||||
break; |
||||
case 4: |
||||
attrSvc.addModifier(entityId, { |
||||
attr: 'aspd_add', op: 'Add', value: wan, source, |
||||
}); |
||||
break; |
||||
case 5: |
||||
attrSvc.addModifier(entityId, { |
||||
attr: 'dmg_mul', op: 'Add', value: wan / 10000, source, |
||||
}); |
||||
break; |
||||
default: |
||||
console.warn(LOG, '未处理属性类型', a.type, a.gemId); |
||||
break; |
||||
} |
||||
} |
||||
} |
||||
} |
||||
@ -0,0 +1,9 @@ |
||||
{ |
||||
"ver": "4.0.24", |
||||
"importer": "typescript", |
||||
"imported": true, |
||||
"uuid": "e16eb3f3-e692-45bb-98db-a0bdf813113f", |
||||
"files": [], |
||||
"subMetas": {}, |
||||
"userData": {} |
||||
} |
||||
@ -0,0 +1,9 @@ |
||||
{ |
||||
"ver": "1.2.0", |
||||
"importer": "directory", |
||||
"imported": true, |
||||
"uuid": "63f51f60-1b58-4be0-bd82-dc19fbfe2f41", |
||||
"files": [], |
||||
"subMetas": {}, |
||||
"userData": {} |
||||
} |
||||
@ -0,0 +1,49 @@ |
||||
|
||||
//*********************
|
||||
// create by 流云
|
||||
// 插件自动生成的节点脚本
|
||||
// 请勿修改(自动生成会覆盖)
|
||||
// 请通过子类继承使用
|
||||
// 如何生成可直接调用的UI节点和组件?
|
||||
// 1.在场景节点树中选中要生成的UI根节点
|
||||
// 2.点击菜单"tool"->“生成UI脚本” 或者使用快捷键(快捷键:Ctrl+Shift+C)
|
||||
// 3.点击后会在script/ui/目录中生成一个以选中节点命名的文件夹,文件夹中会生成两个脚本文件,“Auto_”开头的就是本文件,不可修改,另一个是“UI”+选中节点名称命名的脚本文件,可修改,是需要挂载到选中节点的脚本文件,给用户使用的写逻辑的脚本,只会生成一次
|
||||
// 4.找到第3步描述的“UI”+选中节点名称命名的脚本文件,将其挂载到选中节点上(第一生成需要挂载,后续修改场景,重复生成的时候,该脚本不会再生成,不用担心会覆盖逻辑脚本)
|
||||
// 下面是类型示例
|
||||
// 1.按钮,节点名以“btn_”或者“Btn_”开头或者节点添加了Button组件, 例:btn_Close,会生成btn_Close节点和click_btn_Close()方法
|
||||
// 2.标签,节点名以“lb_”开头, 例:lb_title,会生成lb_title的Label组件
|
||||
// 3.输入框,节点名以“eb_”开头, 例:eb_input,会生成eb_input的EditBox组件
|
||||
// 4.滚动视图,节点名以“sv_”开头, 例:sv_list,会生成sv_list的ScrollView组件
|
||||
// 5.图片,节点名以“img_”或者sp_“”开头, 例:img_Icon,会生成img_Icon的Sprite组件
|
||||
// 6.普通节点,节点名以“ui_”或者“Ui_”或者“UI_”开头, 例:ui_Content,会生成ui_Content的Node节点
|
||||
//*********************
|
||||
import { _decorator, Component, Node, find, Sprite, Label, Button, ScrollView, EditBox, RichText } from 'cc'; |
||||
import { UIBase } from '../../../mx/module/ui/UIBase'; |
||||
const { ccclass } = _decorator; |
||||
|
||||
@ccclass('Auto_PopGemInfo') |
||||
export class Auto_PopGemInfo extends UIBase { |
||||
bgMask:Node; |
||||
lb_name:Label; |
||||
lb_lv:Label; |
||||
lb_desc:Label; |
||||
btnClose:Node; |
||||
onLoad(){ |
||||
super.onLoad(); |
||||
this.bgMask = find("bgMask",this.node); |
||||
this.lb_name = find("center/lb_name",this.node)?.getComponent(Label); |
||||
this.lb_lv = find("center/lb_lv",this.node)?.getComponent(Label); |
||||
this.lb_desc = find("center/lb_desc",this.node)?.getComponent(Label); |
||||
this.btnClose = find("center/btnClose",this.node); |
||||
} |
||||
onEnable() { |
||||
this.bgMask.on(Node.EventType.TOUCH_END, this.click_bgMask, this); |
||||
this.btnClose.on(Node.EventType.TOUCH_END, this.click_btnClose, this); |
||||
} |
||||
onDisable() { |
||||
this.bgMask.off(Node.EventType.TOUCH_END, this.click_bgMask, this); |
||||
this.btnClose.off(Node.EventType.TOUCH_END, this.click_btnClose, this); |
||||
} |
||||
click_bgMask() {} |
||||
click_btnClose() {} |
||||
} |
||||
@ -0,0 +1,9 @@ |
||||
{ |
||||
"ver": "4.0.24", |
||||
"importer": "typescript", |
||||
"imported": true, |
||||
"uuid": "6650cdaf-d5a0-4bde-83d0-a568532780ee", |
||||
"files": [], |
||||
"subMetas": {}, |
||||
"userData": {} |
||||
} |
||||
@ -0,0 +1,90 @@ |
||||
|
||||
//*********************
|
||||
// create by 流云
|
||||
// time: Thu Oct 08 2026
|
||||
// desc: 宝石信息弹窗
|
||||
//*********************
|
||||
import { _decorator, find, Node, Sprite } from 'cc'; |
||||
import { SpriteLoad } from 'db://assets/mx/components/SpriteLoad'; |
||||
import { GBundle } from '../../game/ConfigRes'; |
||||
import { Auto_PopGemInfo } from './Auto_PopGemInfo'; |
||||
const { ccclass } = _decorator; |
||||
|
||||
const LOG = '[PopGemInfo]'; |
||||
|
||||
/** |
||||
* 宝石信息:iconbg=武器信息图标底框{quality};icon=Weapon.icon; |
||||
* lb_name / lb_desc 多语言;lb_lv=Lv.{quality}。 |
||||
*/ |
||||
@ccclass('UIPopGemInfo') |
||||
export class UIPopGemInfo extends Auto_PopGemInfo { |
||||
|
||||
/** 品质底框 */ |
||||
private _iconbg: Node | null = null; |
||||
/** 宝石图标 */ |
||||
private _icon: Node | null = null; |
||||
|
||||
onLoad(): void { |
||||
super.onLoad(); |
||||
this._iconbg = find('center/iconbg', this.node); |
||||
this._icon = find('center/icon', this.node); |
||||
if (!this._iconbg) console.warn(LOG, 'iconbg 缺失'); |
||||
if (!this._icon) console.warn(LOG, 'icon 缺失'); |
||||
} |
||||
|
||||
onInit(): void { |
||||
this._fill(this._resolveGemId()); |
||||
} |
||||
|
||||
click_bgMask(): void { |
||||
void this.close(2); |
||||
} |
||||
|
||||
click_btnClose(): void { |
||||
void this.close(2); |
||||
} |
||||
|
||||
/** 解析打开参数:数字 gemId 或 { gemId } */ |
||||
private _resolveGemId(): number { |
||||
const raw = this.prema; |
||||
if (raw !== null && typeof raw === 'object') { |
||||
return Math.floor(Number((raw as { gemId?: number }).gemId) || 0); |
||||
} |
||||
return Math.floor(Number(raw) || 0); |
||||
} |
||||
|
||||
/** 按宝石 id 刷新 */ |
||||
private _fill(gemId: number): void { |
||||
const conf = gemId > 0 ? gg.gem.getGem(gemId) : null; |
||||
if (!conf) { |
||||
console.warn(LOG, '宝石配表缺失', gemId); |
||||
return; |
||||
} |
||||
const quality = Math.floor(Number(conf.quality) || 0); |
||||
if (quality < 1 || quality > 5) console.warn(LOG, '品质无对应底框', gemId, quality); |
||||
|
||||
this._setWeaponSprite(this._iconbg, `weapon/武器信息图标底框${quality}`); |
||||
const iconName = String(conf.icon || '').trim(); |
||||
if (!iconName) console.warn(LOG, 'icon 缺失', gemId); |
||||
this._setWeaponSprite(this._icon, iconName ? `weapon/${iconName}` : ''); |
||||
|
||||
if (this.lb_name) this.lb_name.string = gg.lang.get(conf.name); |
||||
if (this.lb_lv) this.lb_lv.string = `Lv.${quality}`; |
||||
if (this.lb_desc) this.lb_desc.string = gg.lang.get(conf.desc); |
||||
} |
||||
|
||||
/** icons/weapon 下图 */ |
||||
private _setWeaponSprite(node: Node | null, path: string): void { |
||||
if (!node?.isValid) return; |
||||
if (!path) { |
||||
node.active = false; |
||||
node.getComponent(SpriteLoad)?.clear(); |
||||
const sp = node.getComponent(Sprite); |
||||
if (sp) sp.spriteFrame = null; |
||||
return; |
||||
} |
||||
node.active = true; |
||||
if (!node.getComponent(Sprite)) node.addComponent(Sprite); |
||||
node.getOrAddComponent(SpriteLoad).setSprite(path, GBundle.Items); |
||||
} |
||||
} |
||||
@ -0,0 +1,9 @@ |
||||
{ |
||||
"ver": "4.0.24", |
||||
"importer": "typescript", |
||||
"imported": true, |
||||
"uuid": "7f13fa9c-e418-4960-a180-d16633a2eca9", |
||||
"files": [], |
||||
"subMetas": {}, |
||||
"userData": {} |
||||
} |
||||