feat: goal, ball out sticker, new coin animaiton

main
tiendat3699 2024-04-22 18:12:57 +07:00
parent 68170cd690
commit 0d7c400d8e
49 changed files with 5089 additions and 2181 deletions

View File

@ -9,7 +9,7 @@
"_native": "",
"sample": 60,
"speed": 1,
"wrapMode": 1,
"wrapMode": 0,
"enableTrsBlending": false,
"_duration": 0.7666666666666667,
"_hash": 500763545,
@ -22,6 +22,9 @@
},
{
"__id__": 23
},
{
"__id__": 35
}
],
"_exoticAnimation": null,
@ -681,5 +684,56 @@
],
"preExtrapolation": 1,
"postExtrapolation": 1
},
{
"__type__": "cc.animation.ObjectTrack",
"_binding": {
"__type__": "cc.animation.TrackBinding",
"path": {
"__id__": 36
},
"proxy": null
},
"_channel": {
"__id__": 39
}
},
{
"__type__": "cc.animation.TrackPath",
"_paths": [
{
"__id__": 37
},
{
"__id__": 38
},
"spriteFrame"
]
},
{
"__type__": "cc.animation.HierarchyPath",
"path": "Sprite"
},
{
"__type__": "cc.animation.ComponentPath",
"component": "cc.Sprite"
},
{
"__type__": "cc.animation.Channel",
"_curve": {
"__id__": 40
}
},
{
"__type__": "cc.ObjectCurve",
"_times": [
0
],
"_values": [
{
"__uuid__": "483ec166-493b-43a4-885a-f5051af6a6c7@f9941",
"__expectedType__": "cc.SpriteFrame"
}
]
}
]

View File

@ -0,0 +1,278 @@
[
{
"__type__": "cc.AnimationClip",
"_name": "carrot_hit",
"_objFlags": 0,
"__editorExtras__": {
"embeddedPlayerGroups": []
},
"_native": "",
"sample": 60,
"speed": 1,
"wrapMode": 1,
"enableTrsBlending": false,
"_duration": 0.26666666666666666,
"_hash": 500763545,
"_tracks": [
{
"__id__": 1
},
{
"__id__": 7
}
],
"_exoticAnimation": null,
"_events": [],
"_embeddedPlayers": []
},
{
"__type__": "cc.animation.ObjectTrack",
"_binding": {
"__type__": "cc.animation.TrackBinding",
"path": {
"__id__": 2
},
"proxy": null
},
"_channel": {
"__id__": 5
}
},
{
"__type__": "cc.animation.TrackPath",
"_paths": [
{
"__id__": 3
},
{
"__id__": 4
},
"spriteFrame"
]
},
{
"__type__": "cc.animation.HierarchyPath",
"path": "Sprite"
},
{
"__type__": "cc.animation.ComponentPath",
"component": "cc.Sprite"
},
{
"__type__": "cc.animation.Channel",
"_curve": {
"__id__": 6
}
},
{
"__type__": "cc.ObjectCurve",
"_times": [
0,
0.05,
0.1,
0.15,
0.2,
0.25
],
"_values": [
{
"__uuid__": "9ee91187-4a22-43fa-a206-efe1950b9276@f9941",
"__expectedType__": "cc.SpriteFrame"
},
{
"__uuid__": "57be4203-17e7-49dc-a74c-e8875e8f8ae8@f9941",
"__expectedType__": "cc.SpriteFrame"
},
{
"__uuid__": "dbd7f56a-271d-45f1-83dd-c60d41aa3bc6@f9941",
"__expectedType__": "cc.SpriteFrame"
},
{
"__uuid__": "7a0eb58b-88db-4a68-8477-b7307d6de50e@f9941",
"__expectedType__": "cc.SpriteFrame"
},
{
"__uuid__": "7d0e0930-d11d-4999-9f4f-5677a4ed53e6@f9941",
"__expectedType__": "cc.SpriteFrame"
},
{
"__uuid__": "9ffbdde2-d0c8-4a3c-864e-7f9bcacb626e@f9941",
"__expectedType__": "cc.SpriteFrame"
}
]
},
{
"__type__": "cc.animation.VectorTrack",
"_binding": {
"__type__": "cc.animation.TrackBinding",
"path": {
"__id__": 8
},
"proxy": null
},
"_channels": [
{
"__id__": 10
},
{
"__id__": 12
},
{
"__id__": 14
},
{
"__id__": 16
}
],
"_nComponents": 3
},
{
"__type__": "cc.animation.TrackPath",
"_paths": [
{
"__id__": 9
},
"scale"
]
},
{
"__type__": "cc.animation.HierarchyPath",
"path": "Sprite"
},
{
"__type__": "cc.animation.Channel",
"_curve": {
"__id__": 11
}
},
{
"__type__": "cc.RealCurve",
"_times": [
0,
0.25
],
"_values": [
{
"__type__": "cc.RealKeyframeValue",
"interpolationMode": 0,
"tangentWeightMode": 0,
"value": 1,
"rightTangent": 0,
"rightTangentWeight": 1,
"leftTangent": 0,
"leftTangentWeight": 1,
"easingMethod": 0,
"__editorExtras__": null
},
{
"__type__": "cc.RealKeyframeValue",
"interpolationMode": 0,
"tangentWeightMode": 0,
"value": 3,
"rightTangent": 0,
"rightTangentWeight": 1,
"leftTangent": 0,
"leftTangentWeight": 1,
"easingMethod": 0,
"__editorExtras__": null
}
],
"preExtrapolation": 1,
"postExtrapolation": 1
},
{
"__type__": "cc.animation.Channel",
"_curve": {
"__id__": 13
}
},
{
"__type__": "cc.RealCurve",
"_times": [
0,
0.25
],
"_values": [
{
"__type__": "cc.RealKeyframeValue",
"interpolationMode": 0,
"tangentWeightMode": 0,
"value": 1,
"rightTangent": 0,
"rightTangentWeight": 1,
"leftTangent": 0,
"leftTangentWeight": 1,
"easingMethod": 0,
"__editorExtras__": null
},
{
"__type__": "cc.RealKeyframeValue",
"interpolationMode": 0,
"tangentWeightMode": 0,
"value": 3,
"rightTangent": 0,
"rightTangentWeight": 1,
"leftTangent": 0,
"leftTangentWeight": 1,
"easingMethod": 0,
"__editorExtras__": null
}
],
"preExtrapolation": 1,
"postExtrapolation": 1
},
{
"__type__": "cc.animation.Channel",
"_curve": {
"__id__": 15
}
},
{
"__type__": "cc.RealCurve",
"_times": [
0,
0.25
],
"_values": [
{
"__type__": "cc.RealKeyframeValue",
"interpolationMode": 0,
"tangentWeightMode": 0,
"value": 1,
"rightTangent": 0,
"rightTangentWeight": 1,
"leftTangent": 0,
"leftTangentWeight": 1,
"easingMethod": 0,
"__editorExtras__": null
},
{
"__type__": "cc.RealKeyframeValue",
"interpolationMode": 0,
"tangentWeightMode": 0,
"value": 3,
"rightTangent": 0,
"rightTangentWeight": 1,
"leftTangent": 0,
"leftTangentWeight": 1,
"easingMethod": 0,
"__editorExtras__": null
}
],
"preExtrapolation": 1,
"postExtrapolation": 1
},
{
"__type__": "cc.animation.Channel",
"_curve": {
"__id__": 17
}
},
{
"__type__": "cc.RealCurve",
"_times": [],
"_values": [],
"preExtrapolation": 1,
"postExtrapolation": 1
}
]

View File

@ -0,0 +1,13 @@
{
"ver": "2.0.3",
"importer": "animation-clip",
"imported": true,
"uuid": "c28f7afa-9ed3-43e6-af12-0e30bcbfc54a",
"files": [
".cconb"
],
"subMetas": {},
"userData": {
"name": "carrot_hit"
}
}

View File

@ -0,0 +1,326 @@
[
{
"__type__": "cc.AnimationClip",
"_name": "clock_hit",
"_objFlags": 0,
"__editorExtras__": {
"embeddedPlayerGroups": []
},
"_native": "",
"sample": 60,
"speed": 1,
"wrapMode": 1,
"enableTrsBlending": false,
"_duration": 0.3333333333333333,
"_hash": 500763545,
"_tracks": [
{
"__id__": 1
},
{
"__id__": 12
}
],
"_exoticAnimation": null,
"_events": [],
"_embeddedPlayers": []
},
{
"__type__": "cc.animation.VectorTrack",
"_binding": {
"__type__": "cc.animation.TrackBinding",
"path": {
"__id__": 2
},
"proxy": null
},
"_channels": [
{
"__id__": 4
},
{
"__id__": 6
},
{
"__id__": 8
},
{
"__id__": 10
}
],
"_nComponents": 3
},
{
"__type__": "cc.animation.TrackPath",
"_paths": [
{
"__id__": 3
},
"scale"
]
},
{
"__type__": "cc.animation.HierarchyPath",
"path": "Sprite"
},
{
"__type__": "cc.animation.Channel",
"_curve": {
"__id__": 5
}
},
{
"__type__": "cc.RealCurve",
"_times": [
0,
0.3333333333333333
],
"_values": [
{
"__type__": "cc.RealKeyframeValue",
"interpolationMode": 0,
"tangentWeightMode": 0,
"value": 1,
"rightTangent": 0,
"rightTangentWeight": 1,
"leftTangent": 0,
"leftTangentWeight": 1,
"easingMethod": 0,
"__editorExtras__": null
},
{
"__type__": "cc.RealKeyframeValue",
"interpolationMode": 0,
"tangentWeightMode": 0,
"value": 3,
"rightTangent": 0,
"rightTangentWeight": 1,
"leftTangent": 0,
"leftTangentWeight": 1,
"easingMethod": 0,
"__editorExtras__": null
}
],
"preExtrapolation": 1,
"postExtrapolation": 1
},
{
"__type__": "cc.animation.Channel",
"_curve": {
"__id__": 7
}
},
{
"__type__": "cc.RealCurve",
"_times": [
0,
0.3333333333333333
],
"_values": [
{
"__type__": "cc.RealKeyframeValue",
"interpolationMode": 0,
"tangentWeightMode": 0,
"value": 1,
"rightTangent": 0,
"rightTangentWeight": 1,
"leftTangent": 0,
"leftTangentWeight": 1,
"easingMethod": 0,
"__editorExtras__": null
},
{
"__type__": "cc.RealKeyframeValue",
"interpolationMode": 0,
"tangentWeightMode": 0,
"value": 3,
"rightTangent": 0,
"rightTangentWeight": 1,
"leftTangent": 0,
"leftTangentWeight": 1,
"easingMethod": 0,
"__editorExtras__": null
}
],
"preExtrapolation": 1,
"postExtrapolation": 1
},
{
"__type__": "cc.animation.Channel",
"_curve": {
"__id__": 9
}
},
{
"__type__": "cc.RealCurve",
"_times": [
0,
0.3333333333333333
],
"_values": [
{
"__type__": "cc.RealKeyframeValue",
"interpolationMode": 0,
"tangentWeightMode": 0,
"value": 1,
"rightTangent": 0,
"rightTangentWeight": 1,
"leftTangent": 0,
"leftTangentWeight": 1,
"easingMethod": 0,
"__editorExtras__": null
},
{
"__type__": "cc.RealKeyframeValue",
"interpolationMode": 0,
"tangentWeightMode": 0,
"value": 3,
"rightTangent": 0,
"rightTangentWeight": 1,
"leftTangent": 0,
"leftTangentWeight": 1,
"easingMethod": 0,
"__editorExtras__": null
}
],
"preExtrapolation": 1,
"postExtrapolation": 1
},
{
"__type__": "cc.animation.Channel",
"_curve": {
"__id__": 11
}
},
{
"__type__": "cc.RealCurve",
"_times": [],
"_values": [],
"preExtrapolation": 1,
"postExtrapolation": 1
},
{
"__type__": "cc.animation.ColorTrack",
"_binding": {
"__type__": "cc.animation.TrackBinding",
"path": {
"__id__": 13
},
"proxy": null
},
"_channels": [
{
"__id__": 16
},
{
"__id__": 18
},
{
"__id__": 20
},
{
"__id__": 22
}
]
},
{
"__type__": "cc.animation.TrackPath",
"_paths": [
{
"__id__": 14
},
{
"__id__": 15
},
"color"
]
},
{
"__type__": "cc.animation.HierarchyPath",
"path": "Sprite"
},
{
"__type__": "cc.animation.ComponentPath",
"component": "cc.Sprite"
},
{
"__type__": "cc.animation.Channel",
"_curve": {
"__id__": 17
}
},
{
"__type__": "cc.RealCurve",
"_times": [],
"_values": [],
"preExtrapolation": 1,
"postExtrapolation": 1
},
{
"__type__": "cc.animation.Channel",
"_curve": {
"__id__": 19
}
},
{
"__type__": "cc.RealCurve",
"_times": [],
"_values": [],
"preExtrapolation": 1,
"postExtrapolation": 1
},
{
"__type__": "cc.animation.Channel",
"_curve": {
"__id__": 21
}
},
{
"__type__": "cc.RealCurve",
"_times": [],
"_values": [],
"preExtrapolation": 1,
"postExtrapolation": 1
},
{
"__type__": "cc.animation.Channel",
"_curve": {
"__id__": 23
}
},
{
"__type__": "cc.RealCurve",
"_times": [
0,
0.3333333333333333
],
"_values": [
{
"__type__": "cc.RealKeyframeValue",
"interpolationMode": 0,
"tangentWeightMode": 0,
"value": 255,
"rightTangent": 0,
"rightTangentWeight": 1,
"leftTangent": 0,
"leftTangentWeight": 1,
"easingMethod": 0,
"__editorExtras__": null
},
{
"__type__": "cc.RealKeyframeValue",
"interpolationMode": 0,
"tangentWeightMode": 0,
"value": 0,
"rightTangent": 0,
"rightTangentWeight": 1,
"leftTangent": 0,
"leftTangentWeight": 1,
"easingMethod": 0,
"__editorExtras__": null
}
],
"preExtrapolation": 1,
"postExtrapolation": 1
}
]

View File

@ -0,0 +1,13 @@
{
"ver": "2.0.3",
"importer": "animation-clip",
"imported": true,
"uuid": "42bd6941-1c9f-4b41-af13-ed9b3b5aa628",
"files": [
".cconb"
],
"subMetas": {},
"userData": {
"name": "clock_hit"
}
}

View File

@ -24,23 +24,23 @@
"_active": true,
"_components": [
{
"__id__": 45
"__id__": 55
},
{
"__id__": 47
"__id__": 57
},
{
"__id__": 49
"__id__": 59
},
{
"__id__": 51
"__id__": 61
},
{
"__id__": 53
"__id__": 63
}
],
"_prefab": {
"__id__": 57
"__id__": 67
},
"_lpos": {
"__type__": "cc.Vec3",
@ -86,23 +86,26 @@
"__id__": 9
},
{
"__id__": 17
"__id__": 19
},
{
"__id__": 23
"__id__": 25
},
{
"__id__": 31
},
{
"__id__": 39
}
],
"_active": true,
"_components": [
{
"__id__": 42
"__id__": 52
}
],
"_prefab": {
"__id__": 44
"__id__": 54
},
"_lpos": {
"__type__": "cc.Vec3",
@ -312,6 +315,9 @@
},
{
"__id__": 16
},
{
"__id__": 17
}
],
"removedComponents": []
@ -378,6 +384,24 @@
"z": 0
}
},
{
"__type__": "CCPropertyOverrideInfo",
"targetInfo": {
"__id__": 18
},
"propertyPath": [
"_trailModule",
"lifeTime",
"constant"
],
"value": 0.15
},
{
"__type__": "cc.TargetInfo",
"localID": [
"46cV34eRFEJo7sL1+RIesi"
]
},
{
"__type__": "cc.Node",
"_name": "Sprite",
@ -389,14 +413,14 @@
"_active": true,
"_components": [
{
"__id__": 18
"__id__": 20
},
{
"__id__": 20
"__id__": 22
}
],
"_prefab": {
"__id__": 22
"__id__": 24
},
"_lpos": {
"__type__": "cc.Vec3",
@ -432,11 +456,11 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 17
"__id__": 19
},
"_enabled": true,
"__prefab": {
"__id__": 19
"__id__": 21
},
"_contentSize": {
"__type__": "cc.Size",
@ -459,11 +483,11 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 17
"__id__": 19
},
"_enabled": true,
"__prefab": {
"__id__": 21
"__id__": 23
},
"_customMaterial": null,
"_srcBlendFactor": 2,
@ -513,115 +537,136 @@
},
{
"__type__": "cc.Node",
"_name": "CheeseModeSprite",
"_objFlags": 0,
"_parent": {
"__id__": 2
},
"_prefab": {
"__id__": 24
},
"__editorExtras__": {}
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 23
},
"asset": {
"__uuid__": "e14fcc1f-f971-42d3-9b4c-b18518610c85",
"__expectedType__": "cc.Prefab"
},
"fileId": "67xZ2cRkJFAr/RCUJZ4Wsx",
"instance": {
"__id__": 25
},
"targetOverrides": null
},
{
"__type__": "cc.PrefabInstance",
"fileId": "e1b/Os4IpJlYUtv6O5BCW3",
"prefabRootNode": {
"__id__": 1
},
"mountedChildren": [],
"mountedComponents": [],
"propertyOverrides": [
"_children": [],
"_active": false,
"_components": [
{
"__id__": 26
},
{
"__id__": 28
},
{
"__id__": 29
},
{
"__id__": 30
}
],
"removedComponents": []
"_prefab": {
"__id__": 30
},
{
"__type__": "CCPropertyOverrideInfo",
"targetInfo": {
"__id__": 27
},
"propertyPath": [
"_name"
],
"value": "Buff_Particle"
},
{
"__type__": "cc.TargetInfo",
"localID": [
"67xZ2cRkJFAr/RCUJZ4Wsx"
]
},
{
"__type__": "CCPropertyOverrideInfo",
"targetInfo": {
"__id__": 27
},
"propertyPath": [
"_lpos"
],
"value": {
"_lpos": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 10
}
"z": 0
},
{
"__type__": "CCPropertyOverrideInfo",
"targetInfo": {
"__id__": 27
},
"propertyPath": [
"_lrot"
],
"value": {
"_lrot": {
"__type__": "cc.Quat",
"x": 0,
"y": 0,
"z": 0,
"w": 1
}
},
{
"__type__": "CCPropertyOverrideInfo",
"targetInfo": {
"__id__": 27
"_lscale": {
"__type__": "cc.Vec3",
"x": 1,
"y": 1,
"z": 1
},
"propertyPath": [
"_euler"
],
"value": {
"_mobility": 0,
"_layer": 33554432,
"_euler": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
}
},
"_id": ""
},
{
"__type__": "cc.UITransform",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 25
},
"_enabled": true,
"__prefab": {
"__id__": 27
},
"_contentSize": {
"__type__": "cc.Size",
"width": 72,
"height": 80.33229702970294
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "eePxLwrvNPVbkAR0bkt7iC"
},
{
"__type__": "cc.Sprite",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 25
},
"_enabled": true,
"__prefab": {
"__id__": 29
},
"_customMaterial": null,
"_srcBlendFactor": 2,
"_dstBlendFactor": 4,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_spriteFrame": {
"__uuid__": "72aace05-0b42-46a9-a016-ee05620fc08a@f9941",
"__expectedType__": "cc.SpriteFrame"
},
"_type": 0,
"_fillType": 0,
"_sizeMode": 0,
"_fillCenter": {
"__type__": "cc.Vec2",
"x": 0,
"y": 0
},
"_fillStart": 0,
"_fillRange": 0,
"_isTrimmedMode": true,
"_useGrayscale": false,
"_atlas": null,
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "2esFjEunBFXIAnLW2wQXl4"
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__id__": 0
},
"fileId": "90kGo41etGuZGVdRbBtRfz",
"instance": null,
"targetOverrides": null,
"nestedPrefabInstanceRoots": null
},
{
"__type__": "cc.Node",
@ -640,10 +685,10 @@
"__id__": 31
},
"asset": {
"__uuid__": "65ac0d84-803c-4033-a26d-d045b44256b2",
"__uuid__": "e14fcc1f-f971-42d3-9b4c-b18518610c85",
"__expectedType__": "cc.Prefab"
},
"fileId": "a9ie+TsG9IqLmCtkDUOeNi",
"fileId": "67xZ2cRkJFAr/RCUJZ4Wsx",
"instance": {
"__id__": 33
},
@ -651,7 +696,7 @@
},
{
"__type__": "cc.PrefabInstance",
"fileId": "52jHK6jpNKTaRn0samy7UE",
"fileId": "e1b/Os4IpJlYUtv6O5BCW3",
"prefabRootNode": {
"__id__": 1
},
@ -669,12 +714,6 @@
},
{
"__id__": 38
},
{
"__id__": 39
},
{
"__id__": 41
}
],
"removedComponents": []
@ -687,12 +726,12 @@
"propertyPath": [
"_name"
],
"value": "fire"
"value": "Buff_Particle"
},
{
"__type__": "cc.TargetInfo",
"localID": [
"a9ie+TsG9IqLmCtkDUOeNi"
"67xZ2cRkJFAr/RCUJZ4Wsx"
]
},
{
@ -706,8 +745,8 @@
"value": {
"__type__": "cc.Vec3",
"x": 0,
"y": -30,
"z": 0
"y": 0,
"z": 10
}
},
{
@ -741,10 +780,134 @@
"z": 0
}
},
{
"__type__": "cc.Node",
"_objFlags": 0,
"_parent": {
"__id__": 2
},
"_prefab": {
"__id__": 40
},
"__editorExtras__": {}
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 39
},
"asset": {
"__uuid__": "65ac0d84-803c-4033-a26d-d045b44256b2",
"__expectedType__": "cc.Prefab"
},
"fileId": "a9ie+TsG9IqLmCtkDUOeNi",
"instance": {
"__id__": 41
},
"targetOverrides": null
},
{
"__type__": "cc.PrefabInstance",
"fileId": "52jHK6jpNKTaRn0samy7UE",
"prefabRootNode": {
"__id__": 1
},
"mountedChildren": [],
"mountedComponents": [],
"propertyOverrides": [
{
"__id__": 42
},
{
"__id__": 44
},
{
"__id__": 45
},
{
"__id__": 46
},
{
"__id__": 47
},
{
"__id__": 49
},
{
"__id__": 50
},
{
"__id__": 51
}
],
"removedComponents": []
},
{
"__type__": "CCPropertyOverrideInfo",
"targetInfo": {
"__id__": 40
"__id__": 43
},
"propertyPath": [
"_name"
],
"value": "fire"
},
{
"__type__": "cc.TargetInfo",
"localID": [
"a9ie+TsG9IqLmCtkDUOeNi"
]
},
{
"__type__": "CCPropertyOverrideInfo",
"targetInfo": {
"__id__": 43
},
"propertyPath": [
"_lpos"
],
"value": {
"__type__": "cc.Vec3",
"x": 0,
"y": -30,
"z": 0
}
},
{
"__type__": "CCPropertyOverrideInfo",
"targetInfo": {
"__id__": 43
},
"propertyPath": [
"_lrot"
],
"value": {
"__type__": "cc.Quat",
"x": 0,
"y": 0,
"z": 0,
"w": 1
}
},
{
"__type__": "CCPropertyOverrideInfo",
"targetInfo": {
"__id__": 43
},
"propertyPath": [
"_euler"
],
"value": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
}
},
{
"__type__": "CCPropertyOverrideInfo",
"targetInfo": {
"__id__": 48
},
"propertyPath": [
"startColor",
@ -767,12 +930,33 @@
{
"__type__": "CCPropertyOverrideInfo",
"targetInfo": {
"__id__": 40
"__id__": 48
},
"propertyPath": [
"playOnAwake"
],
"value": false
"value": true
},
{
"__type__": "CCPropertyOverrideInfo",
"targetInfo": {
"__id__": 48
},
"propertyPath": [
"rateOverTime",
"constant"
],
"value": 8
},
{
"__type__": "CCPropertyOverrideInfo",
"targetInfo": {
"__id__": 48
},
"propertyPath": [
"_prewarm"
],
"value": true
},
{
"__type__": "cc.UITransform",
@ -783,7 +967,7 @@
},
"_enabled": true,
"__prefab": {
"__id__": 43
"__id__": 53
},
"_contentSize": {
"__type__": "cc.Size",
@ -824,7 +1008,7 @@
},
"_enabled": true,
"__prefab": {
"__id__": 46
"__id__": 56
},
"_contentSize": {
"__type__": "cc.Size",
@ -852,7 +1036,7 @@
},
"_enabled": true,
"__prefab": {
"__id__": 48
"__id__": 58
},
"tag": 0,
"_group": 4,
@ -882,7 +1066,7 @@
},
"_enabled": true,
"__prefab": {
"__id__": 50
"__id__": 60
},
"enabledContactListener": true,
"bullet": true,
@ -915,7 +1099,7 @@
},
"_enabled": true,
"__prefab": {
"__id__": 52
"__id__": 62
},
"_impactPrefab": {
"__uuid__": "018b85ed-f07a-4f26-b29c-7c3eb28cc634",
@ -923,22 +1107,25 @@
},
"_maxSpeed": 60,
"_rigidBody": {
"__id__": 49
},
"_sprite": {
"__id__": 20
},
"_spriteShadow": {
"__id__": 6
"__id__": 59
},
"_animation": {
"__id__": 53
"__id__": 63
},
"_trail": null,
"_buffParticle": null,
"_boosterParticle": null,
"_fireParticle": null,
"_collider": {
"__id__": 47
"__id__": 57
},
"_normalSprite": {
"__id__": 22
},
"_cheeseModeSprite": {
"__id__": 28
},
"_spriteShadow": {
"__id__": 6
},
"_hitSound": {
"__uuid__": "b122d38e-ecf1-42e2-8b26-c09d306d90d9",
@ -949,7 +1136,7 @@
"__expectedType__": "cc.AudioClip"
},
"_jumpCurve": {
"__id__": 55
"__id__": 65
},
"_id": ""
},
@ -966,7 +1153,7 @@
},
"_enabled": true,
"__prefab": {
"__id__": 54
"__id__": 64
},
"playOnLoad": false,
"_clips": [
@ -988,7 +1175,7 @@
{
"__type__": "cc.AnimationCurve",
"_curve": {
"__id__": 56
"__id__": 66
}
},
{
@ -1064,24 +1251,27 @@
"instance": null,
"targetOverrides": [
{
"__id__": 58
"__id__": 68
},
{
"__id__": 60
"__id__": 70
},
{
"__id__": 62
"__id__": 72
},
{
"__id__": 65
"__id__": 75
},
{
"__id__": 78
}
],
"nestedPrefabInstanceRoots": [
{
"__id__": 31
"__id__": 39
},
{
"__id__": 23
"__id__": 31
},
{
"__id__": 9
@ -1091,17 +1281,17 @@
{
"__type__": "cc.TargetOverrideInfo",
"source": {
"__id__": 51
"__id__": 61
},
"sourceInfo": null,
"propertyPath": [
"_buffParticle"
],
"target": {
"__id__": 23
"__id__": 31
},
"targetInfo": {
"__id__": 59
"__id__": 69
}
},
{
@ -1113,7 +1303,7 @@
{
"__type__": "cc.TargetOverrideInfo",
"source": {
"__id__": 51
"__id__": 61
},
"sourceInfo": null,
"propertyPath": [
@ -1123,7 +1313,7 @@
"__id__": 9
},
"targetInfo": {
"__id__": 61
"__id__": 71
}
},
{
@ -1135,20 +1325,20 @@
{
"__type__": "cc.TargetOverrideInfo",
"source": {
"__id__": 31
"__id__": 39
},
"sourceInfo": {
"__id__": 63
"__id__": 73
},
"propertyPath": [
"_trailModule",
"_particleSystem"
],
"target": {
"__id__": 31
"__id__": 39
},
"targetInfo": {
"__id__": 64
"__id__": 74
}
},
{
@ -1166,17 +1356,48 @@
{
"__type__": "cc.TargetOverrideInfo",
"source": {
"__id__": 51
"__id__": 9
},
"sourceInfo": {
"__id__": 76
},
"propertyPath": [
"_trailModule",
"_particleSystem"
],
"target": {
"__id__": 9
},
"targetInfo": {
"__id__": 77
}
},
{
"__type__": "cc.TargetInfo",
"localID": [
"46cV34eRFEJo7sL1+RIesi"
]
},
{
"__type__": "cc.TargetInfo",
"localID": [
"46cV34eRFEJo7sL1+RIesi"
]
},
{
"__type__": "cc.TargetOverrideInfo",
"source": {
"__id__": 61
},
"sourceInfo": null,
"propertyPath": [
"_boosterParticle"
"_fireParticle"
],
"target": {
"__id__": 31
"__id__": 39
},
"targetInfo": {
"__id__": 66
"__id__": 79
}
},
{

View File

@ -1119,10 +1119,6 @@
"_animation": {
"__id__": 82
},
"_collectSound": {
"__uuid__": "1ac12acc-dde3-4d31-9106-dfc30c030d40",
"__expectedType__": "cc.AudioClip"
},
"time": 10,
"_id": ""
},

View File

@ -314,7 +314,7 @@
"_sprite": {
"__id__": 5
},
"_spawnAnimation": {
"_animation": {
"__id__": 16
},
"_hitSound": {
@ -345,12 +345,13 @@
{
"__uuid__": "a5dad1d5-e43f-440c-aede-0959b5c632f1",
"__expectedType__": "cc.AnimationClip"
},
{
"__uuid__": "42bd6941-1c9f-4b41-af13-ed9b3b5aa628",
"__expectedType__": "cc.AnimationClip"
}
],
"_defaultClip": {
"__uuid__": "a5dad1d5-e43f-440c-aede-0959b5c632f1",
"__expectedType__": "cc.AnimationClip"
},
"_defaultClip": null,
"_id": ""
},
{

View File

@ -16,24 +16,28 @@
"_objFlags": 0,
"__editorExtras__": {},
"_parent": null,
"_children": [],
"_children": [
{
"__id__": 2
}
],
"_active": true,
"_components": [
{
"__id__": 2
},
{
"__id__": 4
},
{
"__id__": 6
},
{
"__id__": 10
},
{
"__id__": 12
},
{
"__id__": 14
},
{
"__id__": 18
}
],
"_prefab": {
"__id__": 12
"__id__": 20
},
"_lpos": {
"__type__": "cc.Vec3",
@ -64,6 +68,177 @@
},
"_id": ""
},
{
"__type__": "cc.Node",
"_name": "Sprite",
"_objFlags": 0,
"_parent": {
"__id__": 1
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 3
},
{
"__id__": 5
},
{
"__id__": 7
}
],
"_prefab": {
"__id__": 9
},
"_lpos": {
"__type__": "cc.Vec3",
"x": 30.310000000000002,
"y": 0,
"z": 0
},
"_lrot": {
"__type__": "cc.Quat",
"x": 0,
"y": 0,
"z": 0,
"w": 1
},
"_lscale": {
"__type__": "cc.Vec3",
"x": 1,
"y": 1,
"z": 1
},
"_mobility": 0,
"_layer": 33554432,
"_euler": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_id": ""
},
{
"__type__": "cc.UITransform",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 2
},
"_enabled": true,
"__prefab": {
"__id__": 4
},
"_contentSize": {
"__type__": "cc.Size",
"width": 40,
"height": 35
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0,
"y": 0.5
},
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "3682cD5xhIn7H0+W/sptJH"
},
{
"__type__": "cc.Sprite",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 2
},
"_enabled": true,
"__prefab": {
"__id__": 6
},
"_customMaterial": null,
"_srcBlendFactor": 2,
"_dstBlendFactor": 4,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_spriteFrame": {
"__uuid__": "f7bd5166-9d5f-4d43-a3d3-58ae9a4957fc@f9941",
"__expectedType__": "cc.SpriteFrame"
},
"_type": 0,
"_fillType": 0,
"_sizeMode": 0,
"_fillCenter": {
"__type__": "cc.Vec2",
"x": 0,
"y": 0
},
"_fillStart": 0,
"_fillRange": 0,
"_isTrimmedMode": true,
"_useGrayscale": false,
"_atlas": null,
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "e78u5EheFOrbgOWEcmSHzS"
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 2
},
"_enabled": true,
"__prefab": {
"__id__": 8
},
"_alignFlags": 34,
"_target": null,
"_left": 20.619999999999997,
"_right": -40,
"_top": 0,
"_bottom": 0,
"_horizontalCenter": 0,
"_verticalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 40,
"_originalHeight": 0,
"_alignMode": 2,
"_lockFlags": 0,
"_id": ""
},
{
"__type__": "cc.CompPrefabInfo",
"fileId": "c6jbkI4Y1DIY6xOK2rRAGv"
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__id__": 0
},
"fileId": "cfdj0f98lAWLraym2Ge23a",
"instance": null,
"targetOverrides": null,
"nestedPrefabInstanceRoots": null
},
{
"__type__": "cc.UITransform",
"_name": "",
@ -73,7 +248,7 @@
},
"_enabled": true,
"__prefab": {
"__id__": 3
"__id__": 11
},
"_contentSize": {
"__type__": "cc.Size",
@ -100,7 +275,7 @@
},
"_enabled": true,
"__prefab": {
"__id__": 5
"__id__": 13
},
"_customMaterial": null,
"_srcBlendFactor": 2,
@ -147,14 +322,17 @@
},
"_enabled": true,
"__prefab": {
"__id__": 7
"__id__": 15
},
"_label": {
"__id__": 4
"__id__": 12
},
"_sprite": {
"__id__": 5
},
"_moveSpeed": 50,
"_animationCurve": {
"__id__": 8
"__id__": 16
},
"_id": ""
},
@ -165,7 +343,7 @@
{
"__type__": "cc.AnimationCurve",
"_curve": {
"__id__": 9
"__id__": 17
}
},
{
@ -212,7 +390,7 @@
},
"_enabled": true,
"__prefab": {
"__id__": 11
"__id__": 19
},
"_color": {
"__type__": "cc.Color",
@ -237,6 +415,7 @@
"__id__": 0
},
"fileId": "1fuwMYcsRH06ykaXQ3fPi3",
"instance": null
"instance": null,
"targetOverrides": null
}
]

View File

@ -314,7 +314,7 @@
"_sprite": {
"__id__": 5
},
"_spawnAnimation": {
"_animation": {
"__id__": 16
},
"_hitSound": {

View File

@ -314,7 +314,7 @@
"_sprite": {
"__id__": 5
},
"_spawnAnimation": {
"_animation": {
"__id__": 16
},
"_hitSound": {

View File

@ -106,9 +106,9 @@
},
"_lscale": {
"__type__": "cc.Vec3",
"x": 1,
"y": 1,
"z": 1
"x": 0,
"y": 0,
"z": 0
},
"_mobility": 0,
"_layer": 33554432,
@ -166,7 +166,7 @@
"r": 255,
"g": 255,
"b": 255,
"a": 255
"a": 0
},
"_spriteFrame": {
"__uuid__": "483ec166-493b-43a4-885a-f5051af6a6c7@f9941",
@ -314,7 +314,7 @@
"_sprite": {
"__id__": 5
},
"_spawnAnimation": {
"_animation": {
"__id__": 16
},
"_hitSound": {
@ -345,6 +345,10 @@
{
"__uuid__": "cfd9afd6-9345-446c-bf56-b7ac3dbf2c1e",
"__expectedType__": "cc.AnimationClip"
},
{
"__uuid__": "c28f7afa-9ed3-43e6-af12-0e30bcbfc54a",
"__expectedType__": "cc.AnimationClip"
}
],
"_defaultClip": {

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +1,4 @@
import { _decorator, CCFloat, Component, geometry, Label, tween, Vec3 } from 'cc';
import { _decorator, CCFloat, Component, geometry, Label, Sprite, SpriteFrame, tween, Vec3 } from 'cc';
import ObjectPool from '../Pool/ObjectPool';
const { ccclass, property } = _decorator;
@ -6,6 +6,8 @@ const { ccclass, property } = _decorator;
export class FloatingText extends Component {
@property({ type: Label, visible: true })
private _label: Label;
@property({ type: Sprite, visible: true })
private _sprite: Sprite;
@property({ type: CCFloat, visible: true })
private _moveSpeed = 1;
@property({ type: geometry.AnimationCurve, visible: true })
@ -14,7 +16,7 @@ export class FloatingText extends Component {
private readonly _scaleDownDuration = 0.2;
private _moveDuration = 0;
public show(text: string, position: Vec3, scale = 1, duration = 1) {
public show(text: string, position: Vec3, scale = 1, duration = 1, image: SpriteFrame = null) {
if (duration < this._scaleUpDuration + this._scaleDownDuration) {
console.warn(
`show duration time of floating text must be greater than ${this._scaleUpDuration + this._scaleDownDuration}`,
@ -26,6 +28,7 @@ export class FloatingText extends Component {
this.node.setWorldPosition(position);
this.node.setScale(Vec3.ZERO);
this._label.string = text;
this._sprite.spriteFrame = image;
tween(this.node)
.to(this._scaleUpDuration, { scale: new Vec3(scale, scale, 1) }, { easing: 'backOut' })
.by(
@ -46,7 +49,10 @@ export class FloatingText extends Component {
},
{ easing: 'backIn' },
)
.call(() => ObjectPool.release(this.node))
.call(() => {
this._sprite.spriteFrame = null;
ObjectPool.release(this.node);
})
.start();
}
}

View File

@ -7,8 +7,6 @@ import {
Color,
Component,
Contact2DType,
math,
RigidBody2D,
Sprite,
Vec3,
} from 'cc';
@ -28,7 +26,7 @@ export class ScoreObject extends Component implements IPoolable {
@property({ type: Sprite, visible: true })
private _sprite: Sprite;
@property({ type: Animation, visible: true })
private _spawnAnimation: Animation;
private _animation: Animation;
@property({ type: AudioClip, visible: true })
private _hitSound: AudioClip;
@property({ type: CCInteger, visible: true })
@ -49,47 +47,47 @@ export class ScoreObject extends Component implements IPoolable {
}
protected update(dt: number): void {
if (this._isHit) {
const pos = new Vec3();
const flySpeed = math.clamp(this._flySpeed * 10, 500, 1000);
Vec3.multiplyScalar(pos, this._flyDirection, flySpeed * dt);
this.node.worldPosition = this.node.getWorldPosition().add(pos);
const scale = new Vec3();
Vec3.multiplyScalar(scale, Vec3.ONE.clone(), 1.5 * dt);
this.node.scale = this.node.getScale().add(scale);
const rotSpeed = math.clamp(this._flySpeed * 50, 500, 2000);
this.node.angle += rotSpeed * dt;
this._sprite.color = this._sprite.color.clone().lerp(this._targetColor, 1 * dt);
if (this._sprite.color.a == 0) {
EventManger.instance.emit(GameEvent.ObjectRelease, this.node);
ObjectPool.release(this.node);
}
}
// if (this._isHit) {
// const pos = new Vec3();
// const flySpeed = math.clamp(this._flySpeed * 10, 500, 1000);
// Vec3.multiplyScalar(pos, this._flyDirection, flySpeed * dt);
// this.node.worldPosition = this.node.getWorldPosition().add(pos);
// const scale = new Vec3();
// Vec3.multiplyScalar(scale, Vec3.ONE.clone(), 1.5 * dt);
// this.node.scale = this.node.getScale().add(scale);
// const rotSpeed = math.clamp(this._flySpeed * 50, 500, 2000);
// this.node.angle += rotSpeed * dt;
// this._sprite.color = this._sprite.color.clone().lerp(this._targetColor, 1 * dt);
// if (this._sprite.color.a == 0) {
// EventManger.instance.emit(GameEvent.ObjectRelease, this.node);
// ObjectPool.release(this.node);
// }
// }
}
private onContactBegin(selfCollider: Collider2D, otherCollider: Collider2D) {
private async onContactBegin(selfCollider: Collider2D, otherCollider: Collider2D) {
if (this._isHit) return;
SoundManager.instance.playSfx(this._hitSound);
this._collider.enabled = false;
let center = this.node.getWorldPosition();
let other = otherCollider.node.getWorldPosition();
this._flyDirection = center.subtract(other);
this._flyDirection.normalize();
this._isHit = true;
this._targetColor = this._sprite.color.clone();
this._targetColor.a = 0;
this._flySpeed = otherCollider.getComponent(RigidBody2D).linearVelocity.length();
// let center = this.node.getWorldPosition();
// let other = otherCollider.node.getWorldPosition();
// this._flyDirection = center.subtract(other);
// this._flyDirection.normalize();
// this._isHit = true;
// this._targetColor = this._sprite.color.clone();
// this._targetColor.a = 0;
// this._flySpeed = otherCollider.getComponent(RigidBody2D).linearVelocity.length();
this.node.setSiblingIndex(this.node.parent.children.length - 1);
GameManager.instance.destroyEnvironmentObject(this._score, this.node.getWorldPosition(), this._bonusTime);
this._animation.play(this._animation.clips[1].name);
await Utilities.delay(this._animation.clips[1].duration);
EventManger.instance.emit(GameEvent.ObjectRelease, this.node);
ObjectPool.release(this.node);
}
public async onGet() {
this._spawnAnimation.play();
await Utilities.delay(this._spawnAnimation.defaultClip.duration);
this._animation.play(this._animation.clips[0].name);
await Utilities.delay(this._animation.clips[0].duration);
this._collider.enabled = true;
}

View File

@ -19,6 +19,8 @@ import {
CircleCollider2D,
Animation,
Sprite,
Node,
SpriteFrame,
} from 'cc';
import IPoolable from '../Pool/IPoolable';
import { SoundManager } from '../Manager/SoundManager';
@ -38,11 +40,6 @@ export class Ball extends Component implements IPoolable {
@property({ type: RigidBody2D, visible: true })
private _rigidBody: RigidBody2D;
@property({ type: Sprite, visible: true })
private _sprite: Sprite;
@property({ type: Sprite, visible: true })
private _spriteShadow: Sprite;
@property({ type: Animation, visible: true })
private _animation: Animation;
@property({ type: ParticleSystem, visible: true })
@ -50,10 +47,17 @@ export class Ball extends Component implements IPoolable {
@property({ type: ParticleSystem, visible: true })
private _buffParticle: ParticleSystem;
@property({ type: ParticleSystem, visible: true })
private _boosterParticle: ParticleSystem;
private _fireParticle: ParticleSystem;
@property({ type: CircleCollider2D, visible: true })
private _collider: CircleCollider2D;
@property({ type: Sprite, visible: true })
private _normalSprite: Sprite;
@property({ type: Sprite, visible: true })
private _cheeseModeSprite: Sprite;
@property({ type: Sprite, visible: true })
private _spriteShadow: Sprite;
@property({ type: AudioClip, visible: true })
private _hitSound: AudioClip;
@property({ type: AudioClip, visible: true })
@ -67,13 +71,14 @@ export class Ball extends Component implements IPoolable {
private _isJumping = false;
private _jumpTime: number;
private _jumpDuration: number;
private _parent: Node;
public eventHitObstacle = new EventTarget();
public eventGoal = new EventTarget();
public init(boosterActive: boolean) {
if (boosterActive) this._boosterParticle.play();
else this._boosterParticle.stop();
if (boosterActive) this._fireParticle.play();
else this._fireParticle.stop();
}
protected onLoad(): void {
@ -81,7 +86,7 @@ export class Ball extends Component implements IPoolable {
this._collider.on(Contact2DType.BEGIN_CONTACT, this.onBeginContact, this);
this._collider.on(Contact2DType.END_CONTACT, this.onEndContact, this);
}
director.on(Director.EVENT_AFTER_PHYSICS, this.setMaxVelocity, this);
director.on(Director.EVENT_AFTER_PHYSICS, this.afterPhysicUpdate, this);
this._impactPool = new ObjectPool(this._impactPrefab, 10, false);
EventManger.instance.on(GameEvent.BoosterActive, this.onBoosterActive, this);
@ -96,7 +101,8 @@ export class Ball extends Component implements IPoolable {
let scale = Vec3.ONE.clone();
const jumpValue = this._jumpCurve.evaluate(jumpProcess);
scale = scale.add(Vec3.ONE.clone().multiplyScalar(jumpValue));
this._sprite.node.setScale(scale);
this._normalSprite.node.setScale(scale);
this._cheeseModeSprite.node.setScale(scale);
this._spriteShadow.node.setScale(scale);
this._trail.trailModule.widthRatio.multiplier = scale.x;
this._spriteShadow.node.setWorldPosition(
@ -105,11 +111,13 @@ export class Ball extends Component implements IPoolable {
if (jumpProcess >= 1) {
this._spriteShadow.node.setPosition(Vec3.ZERO);
this._sprite.node.setScale(Vec3.ONE);
this._normalSprite.node.setScale(Vec3.ONE);
this._cheeseModeSprite.node.setScale(Vec3.ONE);
this._trail.trailModule.widthRatio.multiplier = 1;
this._isJumping = false;
this._collider.group = PhysicsGroup.BALL;
this._rigidBody.group = PhysicsGroup.BALL;
this.node.setParent(this._parent);
}
}
}
@ -150,15 +158,30 @@ export class Ball extends Component implements IPoolable {
}
private onBoosterActive() {
this._boosterParticle.play();
// this._fireParticle.play();
this._cheeseModeSprite.node.active = true;
this._normalSprite.node.active = false;
}
private onBoosterDisable() {
this._boosterParticle.stop();
// this._fireParticle.stop();
this._cheeseModeSprite.node.active = false;
this._normalSprite.node.active = true;
}
private setMaxVelocity() {
if (this._rigidBody.linearVelocity.length() > this._maxSpeed) {
private afterPhysicUpdate() {
let velocity = this._rigidBody.linearVelocity.length();
if (velocity > 30) {
if (this._fireParticle.isStopped) {
this._fireParticle.play();
}
} else {
if (this._fireParticle.isPlaying) {
this._fireParticle.stopEmitting();
}
}
if (velocity > this._maxSpeed) {
this._rigidBody.linearVelocity = this._rigidBody.linearVelocity.normalize().multiplyScalar(this._maxSpeed);
}
}
@ -193,6 +216,7 @@ export class Ball extends Component implements IPoolable {
this._isJumping = false;
this._isHit = false;
this._rigidBody.enabled = true;
this._parent = this.node.getParent();
}
onRelease() {

View File

@ -10,6 +10,7 @@ import {
Quat,
EPhysics2DDrawFlags,
PhysicsSystem2D,
SpriteFrame,
} from 'cc';
import ObjectPool from '../Pool/ObjectPool';
import { Ball } from '../GamePlay/Ball';
@ -66,6 +67,9 @@ export class GameManager extends Singleton<GameManager>() {
@property({ type: CCInteger, visible: true })
private readonly _timePlay = 120;
@property({ type: SpriteFrame, visible: true })
private _clockIcon: SpriteFrame;
@property({ type: AudioClip, visible: true })
private _boosterActiveSound: AudioClip;
@property({ type: AudioClip, visible: true })
@ -259,7 +263,7 @@ export class GameManager extends Singleton<GameManager>() {
if (bonusTime) {
this.addTime(bonusTime);
const floatingScore = this._FloatingScorePool.get(FloatingText, this._floatingTextContainer);
floatingScore.show(`+${bonusTime}`, position, 1.5);
floatingScore.show(`+${bonusTime}`, position, 1.5, 1, this._clockIcon);
}
}

View File

@ -0,0 +1,34 @@
import { _decorator, CCString, Component, Node, Sprite, SpriteFrame, tween, Vec3 } from 'cc';
import Singleton from '../Singleton';
const { ccclass, property } = _decorator;
@ccclass('Sticker')
class Sticker {
@property(CCString)
public Name: string = '';
@property(SpriteFrame)
public SpriteFrame: SpriteFrame;
}
@ccclass('StickerManager')
export class StickerManager extends Singleton<StickerManager>() {
@property({ type: Node, visible: true })
private _popup: Node;
@property({ type: Sticker, visible: true })
private _stickers: Sticker[] = [];
protected start(): void {
this._popup.setScale(Vec3.ZERO);
}
public Show(stickerName: string) {
let sticker = this._stickers.find((s) => s.Name == stickerName);
this._popup.getComponent(Sprite).spriteFrame = sticker.SpriteFrame;
tween(this._popup)
.set({ scale: Vec3.ZERO })
.to(0.3, { scale: Vec3.ONE }, { easing: 'backOut' })
.delay(0.5)
.to(0.2, { scale: Vec3.ZERO }, { easing: 'backIn' })
.start();
}
}

View File

@ -0,0 +1,9 @@
{
"ver": "4.0.23",
"importer": "typescript",
"imported": true,
"uuid": "e458e5d9-5c84-4408-a47d-974dd392042f",
"files": [],
"subMetas": {},
"userData": {}
}

View File

@ -0,0 +1,70 @@
import { _decorator, clamp01, Color, Component, Label, lerp, Node, Sprite, Tween, tween, Vec3 } from 'cc';
import { EventManger } from '../Manager/EventManger';
import GameEvent from '../Events/GameEvent';
import GameState from '../Enum/GameState';
import { GameManager } from '../Manager/GameManager';
const { ccclass, property } = _decorator;
@ccclass('TimeUI')
export class TimeUI extends Component {
@property({ type: Label, visible: true })
private _timeLabel: Label;
@property({ type: Sprite, visible: true })
private _fill: Sprite;
@property({ type: Node, visible: true })
private _timeIcon: Node;
private _gameTime: number = 1;
private _fillValue: number = 1;
start() {
EventManger.instance.on(GameEvent.GameStateChange, this.onGameStateChange, this);
EventManger.instance.on(GameEvent.TimeUpdate, this.onTimeUpdate, this);
EventManger.instance.on(GameEvent.WarningTime, this.onWarningTime, this);
this._gameTime = GameManager.instance.gameTime;
}
protected update(dt: number): void {
this._fill.fillRange = lerp(this._fill.fillRange, this._fillValue, dt);
}
private async onGameStateChange(state: GameState) {
switch (state) {
case GameState.Init:
break;
case GameState.Ready:
this._timeLabel.string = this._gameTime.toString();
break;
case GameState.Playing:
break;
case GameState.GameOver:
break;
case GameState.End:
break;
case GameState.Relive:
break;
}
}
private onTimeUpdate(time: number) {
this._timeLabel.string = time.toString();
this._fillValue = clamp01(time / this._gameTime);
}
private onWarningTime(warning: boolean) {
if (warning) {
this._fill.color = Color.RED;
tween(this._timeIcon)
.to(0.2, { scale: new Vec3(1.2, 1.2, 1.2) })
.to(0.2, { scale: Vec3.ONE })
.union()
.repeatForever()
.start();
this._timeLabel.color = Color.RED;
} else {
Tween.stopAllByTarget(this._timeIcon);
this._fill.color = Color.GREEN;
this._timeLabel.color = Color.WHITE;
}
}
}

View File

@ -0,0 +1,9 @@
{
"ver": "4.0.23",
"importer": "typescript",
"imported": true,
"uuid": "204c103b-d3b2-4f8d-8627-86a7ccbe45e3",
"files": [],
"subMetas": {},
"userData": {}
}

View File

@ -6,6 +6,7 @@ import GameState from '../Enum/GameState';
import { GameManager } from '../Manager/GameManager';
import BEConnector from '../API/BEConnector';
import Utilities from '../Utilities';
import { StickerManager } from '../Manager/StickerManager';
const { ccclass, property } = _decorator;
@ccclass('UIController')
@ -15,8 +16,6 @@ export class UIController extends Component {
@property({ type: Label, visible: true })
private _ticketLabel: Label;
@property({ type: Label, visible: true })
private _timeLabel: Label;
@property({ type: Label, visible: true })
private _eventLabel: Label;
@property({ type: ParticleSystem, visible: true })
@ -36,20 +35,18 @@ export class UIController extends Component {
EventManger.instance.on(GameEvent.MultiBall, this.onMultiBall, this);
EventManger.instance.on(GameEvent.BoosterActive, this.onBoosterActive, this);
EventManger.instance.on(GameEvent.BoosterDisable, this.onBoosterDisable, this);
EventManger.instance.on(GameEvent.TimeUpdate, this.onTimeUpdate, this);
EventManger.instance.on(GameEvent.WarningTime, this.onWarningTime, this);
this._eventLabel.string = '';
}
private async onScore(score: number, points: number, type: ScoreType) {
this._scoreLabel.string = score.toString();
if (type == ScoreType.Goal) {
this.showEventLabel('GOAL!!!');
StickerManager.instance.Show('Goal');
}
}
private onBallOut() {
this.showEventLabel('BALL OUT!!!', new Color('#ed3a18'), Color.WHITE);
StickerManager.instance.Show('BallOut');
}
private showEventLabel(string: string, color?: Color, outLineColor?: Color) {
@ -76,14 +73,6 @@ export class UIController extends Component {
.start();
}
private onWarningTime(warning: boolean) {
if (warning) {
this._timeLabel.color = Color.RED;
} else {
this._timeLabel.color = Color.WHITE;
}
}
private async onGameStateChange(state: GameState) {
switch (state) {
case GameState.Init:
@ -92,7 +81,6 @@ export class UIController extends Component {
this._scoreLabel.string = '0';
break;
case GameState.Ready:
this._timeLabel.string = GameManager.instance.gameTime.toString();
this._controlPanel.active = true;
this._startPanel.active = false;
break;
@ -139,10 +127,6 @@ export class UIController extends Component {
GameManager.instance.Ready();
}
private onTimeUpdate(time: number) {
this._timeLabel.string = time.toString();
}
// private secondsToTime(second: number) {
// const m = Math.floor((second - (second % 60)) / 60)
// .toString()

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

View File

@ -11,7 +11,7 @@
"6c48a": {
"importer": "texture",
"uuid": "461cbbbe-573a-4553-9ddc-f8723c11206a@6c48a",
"displayName": "Ball",
"displayName": "Cheese",
"id": "6c48a",
"name": "texture",
"userData": {
@ -35,7 +35,7 @@
"f9941": {
"importer": "sprite-frame",
"uuid": "461cbbbe-573a-4553-9ddc-f8723c11206a@f9941",
"displayName": "Ball",
"displayName": "Cheese",
"id": "f9941",
"name": "spriteFrame",
"userData": {
@ -46,10 +46,10 @@
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 104,
"height": 87,
"rawWidth": 104,
"rawHeight": 87,
"width": 192,
"height": 162,
"rawWidth": 192,
"rawHeight": 162,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
@ -61,17 +61,17 @@
"meshType": 0,
"vertices": {
"rawPosition": [
-52,
-43.5,
-96,
-81,
0,
52,
-43.5,
96,
-81,
0,
-52,
43.5,
-96,
81,
0,
52,
43.5,
96,
81,
0
],
"indexes": [
@ -84,12 +84,12 @@
],
"uv": [
0,
87,
104,
87,
162,
192,
162,
0,
0,
104,
192,
0
],
"nuv": [
@ -103,13 +103,13 @@
1
],
"minPos": [
-52,
-43.5,
-96,
-81,
0
],
"maxPos": [
52,
43.5,
96,
81,
0
]
},

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

View File

@ -0,0 +1,134 @@
{
"ver": "1.0.25",
"importer": "image",
"imported": true,
"uuid": "f7bd5166-9d5f-4d43-a3d3-58ae9a4957fc",
"files": [
".json",
".png"
],
"subMetas": {
"6c48a": {
"importer": "texture",
"uuid": "f7bd5166-9d5f-4d43-a3d3-58ae9a4957fc@6c48a",
"displayName": "Clock",
"id": "6c48a",
"name": "texture",
"userData": {
"wrapModeS": "clamp-to-edge",
"wrapModeT": "clamp-to-edge",
"imageUuidOrDatabaseUri": "f7bd5166-9d5f-4d43-a3d3-58ae9a4957fc",
"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": "f7bd5166-9d5f-4d43-a3d3-58ae9a4957fc@f9941",
"displayName": "Clock",
"id": "f9941",
"name": "spriteFrame",
"userData": {
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 209,
"height": 187,
"rawWidth": 209,
"rawHeight": 187,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"packable": true,
"pixelsToUnit": 100,
"pivotX": 0.5,
"pivotY": 0.5,
"meshType": 0,
"vertices": {
"rawPosition": [
-104.5,
-93.5,
0,
104.5,
-93.5,
0,
-104.5,
93.5,
0,
104.5,
93.5,
0
],
"indexes": [
0,
1,
2,
2,
1,
3
],
"uv": [
0,
187,
209,
187,
0,
0,
209,
0
],
"nuv": [
0,
0,
1,
0,
0,
1,
1,
1
],
"minPos": [
-104.5,
-93.5,
0
],
"maxPos": [
104.5,
93.5,
0
]
},
"isUuid": true,
"imageUuidOrDatabaseUri": "f7bd5166-9d5f-4d43-a3d3-58ae9a4957fc@6c48a",
"atlasUuid": ""
},
"ver": "1.0.11",
"imported": true,
"files": [
".json"
],
"subMetas": {}
}
},
"userData": {
"type": "sprite-frame",
"fixAlphaTransparencyArtifacts": true,
"hasAlpha": true,
"redirect": "f7bd5166-9d5f-4d43-a3d3-58ae9a4957fc@f9941"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 254 KiB

After

Width:  |  Height:  |  Size: 321 KiB

View File

@ -2,7 +2,7 @@
"ver": "1.0.25",
"importer": "image",
"imported": true,
"uuid": "0ffdff5a-9c60-4fcf-9bdd-dade41c36f17",
"uuid": "60efe140-bd6a-42c0-a752-5e1af95d1d68",
"files": [
".json",
".png"
@ -10,14 +10,14 @@
"subMetas": {
"6c48a": {
"importer": "texture",
"uuid": "0ffdff5a-9c60-4fcf-9bdd-dade41c36f17@6c48a",
"uuid": "60efe140-bd6a-42c0-a752-5e1af95d1d68@6c48a",
"displayName": "GoalSticker",
"id": "6c48a",
"name": "texture",
"userData": {
"wrapModeS": "clamp-to-edge",
"wrapModeT": "clamp-to-edge",
"imageUuidOrDatabaseUri": "0ffdff5a-9c60-4fcf-9bdd-dade41c36f17",
"imageUuidOrDatabaseUri": "60efe140-bd6a-42c0-a752-5e1af95d1d68",
"isUuid": true,
"visible": false,
"minfilter": "linear",
@ -34,7 +34,7 @@
},
"f9941": {
"importer": "sprite-frame",
"uuid": "0ffdff5a-9c60-4fcf-9bdd-dade41c36f17@f9941",
"uuid": "60efe140-bd6a-42c0-a752-5e1af95d1d68@f9941",
"displayName": "GoalSticker",
"id": "f9941",
"name": "spriteFrame",
@ -46,10 +46,10 @@
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 1085,
"height": 777,
"rawWidth": 1085,
"rawHeight": 777,
"width": 1133,
"height": 727,
"rawWidth": 1133,
"rawHeight": 727,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
@ -61,17 +61,17 @@
"meshType": 0,
"vertices": {
"rawPosition": [
-542.5,
-388.5,
-566.5,
-363.5,
0,
542.5,
-388.5,
566.5,
-363.5,
0,
-542.5,
388.5,
-566.5,
363.5,
0,
542.5,
388.5,
566.5,
363.5,
0
],
"indexes": [
@ -84,12 +84,12 @@
],
"uv": [
0,
777,
1085,
777,
727,
1133,
727,
0,
0,
1085,
1133,
0
],
"nuv": [
@ -103,18 +103,18 @@
1
],
"minPos": [
-542.5,
-388.5,
-566.5,
-363.5,
0
],
"maxPos": [
542.5,
388.5,
566.5,
363.5,
0
]
},
"isUuid": true,
"imageUuidOrDatabaseUri": "0ffdff5a-9c60-4fcf-9bdd-dade41c36f17@6c48a",
"imageUuidOrDatabaseUri": "60efe140-bd6a-42c0-a752-5e1af95d1d68@6c48a",
"atlasUuid": ""
},
"ver": "1.0.11",
@ -129,6 +129,6 @@
"type": "sprite-frame",
"fixAlphaTransparencyArtifacts": true,
"hasAlpha": true,
"redirect": "0ffdff5a-9c60-4fcf-9bdd-dade41c36f17@f9941"
"redirect": "60efe140-bd6a-42c0-a752-5e1af95d1d68@f9941"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 823 B

View File

@ -46,9 +46,9 @@
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 105,
"width": 87,
"height": 94,
"rawWidth": 105,
"rawWidth": 87,
"rawHeight": 94,
"borderTop": 0,
"borderBottom": 0,
@ -61,16 +61,16 @@
"meshType": 0,
"vertices": {
"rawPosition": [
-52.5,
-43.5,
-47,
0,
52.5,
43.5,
-47,
0,
-52.5,
-43.5,
47,
0,
52.5,
43.5,
47,
0
],
@ -85,11 +85,11 @@
"uv": [
0,
94,
105,
87,
94,
0,
0,
105,
87,
0
],
"nuv": [
@ -103,12 +103,12 @@
1
],
"minPos": [
-52.5,
-43.5,
-47,
0
],
"maxPos": [
52.5,
43.5,
47,
0
]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 321 KiB

After

Width:  |  Height:  |  Size: 254 KiB

View File

@ -2,7 +2,7 @@
"ver": "1.0.25",
"importer": "image",
"imported": true,
"uuid": "60efe140-bd6a-42c0-a752-5e1af95d1d68",
"uuid": "0ffdff5a-9c60-4fcf-9bdd-dade41c36f17",
"files": [
".json",
".png"
@ -10,14 +10,14 @@
"subMetas": {
"6c48a": {
"importer": "texture",
"uuid": "60efe140-bd6a-42c0-a752-5e1af95d1d68@6c48a",
"displayName": "ballOutSticker",
"uuid": "0ffdff5a-9c60-4fcf-9bdd-dade41c36f17@6c48a",
"displayName": "BallOutSticker",
"id": "6c48a",
"name": "texture",
"userData": {
"wrapModeS": "clamp-to-edge",
"wrapModeT": "clamp-to-edge",
"imageUuidOrDatabaseUri": "60efe140-bd6a-42c0-a752-5e1af95d1d68",
"imageUuidOrDatabaseUri": "0ffdff5a-9c60-4fcf-9bdd-dade41c36f17",
"isUuid": true,
"visible": false,
"minfilter": "linear",
@ -34,8 +34,8 @@
},
"f9941": {
"importer": "sprite-frame",
"uuid": "60efe140-bd6a-42c0-a752-5e1af95d1d68@f9941",
"displayName": "ballOutSticker",
"uuid": "0ffdff5a-9c60-4fcf-9bdd-dade41c36f17@f9941",
"displayName": "BallOutSticker",
"id": "f9941",
"name": "spriteFrame",
"userData": {
@ -46,10 +46,10 @@
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 1133,
"height": 727,
"rawWidth": 1133,
"rawHeight": 727,
"width": 1085,
"height": 777,
"rawWidth": 1085,
"rawHeight": 777,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
@ -61,17 +61,17 @@
"meshType": 0,
"vertices": {
"rawPosition": [
-566.5,
-363.5,
-542.5,
-388.5,
0,
566.5,
-363.5,
542.5,
-388.5,
0,
-566.5,
363.5,
-542.5,
388.5,
0,
566.5,
363.5,
542.5,
388.5,
0
],
"indexes": [
@ -84,12 +84,12 @@
],
"uv": [
0,
727,
1133,
727,
777,
1085,
777,
0,
0,
1133,
1085,
0
],
"nuv": [
@ -103,18 +103,18 @@
1
],
"minPos": [
-566.5,
-363.5,
-542.5,
-388.5,
0
],
"maxPos": [
566.5,
363.5,
542.5,
388.5,
0
]
},
"isUuid": true,
"imageUuidOrDatabaseUri": "60efe140-bd6a-42c0-a752-5e1af95d1d68@6c48a",
"imageUuidOrDatabaseUri": "0ffdff5a-9c60-4fcf-9bdd-dade41c36f17@6c48a",
"atlasUuid": ""
},
"ver": "1.0.11",
@ -129,6 +129,6 @@
"type": "sprite-frame",
"fixAlphaTransparencyArtifacts": true,
"hasAlpha": true,
"redirect": "60efe140-bd6a-42c0-a752-5e1af95d1d68@f9941"
"redirect": "0ffdff5a-9c60-4fcf-9bdd-dade41c36f17@f9941"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 599 B

View File

@ -0,0 +1,134 @@
{
"ver": "1.0.25",
"importer": "image",
"imported": true,
"uuid": "e7dd55f7-a185-4fd6-a4bd-231c78e847a6",
"files": [
".json",
".png"
],
"subMetas": {
"6c48a": {
"importer": "texture",
"uuid": "e7dd55f7-a185-4fd6-a4bd-231c78e847a6@6c48a",
"displayName": "frame",
"id": "6c48a",
"name": "texture",
"userData": {
"wrapModeS": "clamp-to-edge",
"wrapModeT": "clamp-to-edge",
"imageUuidOrDatabaseUri": "e7dd55f7-a185-4fd6-a4bd-231c78e847a6",
"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": "e7dd55f7-a185-4fd6-a4bd-231c78e847a6@f9941",
"displayName": "frame",
"id": "f9941",
"name": "spriteFrame",
"userData": {
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 179,
"height": 57,
"rawWidth": 179,
"rawHeight": 57,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"packable": true,
"pixelsToUnit": 100,
"pivotX": 0.5,
"pivotY": 0.5,
"meshType": 0,
"vertices": {
"rawPosition": [
-89.5,
-28.5,
0,
89.5,
-28.5,
0,
-89.5,
28.5,
0,
89.5,
28.5,
0
],
"indexes": [
0,
1,
2,
2,
1,
3
],
"uv": [
0,
57,
179,
57,
0,
0,
179,
0
],
"nuv": [
0,
0,
1,
0,
0,
1,
1,
1
],
"minPos": [
-89.5,
-28.5,
0
],
"maxPos": [
89.5,
28.5,
0
]
},
"isUuid": true,
"imageUuidOrDatabaseUri": "e7dd55f7-a185-4fd6-a4bd-231c78e847a6@6c48a",
"atlasUuid": ""
},
"ver": "1.0.11",
"imported": true,
"files": [
".json"
],
"subMetas": {}
}
},
"userData": {
"type": "sprite-frame",
"fixAlphaTransparencyArtifacts": true,
"hasAlpha": true,
"redirect": "e7dd55f7-a185-4fd6-a4bd-231c78e847a6@f9941"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

View File

@ -0,0 +1,134 @@
{
"ver": "1.0.25",
"importer": "image",
"imported": true,
"uuid": "9ee91187-4a22-43fa-a206-efe1950b9276",
"files": [
".json",
".png"
],
"subMetas": {
"6c48a": {
"importer": "texture",
"uuid": "9ee91187-4a22-43fa-a206-efe1950b9276@6c48a",
"displayName": "carrot_hit_0",
"id": "6c48a",
"name": "texture",
"userData": {
"wrapModeS": "clamp-to-edge",
"wrapModeT": "clamp-to-edge",
"imageUuidOrDatabaseUri": "9ee91187-4a22-43fa-a206-efe1950b9276",
"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": "9ee91187-4a22-43fa-a206-efe1950b9276@f9941",
"displayName": "carrot_hit_0",
"id": "f9941",
"name": "spriteFrame",
"userData": {
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": -1,
"offsetY": -0.5,
"trimX": 23,
"trimY": 30,
"width": 125,
"height": 190,
"rawWidth": 173,
"rawHeight": 249,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"packable": true,
"pixelsToUnit": 100,
"pivotX": 0.5,
"pivotY": 0.5,
"meshType": 0,
"vertices": {
"rawPosition": [
-62.5,
-95,
0,
62.5,
-95,
0,
-62.5,
95,
0,
62.5,
95,
0
],
"indexes": [
0,
1,
2,
2,
1,
3
],
"uv": [
23,
219,
148,
219,
23,
29,
148,
29
],
"nuv": [
0.1329479768786127,
0.11646586345381527,
0.8554913294797688,
0.11646586345381527,
0.1329479768786127,
0.8795180722891566,
0.8554913294797688,
0.8795180722891566
],
"minPos": [
-62.5,
-95,
0
],
"maxPos": [
62.5,
95,
0
]
},
"isUuid": true,
"imageUuidOrDatabaseUri": "9ee91187-4a22-43fa-a206-efe1950b9276@6c48a",
"atlasUuid": ""
},
"ver": "1.0.11",
"imported": true,
"files": [
".json"
],
"subMetas": {}
}
},
"userData": {
"type": "sprite-frame",
"fixAlphaTransparencyArtifacts": true,
"hasAlpha": true,
"redirect": "9ee91187-4a22-43fa-a206-efe1950b9276@f9941"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

View File

@ -0,0 +1,134 @@
{
"ver": "1.0.25",
"importer": "image",
"imported": true,
"uuid": "57be4203-17e7-49dc-a74c-e8875e8f8ae8",
"files": [
".json",
".png"
],
"subMetas": {
"6c48a": {
"importer": "texture",
"uuid": "57be4203-17e7-49dc-a74c-e8875e8f8ae8@6c48a",
"displayName": "carrot_hit_1",
"id": "6c48a",
"name": "texture",
"userData": {
"wrapModeS": "clamp-to-edge",
"wrapModeT": "clamp-to-edge",
"imageUuidOrDatabaseUri": "57be4203-17e7-49dc-a74c-e8875e8f8ae8",
"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": "57be4203-17e7-49dc-a74c-e8875e8f8ae8@f9941",
"displayName": "carrot_hit_1",
"id": "f9941",
"name": "spriteFrame",
"userData": {
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 1,
"offsetY": 0,
"trimX": 22,
"trimY": 24,
"width": 131,
"height": 201,
"rawWidth": 173,
"rawHeight": 249,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"packable": true,
"pixelsToUnit": 100,
"pivotX": 0.5,
"pivotY": 0.5,
"meshType": 0,
"vertices": {
"rawPosition": [
-65.5,
-100.5,
0,
65.5,
-100.5,
0,
-65.5,
100.5,
0,
65.5,
100.5,
0
],
"indexes": [
0,
1,
2,
2,
1,
3
],
"uv": [
22,
225,
153,
225,
22,
24,
153,
24
],
"nuv": [
0.12716763005780346,
0.0963855421686747,
0.884393063583815,
0.0963855421686747,
0.12716763005780346,
0.9036144578313253,
0.884393063583815,
0.9036144578313253
],
"minPos": [
-65.5,
-100.5,
0
],
"maxPos": [
65.5,
100.5,
0
]
},
"isUuid": true,
"imageUuidOrDatabaseUri": "57be4203-17e7-49dc-a74c-e8875e8f8ae8@6c48a",
"atlasUuid": ""
},
"ver": "1.0.11",
"imported": true,
"files": [
".json"
],
"subMetas": {}
}
},
"userData": {
"type": "sprite-frame",
"fixAlphaTransparencyArtifacts": true,
"hasAlpha": true,
"redirect": "57be4203-17e7-49dc-a74c-e8875e8f8ae8@f9941"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

View File

@ -0,0 +1,134 @@
{
"ver": "1.0.25",
"importer": "image",
"imported": true,
"uuid": "dbd7f56a-271d-45f1-83dd-c60d41aa3bc6",
"files": [
".json",
".png"
],
"subMetas": {
"6c48a": {
"importer": "texture",
"uuid": "dbd7f56a-271d-45f1-83dd-c60d41aa3bc6@6c48a",
"displayName": "carrot_hit_2",
"id": "6c48a",
"name": "texture",
"userData": {
"wrapModeS": "clamp-to-edge",
"wrapModeT": "clamp-to-edge",
"imageUuidOrDatabaseUri": "dbd7f56a-271d-45f1-83dd-c60d41aa3bc6",
"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": "dbd7f56a-271d-45f1-83dd-c60d41aa3bc6@f9941",
"displayName": "carrot_hit_2",
"id": "f9941",
"name": "spriteFrame",
"userData": {
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 2,
"offsetY": 1,
"trimX": 16,
"trimY": 14,
"width": 145,
"height": 219,
"rawWidth": 173,
"rawHeight": 249,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"packable": true,
"pixelsToUnit": 100,
"pivotX": 0.5,
"pivotY": 0.5,
"meshType": 0,
"vertices": {
"rawPosition": [
-72.5,
-109.5,
0,
72.5,
-109.5,
0,
-72.5,
109.5,
0,
72.5,
109.5,
0
],
"indexes": [
0,
1,
2,
2,
1,
3
],
"uv": [
16,
235,
161,
235,
16,
16,
161,
16
],
"nuv": [
0.09248554913294797,
0.0642570281124498,
0.930635838150289,
0.0642570281124498,
0.09248554913294797,
0.9437751004016064,
0.930635838150289,
0.9437751004016064
],
"minPos": [
-72.5,
-109.5,
0
],
"maxPos": [
72.5,
109.5,
0
]
},
"isUuid": true,
"imageUuidOrDatabaseUri": "dbd7f56a-271d-45f1-83dd-c60d41aa3bc6@6c48a",
"atlasUuid": ""
},
"ver": "1.0.11",
"imported": true,
"files": [
".json"
],
"subMetas": {}
}
},
"userData": {
"type": "sprite-frame",
"fixAlphaTransparencyArtifacts": true,
"hasAlpha": true,
"redirect": "dbd7f56a-271d-45f1-83dd-c60d41aa3bc6@f9941"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

View File

@ -0,0 +1,134 @@
{
"ver": "1.0.25",
"importer": "image",
"imported": true,
"uuid": "7a0eb58b-88db-4a68-8477-b7307d6de50e",
"files": [
".json",
".png"
],
"subMetas": {
"6c48a": {
"importer": "texture",
"uuid": "7a0eb58b-88db-4a68-8477-b7307d6de50e@6c48a",
"displayName": "carrot_hit_3",
"id": "6c48a",
"name": "texture",
"userData": {
"wrapModeS": "clamp-to-edge",
"wrapModeT": "clamp-to-edge",
"imageUuidOrDatabaseUri": "7a0eb58b-88db-4a68-8477-b7307d6de50e",
"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": "7a0eb58b-88db-4a68-8477-b7307d6de50e@f9941",
"displayName": "carrot_hit_3",
"id": "f9941",
"name": "spriteFrame",
"userData": {
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 1.5,
"offsetY": 1,
"trimX": 10,
"trimY": 6,
"width": 156,
"height": 235,
"rawWidth": 173,
"rawHeight": 249,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"packable": true,
"pixelsToUnit": 100,
"pivotX": 0.5,
"pivotY": 0.5,
"meshType": 0,
"vertices": {
"rawPosition": [
-78,
-117.5,
0,
78,
-117.5,
0,
-78,
117.5,
0,
78,
117.5,
0
],
"indexes": [
0,
1,
2,
2,
1,
3
],
"uv": [
10,
243,
166,
243,
10,
8,
166,
8
],
"nuv": [
0.057803468208092484,
0.0321285140562249,
0.9595375722543352,
0.0321285140562249,
0.057803468208092484,
0.9759036144578314,
0.9595375722543352,
0.9759036144578314
],
"minPos": [
-78,
-117.5,
0
],
"maxPos": [
78,
117.5,
0
]
},
"isUuid": true,
"imageUuidOrDatabaseUri": "7a0eb58b-88db-4a68-8477-b7307d6de50e@6c48a",
"atlasUuid": ""
},
"ver": "1.0.11",
"imported": true,
"files": [
".json"
],
"subMetas": {}
}
},
"userData": {
"type": "sprite-frame",
"fixAlphaTransparencyArtifacts": true,
"hasAlpha": true,
"redirect": "7a0eb58b-88db-4a68-8477-b7307d6de50e@f9941"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

View File

@ -0,0 +1,134 @@
{
"ver": "1.0.25",
"importer": "image",
"imported": true,
"uuid": "7d0e0930-d11d-4999-9f4f-5677a4ed53e6",
"files": [
".json",
".png"
],
"subMetas": {
"6c48a": {
"importer": "texture",
"uuid": "7d0e0930-d11d-4999-9f4f-5677a4ed53e6@6c48a",
"displayName": "carrot_hit_4",
"id": "6c48a",
"name": "texture",
"userData": {
"wrapModeS": "clamp-to-edge",
"wrapModeT": "clamp-to-edge",
"imageUuidOrDatabaseUri": "7d0e0930-d11d-4999-9f4f-5677a4ed53e6",
"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": "7d0e0930-d11d-4999-9f4f-5677a4ed53e6@f9941",
"displayName": "carrot_hit_4",
"id": "f9941",
"name": "spriteFrame",
"userData": {
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": -0.5,
"offsetY": 0,
"trimX": 3,
"trimY": 2,
"width": 166,
"height": 245,
"rawWidth": 173,
"rawHeight": 249,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"packable": true,
"pixelsToUnit": 100,
"pivotX": 0.5,
"pivotY": 0.5,
"meshType": 0,
"vertices": {
"rawPosition": [
-83,
-122.5,
0,
83,
-122.5,
0,
-83,
122.5,
0,
83,
122.5,
0
],
"indexes": [
0,
1,
2,
2,
1,
3
],
"uv": [
3,
247,
169,
247,
3,
2,
169,
2
],
"nuv": [
0.017341040462427744,
0.008032128514056224,
0.976878612716763,
0.008032128514056224,
0.017341040462427744,
0.9919678714859438,
0.976878612716763,
0.9919678714859438
],
"minPos": [
-83,
-122.5,
0
],
"maxPos": [
83,
122.5,
0
]
},
"isUuid": true,
"imageUuidOrDatabaseUri": "7d0e0930-d11d-4999-9f4f-5677a4ed53e6@6c48a",
"atlasUuid": ""
},
"ver": "1.0.11",
"imported": true,
"files": [
".json"
],
"subMetas": {}
}
},
"userData": {
"type": "sprite-frame",
"fixAlphaTransparencyArtifacts": true,
"hasAlpha": true,
"redirect": "7d0e0930-d11d-4999-9f4f-5677a4ed53e6@f9941"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 534 B

View File

@ -0,0 +1,134 @@
{
"ver": "1.0.25",
"importer": "image",
"imported": true,
"uuid": "9ffbdde2-d0c8-4a3c-864e-7f9bcacb626e",
"files": [
".json",
".png"
],
"subMetas": {
"6c48a": {
"importer": "texture",
"uuid": "9ffbdde2-d0c8-4a3c-864e-7f9bcacb626e@6c48a",
"displayName": "carrot_hit_5",
"id": "6c48a",
"name": "texture",
"userData": {
"wrapModeS": "clamp-to-edge",
"wrapModeT": "clamp-to-edge",
"imageUuidOrDatabaseUri": "9ffbdde2-d0c8-4a3c-864e-7f9bcacb626e",
"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": "9ffbdde2-d0c8-4a3c-864e-7f9bcacb626e@f9941",
"displayName": "carrot_hit_5",
"id": "f9941",
"name": "spriteFrame",
"userData": {
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 86,
"offsetY": -124,
"trimX": 172,
"trimY": 248,
"width": 1,
"height": 1,
"rawWidth": 173,
"rawHeight": 249,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"packable": true,
"pixelsToUnit": 100,
"pivotX": 0.5,
"pivotY": 0.5,
"meshType": 0,
"vertices": {
"rawPosition": [
-0.5,
-0.5,
0,
0.5,
-0.5,
0,
-0.5,
0.5,
0,
0.5,
0.5,
0
],
"indexes": [
0,
1,
2,
2,
1,
3
],
"uv": [
172,
1,
173,
1,
172,
0,
173,
0
],
"nuv": [
0.9942196531791907,
0,
1,
0,
0.9942196531791907,
0.004016064257028112,
1,
0.004016064257028112
],
"minPos": [
-0.5,
-0.5,
0
],
"maxPos": [
0.5,
0.5,
0
]
},
"isUuid": true,
"imageUuidOrDatabaseUri": "9ffbdde2-d0c8-4a3c-864e-7f9bcacb626e@6c48a",
"atlasUuid": ""
},
"ver": "1.0.11",
"imported": true,
"files": [
".json"
],
"subMetas": {}
}
},
"userData": {
"type": "sprite-frame",
"fixAlphaTransparencyArtifacts": true,
"hasAlpha": true,
"redirect": "9ffbdde2-d0c8-4a3c-864e-7f9bcacb626e@f9941"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

View File

@ -0,0 +1,134 @@
{
"ver": "1.0.25",
"importer": "image",
"imported": true,
"uuid": "72aace05-0b42-46a9-a016-ee05620fc08a",
"files": [
".json",
".png"
],
"subMetas": {
"6c48a": {
"importer": "texture",
"uuid": "72aace05-0b42-46a9-a016-ee05620fc08a@6c48a",
"displayName": "Rabbit",
"id": "6c48a",
"name": "texture",
"userData": {
"wrapModeS": "clamp-to-edge",
"wrapModeT": "clamp-to-edge",
"imageUuidOrDatabaseUri": "72aace05-0b42-46a9-a016-ee05620fc08a",
"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": "72aace05-0b42-46a9-a016-ee05620fc08a@f9941",
"displayName": "Rabbit",
"id": "f9941",
"name": "spriteFrame",
"userData": {
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 202,
"height": 213,
"rawWidth": 202,
"rawHeight": 213,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"packable": true,
"pixelsToUnit": 100,
"pivotX": 0.5,
"pivotY": 0.5,
"meshType": 0,
"vertices": {
"rawPosition": [
-101,
-106.5,
0,
101,
-106.5,
0,
-101,
106.5,
0,
101,
106.5,
0
],
"indexes": [
0,
1,
2,
2,
1,
3
],
"uv": [
0,
213,
202,
213,
0,
0,
202,
0
],
"nuv": [
0,
0,
1,
0,
0,
1,
1,
1
],
"minPos": [
-101,
-106.5,
0
],
"maxPos": [
101,
106.5,
0
]
},
"isUuid": true,
"imageUuidOrDatabaseUri": "72aace05-0b42-46a9-a016-ee05620fc08a@6c48a",
"atlasUuid": ""
},
"ver": "1.0.11",
"imported": true,
"files": [
".json"
],
"subMetas": {}
}
},
"userData": {
"type": "sprite-frame",
"fixAlphaTransparencyArtifacts": true,
"hasAlpha": true,
"redirect": "72aace05-0b42-46a9-a016-ee05620fc08a@f9941"
}
}