1
This commit is contained in:
@@ -123,7 +123,7 @@ Transform:
|
|||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
m_LocalPosition: {x: 0.1482, y: 0.1399, z: 0}
|
m_LocalPosition: {x: 0.1482, y: 0.1399, z: 0}
|
||||||
m_LocalScale: {x: 0.63, y: 0.63, z: 0.63}
|
m_LocalScale: {x: 0.63, y: 0.63, z: 0.63}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 1
|
||||||
m_Children:
|
m_Children:
|
||||||
- {fileID: 7208169732306063125}
|
- {fileID: 7208169732306063125}
|
||||||
- {fileID: 4379312204464871}
|
- {fileID: 4379312204464871}
|
||||||
@@ -156,6 +156,7 @@ MonoBehaviour:
|
|||||||
isTriggerFirst: 1
|
isTriggerFirst: 1
|
||||||
targetTra: {fileID: 0}
|
targetTra: {fileID: 0}
|
||||||
bulletID:
|
bulletID:
|
||||||
|
fireGold: 0
|
||||||
maxTurnSpeed: 15
|
maxTurnSpeed: 15
|
||||||
minTurnSpeed: 2
|
minTurnSpeed: 2
|
||||||
distanceForMaxTurn: 1
|
distanceForMaxTurn: 1
|
||||||
|
|||||||
@@ -9,13 +9,13 @@ Sprite:
|
|||||||
m_Name: 6001
|
m_Name: 6001
|
||||||
m_Rect:
|
m_Rect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 1078
|
x: 539
|
||||||
y: 360
|
y: 180
|
||||||
width: 376
|
width: 188
|
||||||
height: 319
|
height: 159.5
|
||||||
m_Offset: {x: 0, y: 0}
|
m_Offset: {x: 0, y: 0}
|
||||||
m_Border: {x: 0, y: 0, z: 0, w: 0}
|
m_Border: {x: 0, y: 0, z: 0, w: 0}
|
||||||
m_PixelsToUnits: 100
|
m_PixelsToUnits: 50
|
||||||
m_Pivot: {x: 0.5, y: 0.5}
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
m_Extrude: 1
|
m_Extrude: 1
|
||||||
m_IsPolygon: 0
|
m_IsPolygon: 0
|
||||||
@@ -107,14 +107,14 @@ Sprite:
|
|||||||
m_Bindpose: []
|
m_Bindpose: []
|
||||||
textureRect:
|
textureRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 1078
|
x: 539
|
||||||
y: 360
|
y: 180
|
||||||
width: 376
|
width: 188
|
||||||
height: 319
|
height: 159.5
|
||||||
textureRectOffset: {x: 0, y: 0}
|
textureRectOffset: {x: 0, y: 0}
|
||||||
atlasRectOffset: {x: -1, y: -1}
|
atlasRectOffset: {x: -1, y: -1}
|
||||||
settingsRaw: 0
|
settingsRaw: 0
|
||||||
uvTransform: {x: 100, y: 1266, z: 100, w: 519.5}
|
uvTransform: {x: 50, y: 633, z: 50, w: 259.75}
|
||||||
downscaleMultiplier: 1
|
downscaleMultiplier: 1
|
||||||
m_AtlasRD:
|
m_AtlasRD:
|
||||||
serializedVersion: 3
|
serializedVersion: 3
|
||||||
@@ -198,267 +198,123 @@ Sprite:
|
|||||||
m_Bindpose: []
|
m_Bindpose: []
|
||||||
textureRect:
|
textureRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 1078
|
x: 539
|
||||||
y: 360
|
y: 180
|
||||||
width: 376
|
width: 188
|
||||||
height: 319
|
height: 159.5
|
||||||
textureRectOffset: {x: 0, y: 0}
|
textureRectOffset: {x: 0, y: 0}
|
||||||
atlasRectOffset: {x: -1, y: -1}
|
atlasRectOffset: {x: -1, y: -1}
|
||||||
settingsRaw: 0
|
settingsRaw: 0
|
||||||
uvTransform: {x: 100, y: 1266, z: 100, w: 519.5}
|
uvTransform: {x: 50, y: 633, z: 50, w: 259.75}
|
||||||
downscaleMultiplier: 1
|
downscaleMultiplier: 1
|
||||||
m_PhysicsShape:
|
m_PhysicsShape:
|
||||||
- - {x: -1.88, y: -1.285}
|
- - {x: -1.88, y: -1.42}
|
||||||
- {x: -1.88, y: -1.405}
|
- {x: -1.8199999, y: -1.4}
|
||||||
- {x: -1.8199999, y: -1.405}
|
- {x: -1.8199999, y: -1.3199999}
|
||||||
- {x: -1.8199999, y: -1.295}
|
- {x: -1.86, y: -1.28}
|
||||||
- {x: -1.86, y: -1.285}
|
- {x: -1.88, y: -1.28}
|
||||||
- - {x: -0.45999998, y: -0.995}
|
- - {x: -0.32, y: -0.85999995}
|
||||||
- {x: -0.45, y: -0.965}
|
- {x: -0.24, y: -1.0799999}
|
||||||
- {x: -0.48, y: -0.955}
|
- {x: 1.0799999, y: -1.0799999}
|
||||||
- {x: -0.29, y: -0.755}
|
- {x: 1.26, y: -0.78}
|
||||||
- {x: -0.04, y: -0.445}
|
- {x: 1.24, y: -0.56}
|
||||||
- {x: 0.07, y: -0.42499998}
|
- {x: 1.1, y: -0.44}
|
||||||
- {x: -0.13, y: -0.645}
|
- {x: 0.82, y: -0.17999999}
|
||||||
- {x: -0.16, y: -0.615}
|
- {x: 0.82, y: -0.14}
|
||||||
- {x: -0.17999999, y: -0.615}
|
- {x: 0.84, y: -0.17999999}
|
||||||
- {x: -0.19999999, y: -0.645}
|
- {x: 0.91999996, y: -0.26}
|
||||||
- {x: -0.19, y: -0.745}
|
- {x: 1.04, y: -0.26}
|
||||||
- {x: -0.25, y: -0.745}
|
- {x: 1.4, y: -0.28}
|
||||||
- {x: -0.28, y: -0.755}
|
- {x: 1.62, y: 0}
|
||||||
- {x: -0.26999998, y: -0.84499997}
|
- {x: 1.5, y: 0.26}
|
||||||
- {x: -0.17999999, y: -0.935}
|
- {x: 1.4, y: 0.38}
|
||||||
- {x: -0.25, y: -1.025}
|
- {x: 1.78, y: 0.29999998}
|
||||||
- {x: -0.24, y: -1.0749999}
|
- {x: 1.8399999, y: 0.32}
|
||||||
- {x: -0.14999999, y: -1.035}
|
- {x: 1.8399999, y: 0.39999998}
|
||||||
- {x: -0.089999996, y: -1.0749999}
|
- {x: 1.6999999, y: 0.62}
|
||||||
- {x: 0.19999999, y: -1.0749999}
|
- {x: 1.4399999, y: 0.85999995}
|
||||||
- {x: 0.26999998, y: -1.025}
|
- {x: 1.26, y: 0.88}
|
||||||
- {x: 0.45, y: -1.0749999}
|
- {x: 1.0799999, y: 0.85999995}
|
||||||
- {x: 0.51, y: -1.0749999}
|
- {x: 1.06, y: 1.26}
|
||||||
- {x: 0.59, y: -1.045}
|
- {x: 0.91999996, y: 1.42}
|
||||||
- {x: 0.76, y: -1.045}
|
- {x: 0.7, y: 1.4}
|
||||||
- {x: 0.83, y: -1.0749999}
|
- {x: 0.65999997, y: 1.38}
|
||||||
- {x: 0.90999997, y: -1.0749999}
|
- {x: 0.56, y: 1.42}
|
||||||
- {x: 1, y: -1.015}
|
- {x: 0.48, y: 1.4399999}
|
||||||
- {x: 1.04, y: -1.0749999}
|
- {x: 0.34, y: 1.4399999}
|
||||||
- {x: 1.09, y: -1.0749999}
|
- {x: 0.16, y: 1.42}
|
||||||
- {x: 1.12, y: -1.0649999}
|
- {x: 0.08, y: 1.3}
|
||||||
- {x: 1.09, y: -0.98499995}
|
- {x: -0.17999999, y: 1.26}
|
||||||
- {x: 1.23, y: -0.775}
|
- {x: -0.24, y: 1.24}
|
||||||
- {x: 1.22, y: -0.635}
|
- {x: -0.38, y: 1.4}
|
||||||
- {x: 1.17, y: -0.525}
|
- {x: -0.79999995, y: 1.42}
|
||||||
- {x: 0.79999995, y: -0.155}
|
- {x: -0.91999996, y: 1.24}
|
||||||
- {x: 0.84, y: -0.015}
|
- {x: -0.94, y: 0.97999996}
|
||||||
- {x: 0.84, y: -0.105}
|
- {x: -1.14, y: 0.96}
|
||||||
- {x: 0.85999995, y: -0.195}
|
- {x: -1.38, y: 0.74}
|
||||||
- {x: 0.94, y: -0.255}
|
- {x: -1.36, y: 0.56}
|
||||||
- {x: 1.35, y: -0.255}
|
- {x: -1.1999999, y: 0.32}
|
||||||
- {x: 1.49, y: -0.16499999}
|
- {x: -1.4599999, y: 0.19999999}
|
||||||
- {x: 1.5899999, y: 0.105}
|
- {x: -1.66, y: 0.099999994}
|
||||||
- {x: 1.5, y: 0.155}
|
- {x: -1.66, y: -0.24}
|
||||||
- {x: 1.48, y: 0.265}
|
- {x: -1.64, y: -0.26}
|
||||||
- {x: 1.3299999, y: 0.355}
|
- {x: -1.24, y: -0.17999999}
|
||||||
- {x: 1.35, y: 0.415}
|
- {x: -0.97999996, y: -0.19999999}
|
||||||
- {x: 1.4499999, y: 0.39499998}
|
- {x: -0.79999995, y: -0.24}
|
||||||
- {x: 1.8, y: 0.305}
|
- {x: -0.62, y: -0.04}
|
||||||
- {x: 1.8199999, y: 0.355}
|
- {x: -0.59999996, y: 0.06}
|
||||||
- {x: 1.8199999, y: 0.42499998}
|
- {x: -0.35999998, y: -0.16}
|
||||||
- {x: 1.6999999, y: 0.545}
|
- {x: -0.78, y: -0.71999997}
|
||||||
- {x: 1.54, y: 0.675}
|
- {x: -1.02, y: -0.59999996}
|
||||||
- {x: 1.4699999, y: 0.805}
|
- {x: -1.26, y: -0.59999996}
|
||||||
- {x: 1.39, y: 0.84499997}
|
- {x: -1.3399999, y: -0.64}
|
||||||
- {x: 1.26, y: 0.85499996}
|
- {x: -1.3, y: -0.79999995}
|
||||||
- {x: 1.15, y: 0.805}
|
- {x: -1.0799999, y: -0.84}
|
||||||
- {x: 1.0799999, y: 0.73499995}
|
- {x: -1.5, y: -0.9}
|
||||||
- {x: 1.03, y: 1.095}
|
- {x: -1.54, y: -0.94}
|
||||||
- {x: 1.06, y: 1.285}
|
- {x: -1.52, y: -1}
|
||||||
- {x: 0.91999996, y: 1.385}
|
- {x: -1.38, y: -1.0799999}
|
||||||
- {x: 0.78999996, y: 1.405}
|
- {x: -0.52, y: -1.0799999}
|
||||||
- {x: 0.66999996, y: 1.385}
|
- {x: -0.34, y: -0.84}
|
||||||
- {x: 0.74, y: 1.2149999}
|
- {x: -0.24, y: -0.71999997}
|
||||||
- {x: 0.68, y: 1.045}
|
- {x: -0.28, y: -0.78}
|
||||||
- {x: 0.64, y: 1.345}
|
- - {x: -0.14, y: -0.59999996}
|
||||||
- {x: 0.62, y: 1.395}
|
- {x: -0.08, y: -0.53999996}
|
||||||
- {x: 0.57, y: 1.425}
|
- {x: 0.06, y: -0.38}
|
||||||
- {x: 0.47, y: 1.425}
|
- {x: -0.099999994, y: -0.59999996}
|
||||||
- {x: 0.39, y: 1.405}
|
- {x: -0.16, y: -0.59999996}
|
||||||
- {x: 0.32999998, y: 1.3349999}
|
- {x: -0.17999999, y: -0.64}
|
||||||
- {x: 0.28, y: 1.425}
|
- {x: -0.14, y: -0.62}
|
||||||
- {x: 0.24, y: 1.425}
|
- - {x: -0.97999996, y: -0.04}
|
||||||
- {x: 0.13, y: 1.415}
|
- {x: -0.91999996, y: -0.04}
|
||||||
- {x: 0.12, y: 1.3249999}
|
- {x: -0.9, y: -0.02}
|
||||||
- {x: 0.03, y: 1.305}
|
- {x: -0.84, y: -0.02}
|
||||||
- {x: 0.089999996, y: 1.245}
|
- {x: -0.82, y: 0}
|
||||||
- {x: 0.049999997, y: 1.165}
|
- {x: -0.85999995, y: -0.04}
|
||||||
- {x: -0.22, y: 1.245}
|
- {x: -0.94, y: -0.04}
|
||||||
- {x: -0.24, y: 1.2049999}
|
- {x: -0.96, y: -0.02}
|
||||||
- {x: -0.14999999, y: 1.115}
|
- - {x: 1.3, y: 0.59999996}
|
||||||
- {x: -0.24, y: 1.095}
|
- {x: 1.28, y: 0.65999997}
|
||||||
- {x: -0.29999998, y: 1.105}
|
- {x: 1.3, y: 0.64}
|
||||||
- {x: -0.29999998, y: 1.225}
|
- {x: 1.3399999, y: 0.64}
|
||||||
- {x: -0.26, y: 1.285}
|
- {x: 1.38, y: 0.59999996}
|
||||||
- {x: -0.32999998, y: 1.3149999}
|
- {x: 1.36, y: 0.53999996}
|
||||||
- {x: -0.45, y: 1.2049999}
|
- - {x: -1.02, y: 0.62}
|
||||||
- {x: -0.47, y: 1.105}
|
- {x: -1.02, y: 0.68}
|
||||||
- {x: -0.53999996, y: 1.145}
|
- {x: -0.94, y: 0.74}
|
||||||
- {x: -0.53999996, y: 1.375}
|
- {x: -0.84, y: 0.79999995}
|
||||||
- {x: -0.57, y: 1.425}
|
- {x: -0.82, y: 0.79999995}
|
||||||
- {x: -0.62, y: 1.385}
|
- {x: -0.82, y: 0.78}
|
||||||
- {x: -0.79999995, y: 1.415}
|
- {x: -0.76, y: 0.7}
|
||||||
- {x: -0.83, y: 1.295}
|
- {x: -0.79999995, y: 0.71999997}
|
||||||
- {x: -0.91999996, y: 1.305}
|
- {x: -0.85999995, y: 0.71999997}
|
||||||
- {x: -0.89, y: 1.2049999}
|
- {x: -0.96, y: 0.64}
|
||||||
- {x: -0.83, y: 1.155}
|
- {x: -0.96, y: 0.58}
|
||||||
- {x: -0.89, y: 0.965}
|
- - {x: 0.58, y: 0.59999996}
|
||||||
- {x: -1.01, y: 0.955}
|
- {x: 0.59999996, y: 0.62}
|
||||||
- {x: -1.2099999, y: 0.865}
|
- {x: 0.64, y: 0.62}
|
||||||
- {x: -1.3299999, y: 0.73499995}
|
- {x: 0.65999997, y: 0.58}
|
||||||
- {x: -1.3199999, y: 0.59499997}
|
- {x: 0.59999996, y: 0.58}
|
||||||
- {x: -1.28, y: 0.545}
|
- {x: 0.59999996, y: 0.59999996}
|
||||||
- {x: -1.1899999, y: 0.42499998}
|
|
||||||
- {x: -1.12, y: 0.36499998}
|
|
||||||
- {x: -1.27, y: 0.285}
|
|
||||||
- {x: -1.49, y: 0.155}
|
|
||||||
- {x: -1.56, y: 0.074999996}
|
|
||||||
- {x: -1.64, y: 0.035}
|
|
||||||
- {x: -1.64, y: -0.16499999}
|
|
||||||
- {x: -1.62, y: -0.205}
|
|
||||||
- {x: -1.56, y: -0.205}
|
|
||||||
- {x: -1.38, y: -0.114999995}
|
|
||||||
- {x: -1.3, y: -0.145}
|
|
||||||
- {x: -1.1, y: -0.044999998}
|
|
||||||
- {x: -1.04, y: -0.114999995}
|
|
||||||
- {x: -0.9, y: -0.195}
|
|
||||||
- {x: -0.78, y: -0.175}
|
|
||||||
- {x: -0.71, y: -0.105}
|
|
||||||
- {x: -0.64, y: 0.074999996}
|
|
||||||
- {x: -0.34, y: 0.155}
|
|
||||||
- {x: -0.28, y: 0.145}
|
|
||||||
- {x: -0.32999998, y: -0.145}
|
|
||||||
- {x: -0.41, y: -0.295}
|
|
||||||
- {x: -0.57, y: -0.515}
|
|
||||||
- {x: -0.77, y: -0.72499996}
|
|
||||||
- {x: -0.96999997, y: -0.60499996}
|
|
||||||
- {x: -1.23, y: -0.59499997}
|
|
||||||
- {x: -1.28, y: -0.59499997}
|
|
||||||
- {x: -1.3399999, y: -0.72499996}
|
|
||||||
- {x: -1.16, y: -0.825}
|
|
||||||
- {x: -1.0699999, y: -0.815}
|
|
||||||
- {x: -1, y: -0.73499995}
|
|
||||||
- {x: -0.89, y: -0.805}
|
|
||||||
- {x: -1.18, y: -0.895}
|
|
||||||
- {x: -1.53, y: -0.905}
|
|
||||||
- {x: -1.53, y: -0.885}
|
|
||||||
- {x: -1.5999999, y: -0.905}
|
|
||||||
- {x: -1.5799999, y: -0.97499996}
|
|
||||||
- {x: -1.38, y: -1.055}
|
|
||||||
- {x: -1.3, y: -1.0749999}
|
|
||||||
- {x: -1.15, y: -1.0749999}
|
|
||||||
- {x: -0.72999996, y: -1.045}
|
|
||||||
- {x: -0.65999997, y: -1.0749999}
|
|
||||||
- {x: -0.53999996, y: -1.045}
|
|
||||||
- {x: -0.48, y: -1.015}
|
|
||||||
- - {x: 0.81, y: -0.48499998}
|
|
||||||
- {x: 0.77, y: -0.445}
|
|
||||||
- {x: 0.77, y: -0.405}
|
|
||||||
- {x: 0.78, y: -0.39499998}
|
|
||||||
- {x: 0.77, y: -0.375}
|
|
||||||
- {x: 0.77, y: -0.405}
|
|
||||||
- {x: 0.78, y: -0.435}
|
|
||||||
- {x: 0.78999996, y: -0.445}
|
|
||||||
- {x: 0.78999996, y: -0.465}
|
|
||||||
- {x: 0.81, y: -0.49499997}
|
|
||||||
- - {x: -0.98999995, y: -0.044999998}
|
|
||||||
- {x: -1.02, y: -0.024999999}
|
|
||||||
- {x: -1, y: -0.024999999}
|
|
||||||
- {x: -0.84, y: 0.015}
|
|
||||||
- {x: -0.78999996, y: 0.035}
|
|
||||||
- {x: -0.81, y: -0.005}
|
|
||||||
- {x: -0.84999996, y: -0.055}
|
|
||||||
- {x: -0.87, y: -0.055}
|
|
||||||
- {x: -0.88, y: -0.065}
|
|
||||||
- {x: -0.93, y: -0.055}
|
|
||||||
- - {x: 1.3299999, y: 0.525}
|
|
||||||
- {x: 1.3299999, y: 0.545}
|
|
||||||
- {x: 1.3199999, y: 0.575}
|
|
||||||
- {x: 1.27, y: 0.615}
|
|
||||||
- {x: 1.27, y: 0.695}
|
|
||||||
- {x: 1.3199999, y: 0.675}
|
|
||||||
- {x: 1.35, y: 0.655}
|
|
||||||
- {x: 1.36, y: 0.655}
|
|
||||||
- {x: 1.4, y: 0.60499996}
|
|
||||||
- {x: 1.41, y: 0.59499997}
|
|
||||||
- {x: 1.38, y: 0.555}
|
|
||||||
- {x: 1.38, y: 0.525}
|
|
||||||
- {x: 1.39, y: 0.515}
|
|
||||||
- {x: 1.37, y: 0.525}
|
|
||||||
- - {x: -0.98999995, y: 0.565}
|
|
||||||
- {x: -1.04, y: 0.615}
|
|
||||||
- {x: -1.05, y: 0.675}
|
|
||||||
- {x: -1.01, y: 0.72499996}
|
|
||||||
- {x: -0.94, y: 0.775}
|
|
||||||
- {x: -0.89, y: 0.79499996}
|
|
||||||
- {x: -0.85999995, y: 0.815}
|
|
||||||
- {x: -0.81, y: 0.84499997}
|
|
||||||
- {x: -0.81, y: 0.835}
|
|
||||||
- {x: -0.78, y: 0.78499997}
|
|
||||||
- {x: -0.78, y: 0.765}
|
|
||||||
- {x: -0.74, y: 0.695}
|
|
||||||
- {x: -0.75, y: 0.685}
|
|
||||||
- {x: -0.79999995, y: 0.685}
|
|
||||||
- {x: -0.81, y: 0.695}
|
|
||||||
- {x: -0.84999996, y: 0.695}
|
|
||||||
- {x: -0.88, y: 0.675}
|
|
||||||
- {x: -0.93, y: 0.625}
|
|
||||||
- {x: -0.94, y: 0.585}
|
|
||||||
- {x: -0.96, y: 0.565}
|
|
||||||
- {x: -0.95, y: 0.545}
|
|
||||||
- {x: -0.95, y: 0.555}
|
|
||||||
- - {x: 0.59999996, y: 0.565}
|
|
||||||
- {x: 0.55, y: 0.60499996}
|
|
||||||
- {x: 0.59999996, y: 0.655}
|
|
||||||
- {x: 0.63, y: 0.645}
|
|
||||||
- {x: 0.65999997, y: 0.645}
|
|
||||||
- {x: 0.69, y: 0.59499997}
|
|
||||||
- {x: 0.64, y: 0.585}
|
|
||||||
- {x: 0.61, y: 0.555}
|
|
||||||
- {x: 0.62, y: 0.545}
|
|
||||||
- {x: 0.62, y: 0.555}
|
|
||||||
- - {x: 1.09, y: 0.645}
|
|
||||||
- {x: 1.09, y: 0.635}
|
|
||||||
- {x: 1.06, y: 0.625}
|
|
||||||
- {x: 1.0699999, y: 0.635}
|
|
||||||
- - {x: 0.69, y: 0.78499997}
|
|
||||||
- {x: 0.71, y: 0.815}
|
|
||||||
- {x: 0.71, y: 0.84499997}
|
|
||||||
- {x: 0.75, y: 0.885}
|
|
||||||
- {x: 0.75, y: 0.905}
|
|
||||||
- {x: 0.74, y: 0.91499996}
|
|
||||||
- {x: 0.75, y: 0.91499996}
|
|
||||||
- {x: 0.78999996, y: 0.935}
|
|
||||||
- {x: 0.78999996, y: 0.92499995}
|
|
||||||
- {x: 0.76, y: 0.91499996}
|
|
||||||
- {x: 0.71, y: 0.865}
|
|
||||||
- {x: 0.71, y: 0.85499996}
|
|
||||||
- {x: 0.69, y: 0.835}
|
|
||||||
- {x: 0.69, y: 0.815}
|
|
||||||
- {x: 0.66999996, y: 0.775}
|
|
||||||
- {x: 0.66999996, y: 0.73499995}
|
|
||||||
- {x: 0.65999997, y: 0.73499995}
|
|
||||||
- - {x: -0.26, y: 0.935}
|
|
||||||
- {x: -0.21, y: 0.97499996}
|
|
||||||
- {x: -0.19999999, y: 1.005}
|
|
||||||
- {x: -0.19, y: 1.015}
|
|
||||||
- {x: -0.22, y: 0.965}
|
|
||||||
- {x: -0.22, y: 0.91499996}
|
|
||||||
- {x: -0.22999999, y: 0.92499995}
|
|
||||||
- - {x: 0.03, y: 1.055}
|
|
||||||
- {x: 0.02, y: 1.055}
|
|
||||||
- {x: 0.03, y: 1.045}
|
|
||||||
- {x: 0.11, y: 1.045}
|
|
||||||
- {x: 0.14, y: 1.025}
|
|
||||||
- {x: 0.06, y: 1.025}
|
|
||||||
- {x: 0.06, y: 1.035}
|
|
||||||
m_Bones: []
|
m_Bones: []
|
||||||
m_SpriteID: 9879fa8cff00e5f43a9b92606b91f7f8
|
m_SpriteID: 9879fa8cff00e5f43a9b92606b91f7f8
|
||||||
|
|||||||
@@ -9,13 +9,13 @@ Sprite:
|
|||||||
m_Name: 6002
|
m_Name: 6002
|
||||||
m_Rect:
|
m_Rect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 279
|
x: 139.5
|
||||||
y: 351
|
y: 175.5
|
||||||
width: 409
|
width: 204.5
|
||||||
height: 362
|
height: 181
|
||||||
m_Offset: {x: 0, y: 0}
|
m_Offset: {x: 0, y: 0}
|
||||||
m_Border: {x: 0, y: 0, z: 0, w: 0}
|
m_Border: {x: 0, y: 0, z: 0, w: 0}
|
||||||
m_PixelsToUnits: 100
|
m_PixelsToUnits: 50
|
||||||
m_Pivot: {x: 0.5, y: 0.5}
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
m_Extrude: 1
|
m_Extrude: 1
|
||||||
m_IsPolygon: 0
|
m_IsPolygon: 0
|
||||||
@@ -107,14 +107,14 @@ Sprite:
|
|||||||
m_Bindpose: []
|
m_Bindpose: []
|
||||||
textureRect:
|
textureRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 279
|
x: 139.5
|
||||||
y: 351
|
y: 175.5
|
||||||
width: 409
|
width: 204.5
|
||||||
height: 362
|
height: 181
|
||||||
textureRectOffset: {x: 0, y: 0}
|
textureRectOffset: {x: 0, y: 0}
|
||||||
atlasRectOffset: {x: -1, y: -1}
|
atlasRectOffset: {x: -1, y: -1}
|
||||||
settingsRaw: 0
|
settingsRaw: 0
|
||||||
uvTransform: {x: 100, y: 483.5, z: 100, w: 532}
|
uvTransform: {x: 50, y: 241.75, z: 50, w: 266}
|
||||||
downscaleMultiplier: 1
|
downscaleMultiplier: 1
|
||||||
m_AtlasRD:
|
m_AtlasRD:
|
||||||
serializedVersion: 3
|
serializedVersion: 3
|
||||||
@@ -198,226 +198,107 @@ Sprite:
|
|||||||
m_Bindpose: []
|
m_Bindpose: []
|
||||||
textureRect:
|
textureRect:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
x: 279
|
x: 139.5
|
||||||
y: 351
|
y: 175.5
|
||||||
width: 409
|
width: 204.5
|
||||||
height: 362
|
height: 181
|
||||||
textureRectOffset: {x: 0, y: 0}
|
textureRectOffset: {x: 0, y: 0}
|
||||||
atlasRectOffset: {x: -1, y: -1}
|
atlasRectOffset: {x: -1, y: -1}
|
||||||
settingsRaw: 0
|
settingsRaw: 0
|
||||||
uvTransform: {x: 100, y: 483.5, z: 100, w: 532}
|
uvTransform: {x: 50, y: 241.75, z: 50, w: 266}
|
||||||
downscaleMultiplier: 1
|
downscaleMultiplier: 1
|
||||||
m_PhysicsShape:
|
m_PhysicsShape:
|
||||||
- - {x: -0.895, y: -1.4399999}
|
- - {x: 0.71999997, y: -1.09}
|
||||||
- {x: -0.85499996, y: -1.38}
|
- {x: 0.59999996, y: -0.78999996}
|
||||||
- {x: -0.91499996, y: -1.3399999}
|
- {x: 0.71999997, y: -0.69}
|
||||||
- {x: -0.85499996, y: -1.1999999}
|
- {x: 1.06, y: -0.55}
|
||||||
- {x: -0.78499997, y: -1.0799999}
|
- {x: 1.38, y: -0.11}
|
||||||
- {x: -0.715, y: -0.90999997}
|
- {x: 1.52, y: -0.14999999}
|
||||||
- {x: -0.615, y: -0.85999995}
|
- {x: 1.5799999, y: -0.13}
|
||||||
- {x: -0.545, y: -0.81}
|
- {x: 1.5799999, y: 0.13}
|
||||||
- {x: -0.53499997, y: -0.7}
|
- {x: 1.3, y: 0.32999998}
|
||||||
- {x: -0.42499998, y: -0.51}
|
- {x: 0.96, y: 0.42999998}
|
||||||
- {x: -0.375, y: -0.39999998}
|
- {x: 0.91999996, y: 0.55}
|
||||||
- {x: -0.325, y: -0.55}
|
- {x: 0.96, y: 0.72999996}
|
||||||
- {x: -0.33499998, y: -0.65999997}
|
- {x: 0.91999996, y: 1.09}
|
||||||
- {x: -0.305, y: -0.72999996}
|
- {x: 0.84, y: 1.1899999}
|
||||||
- {x: -0.285, y: -0.85999995}
|
- {x: 1.04, y: 1.41}
|
||||||
- {x: -0.265, y: -1.01}
|
- {x: 1.04, y: 1.5699999}
|
||||||
- {x: -0.355, y: -1.09}
|
- {x: 0.97999996, y: 1.61}
|
||||||
- {x: -0.39499998, y: -1.15}
|
- {x: 0.78, y: 1.41}
|
||||||
- {x: -0.325, y: -1.18}
|
- {x: 0.44, y: 0.89}
|
||||||
- {x: -0.445, y: -1.3299999}
|
- {x: 0.32, y: 0.84999996}
|
||||||
- {x: -0.565, y: -1.52}
|
- {x: 0.24, y: 1.0699999}
|
||||||
- {x: -0.545, y: -1.56}
|
- {x: 0.35999998, y: 1.55}
|
||||||
- {x: -0.505, y: -1.56}
|
- {x: 0.28, y: 1.67}
|
||||||
- {x: -0.48499998, y: -1.54}
|
- {x: 0.08, y: 1.67}
|
||||||
- {x: -0.465, y: -1.56}
|
- {x: 0.02, y: 1.53}
|
||||||
- {x: -0.13499999, y: -1.56}
|
- {x: 0, y: 1.29}
|
||||||
- {x: -0.055, y: -1.52}
|
- {x: -0.099999994, y: 1.2099999}
|
||||||
- {x: -0.015, y: -1.56}
|
- {x: -0.24, y: 1.5899999}
|
||||||
- {x: 0.755, y: -1.56}
|
- {x: -0.39999998, y: 1.61}
|
||||||
- {x: 0.775, y: -1.55}
|
- {x: -0.44, y: 1.5699999}
|
||||||
- {x: 0.755, y: -1.38}
|
- {x: -0.45999998, y: 1.43}
|
||||||
- {x: 0.695, y: -1.22}
|
- {x: -0.29999998, y: 1.29}
|
||||||
- {x: 0.685, y: -1.09}
|
- {x: -0.24, y: 0.69}
|
||||||
- {x: 0.625, y: -0.91999996}
|
- {x: -0.34, y: 0.81}
|
||||||
- {x: 0.555, y: -0.77}
|
- {x: -0.48, y: 1.4499999}
|
||||||
- {x: 0.515, y: -0.62}
|
- {x: -0.53999996, y: 1.5899999}
|
||||||
- {x: 0.525, y: -0.58}
|
- {x: -0.62, y: 1.5899999}
|
||||||
- {x: 0.615, y: -0.69}
|
- {x: -0.68, y: 1.55}
|
||||||
- {x: 0.705, y: -0.68}
|
- {x: -0.68, y: 0.87}
|
||||||
- {x: 0.73499995, y: -0.65}
|
- {x: -0.78, y: 0.95}
|
||||||
- {x: 0.79499996, y: -0.59999996}
|
- {x: -1.12, y: 1.05}
|
||||||
- {x: 0.865, y: -0.58}
|
- {x: -1.62, y: 1.5699999}
|
||||||
- {x: 0.965, y: -0.53999996}
|
- {x: -1.76, y: 1.63}
|
||||||
- {x: 1.0649999, y: -0.45999998}
|
- {x: -1.78, y: 1.55}
|
||||||
- {x: 1.275, y: -0.19999999}
|
- {x: -1.7199999, y: 1.43}
|
||||||
- {x: 1.3349999, y: -0.08}
|
- {x: -1.4599999, y: 1.13}
|
||||||
- {x: 1.505, y: -0.13}
|
- {x: -1.8199999, y: 1.27}
|
||||||
- {x: 1.555, y: -0.049999997}
|
- {x: -1.9399999, y: 1.27}
|
||||||
- {x: 1.605, y: 0.089999996}
|
- {x: -2.04, y: 1.15}
|
||||||
- {x: 1.5949999, y: 0.13}
|
- {x: -2.04, y: 0.95}
|
||||||
- {x: 1.435, y: 0.14999999}
|
- {x: -1.9599999, y: 0.89}
|
||||||
- {x: 1.275, y: 0.26}
|
- {x: -1.52, y: 0.63}
|
||||||
- {x: 1.1949999, y: 0.29}
|
- {x: -1.68, y: 0.47}
|
||||||
- {x: 1.095, y: 0.29999998}
|
- {x: -1.74, y: 0.37}
|
||||||
- {x: 1.045, y: 0.28}
|
- {x: -1.8399999, y: -0.11}
|
||||||
- {x: 0.92499995, y: 0.31}
|
- {x: -2.02, y: -0.37}
|
||||||
- {x: 0.91499996, y: 0.35}
|
- {x: -2.02, y: -0.41}
|
||||||
- {x: 0.84499997, y: 0.55}
|
- {x: -1.92, y: -0.53}
|
||||||
- {x: 0.895, y: 0.57}
|
- {x: -1.6999999, y: -0.53}
|
||||||
- {x: 0.905, y: 0.66999996}
|
- {x: -1.3, y: -0.55}
|
||||||
- {x: 0.835, y: 0.75}
|
- {x: -1.14, y: -0.47}
|
||||||
- {x: 0.825, y: 0.89}
|
- {x: -1.16, y: -1.2099999}
|
||||||
- {x: 0.865, y: 0.9}
|
- {x: -1.22, y: -1.31}
|
||||||
- {x: 0.895, y: 0.90999997}
|
- {x: -1.1999999, y: -1.53}
|
||||||
- {x: 0.885, y: 1.05}
|
- {x: -1.16, y: -1.5699999}
|
||||||
- {x: 0.815, y: 1.16}
|
- {x: -0.9, y: -1.5699999}
|
||||||
- {x: 0.92499995, y: 1.31}
|
- {x: -0.84, y: -1.35}
|
||||||
- {x: 1.035, y: 1.5}
|
- {x: -0.85999995, y: -1.27}
|
||||||
- {x: 0.995, y: 1.5899999}
|
- {x: -0.58, y: -0.84999996}
|
||||||
- {x: 0.965, y: 1.5899999}
|
- {x: -0.52, y: -0.78999996}
|
||||||
- {x: 0.78499997, y: 1.38}
|
- {x: -0.35999998, y: -0.42999998}
|
||||||
- {x: 0.705, y: 1.23}
|
- {x: -0.34, y: -0.66999996}
|
||||||
- {x: 0.42499998, y: 0.84}
|
- {x: -0.26, y: -1.01}
|
||||||
- {x: 0.33499998, y: 0.71}
|
- {x: -0.35999998, y: -1.11}
|
||||||
- {x: 0.305, y: 0.75}
|
- {x: -0.35999998, y: -1.15}
|
||||||
- {x: 0.295, y: 0.87}
|
- {x: -0.52, y: -1.4499999}
|
||||||
- {x: 0.275, y: 0.89}
|
- {x: -0.56, y: -1.51}
|
||||||
- {x: 0.185, y: 0.95}
|
- {x: -0.38, y: -1.5699999}
|
||||||
- {x: 0.195, y: 1.14}
|
- {x: 0.7, y: -1.5699999}
|
||||||
- {x: 0.195, y: 1.31}
|
- {x: 0.82, y: -1.53}
|
||||||
- {x: 0.285, y: 1.4599999}
|
- {x: 0.78, y: -1.29}
|
||||||
- {x: 0.33499998, y: 1.55}
|
- - {x: -0.91999996, y: -0.11}
|
||||||
- {x: 0.295, y: 1.5899999}
|
- {x: -0.9, y: -0.11}
|
||||||
- {x: 0.305, y: 1.65}
|
- {x: -0.91999996, y: -0.11}
|
||||||
- {x: 0.275, y: 1.66}
|
- {x: -0.96, y: -0.14999999}
|
||||||
- {x: 0.114999995, y: 1.66}
|
- - {x: 0.97999996, y: -0.03}
|
||||||
- {x: 0.074999996, y: 1.65}
|
- {x: 0.96, y: -0.01}
|
||||||
- {x: 0.035, y: 1.56}
|
- {x: 1, y: 0.03}
|
||||||
- {x: 0.005, y: 1.24}
|
- {x: 0.97999996, y: 0.03}
|
||||||
- {x: -0.125, y: 1.15}
|
- {x: 1.04, y: -0.01}
|
||||||
- {x: -0.155, y: 1.23}
|
- {x: 0.96, y: -0.07}
|
||||||
- {x: -0.225, y: 1.35}
|
- {x: 0.97999996, y: -0.07}
|
||||||
- {x: -0.225, y: 1.4599999}
|
|
||||||
- {x: -0.24499999, y: 1.53}
|
|
||||||
- {x: -0.255, y: 1.56}
|
|
||||||
- {x: -0.345, y: 1.56}
|
|
||||||
- {x: -0.435, y: 1.61}
|
|
||||||
- {x: -0.465, y: 1.5999999}
|
|
||||||
- {x: -0.475, y: 1.5699999}
|
|
||||||
- {x: -0.415, y: 1.4699999}
|
|
||||||
- {x: -0.48499998, y: 1.4499999}
|
|
||||||
- {x: -0.42499998, y: 1.35}
|
|
||||||
- {x: -0.295, y: 1.28}
|
|
||||||
- {x: -0.205, y: 1}
|
|
||||||
- {x: -0.155, y: 0.95}
|
|
||||||
- {x: -0.255, y: 0.83}
|
|
||||||
- {x: -0.275, y: 0.68}
|
|
||||||
- {x: -0.36499998, y: 0.71}
|
|
||||||
- {x: -0.375, y: 0.78999996}
|
|
||||||
- {x: -0.525, y: 1.48}
|
|
||||||
- {x: -0.545, y: 1.56}
|
|
||||||
- {x: -0.565, y: 1.5799999}
|
|
||||||
- {x: -0.645, y: 1.5699999}
|
|
||||||
- {x: -0.66499996, y: 1.51}
|
|
||||||
- {x: -0.635, y: 1.37}
|
|
||||||
- {x: -0.66499996, y: 1.1}
|
|
||||||
- {x: -0.66499996, y: 0.85999995}
|
|
||||||
- {x: -0.765, y: 0.85999995}
|
|
||||||
- {x: -0.805, y: 0.9}
|
|
||||||
- {x: -0.84499997, y: 0.9}
|
|
||||||
- {x: -1.025, y: 0.95}
|
|
||||||
- {x: -1.095, y: 0.95}
|
|
||||||
- {x: -1.2049999, y: 1.06}
|
|
||||||
- {x: -1.3349999, y: 1.1999999}
|
|
||||||
- {x: -1.415, y: 1.3}
|
|
||||||
- {x: -1.4649999, y: 1.3399999}
|
|
||||||
- {x: -1.505, y: 1.41}
|
|
||||||
- {x: -1.785, y: 1.64}
|
|
||||||
- {x: -1.8149999, y: 1.63}
|
|
||||||
- {x: -1.8249999, y: 1.5999999}
|
|
||||||
- {x: -1.735, y: 1.4599999}
|
|
||||||
- {x: -1.605, y: 1.29}
|
|
||||||
- {x: -1.425, y: 1.13}
|
|
||||||
- {x: -1.485, y: 1.1}
|
|
||||||
- {x: -1.7249999, y: 1.1899999}
|
|
||||||
- {x: -1.8549999, y: 1.27}
|
|
||||||
- {x: -1.9649999, y: 1.25}
|
|
||||||
- {x: -2.0049999, y: 1.1999999}
|
|
||||||
- {x: -2.0449998, y: 1.11}
|
|
||||||
- {x: -2.0449998, y: 0.96}
|
|
||||||
- {x: -2.0049999, y: 0.9}
|
|
||||||
- {x: -1.9449999, y: 0.89}
|
|
||||||
- {x: -1.795, y: 0.88}
|
|
||||||
- {x: -1.605, y: 0.77}
|
|
||||||
- {x: -1.5749999, y: 0.76}
|
|
||||||
- {x: -1.555, y: 0.76}
|
|
||||||
- {x: -1.505, y: 0.75}
|
|
||||||
- {x: -1.525, y: 0.62}
|
|
||||||
- {x: -1.675, y: 0.47}
|
|
||||||
- {x: -1.6949999, y: 0.41}
|
|
||||||
- {x: -1.6949999, y: 0.35}
|
|
||||||
- {x: -1.665, y: 0.34}
|
|
||||||
- {x: -1.615, y: 0.37}
|
|
||||||
- {x: -1.665, y: 0.22}
|
|
||||||
- {x: -1.765, y: 0.099999994}
|
|
||||||
- {x: -1.805, y: -0.01}
|
|
||||||
- {x: -1.7149999, y: -0.01}
|
|
||||||
- {x: -1.8549999, y: -0.17999999}
|
|
||||||
- {x: -1.895, y: -0.28}
|
|
||||||
- {x: -2.0349998, y: -0.38}
|
|
||||||
- {x: -2.0449998, y: -0.39999998}
|
|
||||||
- {x: -2.0449998, y: -0.41}
|
|
||||||
- {x: -1.895, y: -0.53}
|
|
||||||
- {x: -1.805, y: -0.53}
|
|
||||||
- {x: -1.7049999, y: -0.48999998}
|
|
||||||
- {x: -1.645, y: -0.45}
|
|
||||||
- {x: -1.655, y: -0.45999998}
|
|
||||||
- {x: -1.665, y: -0.48}
|
|
||||||
- {x: -1.5849999, y: -0.53}
|
|
||||||
- {x: -1.505, y: -0.52}
|
|
||||||
- {x: -1.345, y: -0.53}
|
|
||||||
- {x: -1.225, y: -0.44}
|
|
||||||
- {x: -1.135, y: -0.44}
|
|
||||||
- {x: -1.0849999, y: -0.39}
|
|
||||||
- {x: -1.135, y: -0.5}
|
|
||||||
- {x: -1.115, y: -0.59999996}
|
|
||||||
- {x: -1.035, y: -0.66999996}
|
|
||||||
- {x: -1.0849999, y: -0.7}
|
|
||||||
- {x: -1.105, y: -0.91999996}
|
|
||||||
- {x: -1.155, y: -1.25}
|
|
||||||
- {x: -1.2049999, y: -1.3399999}
|
|
||||||
- {x: -1.185, y: -1.55}
|
|
||||||
- {x: -1.175, y: -1.56}
|
|
||||||
- {x: -0.91499996, y: -1.56}
|
|
||||||
- {x: -0.885, y: -1.55}
|
|
||||||
- - {x: -1.035, y: -0.26999998}
|
|
||||||
- {x: -1.025, y: -0.28}
|
|
||||||
- {x: -1.055, y: -0.32}
|
|
||||||
- {x: -1.035, y: -0.31}
|
|
||||||
- - {x: -0.995, y: -0.17}
|
|
||||||
- {x: -0.995, y: -0.14999999}
|
|
||||||
- {x: -0.935, y: -0.099999994}
|
|
||||||
- {x: -0.935, y: -0.08}
|
|
||||||
- {x: -0.885, y: -0.099999994}
|
|
||||||
- {x: -0.905, y: -0.12}
|
|
||||||
- {x: -0.935, y: -0.16}
|
|
||||||
- {x: -0.97499996, y: -0.16}
|
|
||||||
- {x: -1.015, y: -0.19}
|
|
||||||
- {x: -1.015, y: -0.19999999}
|
|
||||||
- - {x: 0.945, y: -0.049999997}
|
|
||||||
- {x: 0.965, y: 0.01}
|
|
||||||
- {x: 0.965, y: 0.049999997}
|
|
||||||
- {x: 1.0649999, y: -0.02}
|
|
||||||
- {x: 1.005, y: -0.049999997}
|
|
||||||
- {x: 0.97499996, y: -0.08}
|
|
||||||
- {x: 0.935, y: -0.11}
|
|
||||||
- - {x: -0.185, y: 0.39999998}
|
|
||||||
- {x: -0.155, y: 0.39}
|
|
||||||
- {x: -0.125, y: 0.39}
|
|
||||||
- {x: -0.155, y: 0.38}
|
|
||||||
- {x: -0.155, y: 0.39}
|
|
||||||
m_Bones: []
|
m_Bones: []
|
||||||
m_SpriteID: 0c59ec4e1c1164041b4186ebd0a5e859
|
m_SpriteID: 0c59ec4e1c1164041b4186ebd0a5e859
|
||||||
|
|||||||
@@ -107,6 +107,69 @@ public class UIManager : MonoSingleton<UIManager>
|
|||||||
// ⭐ handle 缓存:用于 Addressables.Release 释放内存
|
// ⭐ handle 缓存:用于 Addressables.Release 释放内存
|
||||||
private readonly Dictionary<UIPanel, AsyncOperationHandle<GameObject>> handleCache = new Dictionary<UIPanel, AsyncOperationHandle<GameObject>>();
|
private readonly Dictionary<UIPanel, AsyncOperationHandle<GameObject>> handleCache = new Dictionary<UIPanel, AsyncOperationHandle<GameObject>>();
|
||||||
public GameObject loadPanel;
|
public GameObject loadPanel;
|
||||||
|
|
||||||
|
// ==================== 加载中界面(obj_JiaZaiZhong) ====================
|
||||||
|
// ⭐ 资源加载超过 jiaZaiZhongDelay(默认 0.1 秒)还没结束才显示"加载中"界面,避免快速加载闪一下。
|
||||||
|
// 支持多段加载并发(引用计数):所有 BeginLoading 都配对 EndLoading 后才隐藏。
|
||||||
|
// 用法:UIManager.BeginLoading(); try { await 加载过程(); } finally { UIManager.EndLoading(); }
|
||||||
|
[Tooltip("资源加载超过该秒数还没结束才显示\"加载中\"界面(避免快速加载闪一下)")]
|
||||||
|
[SerializeField] private float jiaZaiZhongDelay = 0.1f;
|
||||||
|
|
||||||
|
private int _loadingRefCount; // 进行中的资源加载段数
|
||||||
|
private bool _loadingShown; // "加载中"界面是否已显示
|
||||||
|
private Coroutine _loadingDelayCoroutine; // 延迟显示协程(0.1 秒内加载结束就取消,不显示)
|
||||||
|
private bool _jiaZaiZhongWarned; // obj_JiaZaiZhong 未挂引用时只提醒一次
|
||||||
|
|
||||||
|
/// <summary>开始一段资源加载(与 EndLoading 成对):超过 0.1 秒还没结束才显示"加载中"界面</summary>
|
||||||
|
public static void BeginLoading() { Instance.BeginLoadingInternal(); }
|
||||||
|
|
||||||
|
/// <summary>结束一段资源加载(与 BeginLoading 成对)</summary>
|
||||||
|
public static void EndLoading() { Instance.EndLoadingInternal(); }
|
||||||
|
|
||||||
|
private void BeginLoadingInternal()
|
||||||
|
{
|
||||||
|
_loadingRefCount++;
|
||||||
|
if (obj_JiaZaiZhong == null)
|
||||||
|
{
|
||||||
|
if (!_jiaZaiZhongWarned)
|
||||||
|
{
|
||||||
|
_jiaZaiZhongWarned = true;
|
||||||
|
Debug.LogWarning("[UIManager] 加载中界面 obj_JiaZaiZhong 未挂引用,资源加载提示不会显示");
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (_loadingShown || _loadingDelayCoroutine != null) return; // 已显示 / 已在等待显示
|
||||||
|
_loadingDelayCoroutine = StartCoroutine(CoShowJiaZaiZhongAfterDelay());
|
||||||
|
}
|
||||||
|
|
||||||
|
private void EndLoadingInternal()
|
||||||
|
{
|
||||||
|
if (_loadingRefCount > 0) _loadingRefCount--;
|
||||||
|
if (_loadingRefCount > 0) return; // 还有其它加载在进行,继续显示
|
||||||
|
|
||||||
|
if (_loadingDelayCoroutine != null)
|
||||||
|
{
|
||||||
|
StopCoroutine(_loadingDelayCoroutine);
|
||||||
|
_loadingDelayCoroutine = null;
|
||||||
|
}
|
||||||
|
if (_loadingShown)
|
||||||
|
{
|
||||||
|
_loadingShown = false;
|
||||||
|
if (obj_JiaZaiZhong != null) obj_JiaZaiZhong.SetActive(false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private IEnumerator CoShowJiaZaiZhongAfterDelay()
|
||||||
|
{
|
||||||
|
yield return new WaitForSecondsRealtime(jiaZaiZhongDelay);
|
||||||
|
_loadingDelayCoroutine = null;
|
||||||
|
if (_loadingRefCount <= 0 || obj_JiaZaiZhong == null) yield break;
|
||||||
|
|
||||||
|
obj_JiaZaiZhong.SetActive(true);
|
||||||
|
obj_JiaZaiZhong.transform.SetAsLastSibling(); // 盖到最上层,避免被别的面板挡住
|
||||||
|
_loadingShown = true;
|
||||||
|
}
|
||||||
|
|
||||||
public LoadingPanel ShowLoadPanel(VideoClip videoClip, Action action=null)
|
public LoadingPanel ShowLoadPanel(VideoClip videoClip, Action action=null)
|
||||||
{
|
{
|
||||||
ShowAsync(UIPanel.LoginPanel);
|
ShowAsync(UIPanel.LoginPanel);
|
||||||
@@ -399,8 +462,11 @@ public class UIManager : MonoSingleton<UIManager>
|
|||||||
onShown?.Invoke(panel);
|
onShown?.Invoke(panel);
|
||||||
yield break;
|
yield break;
|
||||||
}
|
}
|
||||||
|
// ⭐ 面板资源未缓存:异步加载超过 0.1 秒才显示"加载中"界面
|
||||||
|
BeginLoadingInternal();
|
||||||
var handle = Addressables.LoadAssetAsync<GameObject>(addressMap[type]);
|
var handle = Addressables.LoadAssetAsync<GameObject>(addressMap[type]);
|
||||||
yield return handle;
|
yield return handle;
|
||||||
|
EndLoadingInternal();
|
||||||
if (handle.Status == AsyncOperationStatus.Succeeded)
|
if (handle.Status == AsyncOperationStatus.Succeeded)
|
||||||
{
|
{
|
||||||
prefabCache[type] = handle.Result;
|
prefabCache[type] = handle.Result;
|
||||||
@@ -437,8 +503,11 @@ public class UIManager : MonoSingleton<UIManager>
|
|||||||
onShown?.Invoke(panel);
|
onShown?.Invoke(panel);
|
||||||
yield break;
|
yield break;
|
||||||
}
|
}
|
||||||
|
// ⭐ 面板资源未缓存:异步加载超过 0.1 秒才显示"加载中"界面
|
||||||
|
BeginLoadingInternal();
|
||||||
var handle = Addressables.LoadAssetAsync<GameObject>(addressMap[type]);
|
var handle = Addressables.LoadAssetAsync<GameObject>(addressMap[type]);
|
||||||
yield return handle;
|
yield return handle;
|
||||||
|
EndLoadingInternal();
|
||||||
if (handle.Status == AsyncOperationStatus.Succeeded)
|
if (handle.Status == AsyncOperationStatus.Succeeded)
|
||||||
{
|
{
|
||||||
prefabCache[type] = handle.Result;
|
prefabCache[type] = handle.Result;
|
||||||
|
|||||||
@@ -167,6 +167,15 @@ public class MonsterMoveLine
|
|||||||
private static AsyncOperationHandle<IList<TextAsset>> _bezierHandles;
|
private static AsyncOperationHandle<IList<TextAsset>> _bezierHandles;
|
||||||
|
|
||||||
public static async Task LoadBezierTxtAsync(string path, Action<float> onProgress = null)
|
public static async Task LoadBezierTxtAsync(string path, Action<float> onProgress = null)
|
||||||
|
{
|
||||||
|
// ⭐ 资源加载超过 0.1 秒才显示"加载中"界面(引用计数,快速加载不显示)
|
||||||
|
UIManager.BeginLoading();
|
||||||
|
try { await LoadBezierTxtAsyncCore(path, onProgress); }
|
||||||
|
finally { UIManager.EndLoading(); }
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>LoadBezierTxtAsync 的实际逻辑(外层负责"加载中"界面)</summary>
|
||||||
|
private static async Task LoadBezierTxtAsyncCore(string path, Action<float> onProgress)
|
||||||
{
|
{
|
||||||
// ⭐ 加载前先全量清空上一场的路线缓存:
|
// ⭐ 加载前先全量清空上一场的路线缓存:
|
||||||
// 各玩法普通路线/鱼阵曲线名完全重名(曲线1~N、鱼阵N)但坐标不同,
|
// 各玩法普通路线/鱼阵曲线名完全重名(曲线1~N、鱼阵N)但坐标不同,
|
||||||
|
|||||||
@@ -589,9 +589,9 @@ public class FlyTurretData : TurretData
|
|||||||
_prewarmOrigScale = plane.localScale;
|
_prewarmOrigScale = plane.localScale;
|
||||||
_prewarmOrigActive = plane.gameObject.activeSelf;
|
_prewarmOrigActive = plane.gameObject.activeSelf;
|
||||||
|
|
||||||
// 只开入场要用的 Body+护盾、关掉免费三类——避免把五十来个粒子系统全部初始化(反而更重)
|
// 只开入场要用的 Body、关掉免费三类——避免把五十来个粒子系统全部初始化(反而更重);
|
||||||
|
// ⭐ 护盾粒子拆到下一帧再开:和 Body 骨架/粒子挤同一帧 = 单帧尖峰(90% 收尾窗口卡顿的来源之一)
|
||||||
SetPlaneChildActive(plane, "Body", true);
|
SetPlaneChildActive(plane, "Body", true);
|
||||||
SetPlaneChildActive(plane, "PW_Effect_Defend", true);
|
|
||||||
SetPlaneChildActive(plane, "FreeEffect", false);
|
SetPlaneChildActive(plane, "FreeEffect", false);
|
||||||
SetPlaneChildActive(plane, "FreeEffect_Crit", false);
|
SetPlaneChildActive(plane, "FreeEffect_Crit", false);
|
||||||
SetPlaneChildActive(plane, "FreeEffect_Speedup", false);
|
SetPlaneChildActive(plane, "FreeEffect_Speedup", false);
|
||||||
@@ -602,8 +602,10 @@ public class FlyTurretData : TurretData
|
|||||||
plane.SetParent(holder, true);
|
plane.SetParent(holder, true);
|
||||||
plane.localScale = Vector3.zero;
|
plane.localScale = Vector3.zero;
|
||||||
plane.gameObject.SetActive(true);
|
plane.gameObject.SetActive(true);
|
||||||
yield return null;
|
yield return null; // Body 骨架首帧网格
|
||||||
yield return null; // 让骨架首帧网格、粒子首帧模拟都跑到
|
SetPlaneChildActive(plane, "PW_Effect_Defend", true); // 护盾粒子单独一帧开
|
||||||
|
yield return null; // 护盾首帧模拟
|
||||||
|
yield return null; // 再等一帧让首帧网格上传铺开
|
||||||
|
|
||||||
FinishPrewarmRestore();
|
FinishPrewarmRestore();
|
||||||
Debug.Log($"[XJMH入场] 飞机预热完成({plane.name})");
|
Debug.Log($"[XJMH入场] 飞机预热完成({plane.name})");
|
||||||
|
|||||||
@@ -91,6 +91,15 @@ public class AudioResourcesData
|
|||||||
/// onProgress:进度回调 0~1(按 LoadAssetsAsync 的 PercentComplete),供进房进度条使用;不传则行为不变。
|
/// onProgress:进度回调 0~1(按 LoadAssetsAsync 的 PercentComplete),供进房进度条使用;不传则行为不变。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static async Task LoadAudioGame(Action<float> onProgress = null)
|
public static async Task LoadAudioGame(Action<float> onProgress = null)
|
||||||
|
{
|
||||||
|
// ⭐ 资源加载超过 0.1 秒才显示"加载中"界面(引用计数,快速加载不显示)
|
||||||
|
UIManager.BeginLoading();
|
||||||
|
try { await LoadAudioGameCore(onProgress); }
|
||||||
|
finally { UIManager.EndLoading(); }
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>LoadAudioGame 的实际逻辑(外层负责"加载中"界面)</summary>
|
||||||
|
private static async Task LoadAudioGameCore(Action<float> onProgress)
|
||||||
{
|
{
|
||||||
GameType gameType = GameManager.Instance.gameData.currGameType;
|
GameType gameType = GameManager.Instance.gameData.currGameType;
|
||||||
var keys = new List<string> { Audio_AALabel, gameType.ToString() };
|
var keys = new List<string> { Audio_AALabel, gameType.ToString() };
|
||||||
|
|||||||
@@ -92,6 +92,15 @@ public class FishResourcesData
|
|||||||
/// 供进房进度条使用;不传则行为与原来一致。
|
/// 供进房进度条使用;不传则行为与原来一致。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static async Task LoadFishAssetsData(Action<float> onProgress = null)
|
public static async Task LoadFishAssetsData(Action<float> onProgress = null)
|
||||||
|
{
|
||||||
|
// ⭐ 资源加载超过 0.1 秒才显示"加载中"界面(引用计数,快速加载不显示)
|
||||||
|
UIManager.BeginLoading();
|
||||||
|
try { await LoadFishAssetsDataCore(onProgress); }
|
||||||
|
finally { UIManager.EndLoading(); }
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>LoadFishAssetsData 的实际逻辑(外层负责"加载中"界面)</summary>
|
||||||
|
private static async Task LoadFishAssetsDataCore(Action<float> onProgress)
|
||||||
{
|
{
|
||||||
// 清空对象池
|
// 清空对象池
|
||||||
Pool.Instance.Clear();
|
Pool.Instance.Clear();
|
||||||
|
|||||||
@@ -76,6 +76,15 @@ public class TurretResourcesData
|
|||||||
/// (调用方可回退 GetZhanShenPrefab 查全量字典,平滑迁移)。
|
/// (调用方可回退 GetZhanShenPrefab 查全量字典,平滑迁移)。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static async Task<GameObject> AcquireZhanShenAsync(int turretNumber, ZhanShenUsage usage)
|
public static async Task<GameObject> AcquireZhanShenAsync(int turretNumber, ZhanShenUsage usage)
|
||||||
|
{
|
||||||
|
// ⭐ 资源加载超过 0.1 秒才显示"加载中"界面(缓存命中瞬间完成,不会显示)
|
||||||
|
UIManager.BeginLoading();
|
||||||
|
try { return await AcquireZhanShenAsyncCore(turretNumber, usage); }
|
||||||
|
finally { UIManager.EndLoading(); }
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>AcquireZhanShenAsync 的实际逻辑(外层负责"加载中"界面)</summary>
|
||||||
|
private static async Task<GameObject> AcquireZhanShenAsyncCore(int turretNumber, ZhanShenUsage usage)
|
||||||
{
|
{
|
||||||
var key = (turretNumber, usage);
|
var key = (turretNumber, usage);
|
||||||
_zsRefCount[key] = _zsRefCount.TryGetValue(key, out int c) ? c + 1 : 1;
|
_zsRefCount[key] = _zsRefCount.TryGetValue(key, out int c) ? c + 1 : 1;
|
||||||
@@ -179,6 +188,15 @@ public class TurretResourcesData
|
|||||||
/// 与 ReleaseTurretPrefab 配对(切换/关闭时 -1,归零卸包)。
|
/// 与 ReleaseTurretPrefab 配对(切换/关闭时 -1,归零卸包)。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static async Task<GameObject> AcquireTurretPrefabAsync(int turretNumber)
|
public static async Task<GameObject> AcquireTurretPrefabAsync(int turretNumber)
|
||||||
|
{
|
||||||
|
// ⭐ 资源加载超过 0.1 秒才显示"加载中"界面(缓存命中瞬间完成,不会显示)
|
||||||
|
UIManager.BeginLoading();
|
||||||
|
try { return await AcquireTurretPrefabAsyncCore(turretNumber); }
|
||||||
|
finally { UIManager.EndLoading(); }
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>AcquireTurretPrefabAsync 的实际逻辑(外层负责"加载中"界面)</summary>
|
||||||
|
private static async Task<GameObject> AcquireTurretPrefabAsyncCore(int turretNumber)
|
||||||
{
|
{
|
||||||
_ptRefCount[turretNumber] = _ptRefCount.TryGetValue(turretNumber, out int c) ? c + 1 : 1;
|
_ptRefCount[turretNumber] = _ptRefCount.TryGetValue(turretNumber, out int c) ? c + 1 : 1;
|
||||||
if (_ptPrefabCache.TryGetValue(turretNumber, out var cached)) return cached;
|
if (_ptPrefabCache.TryGetValue(turretNumber, out var cached)) return cached;
|
||||||
@@ -368,6 +386,15 @@ public class TurretResourcesData
|
|||||||
/// 字典中存的就是已销毁对象的引用(Editor 下因 AssetDatabase 模式不会暴露此问题)。
|
/// 字典中存的就是已销毁对象的引用(Editor 下因 AssetDatabase 模式不会暴露此问题)。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static async Task LoadTurretAssetsData()
|
public static async Task LoadTurretAssetsData()
|
||||||
|
{
|
||||||
|
// ⭐ 资源加载超过 0.1 秒才显示"加载中"界面(引用计数,快速加载不显示)
|
||||||
|
UIManager.BeginLoading();
|
||||||
|
try { await LoadTurretAssetsDataCore(); }
|
||||||
|
finally { UIManager.EndLoading(); }
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>LoadTurretAssetsData 的实际逻辑(外层负责"加载中"界面)</summary>
|
||||||
|
private static async Task LoadTurretAssetsDataCore()
|
||||||
{
|
{
|
||||||
turretPrefabDic = new Dictionary<int, GameObject>();
|
turretPrefabDic = new Dictionary<int, GameObject>();
|
||||||
turretGamePrefabDic = new Dictionary<int, GameObject>();
|
turretGamePrefabDic = new Dictionary<int, GameObject>();
|
||||||
|
|||||||
@@ -5342,7 +5342,7 @@ PrefabInstance:
|
|||||||
- target: {fileID: 3823345273878462180, guid: 1bcb895f3655d5548a9ffb4474b98605,
|
- target: {fileID: 3823345273878462180, guid: 1bcb895f3655d5548a9ffb4474b98605,
|
||||||
type: 3}
|
type: 3}
|
||||||
propertyPath: m_SceneBindings.Array.size
|
propertyPath: m_SceneBindings.Array.size
|
||||||
value: 26
|
value: 29
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 3823345273878462180, guid: 1bcb895f3655d5548a9ffb4474b98605,
|
- target: {fileID: 3823345273878462180, guid: 1bcb895f3655d5548a9ffb4474b98605,
|
||||||
type: 3}
|
type: 3}
|
||||||
@@ -5356,6 +5356,24 @@ PrefabInstance:
|
|||||||
value:
|
value:
|
||||||
objectReference: {fileID: -4975399762532968560, guid: 97554428056b1ac4f9f32aface985316,
|
objectReference: {fileID: -4975399762532968560, guid: 97554428056b1ac4f9f32aface985316,
|
||||||
type: 2}
|
type: 2}
|
||||||
|
- target: {fileID: 3823345273878462180, guid: 1bcb895f3655d5548a9ffb4474b98605,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: m_SceneBindings.Array.data[26].key
|
||||||
|
value:
|
||||||
|
objectReference: {fileID: -147752329279606508, guid: 97554428056b1ac4f9f32aface985316,
|
||||||
|
type: 2}
|
||||||
|
- target: {fileID: 3823345273878462180, guid: 1bcb895f3655d5548a9ffb4474b98605,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: m_SceneBindings.Array.data[27].key
|
||||||
|
value:
|
||||||
|
objectReference: {fileID: 6124250156390186977, guid: 97554428056b1ac4f9f32aface985316,
|
||||||
|
type: 2}
|
||||||
|
- target: {fileID: 3823345273878462180, guid: 1bcb895f3655d5548a9ffb4474b98605,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: m_SceneBindings.Array.data[28].key
|
||||||
|
value:
|
||||||
|
objectReference: {fileID: -6477884835058938809, guid: 97554428056b1ac4f9f32aface985316,
|
||||||
|
type: 2}
|
||||||
- target: {fileID: 3823345273878462180, guid: 1bcb895f3655d5548a9ffb4474b98605,
|
- target: {fileID: 3823345273878462180, guid: 1bcb895f3655d5548a9ffb4474b98605,
|
||||||
type: 3}
|
type: 3}
|
||||||
propertyPath: m_SceneBindings.Array.data[24].value
|
propertyPath: m_SceneBindings.Array.data[24].value
|
||||||
@@ -5366,6 +5384,21 @@ PrefabInstance:
|
|||||||
propertyPath: m_SceneBindings.Array.data[25].value
|
propertyPath: m_SceneBindings.Array.data[25].value
|
||||||
value:
|
value:
|
||||||
objectReference: {fileID: 3033651403988009196}
|
objectReference: {fileID: 3033651403988009196}
|
||||||
|
- target: {fileID: 3823345273878462180, guid: 1bcb895f3655d5548a9ffb4474b98605,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: m_SceneBindings.Array.data[26].value
|
||||||
|
value:
|
||||||
|
objectReference: {fileID: 8282567264049790537}
|
||||||
|
- target: {fileID: 3823345273878462180, guid: 1bcb895f3655d5548a9ffb4474b98605,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: m_SceneBindings.Array.data[27].value
|
||||||
|
value:
|
||||||
|
objectReference: {fileID: 7453087164729299865}
|
||||||
|
- target: {fileID: 3823345273878462180, guid: 1bcb895f3655d5548a9ffb4474b98605,
|
||||||
|
type: 3}
|
||||||
|
propertyPath: m_SceneBindings.Array.data[28].value
|
||||||
|
value:
|
||||||
|
objectReference: {fileID: 2215003876436266114}
|
||||||
- target: {fileID: 3824444864287102080, guid: 1bcb895f3655d5548a9ffb4474b98605,
|
- target: {fileID: 3824444864287102080, guid: 1bcb895f3655d5548a9ffb4474b98605,
|
||||||
type: 3}
|
type: 3}
|
||||||
propertyPath: m_Layer
|
propertyPath: m_Layer
|
||||||
@@ -13735,6 +13768,12 @@ CircleCollider2D:
|
|||||||
m_Offset: {x: 0, y: 0}
|
m_Offset: {x: 0, y: 0}
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
m_Radius: 0.5
|
m_Radius: 0.5
|
||||||
|
--- !u!95 &2215003876436266114 stripped
|
||||||
|
Animator:
|
||||||
|
m_CorrespondingSourceObject: {fileID: 4286368811891389748, guid: 1bcb895f3655d5548a9ffb4474b98605,
|
||||||
|
type: 3}
|
||||||
|
m_PrefabInstance: {fileID: 2720591934958713270}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
--- !u!1 &2283344592133234553 stripped
|
--- !u!1 &2283344592133234553 stripped
|
||||||
GameObject:
|
GameObject:
|
||||||
m_CorrespondingSourceObject: {fileID: 4211263933705135823, guid: 1bcb895f3655d5548a9ffb4474b98605,
|
m_CorrespondingSourceObject: {fileID: 4211263933705135823, guid: 1bcb895f3655d5548a9ffb4474b98605,
|
||||||
@@ -15072,6 +15111,12 @@ CircleCollider2D:
|
|||||||
m_Offset: {x: 0.018183004, y: -0.14367317}
|
m_Offset: {x: 0.018183004, y: -0.14367317}
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
m_Radius: 0.7301043
|
m_Radius: 0.7301043
|
||||||
|
--- !u!95 &7453087164729299865 stripped
|
||||||
|
Animator:
|
||||||
|
m_CorrespondingSourceObject: {fileID: 4805293225234868783, guid: 1bcb895f3655d5548a9ffb4474b98605,
|
||||||
|
type: 3}
|
||||||
|
m_PrefabInstance: {fileID: 2720591934958713270}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
--- !u!1 &7511131309169197708 stripped
|
--- !u!1 &7511131309169197708 stripped
|
||||||
GameObject:
|
GameObject:
|
||||||
m_CorrespondingSourceObject: {fileID: 5619821435806153530, guid: 1bcb895f3655d5548a9ffb4474b98605,
|
m_CorrespondingSourceObject: {fileID: 5619821435806153530, guid: 1bcb895f3655d5548a9ffb4474b98605,
|
||||||
@@ -15154,6 +15199,12 @@ CircleCollider2D:
|
|||||||
m_Offset: {x: 0.0073856106, y: -0.08785672}
|
m_Offset: {x: 0.0073856106, y: -0.08785672}
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
m_Radius: 0.6284307
|
m_Radius: 0.6284307
|
||||||
|
--- !u!1 &8282567264049790537 stripped
|
||||||
|
GameObject:
|
||||||
|
m_CorrespondingSourceObject: {fileID: 6282782031822112767, guid: 1bcb895f3655d5548a9ffb4474b98605,
|
||||||
|
type: 3}
|
||||||
|
m_PrefabInstance: {fileID: 2720591934958713270}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
--- !u!1 &8394534036027403222 stripped
|
--- !u!1 &8394534036027403222 stripped
|
||||||
GameObject:
|
GameObject:
|
||||||
m_CorrespondingSourceObject: {fileID: 5890175915406086752, guid: 1bcb895f3655d5548a9ffb4474b98605,
|
m_CorrespondingSourceObject: {fileID: 5890175915406086752, guid: 1bcb895f3655d5548a9ffb4474b98605,
|
||||||
|
|||||||
@@ -387,7 +387,7 @@ MonoBehaviour:
|
|||||||
- {fileID: 0}
|
- {fileID: 0}
|
||||||
needLockEvent: 0
|
needLockEvent: 0
|
||||||
createVideoClip: {fileID: 0}
|
createVideoClip: {fileID: 0}
|
||||||
rotationPY: 0
|
rotationPY: 60
|
||||||
useMirrorCompensate: 1
|
useMirrorCompensate: 1
|
||||||
useRollSignFlip: 0
|
useRollSignFlip: 0
|
||||||
useRouteFlipX: 0
|
useRouteFlipX: 0
|
||||||
|
|||||||
@@ -114,7 +114,7 @@ GameObject:
|
|||||||
m_Icon: {fileID: 0}
|
m_Icon: {fileID: 0}
|
||||||
m_NavMeshLayer: 0
|
m_NavMeshLayer: 0
|
||||||
m_StaticEditorFlags: 0
|
m_StaticEditorFlags: 0
|
||||||
m_IsActive: 1
|
m_IsActive: 0
|
||||||
--- !u!224 &439111589277315844
|
--- !u!224 &439111589277315844
|
||||||
RectTransform:
|
RectTransform:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
|
|||||||
@@ -311,7 +311,7 @@ public class GameMainPanel_FishBase : GameMainPanel_Base
|
|||||||
[Tooltip("鱼创建时播放的入场视频控件,由 Boss 预制体的 createVideoClip 指定视频片段。Inspector 拖拽场景中的 VideoPlayer 控件")]
|
[Tooltip("鱼创建时播放的入场视频控件,由 Boss 预制体的 createVideoClip 指定视频片段。Inspector 拖拽场景中的 VideoPlayer 控件")]
|
||||||
public UnityEngine.Video.VideoPlayer createVideoPlayer;
|
public UnityEngine.Video.VideoPlayer createVideoPlayer;
|
||||||
|
|
||||||
/// <summary>开火音效(static:切房新面板实例直接复用,避免重复加载;离房时 UnLoadBulletClip 释放并置空)</summary>
|
/// <summary>开火音效(static:全局常驻,切房/重进房直接复用;见 LoadBulletClip 注释)</summary>
|
||||||
static AudioClip bulletClip;
|
static AudioClip bulletClip;
|
||||||
|
|
||||||
public List<int> paoBeiList = new List<int>();
|
public List<int> paoBeiList = new List<int>();
|
||||||
@@ -480,6 +480,8 @@ public class GameMainPanel_FishBase : GameMainPanel_Base
|
|||||||
/// XJMH 进房首帧预热(加载 90%→100% 收尾窗口调用,进度条还显示着玩家看不到):
|
/// XJMH 进房首帧预热(加载 90%→100% 收尾窗口调用,进度条还显示着玩家看不到):
|
||||||
/// 把本地座位(座位自带炮台随 Awake 一起初始化)与"入场要用的那架完整飞机"提前点亮——
|
/// 把本地座位(座位自带炮台随 Awake 一起初始化)与"入场要用的那架完整飞机"提前点亮——
|
||||||
/// 这些 XJMH 独有资产首次初始化(骨架/粒子/贴图首上传)很重,全堆在 100% 那一帧玩家会看到明显卡顿。
|
/// 这些 XJMH 独有资产首次初始化(骨架/粒子/贴图首上传)很重,全堆在 100% 那一帧玩家会看到明显卡顿。
|
||||||
|
/// ⭐ 按帧拆散(避免"90% 卡死"):先让一帧(进度条先刷新)→ 只留默认炮台、关掉其余 3 把 →
|
||||||
|
/// 激活座位(1 套骨架) → 等两帧 → 飞机分两帧点亮(Body / 护盾粒子各一帧)。
|
||||||
/// 入场动画有加载完成门卫(IsGameLoadCompleted),预热不会导致动画提前播放。
|
/// 入场动画有加载完成门卫(IsGameLoadCompleted),预热不会导致动画提前播放。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private void PrewarmXJMHForLocalSeat()
|
private void PrewarmXJMHForLocalSeat()
|
||||||
@@ -495,11 +497,34 @@ public class GameMainPanel_FishBase : GameMainPanel_Base
|
|||||||
|
|
||||||
private IEnumerator PrewarmXJMHCoroutine(SitPosData sit)
|
private IEnumerator PrewarmXJMHCoroutine(SitPosData sit)
|
||||||
{
|
{
|
||||||
// ① 提前激活本地座位:Awake → InitXJMHTurret → 激活默认炮台(PW_Battery_x 首次初始化在这里完成,
|
// ⭐ 先等一帧:StartCoroutine 会同步执行到第一个 yield —— 原先座位激活的重活
|
||||||
|
// 和"90%"写入进度条是同一帧(数字还没刷新、主线程就被占住,看起来"90 卡死")。
|
||||||
|
// 先让一帧,进度条和收尾循环跑起来再干重活
|
||||||
|
yield return null;
|
||||||
|
|
||||||
|
bool willActivate = sit != null && !sit.gameObject.activeSelf;
|
||||||
|
|
||||||
|
// ⭐ 只有"座位从未激活、这次预热才激活"时才预关炮台:
|
||||||
|
// 预制体里 4 把 XJMH 炮台(SkeletonGraphic)默认激活,座位 SetActive 时 4 套骨架/材质/贴图
|
||||||
|
// 挤在同一帧全部首初始化(单帧尖峰巨大);先关掉后,这一帧只初始化 Awake 点亮的默认那把。
|
||||||
|
// ⚠️ 座位已在激活状态时不能动(Awake 不会再跑,关掉就回不来)
|
||||||
|
if (willActivate && sit.xjmhTurretList != null)
|
||||||
|
{
|
||||||
|
for (int i = 0; i < sit.xjmhTurretList.Count; i++)
|
||||||
|
{
|
||||||
|
var t = sit.xjmhTurretList[i];
|
||||||
|
if (t != null && t.gameObject.activeSelf) t.gameObject.SetActive(false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// ① 提前激活本地座位:Awake → InitXJMHTurret → 激活默认炮台(首初始化在这里完成,
|
||||||
// 被加载界面遮住)。100% 时 JoinGame 再 SetActive(true) 是幂等的,不影响正常入座流程
|
// 被加载界面遮住)。100% 时 JoinGame 再 SetActive(true) 是幂等的,不影响正常入座流程
|
||||||
if (sit != null && !sit.gameObject.activeSelf)
|
if (willActivate)
|
||||||
sit.gameObject.SetActive(true);
|
sit.gameObject.SetActive(true);
|
||||||
yield return null; // 让座位/炮台这帧的重活落在加载画面里
|
|
||||||
|
// 座位/炮台初始化(骨架首帧网格上传、材质铺开)多留两帧,再点飞机
|
||||||
|
yield return null;
|
||||||
|
yield return null;
|
||||||
|
|
||||||
// ② 飞机隐藏预热(座位激活后 currentTurret 已就绪 = 入场会用的那把)
|
// ② 飞机隐藏预热(座位激活后 currentTurret 已就绪 = 入场会用的那把)
|
||||||
var turret = sit != null ? sit.currentTurret as FlyTurretData : null;
|
var turret = sit != null ? sit.currentTurret as FlyTurretData : null;
|
||||||
@@ -1361,6 +1386,11 @@ public class GameMainPanel_FishBase : GameMainPanel_Base
|
|||||||
UIManager.Instance.ReleaseHomeUI();
|
UIManager.Instance.ReleaseHomeUI();
|
||||||
SetLoadProgress(0.02f);
|
SetLoadProgress(0.02f);
|
||||||
|
|
||||||
|
// ⭐ 提前后台加载开火音效 PW_Shoot(Audio+PTCBZS,独立小包):
|
||||||
|
// 与后面的路线/鱼包/音频加载并行跑,78% 处 await 时早已完成,
|
||||||
|
// 不再把"打开小包 + 标签求交集"的耗时压在 78% 那一帧(进度条卡死点)
|
||||||
|
_ = LoadBulletClip();
|
||||||
|
|
||||||
// 路线:2~30(大包同步解压期间回调不刷新 → 预估进度保证条持续推进)
|
// 路线:2~30(大包同步解压期间回调不刷新 → 预估进度保证条持续推进)
|
||||||
StartCreepProgress(0.02f, 0.30f);
|
StartCreepProgress(0.02f, 0.30f);
|
||||||
await MonsterMoveLine.LoadBezier(p =>
|
await MonsterMoveLine.LoadBezier(p =>
|
||||||
@@ -1386,7 +1416,8 @@ public class GameMainPanel_FishBase : GameMainPanel_Base
|
|||||||
if (flow != _resourceFlowToken) return;
|
if (flow != _resourceFlowToken) return;
|
||||||
|
|
||||||
// ⭐ 开火音效 PW_Shoot 在 Default Local Group(Audio+PTCBZS 双标签交集检索):
|
// ⭐ 开火音效 PW_Shoot 在 Default Local Group(Audio+PTCBZS 双标签交集检索):
|
||||||
// 只命中 Default 小包,不把其它玩法的巨型音频包拉进内存;句柄由 LoadBulletClip 静态保存,离房释放
|
// 只命中 Default 小包,不把其它玩法的巨型音频包拉进内存;
|
||||||
|
// 资源在 0~2% 已后台 kick-off 且全局常驻,这里 await 基本瞬时通过(不再把打开包的耗时压在 78% 主线程上)
|
||||||
StartCreepProgress(0.78f, 0.84f);
|
StartCreepProgress(0.78f, 0.84f);
|
||||||
await LoadBulletClip();
|
await LoadBulletClip();
|
||||||
StopCreepProgress();
|
StopCreepProgress();
|
||||||
@@ -1484,7 +1515,8 @@ public class GameMainPanel_FishBase : GameMainPanel_Base
|
|||||||
if (flow != _resourceFlowToken) return; // ⭐ 期间已有新流程(新面板加载),剩余卸载作废
|
if (flow != _resourceFlowToken) return; // ⭐ 期间已有新流程(新面板加载),剩余卸载作废
|
||||||
await AudioResourcesData.UnLoadAudioGame();
|
await AudioResourcesData.UnLoadAudioGame();
|
||||||
if (flow != _resourceFlowToken) return;
|
if (flow != _resourceFlowToken) return;
|
||||||
UnLoadBulletClip(); // ⭐ 释放开火音效句柄(引用计数归零)
|
// ⭐ 开火音效 PW_Shoot(Audio+PTCBZS)不释放:全局常驻(见 LoadBulletClip 注释,
|
||||||
|
// 独立小包反复开关只会把打开耗时反复压在进房 78% 那一帧,省不到内存)
|
||||||
TurretResourcesData.UnloadAllZhanShen(ZhanShenUsage.GamePlay); // ⭐ 卸载按需加载的战神(游戏内)
|
TurretResourcesData.UnloadAllZhanShen(ZhanShenUsage.GamePlay); // ⭐ 卸载按需加载的战神(游戏内)
|
||||||
TurretResourcesData.UnloadAllTurretPrefabs(); // ⭐ 卸载按需加载的炮台/翅膀 prefab
|
TurretResourcesData.UnloadAllTurretPrefabs(); // ⭐ 卸载按需加载的炮台/翅膀 prefab
|
||||||
await MonsterMoveLine.UnLoadBezier();
|
await MonsterMoveLine.UnLoadBezier();
|
||||||
@@ -1510,29 +1542,27 @@ public class GameMainPanel_FishBase : GameMainPanel_Base
|
|||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// ⭐ 开火音效 PW_Shoot 的加载句柄(static:新老面板实例共享)。
|
/// ⭐ 开火音效 PW_Shoot 的加载句柄(static:新老面板实例共享)。
|
||||||
/// PW_Shoot 在 Default Local Group(Audio+PTCBZS),该包因默认音频常驻本就不会卸载,
|
/// PW_Shoot 是全局开火音效、每局必用,且各组已是 PackSeparately(每个资源独立小包):
|
||||||
/// 但句柄仍要显式保存/释放,避免每次进房引用计数 +1 无限累加。
|
/// 旧实现"每次进房 Release+Load、离房再释放"省不到内存(下一局马上又加载回来),
|
||||||
|
/// 却把"打开小包 + Audio/PTCBZS 标签求交集"的主线程耗时全压在进房 78% 那一帧(进度条卡死点)。
|
||||||
|
/// 现在只加载一次、程序生命周期常驻;首次加载在进房 0~2%(后台)就 kick-off,78% 处直接通过。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private static AsyncOperationHandle<IList<AudioClip>> _bulletClipHandle;
|
private static AsyncOperationHandle<IList<AudioClip>> _bulletClipHandle;
|
||||||
|
private static bool _bulletClipStarted;
|
||||||
|
|
||||||
/// <summary>加载开火音效(Audio+PTCBZS 交集,只命中 Default Local Group 里的 PW_Shoot)</summary>
|
/// <summary>加载开火音效(Audio+PTCBZS 交集,只命中 Default Local Group 里的 PW_Shoot)。
|
||||||
|
/// 幂等:已启动过则复用同一句柄(通常早已完成,await 直接通过)。</summary>
|
||||||
private static async Task LoadBulletClip()
|
private static async Task LoadBulletClip()
|
||||||
{
|
{
|
||||||
// 防御:上一轮句柄未释放时先释放
|
if (!_bulletClipStarted)
|
||||||
if (_bulletClipHandle.IsValid())
|
{
|
||||||
Addressables.Release(_bulletClipHandle);
|
_bulletClipStarted = true;
|
||||||
|
_bulletClipHandle = Addressables.LoadAssetsAsync<AudioClip>(new List<string> { "Audio", "PTCBZS" }, null,
|
||||||
_bulletClipHandle = Addressables.LoadAssetsAsync<AudioClip>(new List<string> { "Audio", "PTCBZS" }, null,
|
Addressables.MergeMode.Intersection);
|
||||||
Addressables.MergeMode.Intersection);
|
}
|
||||||
await _bulletClipHandle.Task;
|
if (!_bulletClipHandle.IsValid()) return;
|
||||||
}
|
try { await _bulletClipHandle.Task; }
|
||||||
|
catch (Exception e) { Debug.LogError($"开火音效加载失败: {e.Message}"); }
|
||||||
/// <summary>释放开火音效句柄(离房卸载流程调用;static 引用一并置空防悬空)</summary>
|
|
||||||
private static void UnLoadBulletClip()
|
|
||||||
{
|
|
||||||
if (_bulletClipHandle.IsValid())
|
|
||||||
Addressables.Release(_bulletClipHandle);
|
|
||||||
bulletClip = null;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -1545,7 +1575,7 @@ public class GameMainPanel_FishBase : GameMainPanel_Base
|
|||||||
{
|
{
|
||||||
await FishResourcesData.UnLoadFishAssetsData();
|
await FishResourcesData.UnLoadFishAssetsData();
|
||||||
await AudioResourcesData.UnLoadAudioGame();
|
await AudioResourcesData.UnLoadAudioGame();
|
||||||
UnLoadBulletClip();
|
// ⭐ 开火音效 PW_Shoot 常驻不释放(见 LoadBulletClip 注释)
|
||||||
TurretResourcesData.UnloadAllZhanShen(ZhanShenUsage.GamePlay);
|
TurretResourcesData.UnloadAllZhanShen(ZhanShenUsage.GamePlay);
|
||||||
TurretResourcesData.UnloadAllTurretPrefabs();
|
TurretResourcesData.UnloadAllTurretPrefabs();
|
||||||
await MonsterMoveLine.UnLoadBezier();
|
await MonsterMoveLine.UnLoadBezier();
|
||||||
@@ -1632,7 +1662,7 @@ public class GameMainPanel_FishBase : GameMainPanel_Base
|
|||||||
|
|
||||||
SetUnloadProgress(0.4f);
|
SetUnloadProgress(0.4f);
|
||||||
await AudioResourcesData.UnLoadAudioGame();
|
await AudioResourcesData.UnLoadAudioGame();
|
||||||
UnLoadBulletClip(); // ⭐ 释放开火音效句柄(引用计数归零)
|
// ⭐ 开火音效 PW_Shoot(Audio+PTCBZS)不释放:全局常驻(见 LoadBulletClip 注释)
|
||||||
TurretResourcesData.UnloadAllZhanShen(ZhanShenUsage.GamePlay); // ⭐ 卸载按需加载的战神(游戏内)
|
TurretResourcesData.UnloadAllZhanShen(ZhanShenUsage.GamePlay); // ⭐ 卸载按需加载的战神(游戏内)
|
||||||
TurretResourcesData.UnloadAllTurretPrefabs(); // ⭐ 卸载按需加载的炮台/翅膀 prefab
|
TurretResourcesData.UnloadAllTurretPrefabs(); // ⭐ 卸载按需加载的炮台/翅膀 prefab
|
||||||
|
|
||||||
|
|||||||
@@ -160,7 +160,7 @@ MonoBehaviour:
|
|||||||
m_MinValue: 0
|
m_MinValue: 0
|
||||||
m_MaxValue: 1
|
m_MaxValue: 1
|
||||||
m_WholeNumbers: 0
|
m_WholeNumbers: 0
|
||||||
m_Value: 1
|
m_Value: 0
|
||||||
m_OnValueChanged:
|
m_OnValueChanged:
|
||||||
m_PersistentCalls:
|
m_PersistentCalls:
|
||||||
m_Calls: []
|
m_Calls: []
|
||||||
@@ -5849,7 +5849,7 @@ MonoBehaviour:
|
|||||||
m_OnCullStateChanged:
|
m_OnCullStateChanged:
|
||||||
m_PersistentCalls:
|
m_PersistentCalls:
|
||||||
m_Calls: []
|
m_Calls: []
|
||||||
m_text: LV:211
|
m_text: LV:0
|
||||||
m_isRightToLeft: 0
|
m_isRightToLeft: 0
|
||||||
m_fontAsset: {fileID: 11400000, guid: 5d4a713fdd931db4c9ce49f068b54e0a, type: 2}
|
m_fontAsset: {fileID: 11400000, guid: 5d4a713fdd931db4c9ce49f068b54e0a, type: 2}
|
||||||
m_sharedMaterial: {fileID: 3593458263369068374, guid: 5d4a713fdd931db4c9ce49f068b54e0a,
|
m_sharedMaterial: {fileID: 3593458263369068374, guid: 5d4a713fdd931db4c9ce49f068b54e0a,
|
||||||
|
|||||||
Reference in New Issue
Block a user