diff --git a/Assets/ManagedResources/BG/UI/1All/wenzi.meta b/Assets/ManagedResources/BG/UI/1All/wenzi.meta new file mode 100644 index 0000000000..18c96fbd1c --- /dev/null +++ b/Assets/ManagedResources/BG/UI/1All/wenzi.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a4f0b09f10fb4104ea5e046158c8878d +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/ManagedResources/BG/UI/Guild/UI_hz_gonghui_10_2.png.meta b/Assets/ManagedResources/BG/UI/Guild/UI_hz_gonghui_10_2.png.meta deleted file mode 100644 index 04bc2e6b66..0000000000 --- a/Assets/ManagedResources/BG/UI/Guild/UI_hz_gonghui_10_2.png.meta +++ /dev/null @@ -1,110 +0,0 @@ -fileFormatVersion: 2 -guid: f381e8bd95107894da9958c0b167a35c -TextureImporter: - fileIDToRecycleName: {} - externalObjects: {} - serializedVersion: 9 - mipmaps: - mipMapMode: 0 - enableMipMap: 0 - sRGBTexture: 1 - linearTexture: 0 - fadeOut: 0 - borderMipMap: 0 - mipMapsPreserveCoverage: 0 - alphaTestReferenceValue: 0.5 - mipMapFadeDistanceStart: 1 - mipMapFadeDistanceEnd: 3 - bumpmap: - convertToNormalMap: 0 - externalNormalMap: 0 - heightScale: 0.25 - normalMapFilter: 0 - isReadable: 0 - streamingMipmaps: 0 - streamingMipmapsPriority: 0 - grayScaleToAlpha: 0 - generateCubemap: 6 - cubemapConvolution: 0 - seamlessCubemap: 0 - textureFormat: 1 - maxTextureSize: 2048 - textureSettings: - serializedVersion: 2 - filterMode: 2 - aniso: -1 - mipBias: -100 - wrapU: 1 - wrapV: 1 - wrapW: 1 - nPOTScale: 0 - lightmap: 0 - compressionQuality: 50 - spriteMode: 1 - spriteExtrude: 1 - spriteMeshType: 1 - alignment: 0 - spritePivot: {x: 0.5, y: 0.5} - spritePixelsToUnits: 100 - spriteBorder: {x: 0, y: 0, z: 0, w: 0} - spriteGenerateFallbackPhysicsShape: 1 - alphaUsage: 1 - alphaIsTransparency: 1 - spriteTessellationDetail: -1 - textureType: 8 - textureShape: 1 - singleChannelComponent: 0 - maxTextureSizeSet: 0 - compressionQualitySet: 0 - textureFormatSet: 0 - platformSettings: - - serializedVersion: 2 - buildTarget: Android - maxTextureSize: 2048 - resizeAlgorithm: 0 - textureFormat: 65 - textureCompression: 1 - compressionQuality: 50 - crunchedCompression: 0 - allowsAlphaSplitting: 0 - overridden: 1 - androidETC2FallbackOverride: 0 - - serializedVersion: 2 - buildTarget: iPhone - maxTextureSize: 2048 - resizeAlgorithm: 0 - textureFormat: 57 - textureCompression: 1 - compressionQuality: 50 - crunchedCompression: 0 - allowsAlphaSplitting: 0 - overridden: 1 - androidETC2FallbackOverride: 0 - - serializedVersion: 2 - buildTarget: Standalone - maxTextureSize: 2048 - resizeAlgorithm: 0 - textureFormat: 4 - textureCompression: 1 - compressionQuality: 50 - crunchedCompression: 0 - allowsAlphaSplitting: 0 - overridden: 1 - androidETC2FallbackOverride: 0 - spriteSheet: - serializedVersion: 2 - sprites: [] - outline: [] - physicsShape: [] - bones: [] - spriteID: ace900888ca4e3c44b2271589529d876 - vertices: [] - indices: - edges: [] - weights: [] - spritePackingTag: - pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/ManagedResources/BG/UI/Guild/UI_hz_gonghui_10_3.png.meta b/Assets/ManagedResources/BG/UI/Guild/UI_hz_gonghui_10_3.png.meta deleted file mode 100644 index aa22d07f4c..0000000000 --- a/Assets/ManagedResources/BG/UI/Guild/UI_hz_gonghui_10_3.png.meta +++ /dev/null @@ -1,110 +0,0 @@ -fileFormatVersion: 2 -guid: 99b2487eaf921e848a61a991b4de7087 -TextureImporter: - fileIDToRecycleName: {} - externalObjects: {} - serializedVersion: 9 - mipmaps: - mipMapMode: 0 - enableMipMap: 0 - sRGBTexture: 1 - linearTexture: 0 - fadeOut: 0 - borderMipMap: 0 - mipMapsPreserveCoverage: 0 - alphaTestReferenceValue: 0.5 - mipMapFadeDistanceStart: 1 - mipMapFadeDistanceEnd: 3 - bumpmap: - convertToNormalMap: 0 - externalNormalMap: 0 - heightScale: 0.25 - normalMapFilter: 0 - isReadable: 0 - streamingMipmaps: 0 - streamingMipmapsPriority: 0 - grayScaleToAlpha: 0 - generateCubemap: 6 - cubemapConvolution: 0 - seamlessCubemap: 0 - textureFormat: 1 - maxTextureSize: 2048 - textureSettings: - serializedVersion: 2 - filterMode: 2 - aniso: -1 - mipBias: -100 - wrapU: 1 - wrapV: 1 - wrapW: 1 - nPOTScale: 0 - lightmap: 0 - compressionQuality: 50 - spriteMode: 1 - spriteExtrude: 1 - spriteMeshType: 1 - alignment: 0 - spritePivot: {x: 0.5, y: 0.5} - spritePixelsToUnits: 100 - spriteBorder: {x: 0, y: 0, z: 0, w: 0} - spriteGenerateFallbackPhysicsShape: 1 - alphaUsage: 1 - alphaIsTransparency: 1 - spriteTessellationDetail: -1 - textureType: 8 - textureShape: 1 - singleChannelComponent: 0 - maxTextureSizeSet: 0 - compressionQualitySet: 0 - textureFormatSet: 0 - platformSettings: - - serializedVersion: 2 - buildTarget: Android - maxTextureSize: 2048 - resizeAlgorithm: 0 - textureFormat: 65 - textureCompression: 1 - compressionQuality: 50 - crunchedCompression: 0 - allowsAlphaSplitting: 0 - overridden: 1 - androidETC2FallbackOverride: 0 - - serializedVersion: 2 - buildTarget: iPhone - maxTextureSize: 2048 - resizeAlgorithm: 0 - textureFormat: 57 - textureCompression: 1 - compressionQuality: 50 - crunchedCompression: 0 - allowsAlphaSplitting: 0 - overridden: 1 - androidETC2FallbackOverride: 0 - - serializedVersion: 2 - buildTarget: Standalone - maxTextureSize: 2048 - resizeAlgorithm: 0 - textureFormat: 4 - textureCompression: 1 - compressionQuality: 50 - crunchedCompression: 0 - allowsAlphaSplitting: 0 - overridden: 1 - androidETC2FallbackOverride: 0 - spriteSheet: - serializedVersion: 2 - sprites: [] - outline: [] - physicsShape: [] - bones: [] - spriteID: c1473225c9395064dada2c776b01d3bd - vertices: [] - indices: - edges: [] - weights: [] - spritePackingTag: - pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/ManagedResources/BG/UI/Guild/UI_hz_gonghui_10_4.png.meta b/Assets/ManagedResources/BG/UI/Guild/UI_hz_gonghui_10_4.png.meta deleted file mode 100644 index 177cd59487..0000000000 --- a/Assets/ManagedResources/BG/UI/Guild/UI_hz_gonghui_10_4.png.meta +++ /dev/null @@ -1,110 +0,0 @@ -fileFormatVersion: 2 -guid: 81edafdfcd068754f8b356ce1ee0b000 -TextureImporter: - fileIDToRecycleName: {} - externalObjects: {} - serializedVersion: 9 - mipmaps: - mipMapMode: 0 - enableMipMap: 0 - sRGBTexture: 1 - linearTexture: 0 - fadeOut: 0 - borderMipMap: 0 - mipMapsPreserveCoverage: 0 - alphaTestReferenceValue: 0.5 - mipMapFadeDistanceStart: 1 - mipMapFadeDistanceEnd: 3 - bumpmap: - convertToNormalMap: 0 - externalNormalMap: 0 - heightScale: 0.25 - normalMapFilter: 0 - isReadable: 0 - streamingMipmaps: 0 - streamingMipmapsPriority: 0 - grayScaleToAlpha: 0 - generateCubemap: 6 - cubemapConvolution: 0 - seamlessCubemap: 0 - textureFormat: 1 - maxTextureSize: 2048 - textureSettings: - serializedVersion: 2 - filterMode: 2 - aniso: -1 - mipBias: -100 - wrapU: 1 - wrapV: 1 - wrapW: 1 - nPOTScale: 0 - lightmap: 0 - compressionQuality: 50 - spriteMode: 1 - spriteExtrude: 1 - spriteMeshType: 1 - alignment: 0 - spritePivot: {x: 0.5, y: 0.5} - spritePixelsToUnits: 100 - spriteBorder: {x: 0, y: 0, z: 0, w: 0} - spriteGenerateFallbackPhysicsShape: 1 - alphaUsage: 1 - alphaIsTransparency: 1 - spriteTessellationDetail: -1 - textureType: 8 - textureShape: 1 - singleChannelComponent: 0 - maxTextureSizeSet: 0 - compressionQualitySet: 0 - textureFormatSet: 0 - platformSettings: - - serializedVersion: 2 - buildTarget: Android - maxTextureSize: 2048 - resizeAlgorithm: 0 - textureFormat: 65 - textureCompression: 1 - compressionQuality: 50 - crunchedCompression: 0 - allowsAlphaSplitting: 0 - overridden: 1 - androidETC2FallbackOverride: 0 - - serializedVersion: 2 - buildTarget: iPhone - maxTextureSize: 2048 - resizeAlgorithm: 0 - textureFormat: 57 - textureCompression: 1 - compressionQuality: 50 - crunchedCompression: 0 - allowsAlphaSplitting: 0 - overridden: 1 - androidETC2FallbackOverride: 0 - - serializedVersion: 2 - buildTarget: Standalone - maxTextureSize: 2048 - resizeAlgorithm: 0 - textureFormat: 4 - textureCompression: 1 - compressionQuality: 50 - crunchedCompression: 0 - allowsAlphaSplitting: 0 - overridden: 1 - androidETC2FallbackOverride: 0 - spriteSheet: - serializedVersion: 2 - sprites: [] - outline: [] - physicsShape: [] - bones: [] - spriteID: 0bca6b466821a124eab28cf0b0da81a5 - vertices: [] - indices: - edges: [] - weights: [] - spritePackingTag: - pSDRemoveMatte: 0 - pSDShowRemoveMatteOption: 0 - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/ManagedResources/~Lua/Modules/Fight/View/FightPointMapOnHook.lua b/Assets/ManagedResources/~Lua/Modules/Fight/View/FightPointMapOnHook.lua index ae5a8e9fdc..f7a4603e65 100644 --- a/Assets/ManagedResources/~Lua/Modules/Fight/View/FightPointMapOnHook.lua +++ b/Assets/ManagedResources/~Lua/Modules/Fight/View/FightPointMapOnHook.lua @@ -188,6 +188,7 @@ function this:InitComponent(root, parent, battleSceneLogic, battleScene) effect.transform:SetParent(this.effectRoot.transform) effect.transform.localScale = Vector3.New(0.05, 0.05, 0.05) effect.transform.localPosition = Vector3.New(0, 0, 0) + effect.transform.eulerAngles = Vector3.New(35, 0, 0) effect:SetActive(false) table.insert(this.moneyEffects, effect) @@ -532,6 +533,7 @@ function this.SetRoleSingleWithData(go, _heroconfigData, _pos, camp) local liveNode = poolManager:LoadLive(liveName, go.transform, Vector3.New(0.05, 0.05, 0.05) * _scale, Vector3.New(curPos[1], curPos[2], 0)) + liveNode.transform.eulerAngles = Vector3.New(35, 0, 0) if not liveNode then LogError("liveNode = nil _heroconfigData.Id:" .. _heroconfigData.Id) end @@ -817,6 +819,7 @@ function this:CheckSkillForoleEffect(isLeft, combat, _aObj, _bObj, type) go.transform.localScale = type == 1 and Vector3.New(0.05, 0.05, 0.05) or Vector3.New(-0.05, 0.05, 0.05) go.transform.localPosition = Vector3.zero + offset + go.transform.eulerAngles = Vector3.New(35, 0, 0) go:SetActive(true) self:AddDelayRecycleRes(path, go, 4) end @@ -869,6 +872,7 @@ function this:CheckFullSceenSkill(isLeft, combat, _aObj, _bObj, type, livego) go.transform:SetParent(battleSceneSkillTransform) go.transform.localScale = type == 1 and Vector3.New(0.05, 0.05, 0.05) or Vector3.New(-0.05, 0.05, 0.05) go.transform.localPosition = pos + offset + go.transform.eulerAngles = Vector3.New(35, 0, 0) go:SetActive(true) self:AddDelayRecycleRes(path, go, 4) end @@ -1131,7 +1135,7 @@ function this:ShootBullet(combat, _aObj, _bObj, type) local go = loadAssetForScene(bulletEffect) go.transform:SetParent(battleSceneSkillTransform) go.transform.localScale = type == 1 and Vector3.New(0.05, 0.05, 0.05) or Vector3.New(-0.05, 0.05, 0.05) - + go.transform.eulerAngles = Vector3.New(35, 0, 0) --开始位置 local startV3 = _aObj.position local tempOffset = combat.Offset or Vector3.zero @@ -1475,6 +1479,7 @@ function this:CheckSkillHitEffect(livego, combat, turnIdx) go2.transform:SetParent(livego.transform) go2.transform.localScale = turnIdx == 4 and Vector3.New(-0.05, 0.05, 0.05) or Vector3.New(0.05, 0.05, 0.05) go2.transform.localPosition = offset + go2.transform.eulerAngles = Vector3.New(35, 0, 0) go2:SetActive(true) self:AddDelayRecycleRes(combat.Hit, go2, 1) diff --git a/Assets/ManagedResources/~Lua/Modules/Recruit/RecruitMainPanel.lua b/Assets/ManagedResources/~Lua/Modules/Recruit/RecruitMainPanel.lua index 922721ea9e..81c2419e8b 100644 --- a/Assets/ManagedResources/~Lua/Modules/Recruit/RecruitMainPanel.lua +++ b/Assets/ManagedResources/~Lua/Modules/Recruit/RecruitMainPanel.lua @@ -7,13 +7,13 @@ local _CurPageIndex = 0 local orginLayer local redPointTypeList = {} local subViewList = {} -local isEnter = 0 --是否开始拖动 +local isEnter = 0 --是否开始拖动 local lastIndex = 0 --初始化组件(用于子类重写) function RecruitMainPanel:InitComponent() this.spLoader = SpriteLoader.New() orginLayer = 0 - this.mask = Util.GetGameObject(self.gameObject,"mask") + this.mask = Util.GetGameObject(self.gameObject, "mask") this.mask:SetActive(false) this.tabbox = Util.GetGameObject(self.gameObject, "bg/tabbox") this.btnBack = Util.GetGameObject(self.gameObject, "bg/btnBack") @@ -29,53 +29,53 @@ function RecruitMainPanel:InitComponent() this.select = Util.GetGameObject(this.tabbox, "select") this.selectIma = Util.GetGameObject(this.select, "Image"):GetComponent("Image") this.select.gameObject:SetActive(false) - this.upView = SubUIManager.Open(SubUIConfig.UpView,self.gameObject.transform) + this.upView = SubUIManager.Open(SubUIConfig.UpView, self.gameObject.transform) this.itemList = {} this.moveWidth = this.grid:GetComponent("RectTransform").rect.width this.itemWidth = this.item:GetComponent("RectTransform").rect.width this.off = 51 - this.pos0 = Vector3.New(this.off * (0 - 2) + (0 - 1) * this.itemWidth - 186,28,0) - self.lastPage,self.curPage,self.nextPage = 0,0,0 + this.pos0 = Vector3.New(this.off * (0 - 2) + (0 - 1) * this.itemWidth - 186, 28, 0) + self.lastPage, self.curPage, self.nextPage = 0, 0, 0 this.trigger = Util.GetEventTriggerListener(this.gameObject) --触摸事件 end -function this.RemoveTrigger() +function this.RemoveTrigger() this.trigger.onBeginDrag = this.trigger.onBeginDrag - this.OnBeginDrag this.trigger.onDrag = this.trigger.onDrag - this.OnDrag this.trigger.onEndDrag = this.trigger.onEndDrag - this.OnEndDrag end function this.AddTrigger() - this.trigger.onBeginDrag = this.trigger.onBeginDrag + this.OnBeginDrag - this.trigger.onDrag = this.trigger.onDrag + this.OnDrag - this.trigger.onEndDrag = this.trigger.onEndDrag + this.OnEndDrag + this.trigger.onBeginDrag = this.trigger.onBeginDrag + this.OnBeginDrag + this.trigger.onDrag = this.trigger.onDrag + this.OnDrag + this.trigger.onEndDrag = this.trigger.onEndDrag + this.OnEndDrag end function this.SortItemList() - table.sort(this.itemList,function(a,b) + table.sort(this.itemList, function(a, b) return a.index < b.index end) end ---设置拖动左右方向 -function this.SetPos(v2) - if isEnter == 1 then +function this.SetPos(v2) + if isEnter == 1 then if v2.x > 2 then - isEnter = 2 --右 + isEnter = 2 --右 elseif v2.x < -2 then - isEnter = 3 --左 + isEnter = 3 --左 end end end ---手指拖动结束 ui归位 -function this.MoveTo(LOR,func) +function this.MoveTo(LOR, func) if LOR < 2 then return end this.select.gameObject:SetActive(false) - for i = 1,#this.itemList do + for i = 1, #this.itemList do this.itemList[i].move = true local targetPos = "" if LOR == 2 then @@ -84,29 +84,29 @@ function this.MoveTo(LOR,func) this.itemList[i].tran.anchoredPosition = this.pos0 else targetPos = i + 1 - end + end elseif LOR == 3 then if i - 1 < 1 then targetPos = #this.itemList this.itemList[i].tran.anchoredPosition = this.pos4 else - targetPos = i - 1 - end - end - local targetPos1 = this.itemList[targetPos].pos - this.itemList[i].go.transform:DOAnchorPos(targetPos1, 0.2, false) - :OnStart(function() - end) - :OnUpdate(function()end) - :OnComplete(function () - this.itemList[i].index = targetPos - this.itemList[i].pos = targetPos1 - this.itemList[i].move = false - if func then - func() + targetPos = i - 1 end - end):SetEase(Ease.Linear) - end + end + local targetPos1 = this.itemList[targetPos].pos + this.itemList[i].go.transform:DOAnchorPos(targetPos1, 0.2, false) + :OnStart(function() + end) + :OnUpdate(function() end) + :OnComplete(function() + this.itemList[i].index = targetPos + this.itemList[i].pos = targetPos1 + this.itemList[i].move = false + if func then + func() + end + end):SetEase(Ease.Linear) + end end function this.OnBeginDrag(Pointgo, data) @@ -114,11 +114,13 @@ function this.OnBeginDrag(Pointgo, data) isEnter = 1 end end + function this.OnDrag(Pointgo, data) if isEnter == 1 then this.SetPos(data.delta) end end + function this.OnEndDrag(Pointgo, data) if isEnter < 1 then return @@ -127,24 +129,24 @@ function this.OnEndDrag(Pointgo, data) isEnter = 1 this.mask:SetActive(true) local localIsenter = false - this.RemoveTrigger() - this.thread1 = coroutine.start(function() - this.MoveTo(ro) + this.RemoveTrigger() + this.thread1 = coroutine.start(function() + this.MoveTo(ro) --coroutine.wait(0.2/(this.itemWidth + this.off)) - while(not localIsenter) do + while (not localIsenter) do local isfinish = true - for j = 1,#this.itemList do + for j = 1, #this.itemList do if this.itemList[j].move then isfinish = false break end - end - if isfinish then + end + if isfinish then localIsenter = true end - coroutine.wait(0.2/(this.itemWidth + this.off)) + coroutine.wait(0.2 / (this.itemWidth + this.off)) end - this.SortItemList() + this.SortItemList() if ro == 2 then this:RightAction() elseif ro == 3 then @@ -152,8 +154,8 @@ function this.OnEndDrag(Pointgo, data) end this.mask:SetActive(false) this.AddTrigger() - isEnter = 0 - end) + isEnter = 0 + end) end --绑定事件(用于子类重写) @@ -166,27 +168,27 @@ function RecruitMainPanel:BindEvent() local localIsenter = false this.mask:SetActive(true) this.RemoveTrigger() - self.thread = coroutine.start(function() + self.thread = coroutine.start(function() this.MoveTo(3) --coroutine.wait(0.2/(this.itemWidth + this.off)) - while(not localIsenter) do + while (not localIsenter) do local isfinish = true - for j = 1,#this.itemList do + for j = 1, #this.itemList do if this.itemList[j].move then isfinish = false break end - end - if isfinish then + end + if isfinish then localIsenter = true end - coroutine.wait(0.2/(this.itemWidth + this.off)) + coroutine.wait(0.2 / (this.itemWidth + this.off)) end this.SortItemList() this:LeftAction() this.mask:SetActive(false) - this.AddTrigger() - end) + this.AddTrigger() + end) end) Util.AddClick(this.rightBtn, function() local localIsenter = false @@ -195,31 +197,31 @@ function RecruitMainPanel:BindEvent() self.thread = coroutine.start(function() this.MoveTo(2) --coroutine.wait(0.2/(this.itemWidth + this.off)) - while(not localIsenter) do + while (not localIsenter) do local isfinish = true - for j = 1,#this.itemList do + for j = 1, #this.itemList do if this.itemList[j].move then isfinish = false break end - end - if isfinish then + end + if isfinish then localIsenter = true end - coroutine.wait(0.2/(this.itemWidth + this.off)) + coroutine.wait(0.2 / (this.itemWidth + this.off)) end this.SortItemList() this:RightAction() this.mask:SetActive(false) this.AddTrigger() - coroutine.yield() + coroutine.yield() end) end) - Util.AddClick(this.jiantouyou , function() + Util.AddClick(this.jiantouyou, function() this.mask:SetActive(true) this.RemoveTrigger() - for i = self.curPage - 1,1,-1 do + for i = self.curPage - 1, 1, -1 do if self.dicData[i].RpType and self.dicData[i].RpType > 0 then if RecruitManager.GetAllRecruitBtnRedpoint(self.dicData[i].RpType) then lastIndex = self.curPage @@ -227,16 +229,16 @@ function RecruitMainPanel:BindEvent() break end end - end + end self.CurRecruitId = self.dicData[self.curPage].ShopData[1][1] self.lastPage = self.curPage - 1 > 0 and self.curPage - 1 or #self.dicData - self.nextPage = self.curPage + 1 > #self.dicData and 1 or self.curPage + 1 + self.nextPage = self.curPage + 1 > #self.dicData and 1 or self.curPage + 1 this:SetIndex() end) - Util.AddClick(this.jiantouzuo , function() + Util.AddClick(this.jiantouzuo, function() this.mask:SetActive(true) this.RemoveTrigger() - for i = self.curPage + 1,#self.dicData,1 do + for i = self.curPage + 1, #self.dicData, 1 do if self.dicData[i].RpType and self.dicData[i].RpType > 0 then if RecruitManager.GetAllRecruitBtnRedpoint(self.dicData[i].RpType) then lastIndex = self.curPage @@ -244,53 +246,53 @@ function RecruitMainPanel:BindEvent() break end end - end + end self.CurRecruitId = self.dicData[self.curPage].ShopData[1][1] self.lastPage = self.curPage - 1 > 0 and self.curPage - 1 or #self.dicData - self.nextPage = self.curPage + 1 > #self.dicData and 1 or self.curPage + 1 + self.nextPage = self.curPage + 1 > #self.dicData and 1 or self.curPage + 1 this:SetIndex() end) end function RecruitMainPanel:RefreshJianTou() local index = 0 - for i = self.curPage - 1,1,-1 do + for i = self.curPage - 1, 1, -1 do if self.dicData[i].RpType and self.dicData[i].RpType > 0 then if RecruitManager.GetAllRecruitBtnRedpoint(self.dicData[i].RpType) then index = i break end end - end + end if index == 0 then this.jiantouyou.gameObject:SetActive(false) else this.jiantouyou.gameObject:SetActive(true) - end + end index = 0 - for i = self.curPage + 1,#self.dicData,1 do + for i = self.curPage + 1, #self.dicData, 1 do if self.dicData[i].RpType and self.dicData[i].RpType > 0 then if RecruitManager.GetAllRecruitBtnRedpoint(self.dicData[i].RpType) then index = i break end end - end + end if index == 0 then this.jiantouzuo.gameObject:SetActive(false) else this.jiantouzuo.gameObject:SetActive(true) - end + end end --添加事件监听(用于子类重写) function RecruitMainPanel:AddListener() - + end --移除事件监听(用于子类重写) function RecruitMainPanel:RemoveListener() - + end local redSort = { @@ -302,23 +304,23 @@ local redSort = { } --界面打开时调用(用于子类重写) -function RecruitMainPanel:OnOpen(_index) +function RecruitMainPanel:OnOpen(_index) if not _index then - if GuideManager.IsInMainGuide() and GuideManager.GetCurId(1) == 105 then + if GuideManager.IsInMainGuide() and GuideManager.GetCurId(1) == 105 then self.CurRecruitId = TableRecruitType.Putong elseif GuideManager.IsInMainGuide() and GuideManager.GetCurId(1) == 1003 then self.CurRecruitId = TableRecruitType.Shenjiang - elseif GuideManager.IsFunctionGuideExist() and GuideManager.curId == 101402 then + elseif GuideManager.IsFunctionGuideExist() and GuideManager.curId == 101402 then self.CurRecruitId = TableRecruitType.Siyuanzhen - elseif GuideManager.IsFunctionGuideExist() and GuideManager.curId == 103705 then + elseif GuideManager.IsFunctionGuideExist() and GuideManager.curId == 103705 then self.CurRecruitId = TableRecruitType.Shenjiang else - local data = RecruitManager.GetRecruitData() + local data = RecruitManager.GetRecruitData() local isRed = 0 - table.sort(data,function(a,b) + table.sort(data, function(a, b) return redSort[a.Sort] < redSort[b.Sort] end) - for i = 1,#data do + for i = 1, #data do if data[i].RpType and data[i].RpType > 0 then if RecruitManager.GetAllRecruitBtnRedpoint(data[i].RpType) then isRed = data[i].ShopData[1][1] @@ -331,18 +333,18 @@ function RecruitMainPanel:OnOpen(_index) else self.CurRecruitId = TableRecruitType.Shenjiang end - end + end else self.CurRecruitId = _index end end -- 打开,重新打开时回调 -function RecruitMainPanel:OnShow() +function RecruitMainPanel:OnShow() orginLayer = self.sortingOrder - self.dicData = RecruitManager.GetRecruitData() + self.dicData = RecruitManager.GetRecruitData() this:RefreshTabData() - for i = 1,#self.dicData do + for i = 1, #self.dicData do if self.dicData[i].ShopData[1][1] == self.CurRecruitId then self.curPage = i break @@ -357,40 +359,40 @@ function RecruitMainPanel:OnShow() end function this:RefreshTabData() - --local curIndex = 0 - --清除红点 - for k,v in pairs(redPointTypeList) do - ClearRedPointObject(k,v) + --local curIndex = 0 + --清除红点 + for k, v in pairs(redPointTypeList) do + ClearRedPointObject(k, v) end redPointTypeList = {} - - -- for i = 1,#this.itemList do - -- if i == 1 then - -- curIndex = self.lastPage + + -- for i = 1,#this.itemList do + -- if i == 1 then + -- curIndex = self.lastPage -- elseif i == 2 then -- curIndex = self.curPage -- else -- curIndex = self.nextPage - -- end + -- end -- this.itemList[i].img.sprite = this.spLoader:LoadSprite(self.dicData[curIndex].Icon[1]) -- BindRedPointObject(self.dicData[curIndex].RpType,this.itemList[i].redpot) -- redPointTypeList[self.dicData[curIndex].RpType] = this.itemList[i].redpot -- end - for i = 1,math.max(#this.itemList,#self.dicData) do + for i = 1, math.max(#this.itemList, #self.dicData) do if not self.dicData[i] then this.itemList[i].go.gameObject:SetActive(false) else if not this.itemList[i] then this.itemList[i] = {} this.itemList[i].move = false - this.itemList[i].go = newObjToParent(this.item,this.grid) - this.itemList[i].go.name = "tab_"..i + this.itemList[i].go = newObjToParent(this.item, this.grid) + this.itemList[i].go.name = "tab_" .. i this.itemList[i].tran = this.itemList[i].go:GetComponent("RectTransform") local vec = this.itemList[i].tran.anchoredPosition - if #self.dicData==1 then - vec.x=this.off * (#this.itemList - 1) + (#this.itemList) * this.itemWidth - 30 + if #self.dicData == 1 then + vec.x = this.off * (#this.itemList - 1) + (#this.itemList) * this.itemWidth + 200 else - vec.x = this.off * (i - 2) + (i - 1) * this.itemWidth - 100 + vec.x = this.off * (i - 2) + (i - 1) * this.itemWidth + 130 end vec.y = 28 this.itemList[i].tran.anchoredPosition = vec @@ -398,46 +400,46 @@ function this:RefreshTabData() this.itemList[i].index = i --TODO /// 改了配置之后可以放开 2023 11、2 this.itemList[i].img = Util.GetGameObject(this.itemList[i].go, "img"):GetComponent("Image") - this.itemList[i].tipObj=Util.GetGameObject(this.itemList[i].go,"tipObj") - this.itemList[i].tipTxt=Util.GetGameObject(this.itemList[i].go,"tipObj/Text"):GetComponent("Text") - this.itemList[i].titleTxt=Util.GetGameObject(this.itemList[i].go,"Text"):GetComponent("Text") - - this.itemList[i].redpot = Util.GetGameObject(this.itemList[i].go, "redpot") + this.itemList[i].tipObj = Util.GetGameObject(this.itemList[i].go, "tipObj") + this.itemList[i].tipTxt = Util.GetGameObject(this.itemList[i].go, "tipObj/Text"):GetComponent("Text") + this.itemList[i].titleTxt = Util.GetGameObject(this.itemList[i].go, "Text"):GetComponent("Text") + + this.itemList[i].redpot = Util.GetGameObject(this.itemList[i].go, "redpot") this.itemList[i].icon = Util.GetGameObject(this.itemList[i].go, "img/Image"):GetComponent("Image") this.itemList[i].pageIndex = i - end + end this.itemList[i].go.gameObject:SetActive(true) this.itemList[i].tipObj:SetActive(false) - this.itemList[i].titleTxt.text=self.dicData[i].Sesc - this.itemList[i].icon.sprite=this.spLoader:LoadSprite(self.dicData[i].Icon[2]) + this.itemList[i].titleTxt.text = self.dicData[i].Sesc + this.itemList[i].icon.sprite = this.spLoader:LoadSprite(self.dicData[i].Icon[2]) this.itemList[i].img.sprite = this.spLoader:LoadSprite(self.dicData[i].Icon[1]) - local isOpen=true - local tip="" - if self.dicData[i].ActId==2 then - isOpen =CheckFunctionOpen(FUNCTION_OPEN_TYPE.EquipWish) - tip=GetFunctionOpenTip(FUNCTION_OPEN_TYPE.EquipWish) - elseif self.dicData[i].ActId==121 then - isOpen=CheckFunctionOpenClient(FUNCTION_OPEN_TYPE.ChouJiangRukou) - tip=GetFunctionOpenTipClient(FUNCTION_OPEN_TYPE.ChouJiangRukou) + local isOpen = true + local tip = "" + if self.dicData[i].ActId == 2 then + isOpen = CheckFunctionOpen(FUNCTION_OPEN_TYPE.EquipWish) + tip = GetFunctionOpenTip(FUNCTION_OPEN_TYPE.EquipWish) + elseif self.dicData[i].ActId == 121 then + isOpen = CheckFunctionOpenClient(FUNCTION_OPEN_TYPE.ChouJiangRukou) + tip = GetFunctionOpenTipClient(FUNCTION_OPEN_TYPE.ChouJiangRukou) end this.itemList[i].tipObj:SetActive(not isOpen) - this.itemList[i].tipTxt.text=tip - BindRedPointObject(self.dicData[i].RpType,this.itemList[i].redpot) + this.itemList[i].tipTxt.text = tip + BindRedPointObject(self.dicData[i].RpType, this.itemList[i].redpot) redPointTypeList[self.dicData[i].RpType] = this.itemList[i].redpot - end + end end - this.pos4 = Vector3.New(this.off * (#this.itemList - 1) + (#this.itemList) * this.itemWidth - 186,0,0) + this.pos4 = Vector3.New(this.off * (#this.itemList - 1) + (#this.itemList) * this.itemWidth - 186, 0, 0) --print(tostring(this.pos4)) LogError(tostring(this.pos4)) end function this:SetIndex() - for i = 1,#this.itemList do + for i = 1, #this.itemList do if this.itemList[i].pageIndex == self.curPage then - if this.itemList[i].index == 2 then + if this.itemList[i].index == 2 then this:RefreshJianTou() this.AddTrigger() - this:PageOnChange(true) + this:PageOnChange(true) this.mask:SetActive(false) return else @@ -450,31 +452,31 @@ function this:SetIndex() local offSet = math.abs(this.itemList[i].index - 2) local localIsenter = true self.thread = coroutine.start(function() - while(offSet > 0) do + while (offSet > 0) do if localIsenter then localIsenter = false this.MoveTo(LOY) --coroutine.wait(0.2/(this.itemWidth + this.off)) - while(not localIsenter) do + while (not localIsenter) do local isfinish = true - for j = 1,#this.itemList do + for j = 1, #this.itemList do if this.itemList[j].move then isfinish = false break end - end - if isfinish then + end + if isfinish then offSet = offSet - 1 - this.SortItemList() + this.SortItemList() localIsenter = true end - coroutine.wait(0.2/(this.itemWidth + this.off)) - end + coroutine.wait(0.2 / (this.itemWidth + this.off)) + end end - end + end this:RefreshJianTou() this.AddTrigger() - this:PageOnChange(true) + this:PageOnChange(true) this.mask:SetActive(false) end) end @@ -485,17 +487,17 @@ end function this:PageOnChange(isShow) if isShow then - for i = 1,#this.itemList do + for i = 1, #this.itemList do if this.itemList[i].pageIndex == self.curPage then this.select.transform:SetParent(this.itemList[i].go.transform) - this.select.transform:GetComponent("RectTransform").anchoredPosition = Vector3.New(-15,0,0) + this.select.transform:GetComponent("RectTransform").anchoredPosition = Vector3.New(-15, 0, 0) this.select.gameObject:SetActive(true) this.selectIma.sprite = this.spLoader:LoadSprite(self.dicData[self.curPage].Icon[2]) this.itemList[i].tipObj.transform:SetAsLastSibling() end end end - for k,v in pairs(subViewList) do + for k, v in pairs(subViewList) do if k ~= self.curPage then v.sub:OnClose() end @@ -506,12 +508,17 @@ function this:PageOnChange(isShow) subViewList[self.curPage] = {} if self.dicData[self.curPage].UIName then subViewList[self.curPage].config = SubUIConfig[self.dicData[self.curPage].UIName[1]] - subViewList[self.curPage].sub = SubUIManager.Open(subViewList[self.curPage].config,this.content.transform,self.dicData[self.curPage],self.curPage,this) + subViewList[self.curPage].sub = SubUIManager.Open(subViewList[self.curPage].config, this.content.transform, + self.dicData[self.curPage], self.curPage, this) subViewList[self.curPage].sub:OnShow(orginLayer) - end + end end if self.dicData[self.curPage].UpView and #self.dicData[self.curPage].UpView > 0 then - this.upView:OnOpen({showType = self.dicData[self.curPage].UpView[1][1], panelType = self.dicData[self.curPage].UpView[2] }) + this.upView:OnOpen({ + showType = self.dicData[self.curPage].UpView[1][1], + panelType = self.dicData[self.curPage] + .UpView[2] + }) this.upView.gameObject:SetActive(true) else this.upView.gameObject:SetActive(false) @@ -519,7 +526,7 @@ function this:PageOnChange(isShow) end function this:LeftAction() - lastIndex = self.curPage + lastIndex = self.curPage self.CurRecruitId = self.dicData[self.nextPage].ShopData[1][1] self.lastPage = self.curPage self.curPage = self.nextPage @@ -527,6 +534,7 @@ function this:LeftAction() this:RefreshJianTou() this:PageOnChange(true) end + function this:RightAction() lastIndex = self.curPage self.CurRecruitId = self.dicData[self.lastPage].ShopData[1][1] @@ -539,14 +547,14 @@ end function this:OnSortingOrderChange() orginLayer = self.sortingOrder - for k,v in pairs(subViewList) do + for k, v in pairs(subViewList) do v.sub:OnSortingOrderChange(self.sortingOrder) end end --界面关闭时调用(用于子类重写) function RecruitMainPanel:OnClose() - for k,v in pairs(subViewList) do + for k, v in pairs(subViewList) do v.sub:OnClose() end --清除红点 @@ -559,8 +567,8 @@ function RecruitMainPanel:OnClose() coroutine.stop(this.thread1) self.thread = nil end - for k,v in pairs(redPointTypeList) do - ClearRedPointObject(k,v) + for k, v in pairs(redPointTypeList) do + ClearRedPointObject(k, v) end redPointTypeList = {} ClearChild(this.grid) @@ -569,18 +577,18 @@ end --界面销毁时调用(用于子类重写) function RecruitMainPanel:OnDestroy() - --清除红点 - for k,v in pairs(redPointTypeList) do - ClearRedPointObject(k,v) + --清除红点 + for k, v in pairs(redPointTypeList) do + ClearRedPointObject(k, v) end redPointTypeList = {} --关闭弹窗界面 - for k,v in pairs(subViewList) do + for k, v in pairs(subViewList) do --UIManager.ClosePanel(k) v.sub:OnDestroy() - this.spLoader:Destroy() + this.spLoader:Destroy() SubUIManager.Close(v.sub) - end + end ClearChild(this.grid) this.itemList = {} subViewList = {} @@ -588,4 +596,5 @@ function RecruitMainPanel:OnDestroy() SubUIManager.Close(this.upView) this.upView = nil end -return this \ No newline at end of file + +return this diff --git a/Assets/ztest/HyperlinkText.cs b/Assets/ztest/HyperlinkText.cs new file mode 100644 index 0000000000..b9098a30d3 --- /dev/null +++ b/Assets/ztest/HyperlinkText.cs @@ -0,0 +1,223 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.Text.RegularExpressions; +using UnityEngine; +using UnityEngine.Events; +using UnityEngine.EventSystems; +using UnityEngine.UI; + +/// +/// 文本控件,支持超链接 +/// +public class HyperlinkText : Text, IPointerClickHandler +{ + /// + /// 超链接信息类 + /// + private class HyperlinkInfo + { + public int startIndex; + + public int endIndex; + + public string name; + + public readonly List boxes = new List(); + } + + /// + /// 解析完最终的文本 + /// + private string m_OutputText; + + /// + /// 超链接信息列表 + /// + private readonly List m_HrefInfos = new List(); + + /// + /// 文本构造器 + /// + protected static readonly StringBuilder s_TextBuilder = new StringBuilder(); + + [Serializable] + public class HrefClickEvent : UnityEvent { } + + [SerializeField] + private HrefClickEvent m_OnHrefClick = new HrefClickEvent(); + + /// + /// 超链接点击事件 + /// + public HrefClickEvent onHrefClick + { + get { return m_OnHrefClick; } + set { m_OnHrefClick = value; } + } + + + /// + /// 超链接正则 + /// + private static readonly Regex s_HrefRegex = new Regex(@"\n\s]+)>(.*?)()", RegexOptions.Singleline); + + private HyperlinkText mHyperlinkText; + + protected override void Awake() + { + base.Awake(); + mHyperlinkText = GetComponent(); + } + protected override void OnEnable() + { + base.OnEnable(); + mHyperlinkText.onHrefClick.AddListener(OnHyperlinkTextInfo); + } + + protected override void OnDisable() + { + base.OnDisable(); + mHyperlinkText.onHrefClick.RemoveListener(OnHyperlinkTextInfo); + } + + + public override void SetVerticesDirty() + { + base.SetVerticesDirty(); +#if UNITY_EDITOR + if (UnityEditor.PrefabUtility.GetPrefabType(this) == UnityEditor.PrefabType.Prefab) + { + return; + } +#endif + m_OutputText = GetOutputText(text); + + } + + + protected override void OnPopulateMesh(VertexHelper toFill) + { + var orignText = m_Text; + m_Text = m_OutputText; + base.OnPopulateMesh(toFill); + m_Text = orignText; + UIVertex vert = new UIVertex(); + + // 处理超链接包围框 + foreach (var hrefInfo in m_HrefInfos) + { + hrefInfo.boxes.Clear(); + if (hrefInfo.startIndex >= toFill.currentVertCount) + { + //continue; + } + + // 将超链接里面的文本顶点索引坐标加入到包围框 + toFill.PopulateUIVertex(ref vert, hrefInfo.startIndex); + var pos = vert.position; + var bounds = new Bounds(pos, Vector3.zero); + for (int i = hrefInfo.startIndex, m = hrefInfo.endIndex; i < m; i++) + { + if (i >= toFill.currentVertCount) + { + break; + } + + toFill.PopulateUIVertex(ref vert, i); + pos = vert.position; + if (pos.x < bounds.min.x) // 换行重新添加包围框 + { + hrefInfo.boxes.Add(new Rect(bounds.min, bounds.size)); + bounds = new Bounds(pos, Vector3.zero); + } + else + { + bounds.Encapsulate(pos); // 扩展包围框 + } + } + + hrefInfo.boxes.Add(new Rect(bounds.min, bounds.size)); + } + } + + /// + /// 获取超链接解析后的最后输出文本 + /// + /// + protected virtual string GetOutputText(string outputText) + { + s_TextBuilder.Length = 0; + m_HrefInfos.Clear(); + var indexText = 0; + foreach (Match match in s_HrefRegex.Matches(outputText)) + { + s_TextBuilder.Append(outputText.Substring(indexText, match.Index - indexText)); + + string str = s_TextBuilder.ToString(); + char[] array = str.ToCharArray(); //把字符串转化成字符数组 + IEnumerator enumerator = array.GetEnumerator(); //得到枚举器 + StringBuilder stringBuilder = new StringBuilder(); + while (enumerator.MoveNext()) //开始枚举 + { + if ((char)enumerator.Current != ' ') //向StringBuilder类对象添加非空格字符 + stringBuilder.Append(enumerator.Current.ToString()); + } + + var group = match.Groups[1]; + var hrefInfo = new HyperlinkInfo + { + startIndex = stringBuilder.Length * 4, // 超链接里的文本起始顶点索引 + endIndex = (stringBuilder.Length + match.Groups[2].Length - 1) * 4 + 3, + name = group.Value + }; + m_HrefInfos.Add(hrefInfo); + s_TextBuilder.Append(""); // 超链接颜色 + s_TextBuilder.Append(match.Groups[2].Value); + s_TextBuilder.Append(""); + indexText = match.Index + match.Length; + } + s_TextBuilder.Append(outputText.Substring(indexText, outputText.Length - indexText)); + return s_TextBuilder.ToString(); + } + + /// + /// 点击事件检测是否点击到超链接文本 + /// + /// + public void OnPointerClick(PointerEventData eventData) + { + Vector2 lp = Vector2.zero; + + RectTransformUtility.ScreenPointToLocalPointInRectangle(rectTransform, eventData.position, eventData.pressEventCamera, out lp); + + foreach (var hrefInfo in m_HrefInfos) + { + var boxes = hrefInfo.boxes; + for (var i = 0; i < boxes.Count; ++i) + { + if (boxes[i].Contains(lp)) + { + m_OnHrefClick.Invoke(hrefInfo.name); + Debug.Log("sssssssssssssssssssss"); + return; + } + } + } + } + /// + /// 当前点击超链接回调 + /// + /// 回调信息 + private void OnHyperlinkTextInfo(string info) + { + Debug.Log("超链接信息:" + info); + Application.OpenURL(info); + } +} + diff --git a/Assets/ztest/HyperlinkText.cs.meta b/Assets/ztest/HyperlinkText.cs.meta new file mode 100644 index 0000000000..61023517af --- /dev/null +++ b/Assets/ztest/HyperlinkText.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f6b87a2f8641da74f955d4c1a88f3da1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/ztest/ztest.unity b/Assets/ztest/ztest.unity new file mode 100644 index 0000000000..a952418b9e --- /dev/null +++ b/Assets/ztest/ztest.unity @@ -0,0 +1,445 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 3 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 11 + m_GIWorkflowMode: 1 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 0 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 10 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 500 + m_PVRBounces: 2 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVRFilteringMode: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ShowResolutionOverlay: 1 + m_LightingDataAsset: {fileID: 0} + m_UseShadowmask: 1 +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 2 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + accuratePlacement: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &494844040 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 494844043} + - component: {fileID: 494844042} + - component: {fileID: 494844041} + m_Layer: 0 + m_Name: EventSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &494844041 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 494844040} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1077351063, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_HorizontalAxis: Horizontal + m_VerticalAxis: Vertical + m_SubmitButton: Submit + m_CancelButton: Cancel + m_InputActionsPerSecond: 10 + m_RepeatDelay: 0.5 + m_ForceModuleActive: 0 +--- !u!114 &494844042 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 494844040} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -619905303, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_FirstSelected: {fileID: 0} + m_sendNavigationEvents: 1 + m_DragThreshold: 10 +--- !u!4 &494844043 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 494844040} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &704032569 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 704032570} + - component: {fileID: 704032572} + - component: {fileID: 704032571} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &704032570 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 704032569} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 799462027} + m_RootOrder: 0 + 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: 0, y: 0} + m_SizeDelta: {x: 289.86, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &704032571 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 704032569} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f6b87a2f8641da74f955d4c1a88f3da1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 0 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: "\u6587\u672C\u6D4B\u8BD5\uFF1A[\u5C0FY\u535A\u5BA2psd228225ddisfgd]" + m_OnHrefClick: + m_PersistentCalls: + m_Calls: [] + m_TypeName: HyperlinkText+HrefClickEvent, Assembly-CSharp, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null +--- !u!222 &704032572 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 704032569} + m_CullTransparentMesh: 0 +--- !u!1 &799462023 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 799462027} + - component: {fileID: 799462026} + - component: {fileID: 799462025} + - component: {fileID: 799462024} + m_Layer: 5 + m_Name: Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &799462024 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 799462023} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1301386320, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &799462025 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 799462023} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1980459831, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 800, y: 600} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 +--- !u!223 &799462026 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 799462023} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 1 + m_Camera: {fileID: 1276850123} + m_PlaneDistance: 100 + m_PixelPerfect: 0 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_AdditionalShaderChannelsFlag: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!224 &799462027 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 799462023} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_Children: + - {fileID: 704032570} + m_Father: {fileID: 0} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!1 &1276850121 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1276850124} + - component: {fileID: 1276850123} + - component: {fileID: 1276850122} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &1276850122 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1276850121} + m_Enabled: 1 +--- !u!20 &1276850123 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1276850121} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_projectionMatrixMode: 1 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_GateFitMode: 2 + m_FocalLength: 50 + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 1 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &1276850124 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1276850121} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} diff --git a/Assets/ztest/ztest.unity.meta b/Assets/ztest/ztest.unity.meta new file mode 100644 index 0000000000..8fa4066462 --- /dev/null +++ b/Assets/ztest/ztest.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: dd1621c2dd70c1e419a03371a477b480 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: