Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
D
dantiao-lanqiu-v2
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
廖洪发
dantiao-lanqiu-v2
Commits
ac20a2a0
Commit
ac20a2a0
authored
Aug 15, 2026
by
liaohongfa
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix(玩法): 调整判定与平衡参数
- 提高点击与甩动阈值,放宽进球判定范围 - 降低完美出手门槛,调整盖帽与干扰概率 - 优化场景组件布局与相机参数
parent
c66d9c92
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
599 additions
and
27 deletions
+599
-27
main.scene
assets/scenes/main.scene
+33
-18
test.scene
assets/scenes/test.scene
+523
-0
test.scene.meta
assets/scenes/test.scene.meta
+11
-0
InputManager.ts
assets/scripts/InputManager.ts
+1
-1
MatchManager.ts
assets/scripts/MatchManager.ts
+8
-8
cocos-service.json
settings/v2/packages/cocos-service.json
+23
-0
No files found.
assets/scenes/main.scene
View file @
ac20a2a0
...
@@ -52,7 +52,7 @@
...
@@ -52,7 +52,7 @@
},
},
"autoReleaseAssets": false,
"autoReleaseAssets": false,
"_globals": {
"_globals": {
"__id__": 1
3
"__id__": 1
4
},
},
"_id": "9a8b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d"
"_id": "9a8b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d"
},
},
...
@@ -69,14 +69,11 @@
...
@@ -69,14 +69,11 @@
"__id__": 3
"__id__": 3
},
},
{
{
"__id__":
6
"__id__":
7
}
}
],
],
"_active": true,
"_active": true,
"_components": [
"_components": [
{
"__id__": 8
},
{
{
"__id__": 9
"__id__": 9
},
},
...
@@ -88,13 +85,16 @@
...
@@ -88,13 +85,16 @@
},
},
{
{
"__id__": 12
"__id__": 12
},
{
"__id__": 13
}
}
],
],
"_prefab": null,
"_prefab": null,
"_lpos": {
"_lpos": {
"__type__": "cc.Vec3",
"__type__": "cc.Vec3",
"x": 400,
"x": 400,
"y": 225
.00000000000003
,
"y": 225,
"z": 0
"z": 0
},
},
"_lrot": {
"_lrot": {
...
@@ -136,6 +136,9 @@
...
@@ -136,6 +136,9 @@
},
},
{
{
"__id__": 5
"__id__": 5
},
{
"__id__": 6
}
}
],
],
"_prefab": null,
"_prefab": null,
...
@@ -182,7 +185,7 @@
...
@@ -182,7 +185,7 @@
"_priority": 0,
"_priority": 0,
"_fov": 45,
"_fov": 45,
"_fovAxis": 0,
"_fovAxis": 0,
"_orthoHeight": 2
78.448275862069
,
"_orthoHeight": 2
69.7286012526096
,
"_near": 0,
"_near": 0,
"_far": 1000,
"_far": 1000,
"_color": {
"_color": {
...
@@ -226,6 +229,18 @@
...
@@ -226,6 +229,18 @@
"__prefab": null,
"__prefab": null,
"_id": "0dgsetQiJIPKtz9Y1fmLvB"
"_id": "0dgsetQiJIPKtz9Y1fmLvB"
},
},
{
"__type__": "8f2a1s8TV5veoucDR4vOktc",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 3
},
"_enabled": true,
"__prefab": null,
"_id": "30ZyRvyGNBHKM8J8Y89Dac"
},
{
{
"__type__": "cc.Node",
"__type__": "cc.Node",
"_name": "GameRoot",
"_name": "GameRoot",
...
@@ -238,7 +253,7 @@
...
@@ -238,7 +253,7 @@
"_active": true,
"_active": true,
"_components": [
"_components": [
{
{
"__id__":
7
"__id__":
8
}
}
],
],
"_prefab": null,
"_prefab": null,
...
@@ -277,7 +292,7 @@
...
@@ -277,7 +292,7 @@
"_objFlags": 0,
"_objFlags": 0,
"__editorExtras__": {},
"__editorExtras__": {},
"node": {
"node": {
"__id__":
6
"__id__":
7
},
},
"_enabled": true,
"_enabled": true,
"__prefab": null,
"__prefab": null,
...
@@ -312,7 +327,7 @@
...
@@ -312,7 +327,7 @@
"_contentSize": {
"_contentSize": {
"__type__": "cc.Size",
"__type__": "cc.Size",
"width": 800,
"width": 800,
"height": 450
.00000000000006
"height": 450
},
},
"_anchorPoint": {
"_anchorPoint": {
"__type__": "cc.Vec2",
"__type__": "cc.Vec2",
...
@@ -381,28 +396,28 @@
...
@@ -381,28 +396,28 @@
{
{
"__type__": "cc.SceneGlobals",
"__type__": "cc.SceneGlobals",
"ambient": {
"ambient": {
"__id__": 1
4
"__id__": 1
5
},
},
"shadows": {
"shadows": {
"__id__": 1
5
"__id__": 1
6
},
},
"_skybox": {
"_skybox": {
"__id__": 1
6
"__id__": 1
7
},
},
"fog": {
"fog": {
"__id__": 1
7
"__id__": 1
8
},
},
"octree": {
"octree": {
"__id__": 1
8
"__id__": 1
9
},
},
"skin": {
"skin": {
"__id__":
19
"__id__":
20
},
},
"lightProbeInfo": {
"lightProbeInfo": {
"__id__": 2
0
"__id__": 2
1
},
},
"postSettings": {
"postSettings": {
"__id__": 2
1
"__id__": 2
2
},
},
"bakedWithStationaryMainLight": false,
"bakedWithStationaryMainLight": false,
"bakedWithHighpLightmap": false
"bakedWithHighpLightmap": false
...
...
assets/scenes/test.scene
0 → 100644
View file @
ac20a2a0
[
{
"__type__": "cc.SceneAsset",
"_name": "test",
"_objFlags": 0,
"__editorExtras__": {},
"_native": "",
"scene": {
"__id__": 1
}
},
{
"__type__": "cc.Scene",
"_name": "test",
"_objFlags": 0,
"__editorExtras__": {},
"_parent": null,
"_children": [
{
"__id__": 2
}
],
"_active": true,
"_components": [],
"_prefab": null,
"_lpos": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_lrot": {
"__type__": "cc.Quat",
"x": 0,
"y": 0,
"z": 0,
"w": 1
},
"_lscale": {
"__type__": "cc.Vec3",
"x": 1,
"y": 1,
"z": 1
},
"_mobility": 0,
"_layer": 1073741824,
"_euler": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"autoReleaseAssets": false,
"_globals": {
"__id__": 11
},
"_id": "1579147e-6a68-4847-979e-9537d4ab56c3"
},
{
"__type__": "cc.Node",
"_name": "Canvas",
"_objFlags": 0,
"__editorExtras__": {},
"_parent": {
"__id__": 1
},
"_children": [
{
"__id__": 3
},
{
"__id__": 5
}
],
"_active": true,
"_components": [
{
"__id__": 6
},
{
"__id__": 7
},
{
"__id__": 8
},
{
"__id__": 9
},
{
"__id__": 10
}
],
"_prefab": null,
"_lpos": {
"__type__": "cc.Vec3",
"x": 400,
"y": 225,
"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": "1f8cfa16-5396-4510-82f2-8f3514ffe58a"
},
{
"__type__": "cc.Node",
"_name": "Camera",
"_objFlags": 0,
"__editorExtras__": {},
"_parent": {
"__id__": 2
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 4
}
],
"_prefab": null,
"_lpos": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 1000
},
"_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": 1073741824,
"_euler": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_id": "28bf8b1c-5302-45a7-83a0-7ee40efffa83"
},
{
"__type__": "cc.Camera",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 3
},
"_enabled": true,
"__prefab": null,
"_projection": 0,
"_priority": 0,
"_fov": 45,
"_fovAxis": 0,
"_orthoHeight": 269.7286012526096,
"_near": 0,
"_far": 1000,
"_color": {
"__type__": "cc.Color",
"r": 12,
"g": 18,
"b": 38,
"a": 255
},
"_depth": 1,
"_stencil": 0,
"_clearFlags": 7,
"_rect": {
"__type__": "cc.Rect",
"x": 0,
"y": 0,
"width": 1,
"height": 1
},
"_aperture": 19,
"_shutter": 7,
"_iso": 0,
"_screenScale": 1,
"_visibility": 41943040,
"_targetTexture": null,
"_postProcess": null,
"_usePostProcess": false,
"_cameraType": -1,
"_trackingType": 0,
"_id": "01e9cddc-8825-41f1-8437-08f0d68abc68"
},
{
"__type__": "cc.Node",
"_name": "GameRoot",
"_objFlags": 0,
"__editorExtras__": {},
"_parent": {
"__id__": 2
},
"_children": [],
"_active": true,
"_components": [],
"_prefab": null,
"_lpos": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_lrot": {
"__type__": "cc.Quat",
"x": 0,
"y": 0,
"z": 0,
"w": 1
},
"_lscale": {
"__type__": "cc.Vec3",
"x": 1,
"y": 1,
"z": 1
},
"_mobility": 0,
"_layer": 33554432,
"_euler": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_id": "2f0620c2-6bc4-4982-adb7-ee9fb148d90d"
},
{
"__type__": "cc.Canvas",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 2
},
"_enabled": true,
"__prefab": null,
"_cameraComponent": {
"__id__": 4
},
"_alignCanvasWithScreen": true,
"_id": "3c8c0732-86ec-4d74-8672-315fd4af3c2d"
},
{
"__type__": "cc.UITransform",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 2
},
"_enabled": true,
"__prefab": null,
"_contentSize": {
"__type__": "cc.Size",
"width": 800,
"height": 450
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_id": "51fbc934-362a-4c49-8a15-38d5420138d0"
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 2
},
"_enabled": true,
"__prefab": null,
"_alignFlags": 45,
"_target": null,
"_left": 0,
"_right": 0,
"_top": 0,
"_bottom": 0,
"_horizontalCenter": 0,
"_verticalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 0,
"_originalHeight": 0,
"_alignMode": 2,
"_lockFlags": 0,
"_id": "37496d4b-b792-497d-b9a5-b8b1425c5b29"
},
{
"__type__": "8f2a1s8TV5veoucDR4vOktc",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 2
},
"_enabled": true,
"__prefab": null,
"_id": "16RKZ4YPxD3ZD8Wu9d52/e"
},
{
"__type__": "9a0b1wtPk9aa3yNng8aKzxN",
"_name": "",
"_objFlags": 0,
"__editorExtras__": {},
"node": {
"__id__": 2
},
"_enabled": true,
"__prefab": null,
"_id": "bfmS4t+R5DmLMH6sqkNIIR"
},
{
"__type__": "cc.SceneGlobals",
"ambient": {
"__id__": 12
},
"shadows": {
"__id__": 13
},
"_skybox": {
"__id__": 14
},
"fog": {
"__id__": 15
},
"octree": {
"__id__": 16
},
"skin": {
"__id__": 17
},
"lightProbeInfo": {
"__id__": 18
},
"postSettings": {
"__id__": 19
},
"bakedWithStationaryMainLight": false,
"bakedWithHighpLightmap": false
},
{
"__type__": "cc.AmbientInfo",
"_skyColorHDR": {
"__type__": "cc.Vec4",
"x": 0.2,
"y": 0.5,
"z": 0.8,
"w": 0.520833125
},
"_skyColor": {
"__type__": "cc.Vec4",
"x": 0.2,
"y": 0.5,
"z": 0.8,
"w": 0.520833125
},
"_skyIllumHDR": 20000,
"_skyIllum": 20000,
"_groundAlbedoHDR": {
"__type__": "cc.Vec4",
"x": 0.2,
"y": 0.2,
"z": 0.2,
"w": 1
},
"_groundAlbedo": {
"__type__": "cc.Vec4",
"x": 0.2,
"y": 0.2,
"z": 0.2,
"w": 1
},
"_skyColorLDR": {
"__type__": "cc.Vec4",
"x": 0.452588,
"y": 0.607642,
"z": 0.755699,
"w": 0
},
"_skyIllumLDR": 0.8,
"_groundAlbedoLDR": {
"__type__": "cc.Vec4",
"x": 0.618555,
"y": 0.577848,
"z": 0.544564,
"w": 0
}
},
{
"__type__": "cc.ShadowsInfo",
"_enabled": false,
"_type": 0,
"_normal": {
"__type__": "cc.Vec3",
"x": 0,
"y": 1,
"z": 0
},
"_distance": 0,
"_planeBias": 1,
"_shadowColor": {
"__type__": "cc.Color",
"r": 76,
"g": 76,
"b": 76,
"a": 255
},
"_maxReceived": 4,
"_size": {
"__type__": "cc.Vec2",
"x": 1024,
"y": 1024
}
},
{
"__type__": "cc.SkyboxInfo",
"_envLightingType": 0,
"_envmapHDR": null,
"_envmap": null,
"_envmapLDR": null,
"_diffuseMapHDR": null,
"_diffuseMapLDR": null,
"_enabled": false,
"_useHDR": true,
"_editableMaterial": null,
"_reflectionHDR": null,
"_reflectionLDR": null,
"_rotationAngle": 0
},
{
"__type__": "cc.FogInfo",
"_type": 0,
"_fogColor": {
"__type__": "cc.Color",
"r": 200,
"g": 200,
"b": 200,
"a": 255
},
"_enabled": false,
"_fogDensity": 0.3,
"_fogStart": 0.5,
"_fogEnd": 300,
"_fogAtten": 5,
"_fogTop": 1.5,
"_fogRange": 1.2,
"_accurate": false
},
{
"__type__": "cc.OctreeInfo",
"_enabled": false,
"_minPos": {
"__type__": "cc.Vec3",
"x": -1024,
"y": -1024,
"z": -1024
},
"_maxPos": {
"__type__": "cc.Vec3",
"x": 1024,
"y": 1024,
"z": 1024
},
"_depth": 8
},
{
"__type__": "cc.SkinInfo",
"_enabled": true,
"_blurRadius": 0.01,
"_sssIntensity": 3
},
{
"__type__": "cc.LightProbeInfo",
"_giScale": 1,
"_giSamples": 1024,
"_bounces": 2,
"_reduceRinging": 0,
"_showProbe": true,
"_showWireframe": true,
"_showConvex": false,
"_data": null,
"_lightProbeSphereVolume": 1
},
{
"__type__": "cc.PostSettingsInfo",
"_toneMappingType": 0
}
]
\ No newline at end of file
assets/scenes/test.scene.meta
0 → 100644
View file @
ac20a2a0
{
"ver": "1.1.50",
"importer": "scene",
"imported": true,
"uuid": "1579147e-6a68-4847-979e-9537d4ab56c3",
"files": [
".json"
],
"subMetas": {},
"userData": {}
}
assets/scripts/InputManager.ts
View file @
ac20a2a0
...
@@ -222,7 +222,7 @@ export class InputManager {
...
@@ -222,7 +222,7 @@ export class InputManager {
this
.
shootFiredFromHold
=
false
;
this
.
shootFiredFromHold
=
false
;
}
}
}
else
if
(
info
.
kind
===
'flick'
)
{
}
else
if
(
info
.
kind
===
'flick'
)
{
const
moved
=
this
.
distPt
(
info
.
sx
,
info
.
sy
,
info
.
x
,
info
.
y
)
>
18
;
const
moved
=
this
.
distPt
(
info
.
sx
,
info
.
sy
,
info
.
x
,
info
.
y
)
>
35
;
if
(
!
moved
&&
info
.
t
<
0.25
)
{
if
(
!
moved
&&
info
.
t
<
0.25
)
{
this
.
pendingTaps
.
push
({
x
:
info
.
x
,
y
:
info
.
y
});
this
.
pendingTaps
.
push
({
x
:
info
.
x
,
y
:
info
.
y
});
}
else
if
(
moved
)
{
}
else
if
(
moved
)
{
...
...
assets/scripts/MatchManager.ts
View file @
ac20a2a0
...
@@ -190,7 +190,7 @@ export function ballUpdate(ball: BallState, dt: number): { score: number } | nul
...
@@ -190,7 +190,7 @@ export function ballUpdate(ball: BallState, dt: number): { score: number } | nul
// 进球判定(优先于碰撞):球心自 rimY+4 之上向下穿越该高度
// 进球判定(优先于碰撞):球心自 rimY+4 之上向下穿越该高度
if
(
ball
.
vy
>
0
&&
if
(
ball
.
vy
>
0
&&
Math
.
abs
(
ball
.
x
-
COURT
.
rimX
)
<
13
&&
Math
.
abs
(
ball
.
x
-
COURT
.
rimX
)
<
20
&&
ball
.
py
<
COURT
.
rimY
+
4
&&
ball
.
py
<
COURT
.
rimY
+
4
&&
ball
.
y
>=
COURT
.
rimY
+
4
)
{
ball
.
y
>=
COURT
.
rimY
+
4
)
{
return
{
score
:
ball
.
shotValue
};
return
{
score
:
ball
.
shotValue
};
...
@@ -254,7 +254,7 @@ export function launchAuto(match: MatchState, shooter: PlayerState, q: number, o
...
@@ -254,7 +254,7 @@ export function launchAuto(match: MatchState, shooter: PlayerState, q: number, o
match
.
dunk
=
{
player
:
shooter
,
t
:
0
};
match
.
dunk
=
{
player
:
shooter
,
t
:
0
};
shooter
.
state
=
'dunk'
;
shooter
.
state
=
'dunk'
;
ball
.
shooterIdx
=
shooter
.
idx
;
ball
.
shooterIdx
=
shooter
.
idx
;
ball
.
perfect
=
q
>
0.8
5
;
ball
.
perfect
=
q
>
0.8
0
;
ball
.
shotValue
=
2
;
ball
.
shotValue
=
2
;
return
;
return
;
}
}
...
@@ -289,7 +289,7 @@ export function launchVelocity(match: MatchState, shooter: PlayerState, vx: numb
...
@@ -289,7 +289,7 @@ export function launchVelocity(match: MatchState, shooter: PlayerState, vx: numb
match
.
dunk
=
{
player
:
shooter
,
t
:
0
};
match
.
dunk
=
{
player
:
shooter
,
t
:
0
};
shooter
.
state
=
'dunk'
;
shooter
.
state
=
'dunk'
;
ball
.
shooterIdx
=
shooter
.
idx
;
ball
.
shooterIdx
=
shooter
.
idx
;
ball
.
perfect
=
q
>
0.8
5
;
ball
.
perfect
=
q
>
0.8
0
;
ball
.
shotValue
=
2
;
ball
.
shotValue
=
2
;
return
;
return
;
}
}
...
@@ -309,7 +309,7 @@ function releaseBall(match: MatchState, shooter: PlayerState, bx: number, by: nu
...
@@ -309,7 +309,7 @@ function releaseBall(match: MatchState, shooter: PlayerState, bx: number, by: nu
ball
.
shotValue
=
value
;
ball
.
shotValue
=
value
;
ball
.
px
=
bx
;
ball
.
py
=
by
;
ball
.
px
=
bx
;
ball
.
py
=
by
;
ball
.
shooterIdx
=
shooter
.
idx
;
ball
.
shooterIdx
=
shooter
.
idx
;
ball
.
perfect
=
q
>
0.8
5
;
ball
.
perfect
=
q
>
0.8
0
;
shooter
.
hasBall
=
false
;
shooter
.
hasBall
=
false
;
shooter
.
state
=
'shoot'
;
shooter
.
state
=
'shoot'
;
shooter
.
stateT
=
0
;
shooter
.
stateT
=
0
;
...
@@ -320,14 +320,14 @@ function releaseBall(match: MatchState, shooter: PlayerState, bx: number, by: nu
...
@@ -320,14 +320,14 @@ function releaseBall(match: MatchState, shooter: PlayerState, bx: number, by: nu
match
.
aiBaitJump
=
false
;
match
.
aiBaitJump
=
false
;
// 盖帽/干扰判定(假动作骗起的空位出手,盖帽概率大幅降低)
// 盖帽/干扰判定(假动作骗起的空位出手,盖帽概率大幅降低)
const
blockChance
=
opp
.
isAI
?
(
0.2
8
+
match
.
difficulty
*
0.1
)
:
0.5
;
const
blockChance
=
opp
.
isAI
?
(
0.2
0
+
match
.
difficulty
*
0.08
)
:
0.5
;
if
(
Math
.
abs
(
opp
.
x
-
shooter
.
x
)
<
95
&&
!
opp
.
grounded
&&
Math
.
random
()
<
blockChance
*
(
openShot
?
0.2
:
1
))
{
if
(
Math
.
abs
(
opp
.
x
-
shooter
.
x
)
<
95
&&
!
opp
.
grounded
&&
Math
.
random
()
<
blockChance
*
(
openShot
?
0.2
:
1
))
{
ball
.
vx
=
-
shooter
.
facing
*
rand
(
180
,
320
);
ball
.
vx
=
-
shooter
.
facing
*
rand
(
180
,
320
);
ball
.
vy
=
-
rand
(
140
,
240
);
ball
.
vy
=
-
rand
(
140
,
240
);
sfxBlock
();
sfxBlock
();
vibrate
();
vibrate
();
pushToast
(
match
,
'盖帽!'
,
opp
.
x
,
opp
.
y
-
96
);
pushToast
(
match
,
'盖帽!'
,
opp
.
x
,
opp
.
y
-
96
);
}
else
if
(
!
openShot
&&
Math
.
abs
(
opp
.
x
-
shooter
.
x
)
<
80
&&
Math
.
random
()
<
0.1
0
)
{
}
else
if
(
!
openShot
&&
Math
.
abs
(
opp
.
x
-
shooter
.
x
)
<
80
&&
Math
.
random
()
<
0.1
8
)
{
ball
.
vx
=
-
shooter
.
facing
*
rand
(
120
,
220
);
ball
.
vx
=
-
shooter
.
facing
*
rand
(
120
,
220
);
ball
.
vy
=
-
rand
(
80
,
160
);
ball
.
vy
=
-
rand
(
80
,
160
);
sfxBlock
();
sfxBlock
();
...
@@ -637,7 +637,7 @@ export function updateMatch(match: MatchState, input: InputFrame, dt: number): v
...
@@ -637,7 +637,7 @@ export function updateMatch(match: MatchState, input: InputFrame, dt: number): v
ball
.
shotValue
=
2
;
ball
.
shotValue
=
2
;
}
else
{
}
else
{
const
v
=
resolveFlick
(
match
,
holder
,
input
.
flick
);
const
v
=
resolveFlick
(
match
,
holder
,
input
.
flick
);
if
(
v
.
q
>
0.8
5
)
{
if
(
v
.
q
>
0.8
0
)
{
pushToast
(
match
,
'完美出手!'
,
holder
.
x
,
holder
.
y
-
96
);
pushToast
(
match
,
'完美出手!'
,
holder
.
x
,
holder
.
y
-
96
);
vibrate
();
vibrate
();
}
}
...
@@ -703,7 +703,7 @@ export function updateMatch(match: MatchState, input: InputFrame, dt: number): v
...
@@ -703,7 +703,7 @@ export function updateMatch(match: MatchState, input: InputFrame, dt: number): v
if
(
dk
.
t
>=
0.34
)
{
if
(
dk
.
t
>=
0.34
)
{
const
shooter
=
dk
.
player
;
const
shooter
=
dk
.
player
;
const
opp
=
match
.
players
[
1
-
shooter
.
idx
];
const
opp
=
match
.
players
[
1
-
shooter
.
idx
];
const
blocked
=
Math
.
abs
(
opp
.
x
-
shooter
.
x
)
<
85
&&
!
opp
.
grounded
&&
Math
.
random
()
<
0.5
;
const
blocked
=
Math
.
abs
(
opp
.
x
-
shooter
.
x
)
<
85
&&
!
opp
.
grounded
&&
Math
.
random
()
<
0.
3
5
;
if
(
blocked
)
{
if
(
blocked
)
{
ball
.
held
=
null
;
ball
.
held
=
null
;
shooter
.
hasBall
=
false
;
shooter
.
hasBall
=
false
;
...
...
settings/v2/packages/cocos-service.json
0 → 100644
View file @
ac20a2a0
{
"__version__"
:
"3.0.9"
,
"game"
:
{
"name"
:
"UNKNOW GAME"
,
"app_id"
:
"UNKNOW"
,
"c_id"
:
"0"
},
"appConfigMaps"
:
[
{
"app_id"
:
"UNKNOW"
,
"config_id"
:
"054c53"
}
],
"configs"
:
[
{
"app_id"
:
"UNKNOW"
,
"config_id"
:
"054c53"
,
"config_name"
:
"Default"
,
"config_remarks"
:
""
,
"services"
:
[]
}
]
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment