主角技能提交
parent
54b07410bf
commit
24f0812b9f
Binary file not shown.
|
After Width: | Height: | Size: 6.0 KiB |
|
|
@ -0,0 +1,110 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 10d2845dd3cccf747adc543b8143de73
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
externalObjects: {}
|
||||
serializedVersion: 9
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 2
|
||||
aniso: -1
|
||||
mipBias: -100
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 2
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: 65
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 1
|
||||
androidETC2FallbackOverride: 0
|
||||
- serializedVersion: 2
|
||||
buildTarget: iPhone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: 56
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 1
|
||||
androidETC2FallbackOverride: 0
|
||||
- serializedVersion: 2
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: baeac1342666f2142973f24ebb1d793b
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
spritePackingTag: FloatingViewAtlas
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 5.9 KiB |
|
|
@ -0,0 +1,110 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 5a7da273e1eb911408d85566c94aaaed
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
externalObjects: {}
|
||||
serializedVersion: 9
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 2
|
||||
aniso: -1
|
||||
mipBias: -100
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 2
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: 65
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 1
|
||||
androidETC2FallbackOverride: 0
|
||||
- serializedVersion: 2
|
||||
buildTarget: iPhone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: 56
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 1
|
||||
androidETC2FallbackOverride: 0
|
||||
- serializedVersion: 2
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 04ec5d5c361e0954092c0995c481b16d
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
spritePackingTag: FloatingViewAtlas
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -33941,12 +33941,13 @@ RectTransform:
|
|||
- {fileID: 4314914839250506137}
|
||||
- {fileID: 1842165961194409960}
|
||||
- {fileID: 1103730546490195052}
|
||||
- {fileID: 6087615274432925628}
|
||||
m_Father: {fileID: 954781532}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 1, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 0}
|
||||
m_AnchoredPosition: {x: -50, y: 199.6}
|
||||
m_AnchoredPosition: {x: -50, y: 199.59961}
|
||||
m_SizeDelta: {x: 100, y: 100}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &8374736667363694714
|
||||
|
|
@ -79836,6 +79837,7 @@ RectTransform:
|
|||
- {fileID: 6912347825052629471}
|
||||
- {fileID: 5621759011565849955}
|
||||
- {fileID: 2943858860639768464}
|
||||
- {fileID: 7677069338900041530}
|
||||
m_Father: {fileID: 1966515042}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
|
|
@ -88172,6 +88174,41 @@ MonoBehaviour:
|
|||
m_FillClockwise: 1
|
||||
m_FillOrigin: 0
|
||||
m_UseSpriteMesh: 0
|
||||
--- !u!1 &3114259921062265060
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 6087615274432925628}
|
||||
m_Layer: 5
|
||||
m_Name: 100
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 0
|
||||
--- !u!224 &6087615274432925628
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 3114259921062265060}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 0.7, y: 0.7, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 2195685921775563767}
|
||||
m_RootOrder: 6
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 50, y: 350}
|
||||
m_SizeDelta: {x: 100, y: 100}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!1 &3183191374453209385
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
|
@ -108426,6 +108463,41 @@ MonoBehaviour:
|
|||
m_FillClockwise: 1
|
||||
m_FillOrigin: 0
|
||||
m_UseSpriteMesh: 0
|
||||
--- !u!1 &3914204520970231352
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 7677069338900041530}
|
||||
m_Layer: 5
|
||||
m_Name: 101
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 0
|
||||
--- !u!224 &7677069338900041530
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 3914204520970231352}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 0.7, y: 0.7, z: 0.9999204}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 4151010342984944770}
|
||||
m_RootOrder: 6
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 50, y: 30}
|
||||
m_SizeDelta: {x: 100, y: 100}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!1 &3946641810568772026
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
|
@ -235817,22 +235889,12 @@ PrefabInstance:
|
|||
propertyPath: m_Pivot.y
|
||||
value: 0.5
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031818352649172, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031818794305969, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031819195525549, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031820207909310, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
- target: {fileID: 2320031818352649172, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
|
|
@ -235852,6 +235914,16 @@ PrefabInstance:
|
|||
propertyPath: m_AnchoredPosition.y
|
||||
value: -16.999998
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031820207909310, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031819195525549, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: e356d5948e4971f499cfe38db3551f59, type: 3}
|
||||
--- !u!224 &4228769374436639584 stripped
|
||||
|
|
@ -235982,22 +236054,12 @@ PrefabInstance:
|
|||
propertyPath: m_Pivot.y
|
||||
value: 0.5
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031818352649172, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031818794305969, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031819195525549, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031820207909310, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
- target: {fileID: 2320031818352649172, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
|
|
@ -236017,6 +236079,16 @@ PrefabInstance:
|
|||
propertyPath: m_AnchoredPosition.y
|
||||
value: -16.999998
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031820207909310, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031819195525549, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: e356d5948e4971f499cfe38db3551f59, type: 3}
|
||||
--- !u!224 &4082100120160718929 stripped
|
||||
|
|
@ -236292,22 +236364,12 @@ PrefabInstance:
|
|||
propertyPath: m_Pivot.y
|
||||
value: 0.5
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031818352649172, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031818794305969, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031819195525549, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031820207909310, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
- target: {fileID: 2320031818352649172, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
|
|
@ -236327,6 +236389,16 @@ PrefabInstance:
|
|||
propertyPath: m_AnchoredPosition.y
|
||||
value: -16.999998
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031820207909310, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031819195525549, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: e356d5948e4971f499cfe38db3551f59, type: 3}
|
||||
--- !u!224 &732539848799529134 stripped
|
||||
|
|
@ -236457,22 +236529,12 @@ PrefabInstance:
|
|||
propertyPath: m_Pivot.y
|
||||
value: 0.5
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031818352649172, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031818794305969, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031819195525549, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031820207909310, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
- target: {fileID: 2320031818352649172, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
|
|
@ -236492,6 +236554,16 @@ PrefabInstance:
|
|||
propertyPath: m_AnchoredPosition.y
|
||||
value: -16.999998
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031820207909310, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031819195525549, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: e356d5948e4971f499cfe38db3551f59, type: 3}
|
||||
--- !u!224 &1614343476964916978 stripped
|
||||
|
|
@ -236622,22 +236694,12 @@ PrefabInstance:
|
|||
propertyPath: m_Pivot.y
|
||||
value: 0.5
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031818352649172, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031818794305969, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031819195525549, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031820207909310, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
- target: {fileID: 2320031818352649172, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
|
|
@ -236657,6 +236719,16 @@ PrefabInstance:
|
|||
propertyPath: m_AnchoredPosition.y
|
||||
value: -16.999998
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031820207909310, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031819195525549, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: e356d5948e4971f499cfe38db3551f59, type: 3}
|
||||
--- !u!224 &6954216252396688781 stripped
|
||||
|
|
@ -236932,22 +237004,12 @@ PrefabInstance:
|
|||
propertyPath: m_Pivot.y
|
||||
value: 0.5
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031818352649172, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031818794305969, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031819195525549, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031820207909310, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
- target: {fileID: 2320031818352649172, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
|
|
@ -236967,6 +237029,16 @@ PrefabInstance:
|
|||
propertyPath: m_AnchoredPosition.y
|
||||
value: -16.999998
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031820207909310, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2320031819195525549, guid: e356d5948e4971f499cfe38db3551f59,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 3.2600002
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: e356d5948e4971f499cfe38db3551f59, type: 3}
|
||||
--- !u!224 &5143580857320041208 stripped
|
||||
|
|
|
|||
|
|
@ -19843,7 +19843,7 @@ MonoBehaviour:
|
|||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 0
|
||||
m_RaycastTarget: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
|
|
@ -56304,7 +56304,7 @@ MonoBehaviour:
|
|||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 0
|
||||
m_RaycastTarget: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
|
|
@ -56426,7 +56426,7 @@ MonoBehaviour:
|
|||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 0
|
||||
m_RaycastTarget: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
|
|
@ -66691,7 +66691,7 @@ MonoBehaviour:
|
|||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 0
|
||||
m_RaycastTarget: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,7 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 0abe38ba5a49e714e8b506546b757bf3
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -986,6 +986,7 @@ RedPointType = {
|
|||
QiJieShiLian = 860,--入口
|
||||
QiJieTreasure = 8601,--秘宝
|
||||
WorldArena_reward = 672, --玉虚论道奖励
|
||||
playerSkill = 673, --主角技能
|
||||
}
|
||||
|
||||
RedPointStatus = {
|
||||
|
|
|
|||
|
|
@ -586,7 +586,7 @@ function SetIcon(spLoader, id)
|
|||
return
|
||||
end
|
||||
icon = spLoader:LoadSprite(resPath)
|
||||
return icon
|
||||
return icon,itemConfig[id]
|
||||
end
|
||||
|
||||
function SetFrame(spLoader, id)
|
||||
|
|
|
|||
|
|
@ -227,6 +227,8 @@ ConfigName = {
|
|||
MServerRankReward="MServerRankReward",
|
||||
MServerArenaSetting="MServerArenaSetting",
|
||||
FourQuadrantConfig = "FourQuadrantConfig",
|
||||
PlayerSkill = "PlayerSkill",
|
||||
PlayerSkillBasicTable = "PlayerSkillBasicTable",
|
||||
}
|
||||
|
||||
require "Framework/GameDataBase"
|
||||
|
|
|
|||
|
|
@ -420,6 +420,7 @@ UIName = {
|
|||
WorldArenaBattleInfoPanel=417, --玉虚论道对战信息界面
|
||||
FourQuadrantGongmingPopup=419,--四象心法共鸣界面
|
||||
GeneralTreasurePanel=420, --通用秘宝界面
|
||||
PracticeSkillInfoPanel = 430, --修行主角技能信息界面
|
||||
}
|
||||
|
||||
SubUIConfig = {
|
||||
|
|
|
|||
|
|
@ -98,6 +98,7 @@ FIGHTTEAMINFO_POKEMONUNITLIST_FIELD = protobuf.FieldDescriptor();
|
|||
FIGHTTEAMINFO_TEAMPASSIVELIST_FIELD = protobuf.FieldDescriptor();
|
||||
FIGHTTEAMINFO_SPECIALPASSIVE_FIELD = protobuf.FieldDescriptor();
|
||||
FIGHTTEAMINFO_FIRSTCAMP_FIELD = protobuf.FieldDescriptor();
|
||||
FIGHTTEAMINFO_FORCESCORE_FIELD = protobuf.FieldDescriptor();
|
||||
EVENTBEHAVIORVALUES = protobuf.Descriptor();
|
||||
EVENTBEHAVIORVALUES_BEHAVIORVALUES_FIELD = protobuf.FieldDescriptor();
|
||||
EVENTBEHAVIORCOMMON = protobuf.Descriptor();
|
||||
|
|
@ -771,6 +772,9 @@ LIKABLEINFO_LIKABLENUM_FIELD = protobuf.FieldDescriptor();
|
|||
EQUIPBOOKINFO = protobuf.Descriptor();
|
||||
EQUIPBOOKINFO_EQUIPID_FIELD = protobuf.FieldDescriptor();
|
||||
EQUIPBOOKINFO_NUM_FIELD = protobuf.FieldDescriptor();
|
||||
PRACTICESKILLINFO = protobuf.Descriptor();
|
||||
PRACTICESKILLINFO_SKILLID_FIELD = protobuf.FieldDescriptor();
|
||||
PRACTICESKILLINFO_SKILLLV_FIELD = protobuf.FieldDescriptor();
|
||||
|
||||
ERRORRESPONSE_ERRCODE_FIELD.name = "errCode"
|
||||
ERRORRESPONSE_ERRCODE_FIELD.full_name = ".rpc.protocols.ErrorResponse.errCode"
|
||||
|
|
@ -1684,11 +1688,21 @@ FIGHTTEAMINFO_FIRSTCAMP_FIELD.default_value = 0
|
|||
FIGHTTEAMINFO_FIRSTCAMP_FIELD.type = 5
|
||||
FIGHTTEAMINFO_FIRSTCAMP_FIELD.cpp_type = 1
|
||||
|
||||
FIGHTTEAMINFO_FORCESCORE_FIELD.name = "forceScore"
|
||||
FIGHTTEAMINFO_FORCESCORE_FIELD.full_name = ".rpc.protocols.FightTeamInfo.forceScore"
|
||||
FIGHTTEAMINFO_FORCESCORE_FIELD.number = 6
|
||||
FIGHTTEAMINFO_FORCESCORE_FIELD.index = 5
|
||||
FIGHTTEAMINFO_FORCESCORE_FIELD.label = 1
|
||||
FIGHTTEAMINFO_FORCESCORE_FIELD.has_default_value = false
|
||||
FIGHTTEAMINFO_FORCESCORE_FIELD.default_value = 0
|
||||
FIGHTTEAMINFO_FORCESCORE_FIELD.type = 3
|
||||
FIGHTTEAMINFO_FORCESCORE_FIELD.cpp_type = 2
|
||||
|
||||
FIGHTTEAMINFO.name = "FightTeamInfo"
|
||||
FIGHTTEAMINFO.full_name = ".rpc.protocols.FightTeamInfo"
|
||||
FIGHTTEAMINFO.nested_types = {}
|
||||
FIGHTTEAMINFO.enum_types = {}
|
||||
FIGHTTEAMINFO.fields = {FIGHTTEAMINFO_FIGHTUNITLIST_FIELD, FIGHTTEAMINFO_POKEMONUNITLIST_FIELD, FIGHTTEAMINFO_TEAMPASSIVELIST_FIELD, FIGHTTEAMINFO_SPECIALPASSIVE_FIELD, FIGHTTEAMINFO_FIRSTCAMP_FIELD}
|
||||
FIGHTTEAMINFO.fields = {FIGHTTEAMINFO_FIGHTUNITLIST_FIELD, FIGHTTEAMINFO_POKEMONUNITLIST_FIELD, FIGHTTEAMINFO_TEAMPASSIVELIST_FIELD, FIGHTTEAMINFO_SPECIALPASSIVE_FIELD, FIGHTTEAMINFO_FIRSTCAMP_FIELD, FIGHTTEAMINFO_FORCESCORE_FIELD}
|
||||
FIGHTTEAMINFO.is_extendable = false
|
||||
FIGHTTEAMINFO.extensions = {}
|
||||
EVENTBEHAVIORVALUES_BEHAVIORVALUES_FIELD.name = "behaviorValues"
|
||||
|
|
@ -8110,6 +8124,33 @@ EQUIPBOOKINFO.enum_types = {}
|
|||
EQUIPBOOKINFO.fields = {EQUIPBOOKINFO_EQUIPID_FIELD, EQUIPBOOKINFO_NUM_FIELD}
|
||||
EQUIPBOOKINFO.is_extendable = false
|
||||
EQUIPBOOKINFO.extensions = {}
|
||||
PRACTICESKILLINFO_SKILLID_FIELD.name = "skillId"
|
||||
PRACTICESKILLINFO_SKILLID_FIELD.full_name = ".rpc.protocols.PracticeSkillInfo.skillId"
|
||||
PRACTICESKILLINFO_SKILLID_FIELD.number = 1
|
||||
PRACTICESKILLINFO_SKILLID_FIELD.index = 0
|
||||
PRACTICESKILLINFO_SKILLID_FIELD.label = 1
|
||||
PRACTICESKILLINFO_SKILLID_FIELD.has_default_value = false
|
||||
PRACTICESKILLINFO_SKILLID_FIELD.default_value = 0
|
||||
PRACTICESKILLINFO_SKILLID_FIELD.type = 5
|
||||
PRACTICESKILLINFO_SKILLID_FIELD.cpp_type = 1
|
||||
|
||||
PRACTICESKILLINFO_SKILLLV_FIELD.name = "skillLv"
|
||||
PRACTICESKILLINFO_SKILLLV_FIELD.full_name = ".rpc.protocols.PracticeSkillInfo.skillLv"
|
||||
PRACTICESKILLINFO_SKILLLV_FIELD.number = 2
|
||||
PRACTICESKILLINFO_SKILLLV_FIELD.index = 1
|
||||
PRACTICESKILLINFO_SKILLLV_FIELD.label = 1
|
||||
PRACTICESKILLINFO_SKILLLV_FIELD.has_default_value = false
|
||||
PRACTICESKILLINFO_SKILLLV_FIELD.default_value = 0
|
||||
PRACTICESKILLINFO_SKILLLV_FIELD.type = 5
|
||||
PRACTICESKILLINFO_SKILLLV_FIELD.cpp_type = 1
|
||||
|
||||
PRACTICESKILLINFO.name = "PracticeSkillInfo"
|
||||
PRACTICESKILLINFO.full_name = ".rpc.protocols.PracticeSkillInfo"
|
||||
PRACTICESKILLINFO.nested_types = {}
|
||||
PRACTICESKILLINFO.enum_types = {}
|
||||
PRACTICESKILLINFO.fields = {PRACTICESKILLINFO_SKILLID_FIELD, PRACTICESKILLINFO_SKILLLV_FIELD}
|
||||
PRACTICESKILLINFO.is_extendable = false
|
||||
PRACTICESKILLINFO.extensions = {}
|
||||
|
||||
ActivityInfo = protobuf.Message(ACTIVITYINFO)
|
||||
ActivityInfo.MissionInfo = protobuf.Message(ACTIVITYINFO_MISSIONINFO)
|
||||
|
|
@ -8191,6 +8232,7 @@ PlayerBindPhone = protobuf.Message(PLAYERBINDPHONE)
|
|||
PokemonInfo = protobuf.Message(POKEMONINFO)
|
||||
Pokemoncomonpent = protobuf.Message(POKEMONCOMONPENT)
|
||||
PosMineral = protobuf.Message(POSMINERAL)
|
||||
PracticeSkillInfo = protobuf.Message(PRACTICESKILLINFO)
|
||||
Privilege = protobuf.Message(PRIVILEGE)
|
||||
PurpleMansionSeal = protobuf.Message(PURPLEMANSIONSEAL)
|
||||
PurpleSealShowInfo = protobuf.Message(PURPLESEALSHOWINFO)
|
||||
|
|
|
|||
|
|
@ -254,6 +254,8 @@ HEROUPLIKABLEREQUEST_ITEMID_FIELD = protobuf.FieldDescriptor();
|
|||
HEROUPLIKABLEREQUEST_ITEMNUM_FIELD = protobuf.FieldDescriptor();
|
||||
EQUIPBOOKINDICATION = protobuf.Descriptor();
|
||||
EQUIPBOOKINDICATION_CHANGEEQUIPLIST_FIELD = protobuf.FieldDescriptor();
|
||||
PRACTICESKILLUPREQUEST = protobuf.Descriptor();
|
||||
PRACTICESKILLUPREQUEST_SKILLID_FIELD = protobuf.FieldDescriptor();
|
||||
|
||||
GETHEROLISTINFOREQUEST_INDEX_FIELD.name = "index"
|
||||
GETHEROLISTINFOREQUEST_INDEX_FIELD.full_name = ".rpc.protocols.GetHeroListInfoRequest.index"
|
||||
|
|
@ -2529,6 +2531,23 @@ EQUIPBOOKINDICATION.enum_types = {}
|
|||
EQUIPBOOKINDICATION.fields = {EQUIPBOOKINDICATION_CHANGEEQUIPLIST_FIELD}
|
||||
EQUIPBOOKINDICATION.is_extendable = false
|
||||
EQUIPBOOKINDICATION.extensions = {}
|
||||
PRACTICESKILLUPREQUEST_SKILLID_FIELD.name = "skillId"
|
||||
PRACTICESKILLUPREQUEST_SKILLID_FIELD.full_name = ".rpc.protocols.PracticeSkillUpRequest.skillId"
|
||||
PRACTICESKILLUPREQUEST_SKILLID_FIELD.number = 1
|
||||
PRACTICESKILLUPREQUEST_SKILLID_FIELD.index = 0
|
||||
PRACTICESKILLUPREQUEST_SKILLID_FIELD.label = 1
|
||||
PRACTICESKILLUPREQUEST_SKILLID_FIELD.has_default_value = false
|
||||
PRACTICESKILLUPREQUEST_SKILLID_FIELD.default_value = 0
|
||||
PRACTICESKILLUPREQUEST_SKILLID_FIELD.type = 5
|
||||
PRACTICESKILLUPREQUEST_SKILLID_FIELD.cpp_type = 1
|
||||
|
||||
PRACTICESKILLUPREQUEST.name = "PracticeSkillUpRequest"
|
||||
PRACTICESKILLUPREQUEST.full_name = ".rpc.protocols.PracticeSkillUpRequest"
|
||||
PRACTICESKILLUPREQUEST.nested_types = {}
|
||||
PRACTICESKILLUPREQUEST.enum_types = {}
|
||||
PRACTICESKILLUPREQUEST.fields = {PRACTICESKILLUPREQUEST_SKILLID_FIELD}
|
||||
PRACTICESKILLUPREQUEST.is_extendable = false
|
||||
PRACTICESKILLUPREQUEST.extensions = {}
|
||||
|
||||
AllBookEnableRequest = protobuf.Message(ALLBOOKENABLEREQUEST)
|
||||
CancelHeroChangeRequest = protobuf.Message(CANCELHEROCHANGEREQUEST)
|
||||
|
|
@ -2590,6 +2609,7 @@ PokemonFreeRequest = protobuf.Message(POKEMONFREEREQUEST)
|
|||
PokemonFreeResponse = protobuf.Message(POKEMONFREERESPONSE)
|
||||
PokenmonUpLevelRequest = protobuf.Message(POKENMONUPLEVELREQUEST)
|
||||
PokenmonUpLevelResponse = protobuf.Message(POKENMONUPLEVELRESPONSE)
|
||||
PracticeSkillUpRequest = protobuf.Message(PRACTICESKILLUPREQUEST)
|
||||
PurpleMansionSealIndication = protobuf.Message(PURPLEMANSIONSEALINDICATION)
|
||||
ReplacePrupleMansionSealResponse = protobuf.Message(REPLACEPRUPLEMANSIONSEALRESPONSE)
|
||||
ReplacePurpleMansionSealRequest = protobuf.Message(REPLACEPURPLEMANSIONSEALREQUEST)
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -74,6 +74,7 @@ GETPLAYERINFORESPONSE_DRAWTIMES_FIELD = protobuf.FieldDescriptor();
|
|||
GETPLAYERINFORESPONSE_HELPFIGHTLIST_FIELD = protobuf.FieldDescriptor();
|
||||
GETPLAYERINFORESPONSE_SIXIANGINFOS_FIELD = protobuf.FieldDescriptor();
|
||||
GETPLAYERINFORESPONSE_SERVEROPENTIME_FIELD = protobuf.FieldDescriptor();
|
||||
GETPLAYERINFORESPONSE_PRACTICESKILLINFOS_FIELD = protobuf.FieldDescriptor();
|
||||
GETITEMINFOREQUEST = protobuf.Descriptor();
|
||||
GETITEMINFOREQUEST_INDEX_FIELD = protobuf.FieldDescriptor();
|
||||
GETITEMINFORESPONSE = protobuf.Descriptor();
|
||||
|
|
@ -1317,11 +1318,22 @@ GETPLAYERINFORESPONSE_SERVEROPENTIME_FIELD.default_value = 0
|
|||
GETPLAYERINFORESPONSE_SERVEROPENTIME_FIELD.type = 5
|
||||
GETPLAYERINFORESPONSE_SERVEROPENTIME_FIELD.cpp_type = 1
|
||||
|
||||
GETPLAYERINFORESPONSE_PRACTICESKILLINFOS_FIELD.name = "practiceSkillInfos"
|
||||
GETPLAYERINFORESPONSE_PRACTICESKILLINFOS_FIELD.full_name = ".rpc.protocols.GetPlayerInfoResponse.practiceSkillInfos"
|
||||
GETPLAYERINFORESPONSE_PRACTICESKILLINFOS_FIELD.number = 48
|
||||
GETPLAYERINFORESPONSE_PRACTICESKILLINFOS_FIELD.index = 46
|
||||
GETPLAYERINFORESPONSE_PRACTICESKILLINFOS_FIELD.label = 3
|
||||
GETPLAYERINFORESPONSE_PRACTICESKILLINFOS_FIELD.has_default_value = false
|
||||
GETPLAYERINFORESPONSE_PRACTICESKILLINFOS_FIELD.default_value = {}
|
||||
GETPLAYERINFORESPONSE_PRACTICESKILLINFOS_FIELD.message_type = CommonProto_pb.PRACTICESKILLINFO
|
||||
GETPLAYERINFORESPONSE_PRACTICESKILLINFOS_FIELD.type = 11
|
||||
GETPLAYERINFORESPONSE_PRACTICESKILLINFOS_FIELD.cpp_type = 10
|
||||
|
||||
GETPLAYERINFORESPONSE.name = "GetPlayerInfoResponse"
|
||||
GETPLAYERINFORESPONSE.full_name = ".rpc.protocols.GetPlayerInfoResponse"
|
||||
GETPLAYERINFORESPONSE.nested_types = {}
|
||||
GETPLAYERINFORESPONSE.enum_types = {}
|
||||
GETPLAYERINFORESPONSE.fields = {GETPLAYERINFORESPONSE_PLAYER_FIELD, GETPLAYERINFORESPONSE_NEWPLAYERGUIDEPOINT_FIELD, GETPLAYERINFORESPONSE_PRIVILEGE_FIELD, GETPLAYERINFORESPONSE_GIFTGOODSINFO_FIELD, GETPLAYERINFORESPONSE_BUYGOODSID_FIELD, GETPLAYERINFORESPONSE_SUDDENLYBOSSINFO_FIELD, GETPLAYERINFORESPONSE_VIPLEVETAKE_FIELD, GETPLAYERINFORESPONSE_USERCREATETIME_FIELD, GETPLAYERINFORESPONSE_REDTYPE_FIELD, GETPLAYERINFORESPONSE_RANDCOUNT_FIELD, GETPLAYERINFORESPONSE_HEROHANDBOOK_FIELD, GETPLAYERINFORESPONSE_EQUIPHANDBOOK_FIELD, GETPLAYERINFORESPONSE_TOWERRECEIVEDREWARD_FIELD, GETPLAYERINFORESPONSE_GOODSTYPEDURATION_FIELD, GETPLAYERINFORESPONSE_TREASURELEVEL_FIELD, GETPLAYERINFORESPONSE_HADBUYTREASURE_FIELD, GETPLAYERINFORESPONSE_SIGNININFO_FIELD, GETPLAYERINFORESPONSE_FIRSTTENTH_FIELD, GETPLAYERINFORESPONSE_MONSTERATTACKTIME_FIELD, GETPLAYERINFORESPONSE_ISDAYFIRST_FIELD, GETPLAYERINFORESPONSE_PLAYERBINDPHONE_FIELD, GETPLAYERINFORESPONSE_QUESTIONSTATE_FIELD, GETPLAYERINFORESPONSE_SOULEQUIPPOOL_FIELD, GETPLAYERINFORESPONSE_PLAYEDMAPTYPES_FIELD, GETPLAYERINFORESPONSE_AMOUNT_FIELD, GETPLAYERINFORESPONSE_VIPDAILY_FIELD, GETPLAYERINFORESPONSE_MISSINGREFRESHCOUNT_FIELD, GETPLAYERINFORESPONSE_MONTHINFOS_FIELD, GETPLAYERINFORESPONSE_DAILYCHALLENGEINFO_FIELD, GETPLAYERINFORESPONSE_EXPEDITIONLEVE_FIELD, GETPLAYERINFORESPONSE_HADLUCKTIME_FIELD, GETPLAYERINFORESPONSE_HADADVANCELUCKTIME_FIELD, GETPLAYERINFORESPONSE_WORLDLEVE_FIELD, GETPLAYERINFORESPONSE_DEMONSTRIALREWARDINFO_FIELD, GETPLAYERINFORESPONSE_HEADFRAMEBAG_FIELD, GETPLAYERINFORESPONSE_USERSKINLIST_FIELD, GETPLAYERINFORESPONSE_USERTITLELIST_FIELD, GETPLAYERINFORESPONSE_USERMOUNTLIST_FIELD, GETPLAYERINFORESPONSE_DAILYREDPACK_FIELD, GETPLAYERINFORESPONSE_PRACTICELEVEL_FIELD, GETPLAYERINFORESPONSE_SEALLIST_FIELD, GETPLAYERINFORESPONSE_RANDOMCOUNT_FIELD, GETPLAYERINFORESPONSE_DRAWTIMES_FIELD, GETPLAYERINFORESPONSE_HELPFIGHTLIST_FIELD, GETPLAYERINFORESPONSE_SIXIANGINFOS_FIELD, GETPLAYERINFORESPONSE_SERVEROPENTIME_FIELD}
|
||||
GETPLAYERINFORESPONSE.fields = {GETPLAYERINFORESPONSE_PLAYER_FIELD, GETPLAYERINFORESPONSE_NEWPLAYERGUIDEPOINT_FIELD, GETPLAYERINFORESPONSE_PRIVILEGE_FIELD, GETPLAYERINFORESPONSE_GIFTGOODSINFO_FIELD, GETPLAYERINFORESPONSE_BUYGOODSID_FIELD, GETPLAYERINFORESPONSE_SUDDENLYBOSSINFO_FIELD, GETPLAYERINFORESPONSE_VIPLEVETAKE_FIELD, GETPLAYERINFORESPONSE_USERCREATETIME_FIELD, GETPLAYERINFORESPONSE_REDTYPE_FIELD, GETPLAYERINFORESPONSE_RANDCOUNT_FIELD, GETPLAYERINFORESPONSE_HEROHANDBOOK_FIELD, GETPLAYERINFORESPONSE_EQUIPHANDBOOK_FIELD, GETPLAYERINFORESPONSE_TOWERRECEIVEDREWARD_FIELD, GETPLAYERINFORESPONSE_GOODSTYPEDURATION_FIELD, GETPLAYERINFORESPONSE_TREASURELEVEL_FIELD, GETPLAYERINFORESPONSE_HADBUYTREASURE_FIELD, GETPLAYERINFORESPONSE_SIGNININFO_FIELD, GETPLAYERINFORESPONSE_FIRSTTENTH_FIELD, GETPLAYERINFORESPONSE_MONSTERATTACKTIME_FIELD, GETPLAYERINFORESPONSE_ISDAYFIRST_FIELD, GETPLAYERINFORESPONSE_PLAYERBINDPHONE_FIELD, GETPLAYERINFORESPONSE_QUESTIONSTATE_FIELD, GETPLAYERINFORESPONSE_SOULEQUIPPOOL_FIELD, GETPLAYERINFORESPONSE_PLAYEDMAPTYPES_FIELD, GETPLAYERINFORESPONSE_AMOUNT_FIELD, GETPLAYERINFORESPONSE_VIPDAILY_FIELD, GETPLAYERINFORESPONSE_MISSINGREFRESHCOUNT_FIELD, GETPLAYERINFORESPONSE_MONTHINFOS_FIELD, GETPLAYERINFORESPONSE_DAILYCHALLENGEINFO_FIELD, GETPLAYERINFORESPONSE_EXPEDITIONLEVE_FIELD, GETPLAYERINFORESPONSE_HADLUCKTIME_FIELD, GETPLAYERINFORESPONSE_HADADVANCELUCKTIME_FIELD, GETPLAYERINFORESPONSE_WORLDLEVE_FIELD, GETPLAYERINFORESPONSE_DEMONSTRIALREWARDINFO_FIELD, GETPLAYERINFORESPONSE_HEADFRAMEBAG_FIELD, GETPLAYERINFORESPONSE_USERSKINLIST_FIELD, GETPLAYERINFORESPONSE_USERTITLELIST_FIELD, GETPLAYERINFORESPONSE_USERMOUNTLIST_FIELD, GETPLAYERINFORESPONSE_DAILYREDPACK_FIELD, GETPLAYERINFORESPONSE_PRACTICELEVEL_FIELD, GETPLAYERINFORESPONSE_SEALLIST_FIELD, GETPLAYERINFORESPONSE_RANDOMCOUNT_FIELD, GETPLAYERINFORESPONSE_DRAWTIMES_FIELD, GETPLAYERINFORESPONSE_HELPFIGHTLIST_FIELD, GETPLAYERINFORESPONSE_SIXIANGINFOS_FIELD, GETPLAYERINFORESPONSE_SERVEROPENTIME_FIELD, GETPLAYERINFORESPONSE_PRACTICESKILLINFOS_FIELD}
|
||||
GETPLAYERINFORESPONSE.is_extendable = false
|
||||
GETPLAYERINFORESPONSE.extensions = {}
|
||||
GETITEMINFOREQUEST_INDEX_FIELD.name = "index"
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ local MonsterGroup = ConfigManager.GetConfig(ConfigName.MonsterGroup)
|
|||
local MonsterConfig = ConfigManager.GetConfig(ConfigName.MonsterConfig)
|
||||
local CombatControl = ConfigManager.GetConfig(ConfigName.CombatControl)
|
||||
local SpiritAnimalSkill = ConfigManager.GetConfig(ConfigName.SpiritAnimalSkill)
|
||||
local playerSkill = ConfigManager.GetConfig(ConfigName.PlayerSkill)
|
||||
local FakeBattleNew = ConfigManager.GetConfig(ConfigName.FakeBattleNew)
|
||||
local FEAConfig = require("Modules/Battle/Config/FightEffectAudioConfig")
|
||||
local lastFightData = nil
|
||||
|
|
@ -240,21 +241,51 @@ function this.MonsterSkillAdapter(MSkillId)
|
|||
return skill
|
||||
end
|
||||
|
||||
function this.PokemonUnitAdapter(pokemonUnit,camp)
|
||||
function this.PlayerSkillAdapter(MSkillId)
|
||||
local skill = {}
|
||||
local monsterSkill = playerSkill[tonumber(MSkillId)]
|
||||
for index, skillId in ipairs(monsterSkill.SkillIDList) do
|
||||
skill[index] = {}
|
||||
skill[index].effect = this.GetSkillData(tonumber(skillId))
|
||||
skill[index].triggerId = monsterSkill.ReleasePoint[index]
|
||||
skill[index].triggerCondition = {0}
|
||||
if monsterSkill.ReleaseLimit and monsterSkill.ReleaseLimit[index] then
|
||||
for k, v in ipairs(monsterSkill.ReleaseLimit[index]) do
|
||||
skill[index].triggerCondition[k] = v
|
||||
end
|
||||
end
|
||||
skill[index].maxCount = 999--monsterSkill.WarEffectCount[index] or 999
|
||||
skill[index].maxRoundCount = 1--monsterSkill.TurnEffectCount[index] or 999
|
||||
end
|
||||
return skill
|
||||
end
|
||||
|
||||
|
||||
|
||||
function this.PokemonUnitAdapter(pokemonUnit,camp,_teamDamage)
|
||||
-- 基础数据
|
||||
local role = {
|
||||
id = tonumber(pokemonUnit.unitId),
|
||||
position = tonumber(pokemonUnit.position),
|
||||
star = tonumber(pokemonUnit.star),
|
||||
teamDamage = _teamDamage,
|
||||
camp = camp,
|
||||
skill = {},
|
||||
property = {},
|
||||
}
|
||||
-- 技能
|
||||
local skills = string.split(pokemonUnit.unitSkillIds, "#")
|
||||
for i = 1, #skills do
|
||||
role.skill = this.MonsterSkillAdapter(tonumber(skills[i]))
|
||||
if pokemonUnit.position==100 then -- 特殊处理位置 100 是玩家技能数据
|
||||
for i = 1, #skills do
|
||||
local newSkill=this.PlayerSkillAdapter(tonumber(skills[i]))
|
||||
role.skill[i] = newSkill
|
||||
end
|
||||
else
|
||||
for i = 1, #skills do
|
||||
role.skill[i] = this.MonsterSkillAdapter(tonumber(skills[i]))
|
||||
end
|
||||
end
|
||||
|
||||
-- 属性
|
||||
local propertys = string.split(pokemonUnit.property, "#")
|
||||
for j = 1, #propertys do
|
||||
|
|
@ -340,7 +371,8 @@ function this.GetBattleServerData(msg, isFightPlayer)
|
|||
fightData.playerData.monsterList ={}
|
||||
if data.pokemonUnitList then
|
||||
for i = 1, #data.pokemonUnitList do
|
||||
fightData.playerData.monsterList[i] = this.PokemonUnitAdapter(data.pokemonUnitList[i],0)
|
||||
local pokemonData=data.pokemonUnitList[i]
|
||||
fightData.playerData.monsterList[i] = this.PokemonUnitAdapter(pokemonData,0,data.forceScore)
|
||||
end
|
||||
end
|
||||
|
||||
|
|
@ -443,7 +475,7 @@ function this.GetBattleServerData(msg, isFightPlayer)
|
|||
fightData.enemyData[i].monsterList ={}
|
||||
if data2.pokemonUnitList then
|
||||
for k = 1, #data2.pokemonUnitList do
|
||||
fightData.enemyData[i].monsterList[k] = this.PokemonUnitAdapter(data2.pokemonUnitList[k],1)
|
||||
fightData.enemyData[i].monsterList[k] = this.PokemonUnitAdapter(data2.pokemonUnitList[k],1,data2.forceScore)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
@ -676,7 +708,6 @@ end
|
|||
function this.GetFakeBattleData(fakeId)
|
||||
local fakeConfig = FakeBattleNew[fakeId]
|
||||
if not fakeConfig then
|
||||
LogError("未找到假战斗数据:"..tostring(fakeId))
|
||||
return
|
||||
end
|
||||
local battleData = {}
|
||||
|
|
|
|||
|
|
@ -2399,6 +2399,65 @@ local effectList = {
|
|||
end)
|
||||
end)
|
||||
end,
|
||||
|
||||
--造成主角战斗力[a]%+[b]的伤害
|
||||
--a[float],b[int]
|
||||
[128] = function(caster, target, args, interval, skill)
|
||||
local pro = args[1]
|
||||
local round = args[2]
|
||||
BattleLogic.WaitForTrigger(interval, function ()
|
||||
local damage=floor(caster.teamDamage*pro)+round
|
||||
BattleUtil.FinalDamageCountShield(nil,caster, target,damage)
|
||||
end)
|
||||
end,
|
||||
--回复目标主角战斗力[a]%+[b]的生命值,溢出部分转换为等量御甲值
|
||||
--a[float],b[int]
|
||||
[129] = function(caster, target, args, interval, skill)
|
||||
local pro = args[1]
|
||||
local round = args[2]
|
||||
BattleLogic.WaitForTrigger(interval, function ()
|
||||
local damage=floor(caster.teamDamage*pro)+round
|
||||
local value=target:GetRoleData(RoleDataName.MaxHp)-target:GetRoleData(RoleDataName.Hp)
|
||||
local yujia=0
|
||||
if value>0 then
|
||||
BattleUtil.FinalTreat(caster, target,value,1,skill)
|
||||
else
|
||||
value=0
|
||||
end
|
||||
if damage-value>0 then
|
||||
if target.bloodShield then
|
||||
target.bloodShield:AddValue(damage-value)
|
||||
else
|
||||
target:AddBuff(Buff.Create(caster,BuffName.Blood,0,damage-value))
|
||||
end
|
||||
end
|
||||
end)
|
||||
|
||||
end,
|
||||
--对目标造成流血状态,造成主角战斗力[a]%+[b]的间接伤害,持续[c]回合
|
||||
--a[float],b[int],c[int]
|
||||
[130] = function(caster, target, args, interval, skill)
|
||||
local f1 = args[1]
|
||||
local v1 = args[2]
|
||||
local round = args[3]
|
||||
BattleLogic.WaitForTrigger(interval, function ()
|
||||
local damage=floor(caster.teamDamage*f1)+v1
|
||||
target:AddBuff(Buff.Create(caster, BuffName.DOT,round, 1,3,damage))
|
||||
end)
|
||||
end,
|
||||
--对目标造成神佑状态,造成主角战斗力[a]%+[b]的血量,持续[c]回合,溢出部分转化为御甲
|
||||
--a[float],b[int],c[int]
|
||||
[131] = function(caster, target, args, interval, skill)
|
||||
local f1 = args[1]
|
||||
local v1 = args[2]
|
||||
local round = args[3]
|
||||
BattleLogic.WaitForTrigger(interval, function ()
|
||||
local damage=floor(caster.teamDamage*f1)+v1
|
||||
local buff=Buff.Create(caster, BuffName.HOT,round,1,damage)
|
||||
buff.hotType=2
|
||||
target:AddBuff(buff)
|
||||
end)
|
||||
end,
|
||||
}
|
||||
|
||||
return effectList
|
||||
|
|
@ -5,7 +5,7 @@ function HOT:SetData(...)
|
|||
|
||||
self.interval,
|
||||
self.healValue = ...
|
||||
|
||||
self.hotType=1 -- 1:治愈 2.神佑
|
||||
-- 刷新排序等级
|
||||
self.sort = 1 -- 最先计算回血
|
||||
end
|
||||
|
|
@ -19,7 +19,7 @@ end
|
|||
|
||||
--修改持续加血效果的加血值
|
||||
function HOT:ChangeHealValue(newValue)
|
||||
if newValue then
|
||||
if newValue and self.hotType~=2 then
|
||||
self.healValue=newValue
|
||||
end
|
||||
end
|
||||
|
|
@ -28,7 +28,24 @@ end
|
|||
function HOT:OnTrigger()
|
||||
|
||||
if not self.target.ctrl_noheal or self.target:IsDead() then --禁疗和死亡无法加血
|
||||
BattleUtil.ApplyTreat(self.caster, self.target, self.healValue)
|
||||
if self.hotType==2 then
|
||||
local value=self.target:GetRoleData(RoleDataName.MaxHp)-self.target:GetRoleData(RoleDataName.Hp)
|
||||
local yujia=0
|
||||
if value>0 then
|
||||
BattleUtil.FinalTreat(self.caster, self.target,value,1,nil)
|
||||
else
|
||||
value=0
|
||||
end
|
||||
if self.healValue-value>0 then
|
||||
if target.bloodShield then
|
||||
target.bloodShield:AddValue(self.healValue-value)
|
||||
else
|
||||
target:AddBuff(Buff.Create(self.caster,BuffName.Blood,0,self.healValue-value))
|
||||
end
|
||||
end
|
||||
else
|
||||
BattleUtil.ApplyTreat(self.caster, self.target, self.healValue)
|
||||
end
|
||||
end
|
||||
return true
|
||||
end
|
||||
|
|
|
|||
|
|
@ -229,7 +229,7 @@ DotType = {
|
|||
All = 0,
|
||||
Burn = 1,
|
||||
Poison = 2,
|
||||
Blooding = 3,
|
||||
Blooding = 3,
|
||||
}
|
||||
|
||||
ControlType = {
|
||||
|
|
@ -327,7 +327,8 @@ OutDataName = {
|
|||
|
||||
BattleUnitType = {
|
||||
Role = 1,
|
||||
Monster = 2
|
||||
Monster = 2,
|
||||
Player = 3,
|
||||
}
|
||||
|
||||
BattleRoleElementType = {
|
||||
|
|
|
|||
|
|
@ -537,7 +537,7 @@ end
|
|||
-- 秒杀
|
||||
function BattleUtil.Seckill(skill, atkRole, defRole)
|
||||
-- 灵兽无效
|
||||
if defRole.type == BattleUnitType.Monster then
|
||||
if defRole.type == BattleUnitType.Monster or defRole.type == BattleUnitType.Player then
|
||||
return
|
||||
end
|
||||
local damage = defRole:GetRoleData(RoleDataName.Hp)
|
||||
|
|
@ -569,7 +569,7 @@ end
|
|||
-- 秒杀定额血量
|
||||
function BattleUtil.SeckillHP(skill, atkRole, defRole, pro)
|
||||
-- 灵兽无效
|
||||
if defRole.type == BattleUnitType.Monster then
|
||||
if defRole.type == BattleUnitType.Monster or defRole.type == BattleUnitType.Player then
|
||||
return
|
||||
end
|
||||
local damage = floor(BattleUtil.FP_Mul(defRole:GetRoleData(RoleDataName.MaxHp),pro))
|
||||
|
|
@ -600,7 +600,7 @@ end
|
|||
-- 计算真实伤害
|
||||
function BattleUtil.ApplyDamage(skill, atkRole, defRole, damage, bCrit, damageType, dotType,isDirect)
|
||||
-- 灵兽无效
|
||||
if defRole.type == BattleUnitType.Monster then
|
||||
if defRole.type == BattleUnitType.Monster or defRole.type == BattleUnitType.Player then
|
||||
return
|
||||
end
|
||||
|
||||
|
|
@ -645,7 +645,7 @@ end
|
|||
-- 计算真实伤害(没有被动增伤)
|
||||
function BattleUtil.ApplyDamageNoPassive(skill, atkRole, defRole, damage, bCrit, damageType, dotType,isDirect)
|
||||
-- 灵兽无效
|
||||
if defRole.type == BattleUnitType.Monster then
|
||||
if defRole.type == BattleUnitType.Monster or defRole.type == BattleUnitType.Player then
|
||||
return
|
||||
end
|
||||
-- 计算护盾减伤
|
||||
|
|
@ -735,7 +735,7 @@ end
|
|||
|
||||
function BattleUtil.FinalDamage(skill, atkRole, defRole, damage, bCrit, damageType, dotType,isDirect)
|
||||
-- 灵兽无效
|
||||
if defRole.type == BattleUnitType.Monster then
|
||||
if defRole.type == BattleUnitType.Monster or defRole.type == BattleUnitType.Player then
|
||||
return
|
||||
end
|
||||
if damage < 0 then damage = 0 end
|
||||
|
|
@ -801,11 +801,86 @@ function BattleUtil.FinalDamage(skill, atkRole, defRole, damage, bCrit, damageTy
|
|||
return finalDmg
|
||||
end
|
||||
|
||||
--计算盾的最终伤害
|
||||
function BattleUtil.FinalDamageCountShield(skill, atkRole, defRole, damage, bCrit, damageType, dotType,isDirect)
|
||||
-- 灵兽无效
|
||||
if defRole.type == BattleUnitType.Monster or defRole.type == BattleUnitType.Player then
|
||||
return
|
||||
end
|
||||
-- 计算护盾减伤
|
||||
damage = BattleUtil.CalShield(atkRole, defRole, damage,skill)
|
||||
|
||||
if damage < 0 then damage = 0 end
|
||||
if skill and skill.type==BattleSkillType.Special then
|
||||
skill.owner.superSkillDamage=damage
|
||||
end
|
||||
--计算血量防护
|
||||
local realDamage=damage
|
||||
--血量防护只会防直接伤害
|
||||
if defRole.bloodShield and skill then
|
||||
realDamage=math.abs(defRole.bloodShield:CountBloodValue(damage))
|
||||
-- damage=realDamage
|
||||
end
|
||||
--御甲过滤后的伤害只会处理扣血 by: wangzhenxing shihongyi 2021/09/27
|
||||
local finalDmg = defRole.data:SubValue(RoleDataName.Hp,realDamage)
|
||||
if finalDmg >= 0 then
|
||||
if defRole:GetRoleData(RoleDataName.Hp) <= 0 and not defRole:IsDead() then
|
||||
defRole:SetDead(damage)
|
||||
defRole.Event:DispatchEvent(BattleEventName.RoleDead, atkRole)
|
||||
atkRole.Event:DispatchEvent(BattleEventName.RoleKill, defRole,skill)
|
||||
BattleLogic.Event:DispatchEvent(BattleEventName.BattleRoleDead, defRole, atkRole,skill,dotType)
|
||||
end
|
||||
|
||||
atkRole.Event:DispatchEvent(BattleEventName.RoleDamage, defRole, damage, bCrit, finalDmg, damageType, dotType, skill)
|
||||
defRole.Event:DispatchEvent(BattleEventName.RoleBeDamaged, atkRole, damage, bCrit, finalDmg, damageType, dotType, skill)
|
||||
BattleLogic.Event:DispatchEvent(BattleEventName.RoleDamage, atkRole, defRole, damage, bCrit, finalDmg, damageType, dotType, skill)
|
||||
BattleLogic.Event:DispatchEvent(BattleEventName.RoleBeDamaged, defRole, atkRole, damage, bCrit, finalDmg, damageType, dotType, skill)
|
||||
if bCrit then
|
||||
atkRole.Event:DispatchEvent(BattleEventName.RoleCrit, defRole, damage, bCrit, finalDmg, damageType, skill)
|
||||
defRole.Event:DispatchEvent(BattleEventName.RoleBeCrit, atkRole, damage, bCrit, finalDmg, damageType, skill)
|
||||
end
|
||||
if skill then
|
||||
atkRole.Event:DispatchEvent(BattleEventName.RoleHit, defRole, damage, bCrit, finalDmg, damageType, skill,isDirect)
|
||||
defRole.Event:DispatchEvent(BattleEventName.RoleBeHit, atkRole, damage, bCrit, finalDmg, damageType, skill,isDirect)
|
||||
--如果目标是主燃烧目标 or 目标身上有燃烧效果
|
||||
if atkRole.curMainTarget==defRole or BattleLogic.BuffMgr:HasBuff(defRole, BuffName.DOT,function(buff) return buff.damageType == 1 end) then
|
||||
atkRole.Event:DispatchEvent(BattleEventName.HitRoleInBurn,skill,defRole)
|
||||
end
|
||||
end
|
||||
--如果不是技能带的伤害,并且是直接伤害就,,,,,
|
||||
--用于处理不触发特性并且是直接伤害的伤害 isDirect 暂时先为bool值,后期可根据需求做修改扩展 by:王振兴 2020/10/12 16:18
|
||||
if isDirect and not skill then
|
||||
atkRole.Event:DispatchEvent(BattleEventName.RoleHit, defRole, damage, bCrit, finalDmg, damageType, skill,isDirect)
|
||||
defRole.Event:DispatchEvent(BattleEventName.RoleBeHit, atkRole, damage, bCrit, finalDmg, damageType, skill,isDirect)
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
-- 战斗记录用
|
||||
BattleLogic.Event:DispatchEvent(BattleEventName.RecordDamage, atkRole, defRole, damage)
|
||||
--
|
||||
BattleLogManager.Log(
|
||||
"Final Damage",
|
||||
"acamp", atkRole.camp,
|
||||
"apos", atkRole.position,
|
||||
"tcamp", defRole.camp,
|
||||
"tpos", defRole.position,
|
||||
"damage", damage,
|
||||
"dotType", tostring(dotType)
|
||||
)
|
||||
|
||||
return finalDmg
|
||||
end
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
--执行完整的命中,伤害,暴击计算,返回命中,暴击
|
||||
--skill造成伤害的技能 atkRole攻击者 defRole受击者 damageType伤害类型 baseFactor伤害系数 ignoreDef无视防御参数 dotType是持续伤害类型
|
||||
function BattleUtil.CalDamage(skill, atkRole, defRole, damageType, baseFactor, ignoreDef, dotType)
|
||||
-- 灵兽无效
|
||||
if defRole.type == BattleUnitType.Monster then
|
||||
if defRole.type == BattleUnitType.Monster or defRole.type == BattleUnitType.Player then
|
||||
return
|
||||
end
|
||||
-- 判断是否命中
|
||||
|
|
@ -899,7 +974,7 @@ end
|
|||
|
||||
function BattleUtil.CalTreat(castRole, targetRole, value, baseFactor,skill)
|
||||
-- 灵兽无效
|
||||
if targetRole.type == BattleUnitType.Monster then
|
||||
if targetRole.type == BattleUnitType.Monster or targetRole.type == BattleUnitType.Player then
|
||||
return
|
||||
end
|
||||
BattleLogic.Event:DispatchEvent(BattleEventName.DisposeRoleCtrl_noheal, castRole,targetRole)
|
||||
|
|
@ -930,7 +1005,7 @@ function BattleUtil.CalTreat(castRole, targetRole, value, baseFactor,skill)
|
|||
end
|
||||
function BattleUtil.FinalTreat(castRole, targetRole, value, baseFactor,skill)
|
||||
-- 灵兽无效
|
||||
if targetRole.type == BattleUnitType.Monster then
|
||||
if targetRole.type == BattleUnitType.Monster or targetRole.type == BattleUnitType.Player then
|
||||
return
|
||||
end
|
||||
BattleLogic.Event:DispatchEvent(BattleEventName.DisposeRoleCtrl_noheal, castRole,targetRole)
|
||||
|
|
|
|||
|
|
@ -16,15 +16,27 @@ end
|
|||
function Monster:Init(data)
|
||||
self.type = BattleUnitType.Monster
|
||||
self.camp = data.camp
|
||||
if data.position==10 then
|
||||
self.type = BattleUnitType.Player
|
||||
end
|
||||
self.position = data.position
|
||||
self.star = data.star
|
||||
self.uid= data.id
|
||||
self.teamDamage=data.teamDamage
|
||||
self.roleData = data
|
||||
self.data:Init(self, data.property)
|
||||
self.buffFilter:Clear() --buff屏蔽列表
|
||||
self.Event:ClearEvent()
|
||||
self.exileTargets={}--已经被放逐过的目标
|
||||
self.skillGroup = MSkillManager.CreateMSkillGroup(self, data.skill)
|
||||
-- self.skillGroup = MSkillManager.CreateMSkillGroup(self, data.skill)
|
||||
|
||||
self.skillList=data.skill
|
||||
self.skillGroupList = {}
|
||||
--for i = 1, #data.skill do
|
||||
-- LogError("---------------------"..data.skill[i].skillData.effect[1])
|
||||
--LogError("monster skill id=="..data.skill[i])
|
||||
MSkillManager.CreateMSkillGroup(self, data.skill)
|
||||
--end
|
||||
end
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -138,22 +138,22 @@ local _ConditionConfig = {
|
|||
local conId = condition[1]
|
||||
local comType = condition[2]
|
||||
local comValue = condition[3]
|
||||
LogError("id=="..conId.." comtype=="..comType.." value=="..comValue)
|
||||
|
||||
-- 获取当前回合
|
||||
|
||||
local curRound = BattleLogic.GetCurRound()
|
||||
if castRound==0 then
|
||||
castRound=curRound
|
||||
LogError("1111111 "..curRound)
|
||||
return true
|
||||
else
|
||||
if curRound==castRound+comValue then
|
||||
castRound=curRound
|
||||
LogError("22222")
|
||||
return true
|
||||
end
|
||||
end
|
||||
return false
|
||||
return true
|
||||
-- local curRound = BattleLogic.GetCurRound()
|
||||
-- if castRound==0 then
|
||||
-- castRound=curRound
|
||||
-- return true
|
||||
-- else
|
||||
-- if curRound==castRound+comValue then
|
||||
-- castRound=curRound
|
||||
-- LogError("22222")
|
||||
-- return true
|
||||
-- end
|
||||
-- end
|
||||
-- return false
|
||||
end,
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -19,14 +19,15 @@ function MSkill:Init(owner, group, index, skillData)
|
|||
|
||||
self.curCastCount = 0
|
||||
self.maxCastCount = self.skillData.maxCount
|
||||
|
||||
-- LogError("monster skill id=="..skillData.effect[1])
|
||||
self.curRoundCount = 0
|
||||
self.maxRoundCount = self.skillData.maxRoundCount
|
||||
-- 将技能加入触发检测
|
||||
MTrigger.AddSkill(self.skillData.triggerId, self.skillData.triggerCondition, self)
|
||||
|
||||
|
||||
--MTrigger.AddSkill(self.skillData, self.skillData.triggerCondition, self)
|
||||
local effectData = self.skillData.effect
|
||||
self.id = effectData[1] -- 技能ID
|
||||
-- 将技能加入触发检测
|
||||
MTrigger.AddSkill(self.skillData.triggerId, self.skillData.triggerCondition, self)
|
||||
self.hitTime = effectData[2] -- 效果命中需要的时间
|
||||
self.continueTime = effectData[3] -- 命中后伤害持续时间
|
||||
self.attackCount = effectData[4] -- 伤害持续时间内伤害次数
|
||||
|
|
|
|||
|
|
@ -13,8 +13,15 @@ function MSkillGroup:Init(monster, groupData)
|
|||
self.skillGroupData = groupData
|
||||
-- 创建技能
|
||||
self.skillList = {}
|
||||
for index, data in ipairs(self.skillGroupData) do
|
||||
self.skillList[index] = MSkillManager.CreateMSkill(monster, self, index, data)
|
||||
local num=0
|
||||
-- for index, data in ipairs(self.skillGroupData) do
|
||||
-- LogError("careat skill=="..index.." data=="..data.effect[1])
|
||||
-- num=num+1
|
||||
-- self.skillList[num] = MSkillManager.CreateMSkill(monster, self, num, data)
|
||||
|
||||
-- end
|
||||
for i = 1, #self.skillGroupData do
|
||||
self.skillList[i] = MSkillManager.CreateMSkill(monster, self, i, self.skillGroupData[i])
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ function this.CreateMSkill(monster, group, index, skilldata)
|
|||
if not this.MSkillList[m_index][index] then
|
||||
this.MSkillList[m_index][index] = MSkill:New()
|
||||
end
|
||||
this.MSkillList[m_index][index]:Init(monster, group, index, skilldata)
|
||||
this.MSkillList[m_index][index]:Init(monster, group, index, skilldata[1])
|
||||
end
|
||||
|
||||
return MSkillManager
|
||||
|
|
@ -109,6 +109,7 @@ function this.InitListener()
|
|||
-- 用于排序
|
||||
local sortList = {}
|
||||
-- 判断是否有需要触发的技能
|
||||
|
||||
local triggerSkill = this.TriggerList[triggerId]
|
||||
if not triggerSkill then
|
||||
return
|
||||
|
|
@ -156,7 +157,7 @@ function MTrigger.AddSkill(triggerId, condition, skill)
|
|||
if not this.TriggerList[triggerId] then
|
||||
this.TriggerList[triggerId] = {}
|
||||
end
|
||||
table.insert(this.TriggerList[triggerId], {condition = condition, skill = skill})
|
||||
table.insert(this.TriggerList[triggerId], {condition = condition, skill = skill,trigger= triggerId})
|
||||
end
|
||||
|
||||
return MTrigger
|
||||
|
|
@ -29,6 +29,7 @@ function RoleLogic:Init(uid, data, position)
|
|||
self.isDead = self:GetRoleData(RoleDataName.Hp) <= 0
|
||||
self.isRealDead = self.isDead
|
||||
self.killDamage = 0 --致死伤害
|
||||
self.teamDamage = data.teamDamage --最高战斗力
|
||||
self.superSkillDamage = 0 --技能伤害
|
||||
self.killRole=nil --击杀英雄
|
||||
self.camp = data.camp --阵营 0:我方 1:敌方
|
||||
|
|
|
|||
|
|
@ -180,7 +180,8 @@ function this:InitComponent(root, go)
|
|||
this.MonsterList[i] = Util.GetGameObject(this.gameObject, "playerMonster/list/"..i)
|
||||
this.MonsterList[6 + i] = Util.GetGameObject(this.gameObject, "enemyMonster/list/"..i)
|
||||
end
|
||||
|
||||
this.MonsterList[100] = Util.GetGameObject(this.gameObject, "playerMonster/list/100")
|
||||
this.MonsterList[101] = Util.GetGameObject(this.gameObject, "enemyMonster/list/101")
|
||||
this.fightIdText = Util.GetGameObject(this.gameObject, "fightId"):GetComponent("Text")
|
||||
end
|
||||
function this:BindEvent()
|
||||
|
|
@ -662,14 +663,28 @@ end
|
|||
|
||||
function this.OnAddMonster(data)
|
||||
LogPink(data.camp.."addmonster"..data.position)
|
||||
local parent = this.MonsterList[data.camp * 6 + data.position]
|
||||
parent:SetActive(true)
|
||||
local go = BattlePool.GetItem(parent.transform, BATTLE_POOL_TYPE.Monster)
|
||||
tbMonster[data] = MonsterView.New(go, data, data.position, this)
|
||||
go.transform.localScale = Vector3.one
|
||||
go.transform.localPosition = Vector3.zero
|
||||
go.transform.anchoredPosition = Vector2.zero
|
||||
go:SetActive(true)
|
||||
local posIndex=0
|
||||
if data.position==100 then
|
||||
posIndex=data.camp + data.position
|
||||
else
|
||||
posIndex=data.camp * 6 + data.position
|
||||
end
|
||||
local parent = this.MonsterList[posIndex]
|
||||
if parent then
|
||||
parent:SetActive(true)
|
||||
local go = BattlePool.GetItem(parent.transform, BATTLE_POOL_TYPE.Monster)
|
||||
tbMonster[data] = MonsterView.New(go, data, data.position, this)
|
||||
go.transform.localScale = Vector3.one
|
||||
go.transform.localPosition = Vector3.zero
|
||||
go.transform.anchoredPosition = Vector2.zero
|
||||
if posIndex>=100 then
|
||||
LogError(">>>>>>>>>>>>>100")
|
||||
go:SetActive(false)
|
||||
else
|
||||
go:SetActive(true)
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
function this.OnRemoveMonster(data)
|
||||
local view = tbMonster[data]
|
||||
|
|
|
|||
|
|
@ -25,7 +25,8 @@ local function _GetBuffEffectConfig(buff)
|
|||
if bType == BuffName.PropertyChange then
|
||||
cType = _GetPropChangeBuffCType(buff.propertyName)
|
||||
elseif bType == BuffName.HOT then
|
||||
cType = 1
|
||||
--cType = 1
|
||||
cType = buff.hotType
|
||||
elseif bType == BuffName.DOT then
|
||||
cType = buff.damageType
|
||||
elseif bType == BuffName.Brand then
|
||||
|
|
|
|||
|
|
@ -456,11 +456,11 @@ function EnemyView:OnceDamaged(atkRole, dmg, bCrit, finalDmg, damageType, dotTyp
|
|||
self.Floater:ArtFloating(ArtFloatingType.PoisonDamage, ArtFloatingColor.Poison, dmg,TextFloatingColor.DarkGreen)
|
||||
elseif dotType == DotType.Burn then
|
||||
self.Floater:ArtFloating(ArtFloatingType.FireDamage, ArtFloatingColor.Fire, dmg)
|
||||
elseif dotType == DotType.Blooding then
|
||||
self.Floater:ArtFloating(ArtFloatingType.BleedDamage, ArtFloatingColor.Fire, dmg)
|
||||
else
|
||||
|
||||
self.Floater:TextBuffFloating(2, DotTypeTip[dotType]..dmg)
|
||||
end
|
||||
|
||||
else
|
||||
if bCrit then -- 暴击红色并显示暴击
|
||||
self.Floater:ArtFloating(ArtFloatingType.CritDamage, ArtFloatingColor.Red, dmg)
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@ ArtFloatingType = {
|
|||
FireDamage = 4,
|
||||
PoisonDamage = 5,
|
||||
yujiaAdd = 6,
|
||||
BleedDamage = 7,
|
||||
}
|
||||
local ArtFloatingAnim = {
|
||||
[1] = "Crit_Attack_Float",
|
||||
|
|
@ -196,6 +197,10 @@ function FloatNode:GetArtText(type, color, value)
|
|||
elseif type == ArtFloatingType.yujiaAdd then
|
||||
sp = "z_zhandou_yujia_zh" --御甲
|
||||
text = text .. string.char((color*2)+111) -- 减号
|
||||
elseif type == ArtFloatingType.BleedDamage then
|
||||
sp = "z_zhandou_liuxue_zh" -- 流血
|
||||
|
||||
text = text .. string.char((color*2)+110) -- 减号
|
||||
end
|
||||
-- 数字
|
||||
local str = tostring(value)
|
||||
|
|
|
|||
|
|
@ -29,7 +29,19 @@ function MonsterView:onCreate(go, role, position, root)
|
|||
self.icon = Util.GetGameObject(go, "icon"):GetComponent("Image")
|
||||
|
||||
-- 获取数据
|
||||
self.livePath = GetResourcePath(SpiritAnimal[role.roleData.id].Live)
|
||||
local live=0
|
||||
if position==100 then
|
||||
if NameManager.roleSex==ROLE_SEX.BOY then
|
||||
self.livePath="live2d_npc_boy"
|
||||
else
|
||||
self.livePath="live2d_npc_girl"
|
||||
end
|
||||
--self.livePath="live2d_npc_girl"
|
||||
role.roleData.id=20100
|
||||
else
|
||||
self.livePath = GetResourcePath(SpiritAnimal[role.roleData.id].Live)
|
||||
self.icon.sprite = self.spLoader:LoadSprite(GetResourcePath(SpiritAnimal[role.roleData.id].Icon))
|
||||
end
|
||||
self.play_liveScale = SpiritAnimal[role.roleData.id].play_liveScale
|
||||
self.enemy_liveScale = SpiritAnimal[role.roleData.id].enemy_liveScale
|
||||
self.offset = SpiritAnimal[role.roleData.id].offset
|
||||
|
|
@ -38,7 +50,7 @@ function MonsterView:onCreate(go, role, position, root)
|
|||
self.atkSoundTime = SpiritAnimal[role.roleData.id].CastingAudio/1000
|
||||
self.attackSound = SpiritAnimal[role.roleData.id].sond
|
||||
|
||||
self.icon.sprite = self.spLoader:LoadSprite(GetResourcePath(SpiritAnimal[role.roleData.id].Icon))
|
||||
|
||||
-- 人物立绘
|
||||
-- self.RoleLiveGO = poolManager:LoadLive(self.livePath, self.skillCastRoot.transform.parent, Vector3.one, Vector3.zero)
|
||||
-- self.RoleLiveGO.transform:SetParent(self.liveRoot.transform)
|
||||
|
|
@ -148,7 +160,11 @@ function MonsterView:OnSkillCastingStart()
|
|||
if self.RoleLiveGO2 then
|
||||
-- 提前进入下一阶段
|
||||
self.RoleLiveGO2:SetActive(true)
|
||||
self:PlaySpineAnim(self.RoleLiveGOGraphic2, 0, "attack", false)
|
||||
local animName="attack"
|
||||
if self.role.roleData.id==20100 then
|
||||
animName="idle"
|
||||
end
|
||||
self:PlaySpineAnim(self.RoleLiveGOGraphic2, 0,animName , false)
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
|||
|
|
@ -232,6 +232,7 @@ function this.PlayerInfoRequest(func)
|
|||
PracticeManager.UpdataFromServer(msg.practiceLevel)--修行等级
|
||||
PracticeManager.UpdataImprintDataFromServer(msg.sealList)--神印列表
|
||||
RecruitManager.SetRecruit3MustCount(msg.randomCount)
|
||||
PracticeManager.UpdataPlayerSkill(msg.practiceSkillInfos)--主角技能
|
||||
PracticeManager.InitFourQuadrantData(msg.sixiangInfos)
|
||||
-- 服务器开启时间
|
||||
PlayerManager.SetServerOpenTime(msg.serverOpenTime)
|
||||
|
|
@ -5353,6 +5354,7 @@ function this.UpPracticeLevelRequest(func)
|
|||
local msg = HeroInfoProto_pb.UpPracticeLevelResponse()
|
||||
msg:ParseFromString(data)
|
||||
PracticeManager.UpdataFromServer(msg.practiceLevel)
|
||||
PracticeManager.AddPlayerSkill(msg.practiceLevel)
|
||||
if func then
|
||||
func(msg)
|
||||
end
|
||||
|
|
@ -5912,5 +5914,15 @@ function NetManager.HeroUpLikableRequest(heroId,itemId,itemNum,func)
|
|||
end
|
||||
end)
|
||||
end
|
||||
function NetManager.PracticeSkillUpRequest(id,func)
|
||||
local data=HeroInfoProto_pb.PracticeSkillUpRequest()
|
||||
data.skillId = id
|
||||
local msg = data:SerializeToString()
|
||||
Network:SendMessageWithCallBack(MessageTypeProto_pb.PRACTICE_SKILL_UP_REQUEST, MessageTypeProto_pb.PRACTICE_SKILL_UP_RESPONSE, msg, function(buffer)
|
||||
if func then
|
||||
func()
|
||||
end
|
||||
end)
|
||||
end
|
||||
|
||||
return this
|
||||
|
|
@ -3,7 +3,7 @@ local this = PracticeManager
|
|||
local XiuXianConfig = ConfigManager.GetConfig(ConfigName.XiuXianConfig)
|
||||
local PropertyConfig = ConfigManager.GetConfig(ConfigName.PropertyConfig)
|
||||
local XiuXianSkillConfig = ConfigManager.GetConfig(ConfigName.XiuXianSkillConfig)
|
||||
local PropertyConfig = ConfigManager.GetConfig(ConfigName.PropertyConfig)
|
||||
local SkillBaseConfig= ConfigManager.GetConfig(ConfigName.PlayerSkillBasicTable)
|
||||
|
||||
function this.Initialize()
|
||||
this.PracticeLevel = 1--小境界id
|
||||
|
|
@ -17,14 +17,63 @@ function this.Initialize()
|
|||
this.LinesData = {}
|
||||
this.FourQuadrantData={}--四象心法数据
|
||||
this.fourQuadrantUpStarPropMap={}--四象心法进阶属性加成(职业id:<属性id:属性值>)
|
||||
this.playerSkillList={} --主角技能列表
|
||||
for key, value in ConfigPairs(SkillBaseConfig) do
|
||||
--table.insert(this.playerSkillList,{id=value.Id,lv=0})
|
||||
LogError("vlaue id=="..value.Id)
|
||||
this.playerSkillList[value.Id]=0
|
||||
end
|
||||
end
|
||||
|
||||
function this.GetSkillInfo()
|
||||
return this.playerSkillList
|
||||
end
|
||||
|
||||
--更新角色技能
|
||||
function this.UpdataPlayerSkill(msg)
|
||||
for i = 1, #msg do
|
||||
LogError("msg id=="..msg[i].skillId.." vlaue =="..msg[i].skillLv)
|
||||
if this.playerSkillList[msg[i].skillId] then
|
||||
this.playerSkillList[msg[i].skillId]=msg[i].skillLv
|
||||
LogError("////////////")
|
||||
end
|
||||
end
|
||||
-- for key, value in pairs(msg) do
|
||||
-- LogError("**********"..value.skillId.." lv=="..value.skillLv)
|
||||
-- if this.playerSkillList[value.skillId] then
|
||||
-- this.playerSkillList[value.skillId]=value.skillLv
|
||||
-- LogError("////////////")
|
||||
-- end
|
||||
-- end
|
||||
end
|
||||
|
||||
--设置角色技能等级
|
||||
function this.SetPlayerSkill(id,lv)
|
||||
LogError("set== id="..id.." value=="..lv)
|
||||
if this.playerSkillList[id] then
|
||||
|
||||
this.playerSkillList[id]=lv
|
||||
end
|
||||
end
|
||||
|
||||
--设置角色技能等级
|
||||
function this.AddPlayerSkill(lv)
|
||||
if XiuXianConfig[lv].PlayerSkill then
|
||||
for i = 1, #XiuXianConfig[lv].PlayerSkill do
|
||||
LogError("add=========="..XiuXianConfig[lv].PlayerSkill[i])
|
||||
this.playerSkillList[XiuXianConfig[lv].PlayerSkill[i]]=1
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
|
||||
--从服务器更新当前修行等级
|
||||
function this.UpdataFromServer(_level)
|
||||
this.PracticeLevel = _level
|
||||
this.PracticeLevel = this.PracticeLevel > 0 and this.PracticeLevel or 1
|
||||
this.PracticeBigLevel = XiuXianConfig[this.PracticeLevel].RealmId
|
||||
this.StarNum = FightLevelManager.GetAllChapterStars()
|
||||
--
|
||||
HeroPropManager.SetFuncPropDirty(Func_Prop_Type.Practice)
|
||||
end
|
||||
|
||||
|
|
@ -237,6 +286,18 @@ function this.SetNameColor(name,level)
|
|||
-- LogYellow("name:"..tostring(name).." clr:"..tostring(clr))
|
||||
return "<color=#"..clr..">"..name.."</color>"
|
||||
end
|
||||
|
||||
--获取大境界对应的段位名称
|
||||
function this.GetRankNameByLv(lv)
|
||||
for i, v in ConfigPairs(XiuXianConfig) do
|
||||
if v.RealmId==lv then
|
||||
return "<color=#"..v.NameFontColor..">"..v.RealmName.."期".."</color>"
|
||||
end
|
||||
end
|
||||
return nil
|
||||
end
|
||||
|
||||
|
||||
--查找英雄对应的神印
|
||||
function this.CheckHeroWearImprint(heroDid)
|
||||
if this.HeroWithImprintList[heroDid] then
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ local oldPower = 0
|
|||
local newPower = 0
|
||||
local oldBigLevel = 0
|
||||
local globalSystemConfig = ConfigManager.GetConfigData(ConfigName.GlobalSystemConfig,FUNCTION_OPEN_TYPE.FOURQUADRANT)
|
||||
local SkillBaseConfig= ConfigManager.GetConfig(ConfigName.PlayerSkillBasicTable)
|
||||
function Practice:InitComponent()
|
||||
self.spLoader = SpriteLoader.New()
|
||||
orginLayer = 0
|
||||
|
|
@ -65,6 +66,11 @@ function Practice:InitComponent()
|
|||
Util.GetGameObject(self.treeBtn,"treebtn"):GetComponent("Image").sprite = self.spLoader:LoadSprite("j_jianmushenshu_anniu_01_zh")
|
||||
self.treeRed = Util.GetGameObject(self.treeBtn, "redPoint")
|
||||
self.skillObj=Util.GetGameObject(self.gameObject, "SkillObj")
|
||||
self.skillList={}
|
||||
for i = 1, 4 do
|
||||
table.insert(self.skillList,Util.GetGameObject(self.gameObject, "SkillObj/skill"..i))
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
function Practice:BindEvent()
|
||||
|
|
@ -163,6 +169,7 @@ function Practice:BtnClickEvent()
|
|||
end
|
||||
end
|
||||
--战力更改请求
|
||||
Practice:SetSkillInfo()
|
||||
PracticeManager.ShowTipsOnUpgrade()
|
||||
NetManager.RequestUserForceChange(FormationTypeDef.FORMATION_NORMAL)
|
||||
if PracticeManager.PracticeBigLevel - oldBigLevel == 1 then
|
||||
|
|
@ -206,6 +213,41 @@ function Practice:OnOpen()
|
|||
self.BtView:OnOpen(self,{ sortOrder = self.sortingOrder, panelType = PanelTypeView.Practice })
|
||||
self.mask:SetActive(false)
|
||||
self.skillObj:SetActive(true)
|
||||
Practice:SetSkillInfo()
|
||||
|
||||
end
|
||||
--设置技能信息显示
|
||||
function Practice:SetSkillInfo()
|
||||
local list=PracticeManager.GetSkillInfo()
|
||||
--table.sort(list)
|
||||
local index=1
|
||||
-- for index, value in ipairs(myTable) do
|
||||
-- -- body
|
||||
-- end
|
||||
for i = 100, 400,100 do
|
||||
local item=self.skillList[index]
|
||||
Util.GetGameObject(item, "icon"):GetComponent("Image").sprite=self.spLoader:LoadSprite(GetResourcePath(tonumber(SkillBaseConfig[i].Icon)))
|
||||
if list[i] and list[i]~=0 then
|
||||
Util.GetGameObject(item, "mask"):SetActive(false)
|
||||
Util.GetGameObject(item, "Text"):SetActive(true)
|
||||
Util.GetGameObject(item, "Text"):GetComponent("Text").text=list[i]
|
||||
else
|
||||
Util.GetGameObject(item, "mask"):SetActive(true)
|
||||
Util.GetGameObject(item, "Text"):SetActive(false)
|
||||
end
|
||||
Util.AddClick(item,function()
|
||||
|
||||
UIManager.OpenPanel(UIName.PracticeSkillInfoPanel,i,list[i])
|
||||
end)
|
||||
index=index+1
|
||||
end
|
||||
for key, value in pairs(list) do
|
||||
|
||||
|
||||
end
|
||||
end
|
||||
function Practice:OnFocus()
|
||||
Practice:SetSkillInfo()
|
||||
end
|
||||
|
||||
function Practice:OnSortingOrderChange()
|
||||
|
|
@ -398,6 +440,7 @@ function Practice:OnDestroy()
|
|||
ClearRedPointObject(RedPointType.Practice_imprint,self.imprintRedPoint)
|
||||
ClearRedPointObject(RedPointType.Practice_fourQua,self.fourQuadrantRedPoint)
|
||||
self.itemList = {}
|
||||
self.skillList={}
|
||||
self.pointList = {}
|
||||
self.lineList = {}
|
||||
self.effectUpgradeList = {}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,118 @@
|
|||
local PracticeSkillInfoPanel = quick_class("PracticeSkillInfoPanel", BasePanel)
|
||||
--按钮状态
|
||||
local btnState=0
|
||||
local costConfig
|
||||
local skillId=0
|
||||
local skillLv=0
|
||||
local nextData
|
||||
function PracticeSkillInfoPanel:InitComponent()
|
||||
self.spLoader = SpriteLoader.New()
|
||||
self.titleTxt=Util.GetGameObject(self.gameObject, "bg/title"):GetComponent("Text")
|
||||
self.skillIcon=Util.GetGameObject(self.gameObject, "bg/skill/icon"):GetComponent("Image")
|
||||
self.skillLv=Util.GetGameObject(self.gameObject, "bg/skill/Text"):GetComponent("Text")
|
||||
self.lockObj=Util.GetGameObject(self.gameObject, "bg/skill/mask")
|
||||
self.hintInfo=Util.GetGameObject(self.gameObject, "bg/hintTxt"):GetComponent("Text")
|
||||
self.currInfo=Util.GetGameObject(self.gameObject, "bg/currInfo"):GetComponent("Text")
|
||||
self.nextInfo=Util.GetGameObject(self.gameObject, "bg/nextInfo"):GetComponent("Text")
|
||||
self.costImg=Util.GetGameObject(self.gameObject, "bg/costImg"):GetComponent("Image")
|
||||
self.costNum=Util.GetGameObject(self.gameObject, "bg/costImg/Text"):GetComponent("Text")
|
||||
self.btn_up=Util.GetGameObject(self.gameObject, "bg/btn")
|
||||
self.btn_close=Util.GetGameObject(self.gameObject, "bg/btnBack")
|
||||
self.btn_info=Util.GetGameObject(self.gameObject, "bg/btn/Text"):GetComponent("Text")
|
||||
end
|
||||
|
||||
function PracticeSkillInfoPanel:BindEvent()
|
||||
--升级按钮
|
||||
|
||||
Util.AddClick(self.btn_up, function()
|
||||
if btnState==4 then
|
||||
PopupTipPanel.ShowTip(costConfig.Name.."不足,无法升级技能")
|
||||
return
|
||||
elseif btnState==3 then
|
||||
NetManager.PracticeSkillUpRequest(skillId,function()
|
||||
LogError("point skillId=="..skillId)
|
||||
PopupTipPanel.ShowTip("技能升级成功!")
|
||||
if nextData then
|
||||
PracticeSkillInfoPanel:RefreshShow(skillId,skillLv+1)
|
||||
PracticeManager.SetPlayerSkill(skillId,skillLv)
|
||||
end
|
||||
end)
|
||||
end
|
||||
end)
|
||||
|
||||
--关闭按钮
|
||||
Util.AddClick(self.btn_close, function()
|
||||
PlaySoundWithoutClick(SoundConfig.Sound_UICancel)
|
||||
self:ClosePanel()
|
||||
end)
|
||||
end
|
||||
|
||||
local currLv=0
|
||||
function PracticeSkillInfoPanel:OnOpen(id,lv)
|
||||
PracticeSkillInfoPanel:RefreshShow(id,lv)
|
||||
end
|
||||
|
||||
function PracticeSkillInfoPanel:RefreshShow(id,lv)
|
||||
if lv==0 then
|
||||
currLv=1
|
||||
else
|
||||
currLv=lv
|
||||
end
|
||||
LogError("level====="..lv)
|
||||
skillLv=lv
|
||||
skillId=id
|
||||
LogError("skillid==="..skillId)
|
||||
local currData=ConfigManager.TryGetConfigDataByDoubleKey(ConfigName.PlayerSkill,"SkillID",id,"Level",currLv)
|
||||
nextData=ConfigManager.TryGetConfigDataByDoubleKey(ConfigName.PlayerSkill,"SkillID",id,"Level",currLv+1)
|
||||
self.currInfo.text="本级效果:"..currData.Desc
|
||||
self.skillIcon.sprite=self.spLoader:LoadSprite(GetResourcePath(currData.Icon))
|
||||
self.titleTxt.text=currData.Name
|
||||
self.skillLv.text=currLv
|
||||
--没有下一等级
|
||||
if not nextData then
|
||||
self.nextInfo.gameObject:SetActive(false)
|
||||
self.costImg.gameObject:SetActive(false)
|
||||
self.hintInfo.gameObject:SetActive(false)
|
||||
self.btn_info.text="已达上限"
|
||||
Util.SetGray(self.btn_up,true)
|
||||
btnState=1 --已达上限
|
||||
else
|
||||
self.nextInfo.text="下级效果:"..nextData.Desc
|
||||
--如果等级为0 表示未解锁
|
||||
if lv==0 then
|
||||
self.btn_info.text="未解锁"
|
||||
self.hintInfo.gameObject:SetActive(true)
|
||||
self.costImg.gameObject:SetActive(false)
|
||||
self.hintInfo.text="修行到达"..PracticeManager.GetRankNameByLv(nextData.XiuxianId).."后方可升级"
|
||||
Util.SetGray(self.btn_up,true)
|
||||
btnState=2 --未解锁技能
|
||||
else
|
||||
if nextData.XiuxianId>PracticeManager.PracticeLevel then
|
||||
self.btn_info.text="升 级"
|
||||
self.hintInfo.gameObject:SetActive(true)
|
||||
self.costImg.gameObject:SetActive(false)
|
||||
Util.SetGray(self.btn_up,true)
|
||||
self.hintInfo.text="修行到达"..PracticeManager.GetRankNameByLv(nextData.XiuxianId).."后方可升级"
|
||||
btnState=2
|
||||
else
|
||||
self.btn_info.text="升 级"
|
||||
self.hintInfo.gameObject:SetActive(false)
|
||||
self.costImg.gameObject:SetActive(true)
|
||||
local icon,cost=SetIcon(self.spLoader,currData.LvupCost[1][1])
|
||||
costConfig=cost
|
||||
self.costImg.sprite=icon
|
||||
if BagManager.GetItemCountById(currData.LvupCost[1][1])>=currData.LvupCost[1][2] then
|
||||
self.costNum.color=UIColor.WRITE
|
||||
btnState=3 --可以点击
|
||||
else
|
||||
self.costNum.color=UIColor.RED
|
||||
btnState=4 --货币不足
|
||||
end
|
||||
self.costNum.text=currData.LvupCost[1][2]
|
||||
Util.SetGray(self.btn_up,false)
|
||||
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
return PracticeSkillInfoPanel
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 92fee0c6f2e97d849a753e42973ce7c8
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Loading…
Reference in New Issue