River Jiang
2020-10-28 8637f933a9987b4b16dd9725189a1c6ee2685118
提交充能条特效修改
Merge branch 'master' of http://172.16.1.52:8090/r/GemBattle into master

# Conflicts:
# Assets/00000/package/Model.meta
# Assets/00000/package/Prefab/Effect_chongnengtiao1026.prefab
# Assets/00000/package/Prefab/Effect_jiansu1026.prefab
# Assets/Scripts/TowerDefense/Towers/Placement/TowerPlacementGrid.cs
1 files renamed
16 files deleted
7 files added
49 files modified
58118 ■■■■ changed files
Assets/00000/package/Materials/Sequence_030_3X3.mat 30 ●●●●● patch | view | raw | blame | history
Assets/00000/package/Materials/Sequence_030_3X3.mat.meta 8 ●●●●● patch | view | raw | blame | history
Assets/00000/package/Model.meta 2 ●●● patch | view | raw | blame | history
Assets/00000/package/Prefab/Effect_chongnengtiao1026.prefab 9812 ●●●●● patch | view | raw | blame | history
Assets/00000/package/Prefab/Effect_jiansu1026.prefab 4 ●●●● patch | view | raw | blame | history
Assets/00000/package/Texture/Sequence_030_3X3.png patch | view | raw | blame | history
Assets/00000/package/Texture/Sequence_030_3X3.png.meta 127 ●●●●● patch | view | raw | blame | history
Assets/Materials/Guide/RectGuidance.mat 2 ●●● patch | view | raw | blame | history
Assets/Prefabs/EndlessEnemies.meta 8 ●●●●● patch | view | raw | blame | history
Assets/Prefabs/EndlessEnemies/BossAgent 1.prefab 44108 ●●●●● patch | view | raw | blame | history
Assets/Prefabs/EndlessEnemies/BossAgent 1.prefab.meta 9 ●●●●● patch | view | raw | blame | history
Assets/Prefabs/EndlessEnemies/fire 1.prefab 578 ●●●●● patch | view | raw | blame | history
Assets/Prefabs/EndlessEnemies/fire 1.prefab.meta 7 ●●●●● patch | view | raw | blame | history
Assets/Prefabs/EndlessEnemies/fire 2.prefab 586 ●●●●● patch | view | raw | blame | history
Assets/Prefabs/EndlessEnemies/fire 2.prefab.meta 7 ●●●●● patch | view | raw | blame | history
Assets/Prefabs/EndlessEnemies/water 1.prefab 561 ●●●●● patch | view | raw | blame | history
Assets/Prefabs/EndlessEnemies/water 1.prefab.meta 7 ●●●●● patch | view | raw | blame | history
Assets/Prefabs/EndlessEnemies/water 2.prefab 561 ●●●●● patch | view | raw | blame | history
Assets/Prefabs/EndlessEnemies/water 2.prefab.meta 7 ●●●●● patch | view | raw | blame | history
Assets/Prefabs/EndlessEnemies/wood 1.prefab 636 ●●●●● patch | view | raw | blame | history
Assets/Prefabs/EndlessEnemies/wood 1.prefab.meta 7 ●●●●● patch | view | raw | blame | history
Assets/Prefabs/Towers/SkillFire/SkillFireTower_0.prefab 3 ●●●● patch | view | raw | blame | history
Assets/Resources/UI/Guide/GuidePanel.prefab 4 ●●●● patch | view | raw | blame | history
Assets/Scenes/Levels/Battle/Endless.unity 7 ●●●●● patch | view | raw | blame | history
Assets/Scenes/Levels/Battle/GemBattle.unity 116 ●●●●● patch | view | raw | blame | history
Assets/Scenes/LoadingScene.unity 4 ●●●● patch | view | raw | blame | history
Assets/Scripts/Common/GameConfig.cs 32 ●●●●● patch | view | raw | blame | history
Assets/Scripts/Data/EndlessPortData.cs 106 ●●●● patch | view | raw | blame | history
Assets/Scripts/Event/EventType.cs 6 ●●●● patch | view | raw | blame | history
Assets/Scripts/GameAnalytics_SDK/GA_SDK_Manager.cs 285 ●●●●● patch | view | raw | blame | history
Assets/Scripts/GameAnalytics_SDK/UI/LoginUI.cs 39 ●●●● patch | view | raw | blame | history
Assets/Scripts/Guide/GuideCtrl.cs 19 ●●●●● patch | view | raw | blame | history
Assets/Scripts/TowerDefense/Agents/Agent.cs 13 ●●●● patch | view | raw | blame | history
Assets/Scripts/TowerDefense/Agents/HomeBaseAttacker.cs 254 ●●●● patch | view | raw | blame | history
Assets/Scripts/TowerDefense/Level/EndlessLevelManager.cs 2 ●●● patch | view | raw | blame | history
Assets/Scripts/TowerDefense/Level/EndlessWaveLineManager.cs 31 ●●●●● patch | view | raw | blame | history
Assets/Scripts/TowerDefense/Level/EndlessWaveManager.cs 3 ●●●● patch | view | raw | blame | history
Assets/Scripts/TowerDefense/Level/WaveLineSelMgr.cs 84 ●●●●● patch | view | raw | blame | history
Assets/Scripts/TowerDefense/Towers/Placement/TowerPlacementGridEndless.cs 1 ●●●● patch | view | raw | blame | history
Assets/Scripts/TowerDefense/Towers/Projectiles/BallisticAttack.cs 2 ●●●●● patch | view | raw | blame | history
Assets/Scripts/TowerDefense/UI/EndlessSettlement.cs 4 ●●●● patch | view | raw | blame | history
Assets/Scripts/TowerDefense/UI/EndlessTowerGridOpen.cs 1 ●●●● patch | view | raw | blame | history
Assets/Scripts/TowerDefense/UI/EndlessUIStart.cs 15 ●●●●● patch | view | raw | blame | history
Assets/Scripts/TowerDefense/UI/HUD/EndlessGameUI.cs 8 ●●●● patch | view | raw | blame | history
Assets/StreamingAssets/Table/endless_port.json 2 ●●● patch | view | raw | blame | history
Assets/StreamingAssets/Table/endless_teachport.json 2 ●●● patch | view | raw | blame | history
GemBattle.zip patch | view | raw | blame | history
GemBattle/宝石塔防_Data/Managed/Assembly-CSharp.dll patch | view | raw | blame | history
GemBattle/宝石塔防_Data/StreamingAssets/Table/battle.json 2 ●●● patch | view | raw | blame | history
GemBattle/宝石塔防_Data/StreamingAssets/Table/donaterule.json 1 ●●●● patch | view | raw | blame | history
GemBattle/宝石塔防_Data/StreamingAssets/Table/endless_port.json 2 ●●● patch | view | raw | blame | history
GemBattle/宝石塔防_Data/StreamingAssets/Table/endless_teachport.json 1 ●●●● patch | view | raw | blame | history
GemBattle/宝石塔防_Data/globalgamemanagers patch | view | raw | blame | history
GemBattle/宝石塔防_Data/globalgamemanagers.assets patch | view | raw | blame | history
GemBattle/宝石塔防_Data/level0 patch | view | raw | blame | history
GemBattle/宝石塔防_Data/level1 patch | view | raw | blame | history
GemBattle/宝石塔防_Data/level2 patch | view | raw | blame | history
GemBattle/宝石塔防_Data/level3 patch | view | raw | blame | history
GemBattle/宝石塔防_Data/level4 patch | view | raw | blame | history
GemBattle/宝石塔防_Data/resources.assets patch | view | raw | blame | history
GemBattle/宝石塔防_Data/resources.assets.resS patch | view | raw | blame | history
GemBattle/宝石塔防_Data/sharedassets0.assets patch | view | raw | blame | history
GemBattle/宝石塔防_Data/sharedassets0.assets.resS patch | view | raw | blame | history
GemBattle/宝石塔防_Data/sharedassets1.assets patch | view | raw | blame | history
GemBattle/宝石塔防_Data/sharedassets1.assets.resS patch | view | raw | blame | history
GemBattle/宝石塔防_Data/sharedassets2.assets patch | view | raw | blame | history
GemBattle/宝石塔防_Data/sharedassets2.assets.resS patch | view | raw | blame | history
GemBattle/宝石塔防_Data/sharedassets2.resource patch | view | raw | blame | history
GemBattle/宝石塔防_Data/sharedassets3.assets patch | view | raw | blame | history
GemBattle/宝石塔防_Data/sharedassets3.assets.resS patch | view | raw | blame | history
GemBattle/宝石塔防_Data/sharedassets4.assets patch | view | raw | blame | history
GemBattle/宝石塔防_Data/sharedassets4.assets.resS patch | view | raw | blame | history
ProjectSettings/EditorBuildSettings.asset 2 ●●● patch | view | raw | blame | history
Assets/00000/package/Materials/Sequence_030_3X3.mat
New file
@@ -0,0 +1,30 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
  serializedVersion: 6
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInstance: {fileID: 0}
  m_PrefabAsset: {fileID: 0}
  m_Name: Sequence_030_3X3
  m_Shader: {fileID: 203, guid: 0000000000000000f000000000000000, type: 0}
  m_ShaderKeywords:
  m_LightmapFlags: 4
  m_EnableInstancingVariants: 0
  m_DoubleSidedGI: 0
  m_CustomRenderQueue: -1
  stringTagMap: {}
  disabledShaderPasses: []
  m_SavedProperties:
    serializedVersion: 3
    m_TexEnvs:
    - _MainTex:
        m_Texture: {fileID: 2800000, guid: 3c41a80ed472b8e4da45dd43635b4689, type: 3}
        m_Scale: {x: 1, y: 1}
        m_Offset: {x: 0, y: 0}
    m_Floats:
    - _InvFade: 1
    m_Colors:
    - _TintColor: {r: 1, g: 1, b: 1, a: 1}
  m_BuildTextureStacks: []
Assets/00000/package/Materials/Sequence_030_3X3.mat.meta
New file
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: a9593836ed213aa4599d9cb005e74006
NativeFormatImporter:
  externalObjects: {}
  mainObjectFileID: 0
  userData:
  assetBundleName:
  assetBundleVariant:
Assets/00000/package/Model.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 356f3d5ec50eed642acbfb8edb721efb
guid: bc98a87dbcc9a674f909551b03210fbd
folderAsset: yes
DefaultImporter:
  externalObjects: {}
Assets/00000/package/Prefab/Effect_chongnengtiao1026.prefab
Diff too large
Assets/00000/package/Prefab/Effect_jiansu1026.prefab
@@ -49,7 +49,7 @@
  ringBufferLoopRange: {x: 0, y: 1}
  looping: 1
  prewarm: 1
  playOnAwake: 1
  playOnAwake: 0
  useUnscaledTime: 0
  autoRandomSeed: 0
  useRigidbodyForVelocity: 1
@@ -4874,7 +4874,7 @@
  ringBufferLoopRange: {x: 0, y: 1}
  looping: 1
  prewarm: 1
  playOnAwake: 1
  playOnAwake: 0
  useUnscaledTime: 0
  autoRandomSeed: 1
  useRigidbodyForVelocity: 1
Assets/00000/package/Texture/Sequence_030_3X3.png
Assets/00000/package/Texture/Sequence_030_3X3.png.meta
New file
@@ -0,0 +1,127 @@
fileFormatVersion: 2
guid: 3c41a80ed472b8e4da45dd43635b4689
TextureImporter:
  internalIDToNameTable: []
  externalObjects: {}
  serializedVersion: 10
  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: -1
    aniso: -1
    mipBias: -100
    wrapU: -1
    wrapV: -1
    wrapW: -1
  nPOTScale: 1
  lightmap: 0
  compressionQuality: 50
  spriteMode: 0
  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: 0
  textureShape: 1
  singleChannelComponent: 0
  maxTextureSizeSet: 0
  compressionQualitySet: 0
  textureFormatSet: 0
  platformSettings:
  - serializedVersion: 3
    buildTarget: DefaultTexturePlatform
    maxTextureSize: 2048
    resizeAlgorithm: 0
    textureFormat: -1
    textureCompression: 1
    compressionQuality: 50
    crunchedCompression: 0
    allowsAlphaSplitting: 0
    overridden: 0
    androidETC2FallbackOverride: 0
    forceMaximumCompressionQuality_BC6H_BC7: 0
  - serializedVersion: 3
    buildTarget: Standalone
    maxTextureSize: 2048
    resizeAlgorithm: 0
    textureFormat: -1
    textureCompression: 1
    compressionQuality: 50
    crunchedCompression: 0
    allowsAlphaSplitting: 0
    overridden: 0
    androidETC2FallbackOverride: 0
    forceMaximumCompressionQuality_BC6H_BC7: 0
  - serializedVersion: 3
    buildTarget: iPhone
    maxTextureSize: 1024
    resizeAlgorithm: 0
    textureFormat: 51
    textureCompression: 1
    compressionQuality: 100
    crunchedCompression: 0
    allowsAlphaSplitting: 0
    overridden: 1
    androidETC2FallbackOverride: 0
    forceMaximumCompressionQuality_BC6H_BC7: 0
  - serializedVersion: 3
    buildTarget: Android
    maxTextureSize: 1024
    resizeAlgorithm: 0
    textureFormat: 51
    textureCompression: 1
    compressionQuality: 100
    crunchedCompression: 0
    allowsAlphaSplitting: 0
    overridden: 1
    androidETC2FallbackOverride: 1
    forceMaximumCompressionQuality_BC6H_BC7: 0
  spriteSheet:
    serializedVersion: 2
    sprites: []
    outline: []
    physicsShape: []
    bones: []
    spriteID:
    internalID: 0
    vertices: []
    indices:
    edges: []
    weights: []
    secondaryTextures: []
  spritePackingTag:
  pSDRemoveMatte: 0
  pSDShowRemoveMatteOption: 0
  userData:
  assetBundleName:
  assetBundleVariant:
Assets/Materials/Guide/RectGuidance.mat
@@ -83,7 +83,7 @@
    - _UseUIAlphaClip: 0
    - _ZWrite: 1
    m_Colors:
    - _Center: {r: -150, g: -198, b: 0, a: 0}
    - _Center: {r: 6, g: -198, b: 0, a: 0}
    - _Color: {r: 1, g: 1, b: 1, a: 1}
    - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
  m_BuildTextureStacks: []
Assets/Prefabs/EndlessEnemies.meta
File was deleted
Assets/Prefabs/EndlessEnemies/BossAgent 1.prefab
File was deleted
Assets/Prefabs/EndlessEnemies/BossAgent 1.prefab.meta
File was deleted
Assets/Prefabs/EndlessEnemies/fire 1.prefab
File was deleted
Assets/Prefabs/EndlessEnemies/fire 1.prefab.meta
File was deleted
Assets/Prefabs/EndlessEnemies/fire 2.prefab
File was deleted
Assets/Prefabs/EndlessEnemies/fire 2.prefab.meta
File was deleted
Assets/Prefabs/EndlessEnemies/water 1.prefab
File was deleted
Assets/Prefabs/EndlessEnemies/water 1.prefab.meta
File was deleted
Assets/Prefabs/EndlessEnemies/water 2.prefab
File was deleted
Assets/Prefabs/EndlessEnemies/water 2.prefab.meta
File was deleted
Assets/Prefabs/EndlessEnemies/wood 1.prefab
File was deleted
Assets/Prefabs/EndlessEnemies/wood 1.prefab.meta
File was deleted
Assets/Prefabs/Towers/SkillFire/SkillFireTower_0.prefab
@@ -377,8 +377,7 @@
  m_Script: {fileID: 11500000, guid: de49640db9f74ca892b78c0d6bb4eb02, type: 3}
  m_Name: 
  m_EditorClassIdentifier: 
  fireParticleSystem: {fileID: 2318591686727675674, guid: b52e9414c9dda40438d3d2662dd775d3,
    type: 3}
  fireParticleObj: {fileID: 0}
  fireParticleSystem1: {fileID: 0}
  fireParticleSystem2: {fileID: 0}
--- !u!114 &114091089106639196
Assets/Resources/UI/Guide/GuidePanel.prefab
@@ -421,7 +421,7 @@
  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
  m_AnchorMin: {x: 0, y: 0}
  m_AnchorMax: {x: 1, y: 1}
  m_AnchoredPosition: {x: 171.39996, y: -637.90015}
  m_AnchoredPosition: {x: 171.39996, y: -637.9002}
  m_SizeDelta: {x: -586.65216, y: -1768.8896}
  m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &7524990171873018580
@@ -736,7 +736,7 @@
  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
  m_AnchorMin: {x: 0.5, y: 0.5}
  m_AnchorMax: {x: 0.5, y: 0.5}
  m_AnchoredPosition: {x: 9, y: 130}
  m_AnchoredPosition: {x: -150, y: 130}
  m_SizeDelta: {x: 158, y: 518}
  m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &4167795648100950029
Assets/Scenes/Levels/Battle/Endless.unity
@@ -4199,11 +4199,11 @@
  - {fileID: 618377762}
  - {fileID: 167919691}
  battleAreaObject: {fileID: 146816451}
  skillFirePrefab: {fileID: 8044661745672667018, guid: 557dc53e7cd0f8346a6f31e7bb42bd7d,
  skillFirePrefab: {fileID: 3242227498573651035, guid: ac882e0998c69614ab2ee136bb504c8a,
    type: 3}
  skillBombPrefab: {fileID: 5051328804516374939, guid: 1b11cbd1533e0024191ebe6028f8d8db,
  skillBombPrefab: {fileID: 7091104469017435009, guid: 393d187774e421848be71dd6a69be174,
    type: 3}
  bufStopMovePrefab: {fileID: 4951501550265840871, guid: 4324236b15aba1947815ef305dd216c0,
  bufStopMovePrefab: {fileID: 7091104469017435009, guid: 393d187774e421848be71dd6a69be174,
    type: 3}
--- !u!114 &567180759
MonoBehaviour:
@@ -6135,6 +6135,7 @@
  SettlementUI: {fileID: 19764329}
  uiStartMssk: {fileID: 1730636811}
  bgMusic: {fileID: 0}
  beginSkillStep: 0
--- !u!114 &849284128
MonoBehaviour:
  m_ObjectHideFlags: 0
Assets/Scenes/Levels/Battle/GemBattle.unity
@@ -3704,116 +3704,6 @@
    m_PreInfinity: 2
    m_PostInfinity: 2
    m_RotationOrder: 0
--- !u!1 &348560274
GameObject:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInstance: {fileID: 0}
  m_PrefabAsset: {fileID: 0}
  serializedVersion: 6
  m_Component:
  - component: {fileID: 348560278}
  - component: {fileID: 348560277}
  - component: {fileID: 348560276}
  - component: {fileID: 348560275}
  - component: {fileID: 348560279}
  m_Layer: 0
  m_Name: EStart
  m_TagString: Untagged
  m_Icon: {fileID: 0}
  m_NavMeshLayer: 0
  m_StaticEditorFlags: 0
  m_IsActive: 0
--- !u!65 &348560275
BoxCollider:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInstance: {fileID: 0}
  m_PrefabAsset: {fileID: 0}
  m_GameObject: {fileID: 348560274}
  m_Material: {fileID: 0}
  m_IsTrigger: 0
  m_Enabled: 1
  serializedVersion: 2
  m_Size: {x: 1, y: 1, z: 1}
  m_Center: {x: 0, y: 0, z: 0}
--- !u!23 &348560276
MeshRenderer:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInstance: {fileID: 0}
  m_PrefabAsset: {fileID: 0}
  m_GameObject: {fileID: 348560274}
  m_Enabled: 1
  m_CastShadows: 1
  m_ReceiveShadows: 1
  m_DynamicOccludee: 1
  m_MotionVectors: 1
  m_LightProbeUsage: 1
  m_ReflectionProbeUsage: 1
  m_RayTracingMode: 2
  m_RayTraceProcedural: 0
  m_RenderingLayerMask: 1
  m_RendererPriority: 0
  m_Materials:
  - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0}
  m_StaticBatchInfo:
    firstSubMesh: 0
    subMeshCount: 0
  m_StaticBatchRoot: {fileID: 0}
  m_ProbeAnchor: {fileID: 0}
  m_LightProbeVolumeOverride: {fileID: 0}
  m_ScaleInLightmap: 1
  m_ReceiveGI: 1
  m_PreserveUVs: 0
  m_IgnoreNormalsForChartDetection: 0
  m_ImportantGI: 0
  m_StitchLightmapSeams: 1
  m_SelectedEditorRenderState: 3
  m_MinimumChartSize: 4
  m_AutoUVMaxDistance: 0.5
  m_AutoUVMaxAngle: 89
  m_LightmapParameters: {fileID: 0}
  m_SortingLayerID: 0
  m_SortingLayer: 0
  m_SortingOrder: 0
  m_AdditionalVertexStreams: {fileID: 0}
--- !u!33 &348560277
MeshFilter:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInstance: {fileID: 0}
  m_PrefabAsset: {fileID: 0}
  m_GameObject: {fileID: 348560274}
  m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!4 &348560278
Transform:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInstance: {fileID: 0}
  m_PrefabAsset: {fileID: 0}
  m_GameObject: {fileID: 348560274}
  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
  m_LocalPosition: {x: -25.41, y: 5, z: -3.78}
  m_LocalScale: {x: 1, y: 1, z: 1}
  m_Children: []
  m_Father: {fileID: 0}
  m_RootOrder: 9
  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &348560279
MonoBehaviour:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInstance: {fileID: 0}
  m_PrefabAsset: {fileID: 0}
  m_GameObject: {fileID: 348560274}
  m_Enabled: 1
  m_EditorHideFlags: 0
  m_Script: {fileID: 11500000, guid: 13b97b2f668aa974daa5f83c66f8cf84, type: 3}
  m_Name:
  m_EditorClassIdentifier:
  particlePrefab: {fileID: 8994085123534126341, guid: 039a660889a547f44a33c414613f09a6,
    type: 3}
--- !u!1 &368843165
GameObject:
  m_ObjectHideFlags: 0
@@ -5523,11 +5413,11 @@
  - {fileID: 902738588}
  - {fileID: 1643240603}
  battleAreaObject: {fileID: 146816451}
  skillFirePrefab: {fileID: 8044661745672667018, guid: 557dc53e7cd0f8346a6f31e7bb42bd7d,
  skillFirePrefab: {fileID: 3242227498573651035, guid: ac882e0998c69614ab2ee136bb504c8a,
    type: 3}
  skillBombPrefab: {fileID: 5051328804516374939, guid: 1b11cbd1533e0024191ebe6028f8d8db,
  skillBombPrefab: {fileID: 7091104469017435009, guid: 393d187774e421848be71dd6a69be174,
    type: 3}
  bufStopMovePrefab: {fileID: 4951501550265840871, guid: 4324236b15aba1947815ef305dd216c0,
  bufStopMovePrefab: {fileID: 7091104469017435009, guid: 393d187774e421848be71dd6a69be174,
    type: 3}
--- !u!114 &567180765
MonoBehaviour:
Assets/Scenes/LoadingScene.unity
@@ -410,7 +410,7 @@
  m_PrefabInstance: {fileID: 0}
  m_PrefabAsset: {fileID: 0}
  m_GameObject: {fileID: 501810470}
  m_Enabled: 1
  m_Enabled: 0
  m_EditorHideFlags: 0
  m_Script: {fileID: 11500000, guid: 5671a738ca063f047a1619ba0c199f45, type: 3}
  m_Name: 
@@ -1138,7 +1138,7 @@
  m_PrefabInstance: {fileID: 0}
  m_PrefabAsset: {fileID: 0}
  m_GameObject: {fileID: 2083383109}
  m_Enabled: 0
  m_Enabled: 1
  m_EditorHideFlags: 0
  m_Script: {fileID: 11500000, guid: 1c3c4a281008bfb42a6882852b64f3b7, type: 3}
  m_Name: 
Assets/Scripts/Common/GameConfig.cs
@@ -10,7 +10,7 @@
        /// <summary>
        /// LoadingScene 载入下一个场景的场景名
        /// </summary>
        public static string NextSceneName = "GemBattle";
        public static string NextSceneName = "Endless";
        public static bool IsDebug = false;
        public static string TestLoginUrl = "http://10.5.3.227:9000/user/login";
@@ -28,8 +28,38 @@
        public static bool CanOpenNewTower = true;
        /// <summary>
        /// 攻击塔是否可以收到伤害
        /// </summary>
        public static bool TowerCanTakeDamage = false;
        /// <summary>
        /// 攻击塔是否第一次收到伤害
        /// </summary>
        public static bool TowerFirstTakeDamage = true;
        /// <summary>
        /// 是否是新手
        /// </summary>
        public static bool IsNewbie = true;
        /// <summary>
        /// 所有新手的引导步骤是否全部完成
        /// </summary>
        public static bool IsNewbieGuideCompleted = false;
        /// <summary>
        /// 无尽模式每一轮游戏中成功使用技能宝石的次数
        /// </summary>
        public static int EndlessPortUseSkillTowerCount;
        /// <summary>
        /// 每一轮游戏中成功开启的塔位置数量,这个是上阵的塔,可以攻击的塔位
        /// </summary>
        public static int EndlessOpenAttackTowerCount;
        /// <summary>
        /// 每一轮游戏中成功购买塔的数量
        /// </summary>
        public static int EndlessBuyTowerCount;
    }
}
Assets/Scripts/Data/EndlessPortData.cs
@@ -1,5 +1,6 @@
using System.Collections.Generic;
using System;
using UnityEngine;
/**
 * endless_port 无尽模式关卡配置表数据处理类
@@ -24,6 +25,11 @@
        /// 掉落概率总权重,即:表中掉落概率那一项全部加起来
        /// </summary>
        public int DropTotalWeight;
        /// <summary>
        /// 关卡等级
        /// </summary>
        public int PortLevel;
    }
    public class EndlessPortData
@@ -33,19 +39,14 @@
        /// </summary>
        private static List<endless_port> endlessPortList;
        /// <summary>
        /// 无尽模式新手关卡配置表
        /// </summary>
        private static List<endless_port> endlessTeachPortList;
        private static List<EndlessPortConfig> portConfigList;
        /// <summary>
        /// 新手用
        /// 关卡配置字典
        /// </summary>
        private static List<EndlessPortConfig> teachPortConfigList;
        private static Dictionary<int, List<EndlessPortConfig>> portDic;
        private static Random random;
        private static System.Random random;
        /// <summary>
        /// 最大关卡
@@ -62,84 +63,32 @@
        /// </summary>
        public static void Init()
        {
            random = new Random();
            InitPortConfig();
            InitTeachPortConfig();
            List<List<EndlessPortConfig>> list = GetLevelWaveData(1);
        }
        /// <summary>
        /// 初始化关卡配置
        /// </summary>
        private static void InitPortConfig()
        {
            random = new System.Random();
            endlessPortList = JsonDataCenter.GetList<endless_port>();
            portConfigList = new List<EndlessPortConfig>();
            portDic = new Dictionary<int, List<EndlessPortConfig>>();
            InitPortList(portConfigList, endlessPortList);
        }
        /// <summary>
        /// 初始化新手的关卡配置
        /// </summary>
        private static void InitTeachPortConfig()
        {
            List<endless_teachport> list = JsonDataCenter.GetList<endless_teachport>();
            endlessTeachPortList = new List<endless_port>();
            foreach (endless_teachport data in list)
            {
                endless_port newData = new endless_port();
                newData.id = data.id;
                newData.level = data.level;
                newData.boss_name = data.boss_name;
                newData.resource = data.resource;
                newData.wave = data.wave;
                newData.tunel = data.tunel;
                newData.enemy_id = data.enemy_id;
                newData.amount = data.amount;
                newData.interval = data.interval;
                newData.b_hp = data.b_hp;
                newData.b_speed = data.b_speed;
                newData.b_coin = data.b_coin;
                newData.cooldown = data.cooldown;
                List<reward> rewardList = new List<reward>();
                foreach (reward r in rewardList)
                {
                    reward nr = new reward();
                    nr.type = r.type;
                    nr.id = r.id;
                    nr.count = r.count;
                    rewardList.Add(nr);
                }
                newData.drop = rewardList;
                List<int> rateList = new List<int>();
                foreach (int r in rateList)
                {
                    rateList.Add(r);
                }
                newData.drop_rate = rateList;
                newData.tunel_bg = data.tunel_bg;
                endlessTeachPortList.Add(newData);
            }
            teachPortConfigList = new List<EndlessPortConfig>();
            InitPortList(teachPortConfigList, endlessTeachPortList);
        }
        private static void InitPortList(List<EndlessPortConfig> list, List<endless_port> srcList)
        {
            maxLevel = 0;
            int? preLevel = null;
            foreach (endless_port data in srcList)
            {
                if (data.level > maxLevel)
                    maxLevel = data.level;
                if (!GameConfig.IsNewbie && data.level < 0) continue;
                if (preLevel == null || preLevel != data.level)
                {
                    preLevel = data.level;
                    ++maxLevel;
                }
                EndlessPortConfig param = new EndlessPortConfig();
                param.Config = data;
                param.EnemyData = EndlessEnemyData.GetDataById(data.enemy_id);
                param.PortLevel = maxLevel;
                int totalWeight = 0;
                for (int i = 0; i < data.drop_rate.Count; ++i)
@@ -149,6 +98,11 @@
                param.DropTotalWeight = totalWeight;
                list.Add(param);
                if (!portDic.ContainsKey(param.PortLevel))
                    portDic.Add(param.PortLevel, new List<EndlessPortConfig>());
                portDic[param.PortLevel].Add(param);
            }
        }
@@ -166,11 +120,11 @@
                ret.Add(new List<EndlessPortConfig>());
            }
            List<EndlessPortConfig> list = GameConfig.IsNewbie ? teachPortConfigList : portConfigList;
            List<EndlessPortConfig> allLevelData = portDic[level];
            foreach (EndlessPortConfig data in list)
            foreach (EndlessPortConfig data in allLevelData)
            {
                if (data.Config.level != level || data.Config.amount == 0) continue;
                if (data.Config.amount == 0) continue;
                ret[data.Config.wave - 1].Add(data);
            }
Assets/Scripts/Event/EventType.cs
@@ -38,7 +38,11 @@
        // 火元素塔充能使用结束
        FireTowerChargeEnd,
        //新手引导结束
        GuideFinish
        GuideFinish,
        // 无尽模式成功通过第*关,第*波
        EndlessCompletedPort,
        // 无尽模式关卡结束
        EndlessLevelCompleted,
    }
}
Assets/Scripts/GameAnalytics_SDK/GA_SDK_Manager.cs
@@ -11,12 +11,48 @@
            return _Ins;
        }
    }
    /// <summary>
    /// Awake is called when the script instance is being loaded.
    /// </summary>
    //用来记录是否首次登录
    bool isFirstStart;
    string firstStart = "GemBattleFirstStart";
    //漏斗流统计(去重)
    int statisticsStep;
    string statisticsStr = "GemBattleStatistics";
    //新手引导
    int guideStep;
    string guideStepStr = "GemBattleGuideStep";
    int maxLevel;//达到的最大关
    int maxWave;//达到最大波次
    string maxLevelStr = "GemBattleMaxLevelStr";
    string maxWaveStr = "GemBattleMaxWaveStr";
    void Awake()
    {
        _Ins = this;
        //PlayerPrefs.DeleteAll();
        //Debug.LogError("清除了数据");
        isFirstStart = PlayerPrefs.GetInt(firstStart) == 0;
        statisticsStep = PlayerPrefs.GetInt(statisticsStr);
        guideStep = PlayerPrefs.GetInt(guideStepStr);
        maxLevel = PlayerPrefs.GetInt(maxLevelStr);
        maxWave = PlayerPrefs.GetInt(maxWaveStr);
    }
    //清空数据
    public void Reset()
    {
        Debug.LogError("清除了数据");
        PlayerPrefs.DeleteAll();
        isFirstStart = PlayerPrefs.GetInt(firstStart) == 0;
        statisticsStep = PlayerPrefs.GetInt(statisticsStr);
        guideStep = PlayerPrefs.GetInt(guideStepStr);
        maxLevel = PlayerPrefs.GetInt(maxLevelStr);
        maxWave = PlayerPrefs.GetInt(maxWaveStr);
    }
    public string GetDeviceId()
@@ -48,13 +84,253 @@
        account.SetAccountType(AccountType.ANONYMOUS);
    }
    /*
    0.注册人数统计:以成功进入到战斗界面为注册成功   ---登录了就跳转页面
    1.启动漏斗流统计(去重)
    (1)成功加载启动页的人数
    (2)成功加载登陆界面的人数             启动首页
    (3)点击登陆按钮的人数                 点击登录
    (4)成功生成注册信息的人数             登录成功
    (5)成功加载游戏战斗界面的人数         跳转页面
    (6)成功进入到新手引导step_1的人数     新手引导1
    (7)成功完成step_1的人数               完成新手引导1
    2.引导步数统计
    (1)定义新手引导第n步 = step_n
    (2)完成step_n,状态记为n
    (3)需要统计每个玩家的n的值
    (4)可根据每一个n的值统计人数
    3.玩家每日的启动次数
    4.每次启动的游玩时长,按1min为1个区间,统计各区间每日玩家人数
    5.每次游玩过程中,点击【重新开始】按钮的次数,每次重新开始记做一轮
    7.每一轮游戏中成功使用技能宝石的次数
    8.每一轮游戏中成功开启的塔位置数量
    9.每一轮游戏中成功购买塔的数量
    10.玩家在结算界面点击【对pvp感兴趣】按钮次数
    11.玩家打到第x关y波的人数(去重)
    12.玩家达到第x关y波的次数(不去重)
    */
    //0.注册人数统计:以成功进入到战斗界面为注册成功
    public void ArriveBattle()
    {
        if (isFirstStart)
        {
            Debug.LogError("注册人数统计");
            //只记录一次
            Dictionary<string, object> dic = new Dictionary<string, object>
            {
                { "ArriveBattle", "Done"},
            };
            OnEvent("注册人数统计", dic);
            isFirstStart = false;
            PlayerPrefs.SetInt(firstStart, 1);
        }
    }
    /// <summary>
    /// 启动漏斗流统计(去重)
    ///(1)成功加载启动页的人数
    ///(2)成功加载登陆界面的人数              启动首页
    ///(3)点击登陆按钮的人数                  点击登录
    ///(4)成功生成注册信息的人数              登录成功
    ///(5)成功加载游戏战斗界面的人数          跳转页面
    ///(6)成功进入到新手引导step_1的人数      新手引导1
    ///(7)成功完成step_1的人数               完成新手引导1
    /// </summary>
    /// <param name="step"></param>
    public void Statistics(int step)
    {
        if (step > statisticsStep)
        {
            string key = "";
            switch (step)
            {
                case 1:
                    key = "成功加载登陆界面的人数";
                    break;
                case 2:
                    key = "点击登陆按钮的人数";
                    break;
                case 3:
                    key = "成功生成注册信息的人数";
                    break;
                case 4:
                    key = "成功加载游戏战斗界面的人数";
                    break;
                case 5:
                    key = "成功进入到新手引导step_1的人数";
                    break;
                case 6:
                    key = "成功完成step_1的人数";
                    break;
            }
            Dictionary<string, object> dic = new Dictionary<string, object>
            {
                { key, 1}
            };
            // Dictionary<string, object> dic = new Dictionary<string, object>
            // {
            //     { "成功加载登陆界面的人数", 0},
            //     { "点击登陆按钮的人数", 0},
            //     { "成功生成注册信息的人数", 0},
            //     { "成功加载游戏战斗界面的人数", 0},
            //     { "成功进入到新手引导step_1的人数", 0},
            //     { "成功完成step_1的人数", 0}
            // };
            //dic[key] = 1;
            Debug.LogError("漏斗流统计:" + key);
            OnEvent("漏斗流统计", dic);
            statisticsStep = step;
            PlayerPrefs.SetInt(statisticsStr, step);
        }
    }
    //单人统计一次 历史最高
    // 2.引导步数统计
    //(1)定义新手引导第n步 = step_n
    //(2)完成step_n,状态记为n
    //(3)需要统计每个玩家的n的值
    //(4)可根据每一个n的值统计人数
    public void GuideStep(int step)
    {
        if (step > guideStep)
        {
            Debug.LogError("引导步数统计:" + step);
            Dictionary<string, object> dic = new Dictionary<string, object>
            {
                { "Guide", step.ToString()}
            };
            OnEvent("引导步数统计", dic);
            guideStep = step;
            PlayerPrefs.SetInt(guideStepStr, step);
        }
    }
    //5.每次游玩过程中,点击【重新开始】按钮的次数,每次重新开始记做一轮
    public void OnClickRestartBtn()
    {
        Debug.LogError("重新开始按钮次数");
        Dictionary<string, object> dic = new Dictionary<string, object>
        {
            { "OnClickRestartBtn", 1}
        };
        OnEvent("重新开始按钮次数", dic);
    }
    //7.每一轮游戏中成功使用技能宝石的次数
    public void OnUseSkill(int count)
    {
        Debug.LogError("每一轮游戏中成功使用技能宝石的次数:" + count);
        Dictionary<string, object> dic = new Dictionary<string, object>
        {
            { "使用次数", count+"次"}
        };
        OnEvent("每一轮游戏中成功使用技能宝石的次数", dic);
    }
    //8.每一轮游戏中成功开启的塔位置数量
    public void OnOpenTower(int towerCount)
    {
        Debug.LogError("每一轮游戏中成功开启的塔位置数量:" + towerCount);
        Dictionary<string, object> dic = new Dictionary<string, object>
        {
            { "购买次数", towerCount+"次"}
        };
        OnEvent("每一轮游戏中成功开启的塔位置数量", dic);
    }
    //9.每一轮游戏中成功购买塔的数量
    public void OnClickTowerBuyBtn(int buyCount)
    {
        Debug.LogError("每一轮游戏中成功购买塔的数量:" + buyCount);
        Dictionary<string, object> dic = new Dictionary<string, object>
        {
            { "购买次数", buyCount+"次"}
        };
        OnEvent("每一轮游戏中成功购买塔的数量", dic);
    }
    //10.玩家在结算界面点击【对pvp感兴趣】按钮次数
    public void OnClickPVPBtn()
    {
        Debug.LogError("对pvp感兴趣");
        Dictionary<string, object> dic = new Dictionary<string, object>
        {
            { "OnClickPVPBtn", 1}
        };
        OnEvent("对pvp感兴趣", dic);
    }
    /// <summary>
    /// 11.玩家打到第x关y波的人数(去重) 这里只穿最大值
    /// </summary>
    /// <param name="level">第几关</param>
    /// <param name="wave">第几波</param>
    public void MaxWave(int level, int wave)
    {
        bool canSend = false;
        if (level >= maxLevel)
        {
            if (level > maxLevel)
            {
                canSend = true;
            }
            else if (level == maxLevel && wave > maxWave)
            {
                canSend = true;
            }
        }
        if (canSend)
        {
            Debug.LogError($"玩家最高打到第{level}关{wave}波");
            Dictionary<string, object> dic = new Dictionary<string, object>
            {
                { "MaxWave", $"第{level}关{wave}波"}
            };
            OnEvent("玩家最高打到第x关y波", dic);
        }
    }
    /// <summary>
    /// 12.玩家达到第x关y波的次数(不去重)
    /// </summary>
    /// <param name="level">第几关</param>
    /// <param name="wave">第几波</param>
    public void WaveDone(int level, int wave)
    {
        Debug.LogError($"玩家达到第{level}关{wave}波");
        Dictionary<string, object> dic = new Dictionary<string, object>
        {
            { $"第{level}关{wave}波", 1}
        };
        OnEvent("玩家完成第x关y波的次数", dic);
    }
    /// <summary>
    /// 使用自定义事件
    /// </summary>
    /// <param name="actionId">事件名称</param>
    /// <param name="dic">需要传递的值</param>
    public void OnEvent(string actionId, Dictionary<string, object> dic)
    private void OnEvent(string actionId, Dictionary<string, object> dic)
    {
        //示例:
        // Dictionary<string, object> dic = new Dictionary<string, object>
@@ -65,6 +341,7 @@
        // TalkingDataGA.OnEvent("action_id", dic);
        TalkingDataGA.OnEvent(actionId, dic);
    }
    private void OnDestroy()
Assets/Scripts/GameAnalytics_SDK/UI/LoginUI.cs
@@ -19,20 +19,22 @@
    void Start()
    {
        GA_SDK_Manager.Ins.SDKInit(ChannelID.Gm.ToString());
        GA_SDK_Manager.Ins.Statistics(1);//成功加载登陆界面的人数
        isLogining = false;
        transform.Find("Panel/Button").GetComponent<Button>().onClick.AddListener(OnClickLoginBtn);
        // if (Application.platform == RuntimePlatform.Android)
        // {
        //     GetetDeviceIMEI();//获取安卓手机IMEI
        // }
        // else if (Application.platform == RuntimePlatform.WindowsEditor)
        // {
        //     imei0 = "MyTestGemBattle1";
        // }
        if (Application.platform == RuntimePlatform.Android)
        {
            //GetetDeviceIMEI();//获取安卓手机IMEI
            imei0 = GA_SDK_Manager.Ins.GetDeviceId();//使用设备ID
        }
        else if (Application.platform == RuntimePlatform.WindowsEditor)
        {
            imei0 = "MyTestGemBattle123";
        }
        imei0 = GA_SDK_Manager.Ins. GetDeviceId();//使用设备ID
    }
@@ -69,8 +71,8 @@
    private void OnClickLoginBtn()
    {
        Debug.Log("登录");
        LoginRequest();
        GA_SDK_Manager.Ins.Statistics(2);//埋点
    }
@@ -82,6 +84,19 @@
    {
        if (!isLogining)
        {
            Debug.Log("登录");
            if (Application.platform == RuntimePlatform.WindowsEditor)
            {
                Debug.Log("编辑器直接登录");
                GA_SDK_Manager.Ins.Login(imei0);
                GA_SDK_Manager.Ins.Statistics(3);//埋点
                //StartCoroutine(loginMy());
                StartCoroutine(LoadScene());
                return;
            }
            isLogining = true;
            string url = GameConfig.IsDebug ? GameConfig.TestLoginUrl : GameConfig.LoginUrl;
            JsonData data = new JsonData();
@@ -163,9 +178,11 @@
        if (login.Errorcode == 0)
        {
            Debug.Log("--------------------- 登录成功 ---------------------");
            UserDataMsg userData = login.Userdata;
            //UserDataMsg userData = login.Userdata;
            GA_SDK_Manager.Ins.Login(imei0);
            GA_SDK_Manager.Ins.Statistics(3);//埋点
            //StartCoroutine(loginMy());
            StartCoroutine(LoadScene());
Assets/Scripts/Guide/GuideCtrl.cs
@@ -175,6 +175,8 @@
        if (currentIndex == -1)//初始化本步
        {
            CommonDebugHelper.DebugError("第1步开始");
            GA_SDK_Manager.Ins.Statistics(5);//埋点
            currentIndex = 0;
            needIndex = 2;
            panel.SetGuideUI(true);
@@ -190,6 +192,8 @@
        if (currentIndex == -1)
        {
            CommonDebugHelper.DebugError("第2步开始");
            GA_SDK_Manager.Ins.Statistics(6);//埋点
            GA_SDK_Manager.Ins.GuideStep(1);//埋点
            currentIndex = 0;
            needIndex = 2;
@@ -235,6 +239,8 @@
        if (currentIndex == -1)
        {
            CommonDebugHelper.DebugError("第3步开始");
            GA_SDK_Manager.Ins.GuideStep(2);//埋点
            currentIndex = 0;
            needIndex = 2;
            panel.Step2(currentIndex);
@@ -255,6 +261,7 @@
        if (currentIndex == -1)
        {
            CommonDebugHelper.DebugError("第4步开始");
            GA_SDK_Manager.Ins.GuideStep(3);//埋点
            currentIndex = 0;
            needIndex = 2;
@@ -286,6 +293,7 @@
        if (currentIndex == -1)
        {
            CommonDebugHelper.DebugError("第5步开始");
            GA_SDK_Manager.Ins.GuideStep(4);//埋点
            currentIndex = 0;
            panel.Step4(currentIndex, allGuideDic[currentStep][currentIndex]);
@@ -305,6 +313,7 @@
        if (currentIndex == -1)
        {
            CommonDebugHelper.DebugError("第6步开始");
            GA_SDK_Manager.Ins.GuideStep(5);//埋点
            EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.CreateFirstWave);
            panel.Step5(currentIndex, "");
@@ -332,6 +341,7 @@
        if (currentIndex == -1)
        {
            CommonDebugHelper.DebugError("第7步开始");
            GA_SDK_Manager.Ins.GuideStep(6);//埋点
            panel.SetGuideUI(false);
            //恢复出怪
@@ -363,6 +373,7 @@
        if (currentIndex == -1)
        {
            CommonDebugHelper.DebugError("第8步开始");
            GA_SDK_Manager.Ins.GuideStep(7);//埋点
            currentIndex = 0;
            needIndex = 1;
@@ -389,6 +400,7 @@
        if (currentIndex == -1)//初始化本步
        {
            CommonDebugHelper.DebugError("第9步开始");
            GA_SDK_Manager.Ins.GuideStep(8);//埋点
            GameConfig.CanOpenNewTower = false;
            currentIndex = 0;
@@ -409,6 +421,7 @@
        if (currentIndex == -1)
        {
            CommonDebugHelper.DebugError("第10步开始");
            GA_SDK_Manager.Ins.GuideStep(9);//埋点
            currentIndex = 0;
            needIndex = 2;
@@ -448,6 +461,7 @@
        if (currentIndex == -1)//初始化本步
        {
            CommonDebugHelper.DebugError("第11步开始");
            GA_SDK_Manager.Ins.GuideStep(10);//埋点
            currentIndex = 0;
            needIndex = 2;
@@ -467,6 +481,7 @@
        if (currentIndex == -1)
        {
            CommonDebugHelper.DebugError("第12步开始");
            GA_SDK_Manager.Ins.GuideStep(11);//埋点
            currentIndex = 0;
            needIndex = 1;
@@ -502,6 +517,7 @@
        if (currentIndex == -1)//初始化本步
        {
            CommonDebugHelper.DebugError("第13步开始");
            GA_SDK_Manager.Ins.GuideStep(12);//埋点
            currentIndex = 0;
            needIndex = 3;
@@ -519,7 +535,10 @@
    private void Finish()
    {
        UnityEngine.Debug.Log("新手指导已经完成了");
        GA_SDK_Manager.Ins.GuideStep(13);//埋点
        GameConfig.CanOpenNewTower = true;
        GameConfig.CanBuyNewTower = true;
        EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.GuideFinish);
        Destroy(gameObject);
Assets/Scripts/TowerDefense/Agents/Agent.cs
@@ -320,6 +320,7 @@
            poisonTimes = 0;
            timeToPoisonHurt = 0;
            bShieldBreak = false;
            CanMove = true;
            /*// 如果对应的粒子不为空,则播放
            if( spawnParticle)
@@ -410,7 +411,11 @@
                if (MoveStopEffect)
                    return;
                MoveStopEffect = Instantiate(WaveLineSelMgr.instance.bufStopMovePrefab);
                GameObject obj = Instantiate(WaveLineSelMgr.instance.bufStopMovePrefab);
                MoveStopEffect = obj.GetComponent<ParticleSystem>();
                if (MoveStopEffect == null)
                    MoveStopEffect = obj.transform.GetChild(0).GetComponent<ParticleSystem>();
                MoveStopEffect.transform.position = this.position;
                MoveStopEffect.Play();
            }
@@ -423,7 +428,11 @@
                if (MoveStopEffect)
                    return;
                MoveStopEffect = Instantiate(EndlessWaveLineManager.instance.bufStopMovePrefab);
                GameObject obj = Instantiate(EndlessWaveLineManager.instance.bufStopMovePrefab);
                MoveStopEffect = obj.GetComponent<ParticleSystem>();
                if (MoveStopEffect == null)
                    MoveStopEffect = obj.transform.GetChild(0).GetComponent<ParticleSystem>();
                MoveStopEffect.transform.position = this.position;
                MoveStopEffect.Play();
            }
Assets/Scripts/TowerDefense/Agents/HomeBaseAttacker.cs
@@ -1,4 +1,5 @@
using ActionGameFramework.Health;
using KTGMGemClient;
using ActionGameFramework.Health;
using Core.Health;
using Core.Utilities;
using TowerDefense.Level;
@@ -8,59 +9,59 @@
namespace TowerDefense.Agents
{
    /// <summary>
    /// A component that attacks a home base when an agent reaches it
    /// </summary>
    [RequireComponent(typeof(Agent))]
    public class HomeBaseAttacker : MonoBehaviour
    {
        /// <summary>
        /// How long the agent charges for before it attacks
        /// the home base
        /// </summary>
        public float homeBaseAttackChargeTime = 0.5f;
    /// <summary>
    /// A component that attacks a home base when an agent reaches it
    /// </summary>
    [RequireComponent(typeof(Agent))]
    public class HomeBaseAttacker : MonoBehaviour
    {
        /// <summary>
        /// How long the agent charges for before it attacks
        /// the home base
        /// </summary>
        public float homeBaseAttackChargeTime = 0.5f;
        /// <summary>
        /// Timer used to stall attack to the home base
        /// </summary>
        protected Timer m_HomeBaseAttackTimer;
        /// <summary>
        /// Timer used to stall attack to the home base
        /// </summary>
        protected Timer m_HomeBaseAttackTimer;
        /// <summary>
        /// If the agent has reached the Player Home Base and is charging an attack
        /// </summary>
        protected bool m_IsChargingHomeBaseAttack;
        /// <summary>
        /// The DamageableBehaviour on the home base
        /// </summary>
        protected DamageableBehaviour m_FinalDestinationDamageableBehaviour;
        /// <summary>
        /// If the agent has reached the Player Home Base and is charging an attack
        /// </summary>
        protected bool m_IsChargingHomeBaseAttack;
        /// <summary>
        /// The agent component attached to this gameObject
        /// </summary>
        public Agent agent { get; protected set; }
        /// <summary>
        /// The DamageableBehaviour on the home base
        /// </summary>
        protected DamageableBehaviour m_FinalDestinationDamageableBehaviour;
        /// <summary>
        /// Fired on completion of <see cref="m_HomeBaseAttackTimer"/>
        /// Applies damage to the homebase
        /// </summary>
        protected void AttackHomeBase()
        {
            m_IsChargingHomeBaseAttack = false;
            var damager = GetComponent<Damager>();
            if (damager != null)
            {
                m_FinalDestinationDamageableBehaviour.TakeDamage(damager.finalDamage, transform.position, agent.configuration.alignmentProvider);
        /// <summary>
        /// The agent component attached to this gameObject
        /// </summary>
        public Agent agent { get; protected set; }
                PlayerHomeBase homebase = m_FinalDestinationDamageableBehaviour.GetComponent<PlayerHomeBase>();
                if(homebase && (!homebase.isDead) )
        /// <summary>
        /// Fired on completion of <see cref="m_HomeBaseAttackTimer"/>
        /// Applies damage to the homebase
        /// </summary>
        protected void AttackHomeBase()
        {
            m_IsChargingHomeBaseAttack = false;
            var damager = GetComponent<Damager>();
            if (damager != null)
            {
                m_FinalDestinationDamageableBehaviour.TakeDamage(damager.finalDamage, transform.position, agent.configuration.alignmentProvider);
                PlayerHomeBase homebase = m_FinalDestinationDamageableBehaviour.GetComponent<PlayerHomeBase>();
                if (homebase && (!homebase.isDead))
                {
                    // 显示塔位血条
                    float hscale = homebase.healthVal / homebase.configuration.maxHealth;
                    if ( hscale < 1.0)
                    // 显示塔位血条
                    float hscale = homebase.healthVal / homebase.configuration.maxHealth;
                    if (hscale < 1.0)
                    {
                        if (homebase.opponent)
                            OpponentMgr.instance.m_CurrentArea.setTowerPosHealth(homebase.homebaseIdx, hscale);
                        if (homebase.opponent)
                            OpponentMgr.instance.m_CurrentArea.setTowerPosHealth(homebase.homebaseIdx, hscale);
                        else
                        {
                            if (GameUI.instanceExists)
@@ -71,81 +72,100 @@
                            else if (EndlessGameUI.instanceExists)
                            {
                                if (EndlessGameUI.instance.selfTowerPlaceArea != null)
                                    EndlessGameUI.instance.selfTowerPlaceArea.setTowerPosHealth(homebase.homebaseIdx, hscale);
                                {
                                    if (GameConfig.IsNewbie)
                                    {
                                        if (GameConfig.TowerFirstTakeDamage)
                                        {
                                            GameConfig.TowerFirstTakeDamage = false;
                                            EndlessGameUI.instance.selfTowerPlaceArea.setTowerPosHealth(homebase.homebaseIdx, hscale);
                                            EndlessLevelManager.instance.StopSecondWave();
                                        }
                                        else
                                        {
                                            if (GameConfig.TowerCanTakeDamage)
                                            {
                                                EndlessGameUI.instance.selfTowerPlaceArea.setTowerPosHealth(homebase.homebaseIdx, hscale);
                                            }
                                        }
                                    }
                                    else
                                        EndlessGameUI.instance.selfTowerPlaceArea.setTowerPosHealth(homebase.homebaseIdx, hscale);
                                }
                            }
                        }
                    }
                }
            }
            agent.Remove();
        }
                        }
        /// <summary>
        /// Ticks the attack timer
        /// </summary>
        protected virtual void Update ()
        {
            // Update HomeBaseAttack Timer
            if (m_IsChargingHomeBaseAttack)
            {
                m_HomeBaseAttackTimer.Tick(Time.deltaTime);
            }
        }
                    }
                }
            }
            agent.Remove();
        }
        /// <summary>
        /// Caches the attached Agent and subscribes to the destinationReached event
        /// </summary>
        protected virtual void Awake()
        {
            agent = GetComponent<Agent>();
            agent.destinationReached += OnDestinationReached;
            agent.died += OnDied;
        }
        /// <summary>
        /// Ticks the attack timer
        /// </summary>
        protected virtual void Update()
        {
            // Update HomeBaseAttack Timer
            if (m_IsChargingHomeBaseAttack)
            {
                m_HomeBaseAttackTimer.Tick(Time.deltaTime);
            }
        }
        /// <summary>
        /// Unsubscribes from the destinationReached event
        /// </summary>
        protected virtual void OnDestroy()
        {
            if (agent != null)
            {
                agent.destinationReached -= OnDestinationReached;
                agent.died -= OnDied;
            }
        }
        /// <summary>
        /// Caches the attached Agent and subscribes to the destinationReached event
        /// </summary>
        protected virtual void Awake()
        {
            agent = GetComponent<Agent>();
            agent.destinationReached += OnDestinationReached;
            agent.died += OnDied;
        }
        /// <summary>
        /// Stops the attack on the home base
        /// </summary>
        void OnDied(DamageableBehaviour damageableBehaviour)
        {
            m_IsChargingHomeBaseAttack = false;
        }
        /// <summary>
        /// Unsubscribes from the destinationReached event
        /// </summary>
        protected virtual void OnDestroy()
        {
            if (agent != null)
            {
                agent.destinationReached -= OnDestinationReached;
                agent.died -= OnDied;
            }
        }
        /// <summary>
        /// Fired then the agent reached its final node,
        /// Starts the attack timer
        /// </summary>
        /// <param name="homeBase"></param>
        void OnDestinationReached (Node homeBase)
        {
            if (agent.bInDeathState) return;
        /// <summary>
        /// Stops the attack on the home base
        /// </summary>
        void OnDied(DamageableBehaviour damageableBehaviour)
        {
            m_IsChargingHomeBaseAttack = false;
        }
            m_FinalDestinationDamageableBehaviour = homeBase.GetComponent<DamageableBehaviour>();
            // start timer
            if (m_HomeBaseAttackTimer == null)
            {
                m_HomeBaseAttackTimer = new Timer(homeBaseAttackChargeTime, AttackHomeBase);
                //Debug.Log("HomeBase Timer 设置起来...");
                agent.PlayAttack();
            }
            else
            {
                //m_HomeBaseAttackTimer.Reset();
                // Debug.Log("重复设置导致有可能怪物不会消失.");
            }
            m_IsChargingHomeBaseAttack = true;
        }
    }
        /// <summary>
        /// Fired then the agent reached its final node,
        /// Starts the attack timer
        /// </summary>
        /// <param name="homeBase"></param>
        void OnDestinationReached(Node homeBase)
        {
            if (agent.bInDeathState) return;
            m_FinalDestinationDamageableBehaviour = homeBase.GetComponent<DamageableBehaviour>();
            // start timer
            if (m_HomeBaseAttackTimer == null)
            {
                m_HomeBaseAttackTimer = new Timer(homeBaseAttackChargeTime, AttackHomeBase);
                //Debug.Log("HomeBase Timer 设置起来...");
                agent.PlayAttack();
            }
            else
            {
                //m_HomeBaseAttackTimer.Reset();
                // Debug.Log("重复设置导致有可能怪物不会消失.");
            }
            m_IsChargingHomeBaseAttack = true;
        }
    }
}
Assets/Scripts/TowerDefense/Level/EndlessLevelManager.cs
@@ -314,7 +314,7 @@
            if (EndlessLeveltate == LevelState.SpawningEnemies && IsAllWaveCompleted && NumberOfEnemies == 0)
            {
                // 新手的话,第一关完了暂停
                if (!GameConfig.IsNewbie)
                if (!GameConfig.IsNewbie || GameConfig.IsNewbieGuideCompleted)
                {
                    if (!UpdateLevel())
                        ChangeLevelState(LevelState.AllEnemiesSpawned);
Assets/Scripts/TowerDefense/Level/EndlessWaveLineManager.cs
@@ -19,17 +19,17 @@
    /// <summary>
    /// 火攻击效果
    /// </summary>
    public ParticleSystem skillFirePrefab;
    public GameObject skillFirePrefab;
    /// <summary>
    /// 炸弹攻击效果
    /// </summary>
    public ParticleSystem skillBombPrefab;
    public GameObject skillBombPrefab;
    /// <summary>
    /// 停止移动的Buff特效.
    /// </summary>
    public ParticleSystem bufStopMovePrefab;
    public GameObject bufStopMovePrefab;
    protected bool zeroState = true;
@@ -53,10 +53,14 @@
    {
        if (id >= waveLineList.Count || waveLineList[id] == null) return;
        ParticleSystem playParticle = Instantiate(skillFirePrefab);
        playParticle.transform.position = EndlessLevelManager.instance.WaveManager.GetWaveEndPos(id);
        playParticle.Play();
        Destroy(playParticle.gameObject, playParticle.main.duration);
        GameObject obj = Instantiate(skillFirePrefab);
        ParticleSystem ps = obj.GetComponent<ParticleSystem>();
        if (ps == null)
            ps = obj.transform.GetChild(0).GetComponent<ParticleSystem>();
        ps.transform.position = EndlessLevelManager.instance.WaveManager.GetWaveEndPos(id);
        ps.Play();
        Destroy(ps.gameObject, ps.main.duration);
    }
    /// <summary>
@@ -66,10 +70,15 @@
    public void PlayBattleAreaBombEffect(Vector3 pos)
    {
        if (skillBombPrefab == null) return;
        ParticleSystem playParticle = Instantiate(skillBombPrefab);
        playParticle.transform.position = pos;
        playParticle.Play();
        Destroy(playParticle.gameObject, playParticle.main.duration);
        GameObject obj = Instantiate(skillBombPrefab);
        ParticleSystem ps = obj.GetComponent<ParticleSystem>();
        if (ps == null)
            ps = obj.transform.GetChild(0).GetComponent<ParticleSystem>();
        ps.transform.position = pos;
        ps.Play();
        Destroy(ps.gameObject, ps.main.duration);
    }
    /// <summary>
Assets/Scripts/TowerDefense/Level/EndlessWaveManager.cs
@@ -170,7 +170,7 @@
        private void RefreshBoss()
        {
            if (CurrentWaveIndex > 0)
            if (CurrentWaveIndex > 0 || TotalWaves == 1)
                EndlessBossHPManager.instance.SwitchHP(CurrentWaveIndex == TotalWaves - 1);
            EndlessBossHPManager.instance.SetBossInfo($"{waveData[0].Config.boss_name}  Lv.{Level}");
            EndlessBossHPManager.instance.UpdateWave(TotalWaves - CurrentWaveIndex);
@@ -299,6 +299,7 @@
                // 更新波索引
                ++CurrentWaveIndex;
                EndlessBuffManager.instance.UpdateBuffList();
                EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.EndlessCompletedPort, Level, CurrentWaveIndex);
                if (CurrentWaveIndex >= TotalWaves)
                    // 当前关卡的所有波次全部完成
Assets/Scripts/TowerDefense/Level/WaveLineSelMgr.cs
@@ -21,10 +21,10 @@
    /// <summary>
    /// 己方战场的Boss
    /// </summary>
    public List<GameObject>    selfSkullList;
    public List<GameObject>    oppoSkullList;
    protected List<bool>       selfWarningList;
    protected List<Vector3>    selfSkullUIPos;
    public List<GameObject> selfSkullList;
    public List<GameObject> oppoSkullList;
    protected List<bool> selfWarningList;
    protected List<Vector3> selfSkullUIPos;
    protected GameObject[] selfWarningUI = new GameObject[5];
    /// <summary>
@@ -35,17 +35,17 @@
    /// <summary>
    /// 火攻击效果
    /// </summary>
    public ParticleSystem skillFirePrefab;
    public GameObject skillFirePrefab;
    /// <summary>
    /// 炸弹攻击效果
    /// </summary>
    public ParticleSystem skillBombPrefab;
    public GameObject skillBombPrefab;
    /// <summary>
    /// 停止移动的Buff特效.
    /// </summary>
    public ParticleSystem bufStopMovePrefab;
    public GameObject bufStopMovePrefab;
    protected bool zeroState = true;
@@ -67,9 +67,9 @@
        int skullNum = selfSkullList.Count;
        selfWarningList = new List<bool>();
        selfSkullUIPos = new List<Vector3>();
        for( int ti =0;ti<skullNum;ti ++)
        for (int ti = 0; ti < skullNum; ti++)
        {
            if( selfSkullList[ti])
            if (selfSkullList[ti])
            {
                Color tzeroc = new Color(1.0f, 1.0f, 1.0f, 0.0f);
                Material tmat = selfSkullList[ti].GetComponent<MeshRenderer>().material;
@@ -78,22 +78,22 @@
                tmat.color = tzeroc;
                UnityEngine.Camera sceneCam = ViewPortAdj.instance.cachedCamera;
                Vector3 centPos = sceneCam.WorldToScreenPoint( oppoSkullList[ti].transform.position );
                Vector3 centPos = sceneCam.WorldToScreenPoint(oppoSkullList[ti].transform.position);
                selfSkullUIPos.Add(centPos);
            }
            selfWarningList.Add(false);
        }
    }
    /// <summary>
    /// 开启BossWaring倒计时.
    /// </summary>
    /// <param name="cdtime"></param>
    public void StartCountDownBossWarning( float cdtime,int waveline )
    public void StartCountDownBossWarning(float cdtime, int waveline)
    {
        // 已经显示直接返回.
        if (selfWarningUI[waveline] != null ) return;
        if (selfWarningUI[waveline] != null) return;
        GameObject cdui = Instantiate(cdBossWarningPrefab);
        GameObject go = GameObject.Find("BattleMainUI");
@@ -109,7 +109,7 @@
        selfWarningUI[waveline] = cdui;
    }
    public void StopCountDownBossWarning( int waveline )
    public void StopCountDownBossWarning(int waveline)
    {
        Destroy(selfWarningUI[waveline]);
        selfWarningUI[waveline] = null;
@@ -119,12 +119,12 @@
    /// 开启某一条兵线的Boss警告.
    /// </summary>
    /// <param name="warn"></param>
    public void waveLineBossWarning( int waveline,bool warn)
    public void waveLineBossWarning(int waveline, bool warn)
    {
        if (selfWarningList[waveline] == warn) return;
        selfWarningList[waveline] = warn;
        if ( warn)
        if (warn)
        {
            if (selfSkullList[waveline])
            {
@@ -145,7 +145,7 @@
                seq.Append(tmat.DOColor(new Color(1.0f, 1.0f, 1.0f, 1.0f), 0.25f));
            }
            if( oppoSkullList[waveline])
            if (oppoSkullList[waveline])
            {
                Material tmat = oppoSkullList[waveline].GetComponent<MeshRenderer>().material;
                Sequence seq = DOTween.Sequence();
@@ -182,26 +182,36 @@
    /// <summary>
    /// 在某一兵线上播放技能特效
    /// </summary>
    public void PlayWaveLineEffect( int id )
    public void PlayWaveLineEffect(int id)
    {
        if ((id >= waveLineList.Count) || (waveLineList[id] == null)) return;
        ParticleSystem playParticle = Instantiate(skillFirePrefab);
        playParticle.transform.position = LevelManager.instance.waveManager.GetWaveEndPos( id );
        playParticle.Play();
        GameObject obj = Instantiate(skillFirePrefab);
        ParticleSystem ps = obj.GetComponent<ParticleSystem>();
        if (ps == null)
            ps = obj.transform.GetChild(0).GetComponent<ParticleSystem>();
        ps.transform.position = LevelManager.instance.waveManager.GetWaveEndPos(id);
        ps.Play();
        Destroy(ps.gameObject, ps.main.duration);
    }
    /// <summary>
    /// 在战场内某一个位置播放特效
    /// </summary>
    /// <param name="pos"></param>
    public void PlayBattleAreaBombEffect( Vector3 pos)
    public void PlayBattleAreaBombEffect(Vector3 pos)
    {
        if (skillBombPrefab == null) return;
        ParticleSystem playParticle = Instantiate(skillBombPrefab);
        playParticle.transform.position = pos;
        playParticle.Play();
        GameObject obj = Instantiate(skillBombPrefab);
        ParticleSystem ps = obj.GetComponent<ParticleSystem>();
        if (ps == null)
            ps = obj.transform.GetChild(0).GetComponent<ParticleSystem>();
        ps.transform.position = pos;
        ps.Play();
        Destroy(ps.gameObject, ps.main.duration);
    }
@@ -209,14 +219,14 @@
    /// 对应兵线发亮.
    /// </summary>
    /// <param name="id"></param>
    public void waveLineFlash( int id)
    public void waveLineFlash(int id)
    {
        if ((id >= waveLineList.Count) || (waveLineList[id] == null) ) return;
        if ((id >= waveLineList.Count) || (waveLineList[id] == null)) return;
        //设置一个DOTween队列
        Sequence flashSeq = DOTween.Sequence();
        Material tmat = waveLineList[id].GetComponent<MeshRenderer>().material;
        flashSeq.Append( tmat.DOColor(new Color(1.0f, 1.0f, 1.0f, 1.0f), 0.1f));
        flashSeq.Append(tmat.DOColor(new Color(1.0f, 1.0f, 1.0f, 1.0f), 0.1f));
        flashSeq.Append(tmat.DOColor(new Color(1.0f, 1.0f, 1.0f, 0.2f), 0.08f));
        flashSeq.Append(tmat.DOColor(new Color(1.0f, 1.0f, 1.0f, 1.0f), 0.08f));
        flashSeq.AppendInterval(0.05f);
@@ -230,17 +240,17 @@
    /// 对某一条兵线显示选中效果
    /// </summary>
    /// <param name="id"></param>
    public void fadeWaveline( int id,bool fadeOut,float ftime = 0.3f )
    public void fadeWaveline(int id, bool fadeOut, float ftime = 0.3f)
    {
        if ((id >= waveLineList.Count) || (waveLineList[id] == null)) return;
        Material tmat = waveLineList[id].GetComponent<MeshRenderer>().material;
        if( fadeOut)
        if (fadeOut)
        {
            tmat.DOColor(new Color(1.0f, 1.0f, 1.0f, 1.0f), ftime );
            tmat.DOColor(new Color(1.0f, 1.0f, 1.0f, 1.0f), ftime);
        }
        else
        {
            tmat.DOColor(new Color(1.0f, 1.0f, 1.0f, 0.0f), ftime );
            tmat.DOColor(new Color(1.0f, 1.0f, 1.0f, 0.0f), ftime);
        }
    }
@@ -248,7 +258,7 @@
    /// 某一个位置攻击塔位放下。
    /// </summary>
    /// <param name="pos"></param>
    public void attackTowerFixed( int pos)
    public void attackTowerFixed(int pos)
    {
        if ((pos >= waveLineList.Count) || (waveLineList[pos] == null)) return;
@@ -265,17 +275,17 @@
    // Update is called once per frame
    void Update()
    {
        if( UnityEngine.Input.GetKeyDown( KeyCode.G ))
        if (UnityEngine.Input.GetKeyDown(KeyCode.G))
        {
            //PlayWaveLineEffect(2);
            /*ParticleSystem MoveStopEffect = Instantiate(WaveLineSelMgr.instance.bufStopMovePrefab);
            MoveStopEffect.transform.position = this.transform.position;
            MoveStopEffect.Play();*/
        }
        if( UnityEngine.Input.GetKeyDown( KeyCode.V ) )
        if (UnityEngine.Input.GetKeyDown(KeyCode.V))
        {
            PlayBattleAreaBombEffect(this.battleAreaObject.transform.position);
        }
    }
}
Assets/Scripts/TowerDefense/Towers/Placement/TowerPlacementGridEndless.cs
@@ -784,6 +784,7 @@
            }
            // 设置塔位默认开启,后面需要根据配置来
            m_arrGridType[2, 3] = PlacementGridType.EGridOpen;
            ++GameConfig.EndlessOpenAttackTowerCount;
        }
        /// <summary>
Assets/Scripts/TowerDefense/Towers/Projectiles/BallisticAttack.cs
@@ -53,8 +53,6 @@
            // 处理PVE无尽模式,buff增加的伤害
            finalDamage += ProcessEndlessBuffAttack(finalDamage);
            // cx test
            finalDamage *= 2f;
            // 提前处理非当前Enemy的爆炸攻击:
            if (chainAttackRate > 0)
Assets/Scripts/TowerDefense/UI/EndlessSettlement.cs
@@ -53,6 +53,9 @@
        /// </summary>
        public void ReturnToMainMenu()
        {
            if (GameConfig.IsNewbieGuideCompleted)
                GameConfig.IsNewbie = false;
            // 清空所有Tween数据:
            DOTween.Clear();
            EndlessUIStart.bFirstLoaded = false;
@@ -84,6 +87,7 @@
        /// </summary>
        protected void Victory()
        {
            EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.EndlessLevelCompleted);
            EndlessUIStart.instance.Pause();
            OpenEndGameScreen(true);
            if (VictoryAudio != null && AudioSource != null)
Assets/Scripts/TowerDefense/UI/EndlessTowerGridOpen.cs
@@ -77,6 +77,7 @@
            if (bsucc)
            {
                ++GameConfig.EndlessOpenAttackTowerCount;
                towerGrid.updateGridOpenCoin(gridX, gridY);
                if (mImage)
                    mImage.color = new Color(1.0f, 1.0f, 1.0f, 0.0f);
Assets/Scripts/TowerDefense/UI/EndlessUIStart.cs
@@ -52,6 +52,9 @@
    // Start is called before the first frame update
    void Start()
    {
        GA_SDK_Manager.Ins.ArriveBattle();//埋点
        GA_SDK_Manager.Ins.Statistics(4);//埋点
        bVibrate = new bool[4];
        bVibrate[0] = bVibrate[1] = bVibrate[2] = bVibrate[3] = false;
@@ -80,6 +83,10 @@
            Instantiate(Resources.Load<GameObject>("UI/Guide/GuidePanel"), this.transform);
            AddGuideEvent();
        }
        GameConfig.EndlessOpenAttackTowerCount = 0;
        GameConfig.EndlessBuyTowerCount = 0;
        GameConfig.EndlessPortUseSkillTowerCount = 0;
    }
    /// <summary>
@@ -167,14 +174,14 @@
    /// </summary>
    private void SkillRelease()
    {
        EndlessLevelManager.instance.RestartWave();
        int attributeId = 99902;
        int level = 1;
        int waveLineIndex = 2;
        int waveLineIndex = 1;
        // 播放特效,并处理伤害.
        EndlessWaveLineManager.instance.PlayWaveLineEffect(waveLineIndex);
        AgentInsManager.instance.ExecWavelineAttack(waveLineIndex, attributeId, level, false);
        ++GameConfig.EndlessPortUseSkillTowerCount;
        StartCoroutine(Delay1());
    }
@@ -182,8 +189,6 @@
    {
        yield return new WaitForSeconds(1f);
        EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.SkillReleaseDone);
        GameConfig.IsNewbie = false;
        EndlessLevelManager.instance.PauseWave();
    }
    /// <summary>
@@ -192,7 +197,7 @@
    private void NewbieGuideEnd()
    {
        EndlessLevelManager.instance.RestartWave();
        GameConfig.IsNewbie = false;
        GameConfig.IsNewbieGuideCompleted = true;
    }
    /// <summary>
Assets/Scripts/TowerDefense/UI/HUD/EndlessGameUI.cs
@@ -712,12 +712,6 @@
                break;
            }
            if (GameConfig.IsNewbie && EndlessUIStart.instance.beginSkillStep)
            {
                EndlessUIStart.instance.beginSkillStep = true;
                EndlessLevelManager.instance.StopSecondWave();
            }
            bool isAllDestroyed = true;
            for (int i = 0; i < AttackRowNumbers; ++i)
@@ -874,6 +868,7 @@
                        // 播放特效,并处理伤害.
                        EndlessWaveLineManager.instance.PlayWaveLineEffect(selEff.waveLineId);
                        AgentInsManager.instance.ExecWavelineAttack(selEff.waveLineId, sId, sLevel, false);
                        ++GameConfig.EndlessPortUseSkillTowerCount;
                        return true;
                    }
                }
@@ -1532,6 +1527,7 @@
            m_CurrentTower.Show();
            if (successfulPurchase)
            {
                ++GameConfig.EndlessBuyTowerCount;
                // 删除towerToMove,确保塔防数据不再出现多个
                if (zeroCost && (towerToMove != null))
                {
Assets/StreamingAssets/Table/endless_port.json
@@ -1 +1 @@
[[1,1,"史莱姆大王",1,1,1,0,0,0,200,1.5,2,3000,["gold:5"],[500,9500],0],[2,1,"史莱姆大王",1,1,2,0,0,0,200,1.5,2,3000,["gold:5"],[500,9500],0],[3,1,"史莱姆大王",1,1,3,1,12,1500,200,1.5,2,3000,["gold:5"],[500,9500],1],[4,1,"史莱姆大王",1,1,4,0,0,0,200,1.5,2,3000,["gold:5"],[500,9500],0],[5,1,"史莱姆大王",1,1,5,0,0,0,200,1.5,2,3000,["gold:5"],[500,9500],0],[6,1,"史莱姆大王",1,2,1,0,0,0,350,1.5,2,3000,["gold:5"],[500,9500],0],[7,1,"史莱姆大王",1,2,2,0,0,0,350,1.5,2,3000,["gold:5"],[500,9500],0],[8,1,"史莱姆大王",1,2,3,3,6,3000,350,1.5,2,3000,["gold:5"],[500,9500],3],[9,1,"史莱姆大王",1,2,4,0,0,0,350,1.5,2,3000,["gold:5"],[500,9500],0],[10,1,"史莱姆大王",1,2,5,0,0,0,350,1.5,2,3000,["gold:5"],[500,9500],0],[11,1,"史莱姆大王",1,3,1,0,0,0,500,1.5,2,3000,["gold:5"],[500,9500],0],[12,1,"史莱姆大王",1,3,2,0,0,0,500,1.5,2,3000,["gold:5"],[500,9500],0],[13,1,"史莱姆大王",1,3,3,2,4,4500,500,1.5,2,3000,["gold:5"],[500,9500],2],[14,1,"史莱姆大王",1,3,4,0,0,0,500,1.5,2,3000,["gold:5"],[500,9500],0],[15,1,"史莱姆大王",1,3,5,0,0,0,500,1.5,2,3000,["gold:5"],[500,9500],0],[16,2,"捣蛋恶魔",2,1,1,0,0,0,1000,1.5,4,3000,["gold:5"],[500,9500],0],[17,2,"捣蛋恶魔",2,1,2,3,6,3000,1000,1.5,4,3000,["gold:5"],[500,9500],3],[18,2,"捣蛋恶魔",2,1,3,1,12,1500,1000,1.5,4,3000,["gold:5"],[500,9500],1],[19,2,"捣蛋恶魔",2,1,4,3,6,3000,1000,1.5,4,3000,["gold:5"],[500,9500],3],[20,2,"捣蛋恶魔",2,1,5,0,0,0,1000,1.5,4,3000,["gold:5"],[500,9500],0],[21,2,"捣蛋恶魔",2,2,1,2,4,4500,1200,1.5,4,3000,["gold:5"],[500,9500],2],[22,2,"捣蛋恶魔",2,2,2,0,0,0,1200,1.5,4,3000,["gold:5"],[500,9500],0],[23,2,"捣蛋恶魔",2,2,3,3,6,3000,1200,1.5,4,3000,["gold:5"],[500,9500],3],[24,2,"捣蛋恶魔",2,2,4,0,0,0,1200,1.5,4,3000,["gold:5"],[500,9500],0],[25,2,"捣蛋恶魔",2,2,5,2,4,4500,1200,1.5,4,3000,["gold:5"],[500,9500],2],[26,2,"捣蛋恶魔",2,3,1,2,4,4500,1400,1.5,4,3000,["gold:5"],[500,9500],2],[27,2,"捣蛋恶魔",2,3,2,3,6,3000,1400,1.5,4,3000,["gold:5"],[500,9500],3],[28,2,"捣蛋恶魔",2,3,3,1,12,1500,1400,1.5,4,3000,["gold:5"],[500,9500],1],[29,2,"捣蛋恶魔",2,3,4,3,6,3000,1400,1.5,4,3000,["gold:5"],[500,9500],3],[30,2,"捣蛋恶魔",2,3,5,2,4,4500,1400,1.5,4,3000,["gold:5"],[500,9500],2],[31,3,"精灵小偷",3,1,1,3,6,3000,1800,1.5,8,3000,["gold:5"],[500,9500],3],[32,3,"精灵小偷",3,1,2,1,12,1500,1800,1.5,8,3000,["gold:5"],[500,9500],1],[33,3,"精灵小偷",3,1,3,2,4,4500,1800,1.5,8,3000,["gold:5"],[500,9500],2],[34,3,"精灵小偷",3,1,4,1,12,1500,1800,1.5,8,3000,["gold:5"],[500,9500],1],[35,3,"精灵小偷",3,1,5,3,6,3000,1800,1.5,8,3000,["gold:5"],[500,9500],3],[36,3,"精灵小偷",3,2,1,1,12,1500,2100,1.5,8,3000,["gold:5"],[500,9500],1],[37,3,"精灵小偷",3,2,2,3,6,3000,2100,1.5,8,3000,["gold:5"],[500,9500],3],[38,3,"精灵小偷",3,2,3,2,4,4500,2100,1.5,8,3000,["gold:5"],[500,9500],2],[39,3,"精灵小偷",3,2,4,3,6,3000,2100,1.5,8,3000,["gold:5"],[500,9500],3],[40,3,"精灵小偷",3,2,5,1,12,1500,2100,1.5,8,3000,["gold:5"],[500,9500],1],[41,3,"精灵小偷",3,3,1,2,4,4500,2400,1.5,8,3000,["gold:5"],[500,9500],2],[42,3,"精灵小偷",3,3,2,2,4,4500,2400,1.5,8,3000,["gold:5"],[500,9500],2],[43,3,"精灵小偷",3,3,3,2,4,4500,2400,1.5,8,3000,["gold:5"],[500,9500],2],[44,3,"精灵小偷",3,3,4,2,4,4500,2400,1.5,8,3000,["gold:5"],[500,9500],2],[45,3,"精灵小偷",3,3,5,2,4,4500,2400,1.5,8,3000,["box:3:1"],[500,9500],2],[46,4,"大波僵尸",3,1,1,1,12,1500,2700,1.5,16,3000,["gold:5"],[500,9500],1],[47,4,"大波僵尸",3,1,2,1,12,1500,2700,1.5,16,3000,["gold:5"],[500,9500],1],[48,4,"大波僵尸",3,1,3,1,12,1500,2700,1.5,16,3000,["gold:5"],[500,9500],1],[49,4,"大波僵尸",3,1,4,1,12,1500,2700,1.5,16,3000,["gold:5"],[500,9500],1],[50,4,"大波僵尸",3,1,5,1,12,1500,2700,1.5,16,3000,["gold:5"],[500,9500],1],[51,4,"大波僵尸",3,2,1,3,6,3000,3000,1.5,16,3000,["gold:5"],[500,9500],3],[52,4,"大波僵尸",3,2,2,3,6,3000,3000,1.5,16,3000,["gold:5"],[500,9500],3],[53,4,"大波僵尸",3,2,3,3,6,3000,3000,1.5,16,3000,["gold:5"],[500,9500],3],[54,4,"大波僵尸",3,2,4,3,6,3000,3000,1.5,16,3000,["gold:5"],[500,9500],3],[55,4,"大波僵尸",3,2,5,3,6,3000,3000,1.5,16,3000,["gold:5"],[500,9500],3],[56,4,"大波僵尸",3,3,1,2,6,3000,3300,1.5,16,3000,["gold:5"],[500,9500],2],[57,4,"大波僵尸",3,3,2,2,6,3000,3300,1.5,16,3000,["gold:5"],[500,9500],2],[58,4,"大波僵尸",3,3,3,1,12,1500,3300,1.5,16,3000,["gold:5"],[500,9500],1],[59,4,"大波僵尸",3,3,4,2,6,3000,3300,1.5,16,3000,["gold:5"],[500,9500],2],[60,4,"大波僵尸",3,3,5,2,6,3000,3300,1.5,16,3000,["box:3:1"],[500,9500],2],[61,5,"Dio",3,1,1,2,8,4500,3600,2,32,3000,["gold:5"],[500,9500],2],[62,5,"Dio",3,1,2,3,12,3000,3600,2,32,3000,["gold:5"],[500,9500],3],[63,5,"Dio",3,1,3,1,24,1500,3600,2,32,3000,["gold:5"],[500,9500],1],[64,5,"Dio",3,1,4,3,12,3000,3600,2,32,3000,["gold:5"],[500,9500],3],[65,5,"Dio",3,1,5,2,8,4500,3600,2,32,3000,["gold:5"],[500,9500],2],[66,5,"Dio",3,2,1,3,12,3000,3900,2,32,3000,["gold:5"],[500,9500],3],[67,5,"Dio",3,2,2,1,24,1500,3900,2,32,3000,["gold:5"],[500,9500],1],[68,5,"Dio",3,2,3,2,8,4500,3900,2,32,3000,["gold:5"],[500,9500],2],[69,5,"Dio",3,2,4,1,24,1500,3900,2,32,3000,["gold:5"],[500,9500],1],[70,5,"Dio",3,2,5,3,12,3000,3900,2,32,3000,["gold:5"],[500,9500],3],[71,5,"Dio",3,3,1,1,24,1500,4200,2,32,3000,["gold:5"],[500,9500],1],[72,5,"Dio",3,3,2,3,12,3000,4200,2,32,3000,["gold:5"],[500,9500],3],[73,5,"Dio",3,3,3,2,8,4500,4200,2,32,3000,["gold:5"],[500,9500],2],[74,5,"Dio",3,3,4,3,12,3000,4200,2,32,3000,["gold:5"],[500,9500],3],[75,5,"Dio",3,3,5,1,24,1500,4200,2,32,3000,["gold:5"],[500,9500],1],[76,5,"Dio",3,4,1,2,8,4500,4500,2,64,3000,["gold:5"],[500,9500],2],[77,5,"Dio",3,4,2,2,8,4500,4500,2,64,3000,["gold:5"],[500,9500],2],[78,5,"Dio",3,4,3,2,8,4500,4500,2,64,3000,["gold:5"],[500,9500],2],[79,5,"Dio",3,4,4,2,8,4500,4500,2,64,3000,["gold:5"],[500,9500],2],[80,5,"Dio",3,4,5,2,8,4500,4500,2,64,3000,["gold:5"],[500,9500],2],[81,5,"Dio",3,5,1,1,24,1500,4800,2,64,3000,["gold:5"],[500,9500],1],[82,5,"Dio",3,5,2,1,24,1500,4800,2,64,3000,["gold:5"],[500,9500],1],[83,5,"Dio",3,5,3,1,24,1500,4800,2,64,3000,["gold:5"],[500,9500],1],[84,5,"Dio",3,5,4,1,24,1500,4800,2,64,3000,["gold:5"],[500,9500],1],[85,5,"Dio",3,5,5,1,24,1500,4800,2,64,3000,["gold:5"],[500,9500],1],[86,5,"Dio",3,6,1,3,12,3000,5100,2,64,3000,["gold:5"],[500,9500],3],[87,5,"Dio",3,6,2,3,12,3000,5100,2,64,3000,["gold:5"],[500,9500],3],[88,5,"Dio",3,6,3,3,12,3000,5100,2,64,3000,["gold:5"],[500,9500],3],[89,5,"Dio",3,6,4,3,12,3000,5100,2,64,3000,["gold:5"],[500,9500],3],[90,5,"Dio",3,6,5,3,12,3000,5100,2,64,3000,["gold:5"],[500,9500],3],[91,5,"Dio",3,7,1,2,12,3000,5400,2,64,3000,["gold:5"],[500,9500],2],[92,5,"Dio",3,7,2,2,12,3000,5400,2,64,3000,["gold:5"],[500,9500],2],[93,5,"Dio",3,7,3,1,24,1500,5400,2,64,3000,["gold:5"],[500,9500],1],[94,5,"Dio",3,7,4,2,12,3000,5400,2,64,3000,["gold:5"],[500,9500],2],[95,5,"Dio",3,7,5,2,12,3000,5400,2,64,3000,["gold:5"],[500,9500],2],[96,5,"Dio",3,8,1,2,8,4500,5700,2,64,3000,["gold:5"],[500,9500],2],[97,5,"Dio",3,8,2,3,12,3000,5700,2,64,3000,["gold:5"],[500,9500],3],[98,5,"Dio",3,8,3,1,24,1500,5700,2,64,3000,["gold:5"],[500,9500],1],[99,5,"Dio",3,8,4,3,12,3000,5700,2,64,3000,["gold:5"],[500,9500],3],[100,5,"Dio",3,8,5,2,8,4500,5700,2,64,3000,["gold:5"],[500,9500],2],[101,5,"Dio",3,9,1,3,12,3000,6000,2,64,3000,["gold:5"],[500,9500],3],[102,5,"Dio",3,9,2,1,24,1500,6000,2,64,3000,["gold:5"],[500,9500],1],[103,5,"Dio",3,9,3,2,8,4500,6000,2,64,3000,["gold:5"],[500,9500],2],[104,5,"Dio",3,9,4,1,24,1500,6000,2,64,3000,["gold:5"],[500,9500],1],[105,5,"Dio",3,9,5,3,12,3000,6000,2,64,3000,["gold:5"],[500,9500],3],[106,5,"Dio",3,10,1,1,24,1500,6300,2,64,3000,["gold:5"],[500,9500],1],[107,5,"Dio",3,10,2,3,12,3000,6300,2,64,3000,["gold:5"],[500,9500],3],[108,5,"Dio",3,10,3,2,8,4500,6300,2,64,3000,["gold:5"],[500,9500],2],[109,5,"Dio",3,10,4,3,12,3000,6300,2,64,3000,["gold:5"],[500,9500],3],[110,5,"Dio",3,10,5,1,24,1500,6300,2,64,3000,["gold:5"],[500,9500],1],[111,5,"Dio",3,11,1,2,8,4500,6600,2,64,3000,["gold:5"],[500,9500],2],[112,5,"Dio",3,11,2,2,8,4500,6600,2,64,3000,["gold:5"],[500,9500],2],[113,5,"Dio",3,11,3,2,8,4500,6600,2,64,3000,["gold:5"],[500,9500],2],[114,5,"Dio",3,11,4,2,8,4500,6600,2,64,3000,["gold:5"],[500,9500],2],[115,5,"Dio",3,11,5,2,8,4500,6600,2,64,3000,["gold:5"],[500,9500],2],[116,5,"Dio",3,12,1,1,24,1500,6900,2,64,3000,["gold:5"],[500,9500],1],[117,5,"Dio",3,12,2,1,24,1500,6900,2,64,3000,["gold:5"],[500,9500],1],[118,5,"Dio",3,12,3,1,24,1500,6900,2,64,3000,["gold:5"],[500,9500],1],[119,5,"Dio",3,12,4,1,24,1500,6900,2,64,3000,["gold:5"],[500,9500],1],[120,5,"Dio",3,12,5,1,24,1500,6900,2,64,3000,["gold:5"],[500,9500],1]]
[[1,-2,"史莱姆大王",1,1,1,0,0,0,200,1.5,2,3000,["0"],[0],0],[2,-2,"史莱姆大王",1,1,2,0,0,0,200,1.5,2,3000,["0"],[0],0],[3,-2,"史莱姆大王",1,1,3,3,10,2000,200,1.5,2,3000,["0"],[0],3],[4,-2,"史莱姆大王",1,1,4,0,0,0,200,1.5,2,3000,["0"],[0],0],[5,-2,"史莱姆大王",1,1,5,0,0,0,200,1.5,2,3000,["0"],[0],0],[6,-1,"史莱姆大王",1,2,1,0,0,0,350,1.5,2,3000,["0"],[0],0],[7,-1,"史莱姆大王",1,2,2,1,10,2000,500,1.5,2,3000,["0"],[0],1],[8,-1,"史莱姆大王",1,2,3,0,0,0,350,1.5,2,3000,["0"],[0],0],[9,-1,"史莱姆大王",1,2,4,0,0,0,350,1.5,2,3000,["0"],[0],0],[10,-1,"史莱姆大王",1,2,5,0,0,0,350,1.5,2,3000,["0"],[0],0],[11,1,"史莱姆大王",1,1,1,0,0,0,200,1.5,2,3000,["gold:5"],[500,9500],0],[12,1,"史莱姆大王",1,1,2,0,0,0,200,1.5,2,3000,["gold:5"],[500,9500],0],[13,1,"史莱姆大王",1,1,3,1,12,1500,200,1.5,2,3000,["gold:5"],[500,9500],1],[14,1,"史莱姆大王",1,1,4,0,0,0,200,1.5,2,3000,["gold:5"],[500,9500],0],[15,1,"史莱姆大王",1,1,5,0,0,0,200,1.5,2,3000,["gold:5"],[500,9500],0],[16,1,"史莱姆大王",1,2,1,0,0,0,350,1.5,2,3000,["gold:5"],[500,9500],0],[17,1,"史莱姆大王",1,2,2,0,0,0,350,1.5,2,3000,["gold:5"],[500,9500],0],[18,1,"史莱姆大王",1,2,3,3,6,3000,350,1.5,2,3000,["gold:5"],[500,9500],3],[19,1,"史莱姆大王",1,2,4,0,0,0,350,1.5,2,3000,["gold:5"],[500,9500],0],[20,1,"史莱姆大王",1,2,5,0,0,0,350,1.5,2,3000,["gold:5"],[500,9500],0],[21,1,"史莱姆大王",1,3,1,0,0,0,500,1.5,2,3000,["gold:5"],[500,9500],0],[22,1,"史莱姆大王",1,3,2,0,0,0,500,1.5,2,3000,["gold:5"],[500,9500],0],[23,1,"史莱姆大王",1,3,3,2,4,4500,500,1.5,2,3000,["gold:5"],[500,9500],2],[24,1,"史莱姆大王",1,3,4,0,0,0,500,1.5,2,3000,["gold:5"],[500,9500],0],[25,1,"史莱姆大王",1,3,5,0,0,0,500,1.5,2,3000,["gold:5"],[500,9500],0],[26,2,"捣蛋恶魔",2,1,1,0,0,0,1000,1.5,4,3000,["gold:5"],[500,9500],0],[27,2,"捣蛋恶魔",2,1,2,3,6,3000,1000,1.5,4,3000,["gold:5"],[500,9500],3],[28,2,"捣蛋恶魔",2,1,3,1,12,1500,1000,1.5,4,3000,["gold:5"],[500,9500],1],[29,2,"捣蛋恶魔",2,1,4,3,6,3000,1000,1.5,4,3000,["gold:5"],[500,9500],3],[30,2,"捣蛋恶魔",2,1,5,0,0,0,1000,1.5,4,3000,["gold:5"],[500,9500],0],[31,2,"捣蛋恶魔",2,2,1,2,4,4500,1200,1.5,4,3000,["gold:5"],[500,9500],2],[32,2,"捣蛋恶魔",2,2,2,0,0,0,1200,1.5,4,3000,["gold:5"],[500,9500],0],[33,2,"捣蛋恶魔",2,2,3,3,6,3000,1200,1.5,4,3000,["gold:5"],[500,9500],3],[34,2,"捣蛋恶魔",2,2,4,0,0,0,1200,1.5,4,3000,["gold:5"],[500,9500],0],[35,2,"捣蛋恶魔",2,2,5,2,4,4500,1200,1.5,4,3000,["gold:5"],[500,9500],2],[36,2,"捣蛋恶魔",2,3,1,2,4,4500,1400,1.5,4,3000,["gold:5"],[500,9500],2],[37,2,"捣蛋恶魔",2,3,2,3,6,3000,1400,1.5,4,3000,["gold:5"],[500,9500],3],[38,2,"捣蛋恶魔",2,3,3,1,12,1500,1400,1.5,4,3000,["gold:5"],[500,9500],1],[39,2,"捣蛋恶魔",2,3,4,3,6,3000,1400,1.5,4,3000,["gold:5"],[500,9500],3],[40,2,"捣蛋恶魔",2,3,5,2,4,4500,1400,1.5,4,3000,["gold:5"],[500,9500],2],[41,3,"精灵小偷",3,1,1,3,6,3000,1800,1.5,8,3000,["gold:5"],[500,9500],3],[42,3,"精灵小偷",3,1,2,1,12,1500,1800,1.5,8,3000,["gold:5"],[500,9500],1],[43,3,"精灵小偷",3,1,3,2,4,4500,1800,1.5,8,3000,["gold:5"],[500,9500],2],[44,3,"精灵小偷",3,1,4,1,12,1500,1800,1.5,8,3000,["gold:5"],[500,9500],1],[45,3,"精灵小偷",3,1,5,3,6,3000,1800,1.5,8,3000,["gold:5"],[500,9500],3],[46,3,"精灵小偷",3,2,1,1,12,1500,2100,1.5,8,3000,["gold:5"],[500,9500],1],[47,3,"精灵小偷",3,2,2,3,6,3000,2100,1.5,8,3000,["gold:5"],[500,9500],3],[48,3,"精灵小偷",3,2,3,2,4,4500,2100,1.5,8,3000,["gold:5"],[500,9500],2],[49,3,"精灵小偷",3,2,4,3,6,3000,2100,1.5,8,3000,["gold:5"],[500,9500],3],[50,3,"精灵小偷",3,2,5,1,12,1500,2100,1.5,8,3000,["gold:5"],[500,9500],1],[51,3,"精灵小偷",3,3,1,2,4,4500,2400,1.5,8,3000,["gold:5"],[500,9500],2],[52,3,"精灵小偷",3,3,2,2,4,4500,2400,1.5,8,3000,["gold:5"],[500,9500],2],[53,3,"精灵小偷",3,3,3,2,4,4500,2400,1.5,8,3000,["gold:5"],[500,9500],2],[54,3,"精灵小偷",3,3,4,2,4,4500,2400,1.5,8,3000,["gold:5"],[500,9500],2],[55,3,"精灵小偷",3,3,5,2,4,4500,2400,1.5,8,3000,["box:3:1"],[500,9500],2],[56,4,"大波僵尸",3,1,1,1,12,1500,2700,1.5,16,3000,["gold:5"],[500,9500],1],[57,4,"大波僵尸",3,1,2,1,12,1500,2700,1.5,16,3000,["gold:5"],[500,9500],1],[58,4,"大波僵尸",3,1,3,1,12,1500,2700,1.5,16,3000,["gold:5"],[500,9500],1],[59,4,"大波僵尸",3,1,4,1,12,1500,2700,1.5,16,3000,["gold:5"],[500,9500],1],[60,4,"大波僵尸",3,1,5,1,12,1500,2700,1.5,16,3000,["gold:5"],[500,9500],1],[61,4,"大波僵尸",3,2,1,3,6,3000,3000,1.5,16,3000,["gold:5"],[500,9500],3],[62,4,"大波僵尸",3,2,2,3,6,3000,3000,1.5,16,3000,["gold:5"],[500,9500],3],[63,4,"大波僵尸",3,2,3,3,6,3000,3000,1.5,16,3000,["gold:5"],[500,9500],3],[64,4,"大波僵尸",3,2,4,3,6,3000,3000,1.5,16,3000,["gold:5"],[500,9500],3],[65,4,"大波僵尸",3,2,5,3,6,3000,3000,1.5,16,3000,["gold:5"],[500,9500],3],[66,4,"大波僵尸",3,3,1,2,6,3000,3300,1.5,16,3000,["gold:5"],[500,9500],2],[67,4,"大波僵尸",3,3,2,2,6,3000,3300,1.5,16,3000,["gold:5"],[500,9500],2],[68,4,"大波僵尸",3,3,3,1,12,1500,3300,1.5,16,3000,["gold:5"],[500,9500],1],[69,4,"大波僵尸",3,3,4,2,6,3000,3300,1.5,16,3000,["gold:5"],[500,9500],2],[70,4,"大波僵尸",3,3,5,2,6,3000,3300,1.5,16,3000,["box:3:1"],[500,9500],2],[71,5,"Dio",3,1,1,2,8,4500,3600,2,32,3000,["gold:5"],[500,9500],2],[72,5,"Dio",3,1,2,3,12,3000,3600,2,32,3000,["gold:5"],[500,9500],3],[73,5,"Dio",3,1,3,1,24,1500,3600,2,32,3000,["gold:5"],[500,9500],1],[74,5,"Dio",3,1,4,3,12,3000,3600,2,32,3000,["gold:5"],[500,9500],3],[75,5,"Dio",3,1,5,2,8,4500,3600,2,32,3000,["gold:5"],[500,9500],2],[76,5,"Dio",3,2,1,3,12,3000,3900,2,32,3000,["gold:5"],[500,9500],3],[77,5,"Dio",3,2,2,1,24,1500,3900,2,32,3000,["gold:5"],[500,9500],1],[78,5,"Dio",3,2,3,2,8,4500,3900,2,32,3000,["gold:5"],[500,9500],2],[79,5,"Dio",3,2,4,1,24,1500,3900,2,32,3000,["gold:5"],[500,9500],1],[80,5,"Dio",3,2,5,3,12,3000,3900,2,32,3000,["gold:5"],[500,9500],3],[81,5,"Dio",3,3,1,1,24,1500,4200,2,32,3000,["gold:5"],[500,9500],1],[82,5,"Dio",3,3,2,3,12,3000,4200,2,32,3000,["gold:5"],[500,9500],3],[83,5,"Dio",3,3,3,2,8,4500,4200,2,32,3000,["gold:5"],[500,9500],2],[84,5,"Dio",3,3,4,3,12,3000,4200,2,32,3000,["gold:5"],[500,9500],3],[85,5,"Dio",3,3,5,1,24,1500,4200,2,32,3000,["gold:5"],[500,9500],1],[86,5,"Dio",3,4,1,2,8,4500,4500,2,64,3000,["gold:5"],[500,9500],2],[87,5,"Dio",3,4,2,2,8,4500,4500,2,64,3000,["gold:5"],[500,9500],2],[88,5,"Dio",3,4,3,2,8,4500,4500,2,64,3000,["gold:5"],[500,9500],2],[89,5,"Dio",3,4,4,2,8,4500,4500,2,64,3000,["gold:5"],[500,9500],2],[90,5,"Dio",3,4,5,2,8,4500,4500,2,64,3000,["gold:5"],[500,9500],2],[91,5,"Dio",3,5,1,1,24,1500,4800,2,64,3000,["gold:5"],[500,9500],1],[92,5,"Dio",3,5,2,1,24,1500,4800,2,64,3000,["gold:5"],[500,9500],1],[93,5,"Dio",3,5,3,1,24,1500,4800,2,64,3000,["gold:5"],[500,9500],1],[94,5,"Dio",3,5,4,1,24,1500,4800,2,64,3000,["gold:5"],[500,9500],1],[95,5,"Dio",3,5,5,1,24,1500,4800,2,64,3000,["gold:5"],[500,9500],1],[96,5,"Dio",3,6,1,3,12,3000,5100,2,64,3000,["gold:5"],[500,9500],3],[97,5,"Dio",3,6,2,3,12,3000,5100,2,64,3000,["gold:5"],[500,9500],3],[98,5,"Dio",3,6,3,3,12,3000,5100,2,64,3000,["gold:5"],[500,9500],3],[99,5,"Dio",3,6,4,3,12,3000,5100,2,64,3000,["gold:5"],[500,9500],3],[100,5,"Dio",3,6,5,3,12,3000,5100,2,64,3000,["gold:5"],[500,9500],3],[101,5,"Dio",3,7,1,2,12,3000,5400,2,64,3000,["gold:5"],[500,9500],2],[102,5,"Dio",3,7,2,2,12,3000,5400,2,64,3000,["gold:5"],[500,9500],2],[103,5,"Dio",3,7,3,1,24,1500,5400,2,64,3000,["gold:5"],[500,9500],1],[104,5,"Dio",3,7,4,2,12,3000,5400,2,64,3000,["gold:5"],[500,9500],2],[105,5,"Dio",3,7,5,2,12,3000,5400,2,64,3000,["gold:5"],[500,9500],2],[106,5,"Dio",3,8,1,2,8,4500,5700,2,64,3000,["gold:5"],[500,9500],2],[107,5,"Dio",3,8,2,3,12,3000,5700,2,64,3000,["gold:5"],[500,9500],3],[108,5,"Dio",3,8,3,1,24,1500,5700,2,64,3000,["gold:5"],[500,9500],1],[109,5,"Dio",3,8,4,3,12,3000,5700,2,64,3000,["gold:5"],[500,9500],3],[110,5,"Dio",3,8,5,2,8,4500,5700,2,64,3000,["gold:5"],[500,9500],2],[111,5,"Dio",3,9,1,3,12,3000,6000,2,64,3000,["gold:5"],[500,9500],3],[112,5,"Dio",3,9,2,1,24,1500,6000,2,64,3000,["gold:5"],[500,9500],1],[113,5,"Dio",3,9,3,2,8,4500,6000,2,64,3000,["gold:5"],[500,9500],2],[114,5,"Dio",3,9,4,1,24,1500,6000,2,64,3000,["gold:5"],[500,9500],1],[115,5,"Dio",3,9,5,3,12,3000,6000,2,64,3000,["gold:5"],[500,9500],3],[116,5,"Dio",3,10,1,1,24,1500,6300,2,64,3000,["gold:5"],[500,9500],1],[117,5,"Dio",3,10,2,3,12,3000,6300,2,64,3000,["gold:5"],[500,9500],3],[118,5,"Dio",3,10,3,2,8,4500,6300,2,64,3000,["gold:5"],[500,9500],2],[119,5,"Dio",3,10,4,3,12,3000,6300,2,64,3000,["gold:5"],[500,9500],3],[120,5,"Dio",3,10,5,1,24,1500,6300,2,64,3000,["gold:5"],[500,9500],1],[121,5,"Dio",3,11,1,2,8,4500,6600,2,64,3000,["gold:5"],[500,9500],2],[122,5,"Dio",3,11,2,2,8,4500,6600,2,64,3000,["gold:5"],[500,9500],2],[123,5,"Dio",3,11,3,2,8,4500,6600,2,64,3000,["gold:5"],[500,9500],2],[124,5,"Dio",3,11,4,2,8,4500,6600,2,64,3000,["gold:5"],[500,9500],2],[125,5,"Dio",3,11,5,2,8,4500,6600,2,64,3000,["gold:5"],[500,9500],2],[126,5,"Dio",3,12,1,1,24,1500,6900,2,64,3000,["gold:5"],[500,9500],1],[127,5,"Dio",3,12,2,1,24,1500,6900,2,64,3000,["gold:5"],[500,9500],1],[128,5,"Dio",3,12,3,1,24,1500,6900,2,64,3000,["gold:5"],[500,9500],1],[129,5,"Dio",3,12,4,1,24,1500,6900,2,64,3000,["gold:5"],[500,9500],1],[130,5,"Dio",3,12,5,1,24,1500,6900,2,64,3000,["gold:5"],[500,9500],1]]
Assets/StreamingAssets/Table/endless_teachport.json
@@ -1 +1 @@
[[1,1,"史莱姆大王",1,1,1,0,0,0,200,1.5,2,3000,["0"],[0],0],[2,1,"史莱姆大王",1,1,2,0,0,0,200,1.5,2,3000,["0"],[0],0],[3,1,"史莱姆大王",1,1,3,1,10,1800,200,1.5,2,3000,["0"],[0],1],[4,1,"史莱姆大王",1,1,4,0,0,0,200,1.5,2,3000,["0"],[0],0],[5,1,"史莱姆大王",1,1,5,0,0,0,200,1.5,2,3000,["0"],[0],0],[6,1,"史莱姆大王",1,2,1,0,0,0,350,1.5,2,3000,["0"],[0],0],[7,1,"史莱姆大王",1,2,2,0,0,0,350,1.5,2,3000,["0"],[0],0],[8,1,"史莱姆大王",1,2,3,3,6,3000,350,1.5,2,3000,["0"],[0],3],[9,1,"史莱姆大王",1,2,4,0,0,0,350,1.5,2,3000,["0"],[0],0],[10,1,"史莱姆大王",1,2,5,0,0,0,350,1.5,2,3000,["0"],[0],0],[11,2,"史莱姆大王",1,1,1,0,0,0,200,1.5,2,3000,["0"],[0],0],[12,2,"史莱姆大王",1,1,2,0,0,0,200,1.5,2,3000,["0"],[0],0],[13,2,"史莱姆大王",1,1,3,1,10,1800,200,1.5,2,3000,["0"],[0],1],[14,2,"史莱姆大王",1,1,4,0,0,0,200,1.5,2,3000,["0"],[0],0],[15,2,"史莱姆大王",1,1,5,0,0,0,200,1.5,2,3000,["0"],[0],0],[16,2,"史莱姆大王",1,2,1,0,0,0,350,1.5,2,3000,["0"],[0],0],[17,2,"史莱姆大王",1,2,2,0,0,0,350,1.5,2,3000,["0"],[0],0],[18,2,"史莱姆大王",1,2,3,3,6,3000,350,1.5,2,3000,["0"],[0],3],[19,2,"史莱姆大王",1,2,4,0,0,0,350,1.5,2,3000,["0"],[0],0],[20,2,"史莱姆大王",1,2,5,0,0,0,350,1.5,2,3000,["0"],[0],0]]
[[1,1,"史莱姆大王",1,1,1,0,0,0,200,1.5,2,3000,["0"],[0],0],[2,1,"史莱姆大王",1,1,2,0,0,0,200,1.5,2,3000,["0"],[0],0],[3,1,"史莱姆大王",1,1,3,3,10,2000,200,1.5,2,3000,["0"],[0],3],[4,1,"史莱姆大王",1,1,4,0,0,0,200,1.5,2,3000,["0"],[0],0],[5,1,"史莱姆大王",1,1,5,0,0,0,200,1.5,2,3000,["0"],[0],0],[6,2,"史莱姆大王",1,2,1,0,0,0,350,1.5,2,3000,["0"],[0],0],[7,2,"史莱姆大王",1,2,2,1,10,2000,5000,1.5,2,3000,["0"],[0],1],[8,2,"史莱姆大王",1,2,3,0,0,0,350,1.5,2,3000,["0"],[0],0],[9,2,"史莱姆大王",1,2,4,0,0,0,350,1.5,2,3000,["0"],[0],0],[10,2,"史莱姆大王",1,2,5,0,0,0,350,1.5,2,3000,["0"],[0],0]]
GemBattle.zip
Binary files differ
GemBattle/宝石塔防_Data/Managed/Assembly-CSharp.dll
Binary files differ
GemBattle/宝石塔防_Data/StreamingAssets/Table/battle.json
@@ -1 +1 @@
[[1,"skilltime",30,[],"","生成技能宝石的时间(秒)"],[2,"initialgold",100,[],"","战斗内初始金币"],[3,"doublegem",180,[],"","购买宝石直接获得2级宝石的时间(秒)"],[4,"initialmoney",5000,[],"","初始金币"],[5,"initialgems","",["101:1:100","102:3:200","103:6:200","104:9:200","105:1:200","106:3:200","107:9:200","109:1:200"],"","宝石id:等级:个数 三个一组,每组用逗号分隔"],[6,"initialdeck","",["101","102","103","105","109"],"","上阵的宝石id列表.必须是初始宝石里面的"],[7,"buildtime",10,[],"","解锁塔位所需时间(秒)"],[8,"gemcountdown",10,[],"","购买获得2级宝石倒计时(秒)"],[9,"skillchance",20,[],"","购买获得技能宝石的概率(百分比)"],[10,"changenameprice",100,[],"","非首次改名的花费(100钻石)"],[11,"gemlevelup",30,[],"","塔防区宝石升级时变换类型的概率"],[12,"familymaxcount",50,[],"","工会最大人数"],[13,"scoreShopRefreshTime",7,[],"","工会积分商城刷新时间7天,从创建开始算"],[14,"SpeedUpFrist","",["180:0.75:1.5"],"","第一次提速时间,间隔倍率,移速倍率"],[15,"SpeedUpSecond","",["300:0.5:2"],"","第二次提速时间,间隔倍率,移速倍率"],[16,"donateShopRefreshTime",7,[],"","工会捐赠商城刷新时间7天,从创建开始算"],[17,"guildRankRequest","",["0","300","600","900","1200","1500","1800","2100","2400","2700","3000"],"","加入公会的排位分数限制(超过该值才能进入)"],[18,"guildNameDay",7,[],"","修改公会名:间隔7天1次"],[19,"guildNameCost",500,[],"","修改公会名:每次花费500金币(money)"],[20,"guildicon",30,[],"","修改公会图标:间隔30天1次"],[21,"guildCreateMinLevel",5,[],"","工会创建最小等级"]]
[[1,"skilltime",30,[],"","生成技能宝石的时间(秒)"],[2,"initialgold",100,[],"","战斗内初始金币"],[3,"doublegem",180,[],"","购买宝石直接获得2级宝石的时间(秒)"],[4,"initialmoney",5000,[],"","初始金币"],[5,"initialgems","",["101:1:100","102:3:200","103:6:200","104:9:200","105:1:200","106:3:200","107:9:200","109:1:200"],"","宝石id:等级:个数 三个一组,每组用逗号分隔"],[6,"initialdeck","",["101","102","103","105","109"],"","上阵的宝石id列表.必须是初始宝石里面的"],[7,"buildtime",0,[],"","解锁塔位所需时间(秒)"],[8,"gemcountdown",10,[],"","购买获得2级宝石倒计时(秒)"],[9,"skillchance",20,[],"","购买获得技能宝石的概率(百分比)"],[10,"changenameprice",100,[],"","非首次改名的花费(100钻石)"],[11,"gemlevelup",30,[],"","塔防区宝石升级时变换类型的概率"],[12,"familymaxcount",50,[],"","工会最大人数"],[13,"scoreShopRefreshTime",7,[],"","工会积分商城刷新时间7天,从创建开始算"],[14,"SpeedUpFrist","",["180:0.75:1.5"],"","第一次提速时间,间隔倍率,移速倍率"],[15,"SpeedUpSecond","",["300:0.5:2"],"","第二次提速时间,间隔倍率,移速倍率"],[16,"donateShopRefreshTime",7,[],"","工会捐赠商城刷新时间7天,从创建开始算"],[17,"guildRankRequest","",["0","300","600","900","1200","1500","1800","2100","2400","2700","3000"],"","加入公会的排位分数限制(超过该值才能进入)"],[18,"guildNameDay",7,[],"","修改公会名:间隔7天1次"],[19,"guildNameCost",500,[],"","修改公会名:每次花费500金币(money)"],[20,"guildicon",30,[],"","修改公会图标:间隔30天1次"],[21,"guildCreateMinLevel",5,[],"","工会创建最小等级"]]
GemBattle/宝石塔防_Data/StreamingAssets/Table/donaterule.json
New file
@@ -0,0 +1 @@
[[1,[1,2,3],["10:1","1:2"],["2:1","1:2"]],[2,[4,5,6],["20:1","2:2"],["4:1","1:2"]],[3,[7,8,9],["30:1","3:2"],["6:1","2:2"]],[4,[10,11,12,13],["40:1","4:2"],["8:1","2:2"]]]
GemBattle/宝石塔防_Data/StreamingAssets/Table/endless_port.json
@@ -1 +1 @@
[[1,1,"史莱姆大王",1,1,1,0,0,0,200,1.5,2,3000,["gold:5"],[500,9500],0],[2,1,"史莱姆大王",1,1,2,0,0,0,200,1.5,2,3000,["gold:5"],[500,9500],0],[3,1,"史莱姆大王",1,1,3,1,12,1500,200,1.5,2,3000,["gold:5"],[500,9500],1],[4,1,"史莱姆大王",1,1,4,0,0,0,200,1.5,2,3000,["gold:5"],[500,9500],0],[5,1,"史莱姆大王",1,1,5,0,0,0,200,1.5,2,3000,["gold:5"],[500,9500],0],[6,1,"史莱姆大王",1,2,1,0,0,0,350,1.5,2,3000,["gold:5"],[500,9500],0],[7,1,"史莱姆大王",1,2,2,0,0,0,350,1.5,2,3000,["gold:5"],[500,9500],0],[8,1,"史莱姆大王",1,2,3,3,6,3000,350,1.5,2,3000,["gold:5"],[500,9500],3],[9,1,"史莱姆大王",1,2,4,0,0,0,350,1.5,2,3000,["gold:5"],[500,9500],0],[10,1,"史莱姆大王",1,2,5,0,0,0,350,1.5,2,3000,["gold:5"],[500,9500],0],[11,1,"史莱姆大王",1,3,1,0,0,0,500,1.5,2,3000,["gold:5"],[500,9500],0],[12,1,"史莱姆大王",1,3,2,0,0,0,500,1.5,2,3000,["gold:5"],[500,9500],0],[13,1,"史莱姆大王",1,3,3,2,4,4500,500,1.5,2,3000,["gold:5"],[500,9500],2],[14,1,"史莱姆大王",1,3,4,0,0,0,500,1.5,2,3000,["gold:5"],[500,9500],0],[15,1,"史莱姆大王",1,3,5,0,0,0,500,1.5,2,3000,["gold:5"],[500,9500],0],[16,2,"捣蛋恶魔",2,1,1,0,0,0,1000,1.5,4,3000,["gold:5"],[500,9500],0],[17,2,"捣蛋恶魔",2,1,2,3,6,3000,1000,1.5,4,3000,["gold:5"],[500,9500],3],[18,2,"捣蛋恶魔",2,1,3,1,12,1500,1000,1.5,4,3000,["gold:5"],[500,9500],1],[19,2,"捣蛋恶魔",2,1,4,3,6,3000,1000,1.5,4,3000,["gold:5"],[500,9500],3],[20,2,"捣蛋恶魔",2,1,5,0,0,0,1000,1.5,4,3000,["gold:5"],[500,9500],0],[21,2,"捣蛋恶魔",2,2,1,2,4,4500,1200,1.5,4,3000,["gold:5"],[500,9500],2],[22,2,"捣蛋恶魔",2,2,2,0,0,0,1200,1.5,4,3000,["gold:5"],[500,9500],0],[23,2,"捣蛋恶魔",2,2,3,3,6,3000,1200,1.5,4,3000,["gold:5"],[500,9500],3],[24,2,"捣蛋恶魔",2,2,4,0,0,0,1200,1.5,4,3000,["gold:5"],[500,9500],0],[25,2,"捣蛋恶魔",2,2,5,2,4,4500,1200,1.5,4,3000,["gold:5"],[500,9500],2],[26,2,"捣蛋恶魔",2,3,1,2,4,4500,1400,1.5,4,3000,["gold:5"],[500,9500],2],[27,2,"捣蛋恶魔",2,3,2,3,6,3000,1400,1.5,4,3000,["gold:5"],[500,9500],3],[28,2,"捣蛋恶魔",2,3,3,1,12,1500,1400,1.5,4,3000,["gold:5"],[500,9500],1],[29,2,"捣蛋恶魔",2,3,4,3,6,3000,1400,1.5,4,3000,["gold:5"],[500,9500],3],[30,2,"捣蛋恶魔",2,3,5,2,4,4500,1400,1.5,4,3000,["gold:5"],[500,9500],2],[31,3,"精灵小偷",3,1,1,3,6,3000,1800,1.5,8,3000,["gold:5"],[500,9500],3],[32,3,"精灵小偷",3,1,2,1,12,1500,1800,1.5,8,3000,["gold:5"],[500,9500],1],[33,3,"精灵小偷",3,1,3,2,4,4500,1800,1.5,8,3000,["gold:5"],[500,9500],2],[34,3,"精灵小偷",3,1,4,1,12,1500,1800,1.5,8,3000,["gold:5"],[500,9500],1],[35,3,"精灵小偷",3,1,5,3,6,3000,1800,1.5,8,3000,["gold:5"],[500,9500],3],[36,3,"精灵小偷",3,2,1,1,12,1500,2100,1.5,8,3000,["gold:5"],[500,9500],1],[37,3,"精灵小偷",3,2,2,3,6,3000,2100,1.5,8,3000,["gold:5"],[500,9500],3],[38,3,"精灵小偷",3,2,3,2,4,4500,2100,1.5,8,3000,["gold:5"],[500,9500],2],[39,3,"精灵小偷",3,2,4,3,6,3000,2100,1.5,8,3000,["gold:5"],[500,9500],3],[40,3,"精灵小偷",3,2,5,1,12,1500,2100,1.5,8,3000,["gold:5"],[500,9500],1],[41,3,"精灵小偷",3,3,1,2,4,4500,2400,1.5,8,3000,["gold:5"],[500,9500],2],[42,3,"精灵小偷",3,3,2,2,4,4500,2400,1.5,8,3000,["gold:5"],[500,9500],2],[43,3,"精灵小偷",3,3,3,2,4,4500,2400,1.5,8,3000,["gold:5"],[500,9500],2],[44,3,"精灵小偷",3,3,4,2,4,4500,2400,1.5,8,3000,["gold:5"],[500,9500],2],[45,3,"精灵小偷",3,3,5,2,4,4500,2400,1.5,8,3000,["box:3:1"],[500,9500],2],[46,4,"大波僵尸",3,1,1,1,12,1500,2700,1.5,16,3000,["gold:5"],[500,9500],1],[47,4,"大波僵尸",3,1,2,1,12,1500,2700,1.5,16,3000,["gold:5"],[500,9500],1],[48,4,"大波僵尸",3,1,3,1,12,1500,2700,1.5,16,3000,["gold:5"],[500,9500],1],[49,4,"大波僵尸",3,1,4,1,12,1500,2700,1.5,16,3000,["gold:5"],[500,9500],1],[50,4,"大波僵尸",3,1,5,1,12,1500,2700,1.5,16,3000,["gold:5"],[500,9500],1],[51,4,"大波僵尸",3,2,1,3,6,3000,3000,1.5,16,3000,["gold:5"],[500,9500],3],[52,4,"大波僵尸",3,2,2,3,6,3000,3000,1.5,16,3000,["gold:5"],[500,9500],3],[53,4,"大波僵尸",3,2,3,3,6,3000,3000,1.5,16,3000,["gold:5"],[500,9500],3],[54,4,"大波僵尸",3,2,4,3,6,3000,3000,1.5,16,3000,["gold:5"],[500,9500],3],[55,4,"大波僵尸",3,2,5,3,6,3000,3000,1.5,16,3000,["gold:5"],[500,9500],3],[56,4,"大波僵尸",3,3,1,2,6,3000,3300,1.5,16,3000,["gold:5"],[500,9500],2],[57,4,"大波僵尸",3,3,2,2,6,3000,3300,1.5,16,3000,["gold:5"],[500,9500],2],[58,4,"大波僵尸",3,3,3,1,12,1500,3300,1.5,16,3000,["gold:5"],[500,9500],1],[59,4,"大波僵尸",3,3,4,2,6,3000,3300,1.5,16,3000,["gold:5"],[500,9500],2],[60,4,"大波僵尸",3,3,5,2,6,3000,3300,1.5,16,3000,["box:3:1"],[500,9500],2],[61,5,"Dio",3,1,1,2,8,4500,3600,2,32,3000,["gold:5"],[500,9500],2],[62,5,"Dio",3,1,2,3,12,3000,3600,2,32,3000,["gold:5"],[500,9500],3],[63,5,"Dio",3,1,3,1,24,1500,3600,2,32,3000,["gold:5"],[500,9500],1],[64,5,"Dio",3,1,4,3,12,3000,3600,2,32,3000,["gold:5"],[500,9500],3],[65,5,"Dio",3,1,5,2,8,4500,3600,2,32,3000,["gold:5"],[500,9500],2],[66,5,"Dio",3,2,1,3,12,3000,3900,2,32,3000,["gold:5"],[500,9500],3],[67,5,"Dio",3,2,2,1,24,1500,3900,2,32,3000,["gold:5"],[500,9500],1],[68,5,"Dio",3,2,3,2,8,4500,3900,2,32,3000,["gold:5"],[500,9500],2],[69,5,"Dio",3,2,4,1,24,1500,3900,2,32,3000,["gold:5"],[500,9500],1],[70,5,"Dio",3,2,5,3,12,3000,3900,2,32,3000,["gold:5"],[500,9500],3],[71,5,"Dio",3,3,1,1,24,1500,4200,2,32,3000,["gold:5"],[500,9500],1],[72,5,"Dio",3,3,2,3,12,3000,4200,2,32,3000,["gold:5"],[500,9500],3],[73,5,"Dio",3,3,3,2,8,4500,4200,2,32,3000,["gold:5"],[500,9500],2],[74,5,"Dio",3,3,4,3,12,3000,4200,2,32,3000,["gold:5"],[500,9500],3],[75,5,"Dio",3,3,5,1,24,1500,4200,2,32,3000,["gold:5"],[500,9500],1],[76,5,"Dio",3,4,1,2,8,4500,4500,2,64,3000,["gold:5"],[500,9500],2],[77,5,"Dio",3,4,2,2,8,4500,4500,2,64,3000,["gold:5"],[500,9500],2],[78,5,"Dio",3,4,3,2,8,4500,4500,2,64,3000,["gold:5"],[500,9500],2],[79,5,"Dio",3,4,4,2,8,4500,4500,2,64,3000,["gold:5"],[500,9500],2],[80,5,"Dio",3,4,5,2,8,4500,4500,2,64,3000,["gold:5"],[500,9500],2],[81,5,"Dio",3,5,1,1,24,1500,4800,2,64,3000,["gold:5"],[500,9500],1],[82,5,"Dio",3,5,2,1,24,1500,4800,2,64,3000,["gold:5"],[500,9500],1],[83,5,"Dio",3,5,3,1,24,1500,4800,2,64,3000,["gold:5"],[500,9500],1],[84,5,"Dio",3,5,4,1,24,1500,4800,2,64,3000,["gold:5"],[500,9500],1],[85,5,"Dio",3,5,5,1,24,1500,4800,2,64,3000,["gold:5"],[500,9500],1],[86,5,"Dio",3,6,1,3,12,3000,5100,2,64,3000,["gold:5"],[500,9500],3],[87,5,"Dio",3,6,2,3,12,3000,5100,2,64,3000,["gold:5"],[500,9500],3],[88,5,"Dio",3,6,3,3,12,3000,5100,2,64,3000,["gold:5"],[500,9500],3],[89,5,"Dio",3,6,4,3,12,3000,5100,2,64,3000,["gold:5"],[500,9500],3],[90,5,"Dio",3,6,5,3,12,3000,5100,2,64,3000,["gold:5"],[500,9500],3],[91,5,"Dio",3,7,1,2,12,3000,5400,2,64,3000,["gold:5"],[500,9500],2],[92,5,"Dio",3,7,2,2,12,3000,5400,2,64,3000,["gold:5"],[500,9500],2],[93,5,"Dio",3,7,3,1,24,1500,5400,2,64,3000,["gold:5"],[500,9500],1],[94,5,"Dio",3,7,4,2,12,3000,5400,2,64,3000,["gold:5"],[500,9500],2],[95,5,"Dio",3,7,5,2,12,3000,5400,2,64,3000,["gold:5"],[500,9500],2],[96,5,"Dio",3,8,1,2,8,4500,5700,2,64,3000,["gold:5"],[500,9500],2],[97,5,"Dio",3,8,2,3,12,3000,5700,2,64,3000,["gold:5"],[500,9500],3],[98,5,"Dio",3,8,3,1,24,1500,5700,2,64,3000,["gold:5"],[500,9500],1],[99,5,"Dio",3,8,4,3,12,3000,5700,2,64,3000,["gold:5"],[500,9500],3],[100,5,"Dio",3,8,5,2,8,4500,5700,2,64,3000,["gold:5"],[500,9500],2],[101,5,"Dio",3,9,1,3,12,3000,6000,2,64,3000,["gold:5"],[500,9500],3],[102,5,"Dio",3,9,2,1,24,1500,6000,2,64,3000,["gold:5"],[500,9500],1],[103,5,"Dio",3,9,3,2,8,4500,6000,2,64,3000,["gold:5"],[500,9500],2],[104,5,"Dio",3,9,4,1,24,1500,6000,2,64,3000,["gold:5"],[500,9500],1],[105,5,"Dio",3,9,5,3,12,3000,6000,2,64,3000,["gold:5"],[500,9500],3],[106,5,"Dio",3,10,1,1,24,1500,6300,2,64,3000,["gold:5"],[500,9500],1],[107,5,"Dio",3,10,2,3,12,3000,6300,2,64,3000,["gold:5"],[500,9500],3],[108,5,"Dio",3,10,3,2,8,4500,6300,2,64,3000,["gold:5"],[500,9500],2],[109,5,"Dio",3,10,4,3,12,3000,6300,2,64,3000,["gold:5"],[500,9500],3],[110,5,"Dio",3,10,5,1,24,1500,6300,2,64,3000,["gold:5"],[500,9500],1],[111,5,"Dio",3,11,1,2,8,4500,6600,2,64,3000,["gold:5"],[500,9500],2],[112,5,"Dio",3,11,2,2,8,4500,6600,2,64,3000,["gold:5"],[500,9500],2],[113,5,"Dio",3,11,3,2,8,4500,6600,2,64,3000,["gold:5"],[500,9500],2],[114,5,"Dio",3,11,4,2,8,4500,6600,2,64,3000,["gold:5"],[500,9500],2],[115,5,"Dio",3,11,5,2,8,4500,6600,2,64,3000,["gold:5"],[500,9500],2],[116,5,"Dio",3,12,1,1,24,1500,6900,2,64,3000,["gold:5"],[500,9500],1],[117,5,"Dio",3,12,2,1,24,1500,6900,2,64,3000,["gold:5"],[500,9500],1],[118,5,"Dio",3,12,3,1,24,1500,6900,2,64,3000,["gold:5"],[500,9500],1],[119,5,"Dio",3,12,4,1,24,1500,6900,2,64,3000,["gold:5"],[500,9500],1],[120,5,"Dio",3,12,5,1,24,1500,6900,2,64,3000,["gold:5"],[500,9500],1]]
[[1,-2,"史莱姆大王",1,1,1,0,0,0,200,1.5,2,3000,["0"],[0],0],[2,-2,"史莱姆大王",1,1,2,0,0,0,200,1.5,2,3000,["0"],[0],0],[3,-2,"史莱姆大王",1,1,3,3,10,2000,200,1.5,2,3000,["0"],[0],3],[4,-2,"史莱姆大王",1,1,4,0,0,0,200,1.5,2,3000,["0"],[0],0],[5,-2,"史莱姆大王",1,1,5,0,0,0,200,1.5,2,3000,["0"],[0],0],[6,-1,"史莱姆大王",1,2,1,0,0,0,350,1.5,2,3000,["0"],[0],0],[7,-1,"史莱姆大王",1,2,2,1,10,2000,500,1.5,2,3000,["0"],[0],1],[8,-1,"史莱姆大王",1,2,3,0,0,0,350,1.5,2,3000,["0"],[0],0],[9,-1,"史莱姆大王",1,2,4,0,0,0,350,1.5,2,3000,["0"],[0],0],[10,-1,"史莱姆大王",1,2,5,0,0,0,350,1.5,2,3000,["0"],[0],0],[11,1,"史莱姆大王",1,1,1,0,0,0,200,1.5,2,3000,["gold:5"],[500,9500],0],[12,1,"史莱姆大王",1,1,2,0,0,0,200,1.5,2,3000,["gold:5"],[500,9500],0],[13,1,"史莱姆大王",1,1,3,1,12,1500,200,1.5,2,3000,["gold:5"],[500,9500],1],[14,1,"史莱姆大王",1,1,4,0,0,0,200,1.5,2,3000,["gold:5"],[500,9500],0],[15,1,"史莱姆大王",1,1,5,0,0,0,200,1.5,2,3000,["gold:5"],[500,9500],0],[16,1,"史莱姆大王",1,2,1,0,0,0,350,1.5,2,3000,["gold:5"],[500,9500],0],[17,1,"史莱姆大王",1,2,2,0,0,0,350,1.5,2,3000,["gold:5"],[500,9500],0],[18,1,"史莱姆大王",1,2,3,3,6,3000,350,1.5,2,3000,["gold:5"],[500,9500],3],[19,1,"史莱姆大王",1,2,4,0,0,0,350,1.5,2,3000,["gold:5"],[500,9500],0],[20,1,"史莱姆大王",1,2,5,0,0,0,350,1.5,2,3000,["gold:5"],[500,9500],0],[21,1,"史莱姆大王",1,3,1,0,0,0,500,1.5,2,3000,["gold:5"],[500,9500],0],[22,1,"史莱姆大王",1,3,2,0,0,0,500,1.5,2,3000,["gold:5"],[500,9500],0],[23,1,"史莱姆大王",1,3,3,2,4,4500,500,1.5,2,3000,["gold:5"],[500,9500],2],[24,1,"史莱姆大王",1,3,4,0,0,0,500,1.5,2,3000,["gold:5"],[500,9500],0],[25,1,"史莱姆大王",1,3,5,0,0,0,500,1.5,2,3000,["gold:5"],[500,9500],0],[26,2,"捣蛋恶魔",2,1,1,0,0,0,1000,1.5,4,3000,["gold:5"],[500,9500],0],[27,2,"捣蛋恶魔",2,1,2,3,6,3000,1000,1.5,4,3000,["gold:5"],[500,9500],3],[28,2,"捣蛋恶魔",2,1,3,1,12,1500,1000,1.5,4,3000,["gold:5"],[500,9500],1],[29,2,"捣蛋恶魔",2,1,4,3,6,3000,1000,1.5,4,3000,["gold:5"],[500,9500],3],[30,2,"捣蛋恶魔",2,1,5,0,0,0,1000,1.5,4,3000,["gold:5"],[500,9500],0],[31,2,"捣蛋恶魔",2,2,1,2,4,4500,1200,1.5,4,3000,["gold:5"],[500,9500],2],[32,2,"捣蛋恶魔",2,2,2,0,0,0,1200,1.5,4,3000,["gold:5"],[500,9500],0],[33,2,"捣蛋恶魔",2,2,3,3,6,3000,1200,1.5,4,3000,["gold:5"],[500,9500],3],[34,2,"捣蛋恶魔",2,2,4,0,0,0,1200,1.5,4,3000,["gold:5"],[500,9500],0],[35,2,"捣蛋恶魔",2,2,5,2,4,4500,1200,1.5,4,3000,["gold:5"],[500,9500],2],[36,2,"捣蛋恶魔",2,3,1,2,4,4500,1400,1.5,4,3000,["gold:5"],[500,9500],2],[37,2,"捣蛋恶魔",2,3,2,3,6,3000,1400,1.5,4,3000,["gold:5"],[500,9500],3],[38,2,"捣蛋恶魔",2,3,3,1,12,1500,1400,1.5,4,3000,["gold:5"],[500,9500],1],[39,2,"捣蛋恶魔",2,3,4,3,6,3000,1400,1.5,4,3000,["gold:5"],[500,9500],3],[40,2,"捣蛋恶魔",2,3,5,2,4,4500,1400,1.5,4,3000,["gold:5"],[500,9500],2],[41,3,"精灵小偷",3,1,1,3,6,3000,1800,1.5,8,3000,["gold:5"],[500,9500],3],[42,3,"精灵小偷",3,1,2,1,12,1500,1800,1.5,8,3000,["gold:5"],[500,9500],1],[43,3,"精灵小偷",3,1,3,2,4,4500,1800,1.5,8,3000,["gold:5"],[500,9500],2],[44,3,"精灵小偷",3,1,4,1,12,1500,1800,1.5,8,3000,["gold:5"],[500,9500],1],[45,3,"精灵小偷",3,1,5,3,6,3000,1800,1.5,8,3000,["gold:5"],[500,9500],3],[46,3,"精灵小偷",3,2,1,1,12,1500,2100,1.5,8,3000,["gold:5"],[500,9500],1],[47,3,"精灵小偷",3,2,2,3,6,3000,2100,1.5,8,3000,["gold:5"],[500,9500],3],[48,3,"精灵小偷",3,2,3,2,4,4500,2100,1.5,8,3000,["gold:5"],[500,9500],2],[49,3,"精灵小偷",3,2,4,3,6,3000,2100,1.5,8,3000,["gold:5"],[500,9500],3],[50,3,"精灵小偷",3,2,5,1,12,1500,2100,1.5,8,3000,["gold:5"],[500,9500],1],[51,3,"精灵小偷",3,3,1,2,4,4500,2400,1.5,8,3000,["gold:5"],[500,9500],2],[52,3,"精灵小偷",3,3,2,2,4,4500,2400,1.5,8,3000,["gold:5"],[500,9500],2],[53,3,"精灵小偷",3,3,3,2,4,4500,2400,1.5,8,3000,["gold:5"],[500,9500],2],[54,3,"精灵小偷",3,3,4,2,4,4500,2400,1.5,8,3000,["gold:5"],[500,9500],2],[55,3,"精灵小偷",3,3,5,2,4,4500,2400,1.5,8,3000,["box:3:1"],[500,9500],2],[56,4,"大波僵尸",3,1,1,1,12,1500,2700,1.5,16,3000,["gold:5"],[500,9500],1],[57,4,"大波僵尸",3,1,2,1,12,1500,2700,1.5,16,3000,["gold:5"],[500,9500],1],[58,4,"大波僵尸",3,1,3,1,12,1500,2700,1.5,16,3000,["gold:5"],[500,9500],1],[59,4,"大波僵尸",3,1,4,1,12,1500,2700,1.5,16,3000,["gold:5"],[500,9500],1],[60,4,"大波僵尸",3,1,5,1,12,1500,2700,1.5,16,3000,["gold:5"],[500,9500],1],[61,4,"大波僵尸",3,2,1,3,6,3000,3000,1.5,16,3000,["gold:5"],[500,9500],3],[62,4,"大波僵尸",3,2,2,3,6,3000,3000,1.5,16,3000,["gold:5"],[500,9500],3],[63,4,"大波僵尸",3,2,3,3,6,3000,3000,1.5,16,3000,["gold:5"],[500,9500],3],[64,4,"大波僵尸",3,2,4,3,6,3000,3000,1.5,16,3000,["gold:5"],[500,9500],3],[65,4,"大波僵尸",3,2,5,3,6,3000,3000,1.5,16,3000,["gold:5"],[500,9500],3],[66,4,"大波僵尸",3,3,1,2,6,3000,3300,1.5,16,3000,["gold:5"],[500,9500],2],[67,4,"大波僵尸",3,3,2,2,6,3000,3300,1.5,16,3000,["gold:5"],[500,9500],2],[68,4,"大波僵尸",3,3,3,1,12,1500,3300,1.5,16,3000,["gold:5"],[500,9500],1],[69,4,"大波僵尸",3,3,4,2,6,3000,3300,1.5,16,3000,["gold:5"],[500,9500],2],[70,4,"大波僵尸",3,3,5,2,6,3000,3300,1.5,16,3000,["box:3:1"],[500,9500],2],[71,5,"Dio",3,1,1,2,8,4500,3600,2,32,3000,["gold:5"],[500,9500],2],[72,5,"Dio",3,1,2,3,12,3000,3600,2,32,3000,["gold:5"],[500,9500],3],[73,5,"Dio",3,1,3,1,24,1500,3600,2,32,3000,["gold:5"],[500,9500],1],[74,5,"Dio",3,1,4,3,12,3000,3600,2,32,3000,["gold:5"],[500,9500],3],[75,5,"Dio",3,1,5,2,8,4500,3600,2,32,3000,["gold:5"],[500,9500],2],[76,5,"Dio",3,2,1,3,12,3000,3900,2,32,3000,["gold:5"],[500,9500],3],[77,5,"Dio",3,2,2,1,24,1500,3900,2,32,3000,["gold:5"],[500,9500],1],[78,5,"Dio",3,2,3,2,8,4500,3900,2,32,3000,["gold:5"],[500,9500],2],[79,5,"Dio",3,2,4,1,24,1500,3900,2,32,3000,["gold:5"],[500,9500],1],[80,5,"Dio",3,2,5,3,12,3000,3900,2,32,3000,["gold:5"],[500,9500],3],[81,5,"Dio",3,3,1,1,24,1500,4200,2,32,3000,["gold:5"],[500,9500],1],[82,5,"Dio",3,3,2,3,12,3000,4200,2,32,3000,["gold:5"],[500,9500],3],[83,5,"Dio",3,3,3,2,8,4500,4200,2,32,3000,["gold:5"],[500,9500],2],[84,5,"Dio",3,3,4,3,12,3000,4200,2,32,3000,["gold:5"],[500,9500],3],[85,5,"Dio",3,3,5,1,24,1500,4200,2,32,3000,["gold:5"],[500,9500],1],[86,5,"Dio",3,4,1,2,8,4500,4500,2,64,3000,["gold:5"],[500,9500],2],[87,5,"Dio",3,4,2,2,8,4500,4500,2,64,3000,["gold:5"],[500,9500],2],[88,5,"Dio",3,4,3,2,8,4500,4500,2,64,3000,["gold:5"],[500,9500],2],[89,5,"Dio",3,4,4,2,8,4500,4500,2,64,3000,["gold:5"],[500,9500],2],[90,5,"Dio",3,4,5,2,8,4500,4500,2,64,3000,["gold:5"],[500,9500],2],[91,5,"Dio",3,5,1,1,24,1500,4800,2,64,3000,["gold:5"],[500,9500],1],[92,5,"Dio",3,5,2,1,24,1500,4800,2,64,3000,["gold:5"],[500,9500],1],[93,5,"Dio",3,5,3,1,24,1500,4800,2,64,3000,["gold:5"],[500,9500],1],[94,5,"Dio",3,5,4,1,24,1500,4800,2,64,3000,["gold:5"],[500,9500],1],[95,5,"Dio",3,5,5,1,24,1500,4800,2,64,3000,["gold:5"],[500,9500],1],[96,5,"Dio",3,6,1,3,12,3000,5100,2,64,3000,["gold:5"],[500,9500],3],[97,5,"Dio",3,6,2,3,12,3000,5100,2,64,3000,["gold:5"],[500,9500],3],[98,5,"Dio",3,6,3,3,12,3000,5100,2,64,3000,["gold:5"],[500,9500],3],[99,5,"Dio",3,6,4,3,12,3000,5100,2,64,3000,["gold:5"],[500,9500],3],[100,5,"Dio",3,6,5,3,12,3000,5100,2,64,3000,["gold:5"],[500,9500],3],[101,5,"Dio",3,7,1,2,12,3000,5400,2,64,3000,["gold:5"],[500,9500],2],[102,5,"Dio",3,7,2,2,12,3000,5400,2,64,3000,["gold:5"],[500,9500],2],[103,5,"Dio",3,7,3,1,24,1500,5400,2,64,3000,["gold:5"],[500,9500],1],[104,5,"Dio",3,7,4,2,12,3000,5400,2,64,3000,["gold:5"],[500,9500],2],[105,5,"Dio",3,7,5,2,12,3000,5400,2,64,3000,["gold:5"],[500,9500],2],[106,5,"Dio",3,8,1,2,8,4500,5700,2,64,3000,["gold:5"],[500,9500],2],[107,5,"Dio",3,8,2,3,12,3000,5700,2,64,3000,["gold:5"],[500,9500],3],[108,5,"Dio",3,8,3,1,24,1500,5700,2,64,3000,["gold:5"],[500,9500],1],[109,5,"Dio",3,8,4,3,12,3000,5700,2,64,3000,["gold:5"],[500,9500],3],[110,5,"Dio",3,8,5,2,8,4500,5700,2,64,3000,["gold:5"],[500,9500],2],[111,5,"Dio",3,9,1,3,12,3000,6000,2,64,3000,["gold:5"],[500,9500],3],[112,5,"Dio",3,9,2,1,24,1500,6000,2,64,3000,["gold:5"],[500,9500],1],[113,5,"Dio",3,9,3,2,8,4500,6000,2,64,3000,["gold:5"],[500,9500],2],[114,5,"Dio",3,9,4,1,24,1500,6000,2,64,3000,["gold:5"],[500,9500],1],[115,5,"Dio",3,9,5,3,12,3000,6000,2,64,3000,["gold:5"],[500,9500],3],[116,5,"Dio",3,10,1,1,24,1500,6300,2,64,3000,["gold:5"],[500,9500],1],[117,5,"Dio",3,10,2,3,12,3000,6300,2,64,3000,["gold:5"],[500,9500],3],[118,5,"Dio",3,10,3,2,8,4500,6300,2,64,3000,["gold:5"],[500,9500],2],[119,5,"Dio",3,10,4,3,12,3000,6300,2,64,3000,["gold:5"],[500,9500],3],[120,5,"Dio",3,10,5,1,24,1500,6300,2,64,3000,["gold:5"],[500,9500],1],[121,5,"Dio",3,11,1,2,8,4500,6600,2,64,3000,["gold:5"],[500,9500],2],[122,5,"Dio",3,11,2,2,8,4500,6600,2,64,3000,["gold:5"],[500,9500],2],[123,5,"Dio",3,11,3,2,8,4500,6600,2,64,3000,["gold:5"],[500,9500],2],[124,5,"Dio",3,11,4,2,8,4500,6600,2,64,3000,["gold:5"],[500,9500],2],[125,5,"Dio",3,11,5,2,8,4500,6600,2,64,3000,["gold:5"],[500,9500],2],[126,5,"Dio",3,12,1,1,24,1500,6900,2,64,3000,["gold:5"],[500,9500],1],[127,5,"Dio",3,12,2,1,24,1500,6900,2,64,3000,["gold:5"],[500,9500],1],[128,5,"Dio",3,12,3,1,24,1500,6900,2,64,3000,["gold:5"],[500,9500],1],[129,5,"Dio",3,12,4,1,24,1500,6900,2,64,3000,["gold:5"],[500,9500],1],[130,5,"Dio",3,12,5,1,24,1500,6900,2,64,3000,["gold:5"],[500,9500],1]]
GemBattle/宝石塔防_Data/StreamingAssets/Table/endless_teachport.json
New file
@@ -0,0 +1 @@
[[1,1,"史莱姆大王",1,1,1,0,0,0,200,1.5,2,3000,["0"],[0],0],[2,1,"史莱姆大王",1,1,2,0,0,0,200,1.5,2,3000,["0"],[0],0],[3,1,"史莱姆大王",1,1,3,3,10,2000,200,1.5,2,3000,["0"],[0],3],[4,1,"史莱姆大王",1,1,4,0,0,0,200,1.5,2,3000,["0"],[0],0],[5,1,"史莱姆大王",1,1,5,0,0,0,200,1.5,2,3000,["0"],[0],0],[6,2,"史莱姆大王",1,2,1,0,0,0,350,1.5,2,3000,["0"],[0],0],[7,2,"史莱姆大王",1,2,2,1,10,2000,5000,1.5,2,3000,["0"],[0],1],[8,2,"史莱姆大王",1,2,3,0,0,0,350,1.5,2,3000,["0"],[0],0],[9,2,"史莱姆大王",1,2,4,0,0,0,350,1.5,2,3000,["0"],[0],0],[10,2,"史莱姆大王",1,2,5,0,0,0,350,1.5,2,3000,["0"],[0],0]]
GemBattle/宝石塔防_Data/globalgamemanagers
Binary files differ
GemBattle/宝石塔防_Data/globalgamemanagers.assets
Binary files differ
GemBattle/宝石塔防_Data/level0
Binary files differ
GemBattle/宝石塔防_Data/level1
Binary files differ
GemBattle/宝石塔防_Data/level2
Binary files differ
GemBattle/宝石塔防_Data/level3
Binary files differ
GemBattle/宝石塔防_Data/level4
Binary files differ
GemBattle/宝石塔防_Data/resources.assets
Binary files differ
GemBattle/宝石塔防_Data/resources.assets.resS
Binary files differ
GemBattle/宝石塔防_Data/sharedassets0.assets
Binary files differ
GemBattle/宝石塔防_Data/sharedassets0.assets.resS
Binary files differ
GemBattle/宝石塔防_Data/sharedassets1.assets
Binary files differ
GemBattle/宝石塔防_Data/sharedassets1.assets.resS
Binary files differ
GemBattle/宝石塔防_Data/sharedassets2.assets
Binary files differ
GemBattle/宝石塔防_Data/sharedassets2.assets.resS
Binary files differ
GemBattle/宝石塔防_Data/sharedassets2.resource
Binary files differ
GemBattle/宝石塔防_Data/sharedassets3.assets
Binary files differ
GemBattle/宝石塔防_Data/sharedassets3.assets.resS
Binary files differ
GemBattle/宝石塔防_Data/sharedassets4.assets
Binary files differ
GemBattle/宝石塔防_Data/sharedassets4.assets.resS
Binary files differ
ProjectSettings/EditorBuildSettings.asset
@@ -5,7 +5,7 @@
  m_ObjectHideFlags: 0
  serializedVersion: 2
  m_Scenes:
  - enabled: 1
  - enabled: 0
    path: Assets/Scenes/TestTalkingData.unity
    guid: 415e09a546f94cf4b883227ff1be6086
  - enabled: 1