forked from sin365/AxibugEmuOnline
Merge pull request 'master' (#85) from Alienjack/AxibugEmuOnline:master into master
Reviewed-on: sin365/AxibugEmuOnline#85
This commit is contained in:
commit
31da819ad0
@ -2,20 +2,24 @@
|
|||||||
%TAG !u! tag:unity3d.com,2011:
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
--- !u!21 &2100000
|
--- !u!21 &2100000
|
||||||
Material:
|
Material:
|
||||||
serializedVersion: 6
|
serializedVersion: 8
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
m_PrefabInstance: {fileID: 0}
|
m_PrefabInstance: {fileID: 0}
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_Name: UI-Effect-Shiny
|
m_Name: UI-Effect-Shiny
|
||||||
m_Shader: {fileID: 4800000, guid: 20ffe76c2439c403aabdd25bd94bf011, type: 3}
|
m_Shader: {fileID: 4800000, guid: 20ffe76c2439c403aabdd25bd94bf011, type: 3}
|
||||||
m_ShaderKeywords:
|
m_Parent: {fileID: 0}
|
||||||
|
m_ModifiedSerializedProperties: 0
|
||||||
|
m_ValidKeywords: []
|
||||||
|
m_InvalidKeywords: []
|
||||||
m_LightmapFlags: 1
|
m_LightmapFlags: 1
|
||||||
m_EnableInstancingVariants: 0
|
m_EnableInstancingVariants: 0
|
||||||
m_DoubleSidedGI: 0
|
m_DoubleSidedGI: 0
|
||||||
m_CustomRenderQueue: -1
|
m_CustomRenderQueue: -1
|
||||||
stringTagMap: {}
|
stringTagMap: {}
|
||||||
disabledShaderPasses: []
|
disabledShaderPasses: []
|
||||||
|
m_LockedProperties:
|
||||||
m_SavedProperties:
|
m_SavedProperties:
|
||||||
serializedVersion: 3
|
serializedVersion: 3
|
||||||
m_TexEnvs:
|
m_TexEnvs:
|
||||||
@ -27,6 +31,7 @@ Material:
|
|||||||
m_Texture: {fileID: 0}
|
m_Texture: {fileID: 0}
|
||||||
m_Scale: {x: 1, y: 1}
|
m_Scale: {x: 1, y: 1}
|
||||||
m_Offset: {x: 0, y: 0}
|
m_Offset: {x: 0, y: 0}
|
||||||
|
m_Ints: []
|
||||||
m_Floats:
|
m_Floats:
|
||||||
- _ColorMask: 15
|
- _ColorMask: 15
|
||||||
- _Stencil: 0
|
- _Stencil: 0
|
||||||
@ -38,3 +43,4 @@ Material:
|
|||||||
m_Colors:
|
m_Colors:
|
||||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||||
m_BuildTextureStacks: []
|
m_BuildTextureStacks: []
|
||||||
|
m_AllowLocking: 1
|
||||||
|
@ -275,7 +275,9 @@ Material:
|
|||||||
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
||||||
m_Parent: {fileID: 0}
|
m_Parent: {fileID: 0}
|
||||||
m_ModifiedSerializedProperties: 0
|
m_ModifiedSerializedProperties: 0
|
||||||
m_ValidKeywords: []
|
m_ValidKeywords:
|
||||||
|
- DETAILBLUR
|
||||||
|
- FILL
|
||||||
m_InvalidKeywords: []
|
m_InvalidKeywords: []
|
||||||
m_LightmapFlags: 5
|
m_LightmapFlags: 5
|
||||||
m_EnableInstancingVariants: 0
|
m_EnableInstancingVariants: 0
|
||||||
@ -616,7 +618,9 @@ Material:
|
|||||||
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
||||||
m_Parent: {fileID: 0}
|
m_Parent: {fileID: 0}
|
||||||
m_ModifiedSerializedProperties: 0
|
m_ModifiedSerializedProperties: 0
|
||||||
m_ValidKeywords: []
|
m_ValidKeywords:
|
||||||
|
- DETAILBLUR
|
||||||
|
- NEGA
|
||||||
m_InvalidKeywords: []
|
m_InvalidKeywords: []
|
||||||
m_LightmapFlags: 5
|
m_LightmapFlags: 5
|
||||||
m_EnableInstancingVariants: 0
|
m_EnableInstancingVariants: 0
|
||||||
@ -632,6 +636,10 @@ Material:
|
|||||||
m_Texture: {fileID: 0}
|
m_Texture: {fileID: 0}
|
||||||
m_Scale: {x: 1, y: 1}
|
m_Scale: {x: 1, y: 1}
|
||||||
m_Offset: {x: 0, y: 0}
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _ParamTex:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
m_Ints: []
|
m_Ints: []
|
||||||
m_Floats:
|
m_Floats:
|
||||||
- _ColorMask: 15
|
- _ColorMask: 15
|
||||||
@ -3572,7 +3580,9 @@ Material:
|
|||||||
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
||||||
m_Parent: {fileID: 0}
|
m_Parent: {fileID: 0}
|
||||||
m_ModifiedSerializedProperties: 0
|
m_ModifiedSerializedProperties: 0
|
||||||
m_ValidKeywords: []
|
m_ValidKeywords:
|
||||||
|
- DETAILBLUR
|
||||||
|
- SEPIA
|
||||||
m_InvalidKeywords: []
|
m_InvalidKeywords: []
|
||||||
m_LightmapFlags: 5
|
m_LightmapFlags: 5
|
||||||
m_EnableInstancingVariants: 0
|
m_EnableInstancingVariants: 0
|
||||||
@ -3588,6 +3598,10 @@ Material:
|
|||||||
m_Texture: {fileID: 0}
|
m_Texture: {fileID: 0}
|
||||||
m_Scale: {x: 1, y: 1}
|
m_Scale: {x: 1, y: 1}
|
||||||
m_Offset: {x: 0, y: 0}
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _ParamTex:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
m_Ints: []
|
m_Ints: []
|
||||||
m_Floats:
|
m_Floats:
|
||||||
- _ColorMask: 15
|
- _ColorMask: 15
|
||||||
@ -4062,7 +4076,9 @@ Material:
|
|||||||
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
||||||
m_Parent: {fileID: 0}
|
m_Parent: {fileID: 0}
|
||||||
m_ModifiedSerializedProperties: 0
|
m_ModifiedSerializedProperties: 0
|
||||||
m_ValidKeywords: []
|
m_ValidKeywords:
|
||||||
|
- DETAILBLUR
|
||||||
|
- SUBTRACT
|
||||||
m_InvalidKeywords: []
|
m_InvalidKeywords: []
|
||||||
m_LightmapFlags: 5
|
m_LightmapFlags: 5
|
||||||
m_EnableInstancingVariants: 0
|
m_EnableInstancingVariants: 0
|
||||||
@ -4078,6 +4094,10 @@ Material:
|
|||||||
m_Texture: {fileID: 0}
|
m_Texture: {fileID: 0}
|
||||||
m_Scale: {x: 1, y: 1}
|
m_Scale: {x: 1, y: 1}
|
||||||
m_Offset: {x: 0, y: 0}
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _ParamTex:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
m_Ints: []
|
m_Ints: []
|
||||||
m_Floats:
|
m_Floats:
|
||||||
- _ColorMask: 15
|
- _ColorMask: 15
|
||||||
@ -4182,7 +4202,9 @@ Material:
|
|||||||
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
||||||
m_Parent: {fileID: 0}
|
m_Parent: {fileID: 0}
|
||||||
m_ModifiedSerializedProperties: 0
|
m_ModifiedSerializedProperties: 0
|
||||||
m_ValidKeywords: []
|
m_ValidKeywords:
|
||||||
|
- ADD
|
||||||
|
- DETAILBLUR
|
||||||
m_InvalidKeywords: []
|
m_InvalidKeywords: []
|
||||||
m_LightmapFlags: 5
|
m_LightmapFlags: 5
|
||||||
m_EnableInstancingVariants: 0
|
m_EnableInstancingVariants: 0
|
||||||
@ -4270,7 +4292,9 @@ Material:
|
|||||||
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
||||||
m_Parent: {fileID: 0}
|
m_Parent: {fileID: 0}
|
||||||
m_ModifiedSerializedProperties: 0
|
m_ModifiedSerializedProperties: 0
|
||||||
m_ValidKeywords: []
|
m_ValidKeywords:
|
||||||
|
- DETAILBLUR
|
||||||
|
- GRAYSCALE
|
||||||
m_InvalidKeywords: []
|
m_InvalidKeywords: []
|
||||||
m_LightmapFlags: 5
|
m_LightmapFlags: 5
|
||||||
m_EnableInstancingVariants: 0
|
m_EnableInstancingVariants: 0
|
||||||
@ -4286,6 +4310,10 @@ Material:
|
|||||||
m_Texture: {fileID: 0}
|
m_Texture: {fileID: 0}
|
||||||
m_Scale: {x: 1, y: 1}
|
m_Scale: {x: 1, y: 1}
|
||||||
m_Offset: {x: 0, y: 0}
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _ParamTex:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
m_Ints: []
|
m_Ints: []
|
||||||
m_Floats:
|
m_Floats:
|
||||||
- _ColorMask: 15
|
- _ColorMask: 15
|
||||||
@ -4850,7 +4878,9 @@ Material:
|
|||||||
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
||||||
m_Parent: {fileID: 0}
|
m_Parent: {fileID: 0}
|
||||||
m_ModifiedSerializedProperties: 0
|
m_ModifiedSerializedProperties: 0
|
||||||
m_ValidKeywords: []
|
m_ValidKeywords:
|
||||||
|
- DETAILBLUR
|
||||||
|
- PIXEL
|
||||||
m_InvalidKeywords: []
|
m_InvalidKeywords: []
|
||||||
m_LightmapFlags: 5
|
m_LightmapFlags: 5
|
||||||
m_EnableInstancingVariants: 0
|
m_EnableInstancingVariants: 0
|
||||||
@ -4866,6 +4896,10 @@ Material:
|
|||||||
m_Texture: {fileID: 0}
|
m_Texture: {fileID: 0}
|
||||||
m_Scale: {x: 1, y: 1}
|
m_Scale: {x: 1, y: 1}
|
||||||
m_Offset: {x: 0, y: 0}
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _ParamTex:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
m_Ints: []
|
m_Ints: []
|
||||||
m_Floats:
|
m_Floats:
|
||||||
- _ColorMask: 15
|
- _ColorMask: 15
|
||||||
@ -5585,7 +5619,8 @@ Material:
|
|||||||
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
||||||
m_Parent: {fileID: 0}
|
m_Parent: {fileID: 0}
|
||||||
m_ModifiedSerializedProperties: 0
|
m_ModifiedSerializedProperties: 0
|
||||||
m_ValidKeywords: []
|
m_ValidKeywords:
|
||||||
|
- MEDIUMBLUR
|
||||||
m_InvalidKeywords: []
|
m_InvalidKeywords: []
|
||||||
m_LightmapFlags: 5
|
m_LightmapFlags: 5
|
||||||
m_EnableInstancingVariants: 0
|
m_EnableInstancingVariants: 0
|
||||||
|
@ -190,7 +190,7 @@ namespace Coffee.UIExtensions
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Blur effect mode(readonly).
|
/// Blur effect mode(readonly).
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public BlurMode blurMode { get { return m_BlurMode; } }
|
public BlurMode blurMode { get { return m_BlurMode; }set { m_BlurMode = value; } }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Color for the color effect.
|
/// Color for the color effect.
|
||||||
|
@ -139,6 +139,123 @@ MonoBehaviour:
|
|||||||
SubMenus: []
|
SubMenus: []
|
||||||
HoriRollSpd: 1500
|
HoriRollSpd: 1500
|
||||||
InitSelect: 1
|
InitSelect: 1
|
||||||
|
--- !u!1 &1551260616775499633
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 8030738230415871255}
|
||||||
|
- component: {fileID: 1749614979705703043}
|
||||||
|
- component: {fileID: 2831564238218273703}
|
||||||
|
- component: {fileID: 6913951815547872457}
|
||||||
|
- component: {fileID: 968819366492627815}
|
||||||
|
m_Layer: 5
|
||||||
|
m_Name: RomPreview
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 0
|
||||||
|
--- !u!224 &8030738230415871255
|
||||||
|
RectTransform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1551260616775499633}
|
||||||
|
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_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 1639091784002085428}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
m_AnchorMin: {x: 0, y: 0}
|
||||||
|
m_AnchorMax: {x: 1, y: 1}
|
||||||
|
m_AnchoredPosition: {x: 0, y: 0}
|
||||||
|
m_SizeDelta: {x: 0.00012207031, y: 0}
|
||||||
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
|
--- !u!222 &1749614979705703043
|
||||||
|
CanvasRenderer:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1551260616775499633}
|
||||||
|
m_CullTransparentMesh: 1
|
||||||
|
--- !u!114 &2831564238218273703
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1551260616775499633}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
m_RaycastTarget: 1
|
||||||
|
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
m_Maskable: 1
|
||||||
|
m_OnCullStateChanged:
|
||||||
|
m_PersistentCalls:
|
||||||
|
m_Calls: []
|
||||||
|
m_Sprite: {fileID: 0}
|
||||||
|
m_Type: 0
|
||||||
|
m_PreserveAspect: 0
|
||||||
|
m_FillCenter: 1
|
||||||
|
m_FillMethod: 4
|
||||||
|
m_FillAmount: 1
|
||||||
|
m_FillClockwise: 1
|
||||||
|
m_FillOrigin: 0
|
||||||
|
m_UseSpriteMesh: 0
|
||||||
|
m_PixelsPerUnitMultiplier: 1
|
||||||
|
--- !u!225 &6913951815547872457
|
||||||
|
CanvasGroup:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1551260616775499633}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_Alpha: 1
|
||||||
|
m_Interactable: 1
|
||||||
|
m_BlocksRaycasts: 1
|
||||||
|
m_IgnoreParentGroups: 0
|
||||||
|
--- !u!114 &968819366492627815
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1551260616775499633}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: f8b2ed11d675446c5a49da1ea296d490, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
m_Version: 300
|
||||||
|
m_EffectMaterial: {fileID: 21563344409783084, guid: aee96bc531e6eba468ec405e536f515f, type: 2}
|
||||||
|
m_EffectFactor: 1
|
||||||
|
m_ColorFactor: 1
|
||||||
|
m_BlurFactor: 1
|
||||||
|
m_EffectMode: 0
|
||||||
|
m_ColorMode: 0
|
||||||
|
m_BlurMode: 1
|
||||||
|
m_AdvancedBlur: 0
|
||||||
|
m_ShadowBlur: 1
|
||||||
|
m_ShadowStyle: 0
|
||||||
|
m_ShadowColor: {r: 0, g: 0, b: 0, a: 1}
|
||||||
|
m_EffectDistance: {x: 1, y: -1}
|
||||||
|
m_UseGraphicAlpha: 1
|
||||||
|
m_EffectColor: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
m_AdditionalShadows: []
|
||||||
--- !u!1 &1639091783724093882
|
--- !u!1 &1639091783724093882
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@ -153,7 +270,7 @@ GameObject:
|
|||||||
- component: {fileID: 3473513813641582791}
|
- component: {fileID: 3473513813641582791}
|
||||||
- component: {fileID: 3025550092845034426}
|
- component: {fileID: 3025550092845034426}
|
||||||
m_Layer: 5
|
m_Layer: 5
|
||||||
m_Name: bg
|
m_Name: XMBBackground
|
||||||
m_TagString: Untagged
|
m_TagString: Untagged
|
||||||
m_Icon: {fileID: 0}
|
m_Icon: {fileID: 0}
|
||||||
m_NavMeshLayer: 0
|
m_NavMeshLayer: 0
|
||||||
@ -171,12 +288,12 @@ RectTransform:
|
|||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 0
|
||||||
m_Children: []
|
m_Children: []
|
||||||
m_Father: {fileID: 1639091784002085428}
|
m_Father: {fileID: 3978167929173065121}
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
m_AnchorMin: {x: 0, y: 0}
|
m_AnchorMin: {x: 0, y: 0}
|
||||||
m_AnchorMax: {x: 1, y: 1}
|
m_AnchorMax: {x: 1, y: 1}
|
||||||
m_AnchoredPosition: {x: 0, y: 0}
|
m_AnchoredPosition: {x: 0, y: 0}
|
||||||
m_SizeDelta: {x: 0.00012207031, y: 0}
|
m_SizeDelta: {x: 0, y: 0}
|
||||||
m_Pivot: {x: 0.5, y: 0.5}
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
--- !u!222 &1639091783724093861
|
--- !u!222 &1639091783724093861
|
||||||
CanvasRenderer:
|
CanvasRenderer:
|
||||||
@ -270,7 +387,8 @@ RectTransform:
|
|||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 0
|
||||||
m_Children:
|
m_Children:
|
||||||
- {fileID: 1639091783724093883}
|
- {fileID: 3978167929173065121}
|
||||||
|
- {fileID: 8030738230415871255}
|
||||||
- {fileID: 1924338507}
|
- {fileID: 1924338507}
|
||||||
m_Father: {fileID: 0}
|
m_Father: {fileID: 0}
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
@ -293,7 +411,9 @@ MonoBehaviour:
|
|||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
MainMenuRoot: {fileID: 1924338507}
|
MainMenuRoot: {fileID: 1924338507}
|
||||||
MainMenu: {fileID: 4533431376032812611}
|
MainMenu: {fileID: 4533431376032812611}
|
||||||
BG: {fileID: 1639091783724093860}
|
XMBBackground: {fileID: 1639091783724093860}
|
||||||
|
RomPreviewBigPic: {fileID: 2831564238218273703}
|
||||||
|
XMBCG_For_RomPreviewBigPic: {fileID: 1747598380906379634}
|
||||||
m_detailLayoutPosition_x: 55
|
m_detailLayoutPosition_x: 55
|
||||||
m_LayoutChangeSpeed: 1000
|
m_LayoutChangeSpeed: 1000
|
||||||
--- !u!1 &3732356966700017678
|
--- !u!1 &3732356966700017678
|
||||||
@ -376,6 +496,55 @@ MonoBehaviour:
|
|||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
m_HorizontalFit: 2
|
m_HorizontalFit: 2
|
||||||
m_VerticalFit: 2
|
m_VerticalFit: 2
|
||||||
|
--- !u!1 &5147744065509886959
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 3978167929173065121}
|
||||||
|
- component: {fileID: 1747598380906379634}
|
||||||
|
m_Layer: 5
|
||||||
|
m_Name: romPreviewOpp
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!224 &3978167929173065121
|
||||||
|
RectTransform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 5147744065509886959}
|
||||||
|
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_ConstrainProportionsScale: 0
|
||||||
|
m_Children:
|
||||||
|
- {fileID: 1639091783724093883}
|
||||||
|
m_Father: {fileID: 1639091784002085428}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
m_AnchorMin: {x: 0, y: 0}
|
||||||
|
m_AnchorMax: {x: 1, y: 1}
|
||||||
|
m_AnchoredPosition: {x: 0, y: 0}
|
||||||
|
m_SizeDelta: {x: 0, y: 0}
|
||||||
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
|
--- !u!225 &1747598380906379634
|
||||||
|
CanvasGroup:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 5147744065509886959}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_Alpha: 1
|
||||||
|
m_Interactable: 1
|
||||||
|
m_BlocksRaycasts: 1
|
||||||
|
m_IgnoreParentGroups: 0
|
||||||
--- !u!1001 &799626603263598074
|
--- !u!1001 &799626603263598074
|
||||||
PrefabInstance:
|
PrefabInstance:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@ -1935,7 +2104,7 @@ PrefabInstance:
|
|||||||
- target: {fileID: 2619187604372594158, guid: 98ac562d730eabc42b9a3b12c715d114, type: 3}
|
- target: {fileID: 2619187604372594158, guid: 98ac562d730eabc42b9a3b12c715d114, type: 3}
|
||||||
propertyPath: m_Sprite
|
propertyPath: m_Sprite
|
||||||
value:
|
value:
|
||||||
objectReference: {fileID: 21300000, guid: 8b2d1bdf739173c40bb205540b308d02, type: 3}
|
objectReference: {fileID: 8228730565043098574, guid: d518d00d4940e854bbe45d9ef891401a, type: 3}
|
||||||
- target: {fileID: 3189920797946144379, guid: 98ac562d730eabc42b9a3b12c715d114, type: 3}
|
- target: {fileID: 3189920797946144379, guid: 98ac562d730eabc42b9a3b12c715d114, type: 3}
|
||||||
propertyPath: m_Name
|
propertyPath: m_Name
|
||||||
value: "\u753B\u9762\u6BD4\u4F8B"
|
value: "\u753B\u9762\u6BD4\u4F8B"
|
||||||
@ -2003,7 +2172,7 @@ PrefabInstance:
|
|||||||
- target: {fileID: 6771349210554360888, guid: 98ac562d730eabc42b9a3b12c715d114, type: 3}
|
- target: {fileID: 6771349210554360888, guid: 98ac562d730eabc42b9a3b12c715d114, type: 3}
|
||||||
propertyPath: m_Sprite
|
propertyPath: m_Sprite
|
||||||
value:
|
value:
|
||||||
objectReference: {fileID: 21300000, guid: 8b2d1bdf739173c40bb205540b308d02, type: 3}
|
objectReference: {fileID: 8228730565043098574, guid: d518d00d4940e854bbe45d9ef891401a, type: 3}
|
||||||
- target: {fileID: 8126322204359135913, guid: 98ac562d730eabc42b9a3b12c715d114, type: 3}
|
- target: {fileID: 8126322204359135913, guid: 98ac562d730eabc42b9a3b12c715d114, type: 3}
|
||||||
propertyPath: m_AnchorMax.y
|
propertyPath: m_AnchorMax.y
|
||||||
value: 0
|
value: 0
|
||||||
|
@ -353,7 +353,7 @@ GameObject:
|
|||||||
m_Icon: {fileID: 0}
|
m_Icon: {fileID: 0}
|
||||||
m_NavMeshLayer: 0
|
m_NavMeshLayer: 0
|
||||||
m_StaticEditorFlags: 0
|
m_StaticEditorFlags: 0
|
||||||
m_IsActive: 1
|
m_IsActive: 0
|
||||||
--- !u!224 &88397014911048519
|
--- !u!224 &88397014911048519
|
||||||
RectTransform:
|
RectTransform:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@ -595,7 +595,7 @@ RectTransform:
|
|||||||
m_Father: {fileID: 4825215963562112837}
|
m_Father: {fileID: 4825215963562112837}
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
m_AnchorMin: {x: 0, y: 0}
|
m_AnchorMin: {x: 0, y: 0}
|
||||||
m_AnchorMax: {x: 0, y: 0}
|
m_AnchorMax: {x: 0, y: 1}
|
||||||
m_AnchoredPosition: {x: 0, y: 0}
|
m_AnchoredPosition: {x: 0, y: 0}
|
||||||
m_SizeDelta: {x: 10, y: 0}
|
m_SizeDelta: {x: 10, y: 0}
|
||||||
m_Pivot: {x: 0.5, y: 0.5}
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
@ -673,6 +673,81 @@ RectTransform:
|
|||||||
m_AnchoredPosition: {x: 0, y: 0}
|
m_AnchoredPosition: {x: 0, y: 0}
|
||||||
m_SizeDelta: {x: -10, y: 0}
|
m_SizeDelta: {x: -10, y: 0}
|
||||||
m_Pivot: {x: 0.5, y: 0.5}
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
|
--- !u!1 &2970190240800710577
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 1123244137077354552}
|
||||||
|
- component: {fileID: 196912998120336165}
|
||||||
|
- component: {fileID: 2537658034304089639}
|
||||||
|
m_Layer: 5
|
||||||
|
m_Name: Star
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!224 &1123244137077354552
|
||||||
|
RectTransform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 2970190240800710577}
|
||||||
|
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||||
|
m_LocalPosition: {x: 0, y: 0, z: -2}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 8105925540140519754}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
m_AnchorMin: {x: 0, y: 1}
|
||||||
|
m_AnchorMax: {x: 0, y: 1}
|
||||||
|
m_AnchoredPosition: {x: 8.2, y: -10.1}
|
||||||
|
m_SizeDelta: {x: 48.319504, y: 40.7695}
|
||||||
|
m_Pivot: {x: 0, y: 1}
|
||||||
|
--- !u!222 &196912998120336165
|
||||||
|
CanvasRenderer:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 2970190240800710577}
|
||||||
|
m_CullTransparentMesh: 1
|
||||||
|
--- !u!114 &2537658034304089639
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 2970190240800710577}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_Color: {r: 1, g: 0, b: 0, a: 1}
|
||||||
|
m_RaycastTarget: 1
|
||||||
|
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
m_Maskable: 1
|
||||||
|
m_OnCullStateChanged:
|
||||||
|
m_PersistentCalls:
|
||||||
|
m_Calls: []
|
||||||
|
m_Sprite: {fileID: 7637870703528583553, guid: a8e14774cb9b81d4799116466bc09437, type: 3}
|
||||||
|
m_Type: 0
|
||||||
|
m_PreserveAspect: 0
|
||||||
|
m_FillCenter: 1
|
||||||
|
m_FillMethod: 4
|
||||||
|
m_FillAmount: 1
|
||||||
|
m_FillClockwise: 1
|
||||||
|
m_FillOrigin: 0
|
||||||
|
m_UseSpriteMesh: 0
|
||||||
|
m_PixelsPerUnitMultiplier: 1
|
||||||
--- !u!1 &3095305487988041719
|
--- !u!1 &3095305487988041719
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@ -813,6 +888,8 @@ MonoBehaviour:
|
|||||||
DownloadingFlag: {fileID: 1252956242765037133}
|
DownloadingFlag: {fileID: 1252956242765037133}
|
||||||
DownProgress: {fileID: 1484915906009859069}
|
DownProgress: {fileID: 1484915906009859069}
|
||||||
FileReadyFlag: {fileID: 6316945668089981796}
|
FileReadyFlag: {fileID: 6316945668089981796}
|
||||||
|
DownloadComplete: {fileID: 6633045760783967661}
|
||||||
|
Star: {fileID: 0}
|
||||||
--- !u!114 &5700455559359757662
|
--- !u!114 &5700455559359757662
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@ -998,6 +1075,7 @@ GameObject:
|
|||||||
- component: {fileID: 8105925540140519754}
|
- component: {fileID: 8105925540140519754}
|
||||||
- component: {fileID: 1377401926964550360}
|
- component: {fileID: 1377401926964550360}
|
||||||
- component: {fileID: 67125096702760250}
|
- component: {fileID: 67125096702760250}
|
||||||
|
- component: {fileID: 6633045760783967661}
|
||||||
m_Layer: 5
|
m_Layer: 5
|
||||||
m_Name: RomImage
|
m_Name: RomImage
|
||||||
m_TagString: Untagged
|
m_TagString: Untagged
|
||||||
@ -1019,6 +1097,7 @@ RectTransform:
|
|||||||
m_Children:
|
m_Children:
|
||||||
- {fileID: 6087025893861054323}
|
- {fileID: 6087025893861054323}
|
||||||
- {fileID: 1361359478345282377}
|
- {fileID: 1361359478345282377}
|
||||||
|
- {fileID: 1123244137077354552}
|
||||||
- {fileID: 88397014911048519}
|
- {fileID: 88397014911048519}
|
||||||
m_Father: {fileID: 8754483333502849411}
|
m_Father: {fileID: 8754483333502849411}
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
@ -1065,6 +1144,39 @@ MonoBehaviour:
|
|||||||
m_FillOrigin: 0
|
m_FillOrigin: 0
|
||||||
m_UseSpriteMesh: 0
|
m_UseSpriteMesh: 0
|
||||||
m_PixelsPerUnitMultiplier: 1
|
m_PixelsPerUnitMultiplier: 1
|
||||||
|
--- !u!114 &6633045760783967661
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 4643603390456494410}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: f19b7e2285c104f6ca47d583f3e5444f, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
m_Version: 300
|
||||||
|
m_EffectMaterial: {fileID: 2100000, guid: 9dc7e810a87b444ab96919f3215c2fe5, type: 2}
|
||||||
|
m_EffectFactor: 0
|
||||||
|
m_Width: 0.25
|
||||||
|
m_Rotation: -41
|
||||||
|
m_Softness: 1
|
||||||
|
m_Brightness: 1
|
||||||
|
m_Gloss: 1
|
||||||
|
m_EffectArea: 0
|
||||||
|
m_Player:
|
||||||
|
play: 0
|
||||||
|
initialPlayDelay: 0
|
||||||
|
duration: 0.5
|
||||||
|
loop: 0
|
||||||
|
loopDelay: 1
|
||||||
|
updateMode: 0
|
||||||
|
m_Play: 0
|
||||||
|
m_Loop: 0
|
||||||
|
m_Duration: 1
|
||||||
|
m_LoopDelay: 1
|
||||||
|
m_UpdateMode: 0
|
||||||
--- !u!1 &5340761592919397836
|
--- !u!1 &5340761592919397836
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
|
@ -79,6 +79,16 @@
|
|||||||
/// 当本机手柄渴望插入时触发
|
/// 当本机手柄渴望插入时触发
|
||||||
/// <para>参数: <see cref="int"/> 本地手柄序号[0,3]</para>
|
/// <para>参数: <see cref="int"/> 本地手柄序号[0,3]</para>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
OnLocalJoyDesireInvert
|
OnLocalJoyDesireInvert,
|
||||||
|
/// <summary>
|
||||||
|
/// 当Rom文件下载完毕时触发
|
||||||
|
/// <para><see cref="int"/>RomID</para>
|
||||||
|
/// </summary>
|
||||||
|
OnRomFileDownloaded,
|
||||||
|
/// <summary>
|
||||||
|
/// 当Rom收藏状态变化时触发
|
||||||
|
/// <para><see cref="int"/>RomID</para>
|
||||||
|
/// </summary>
|
||||||
|
OnRomStarStateChanged, //TODO 实现这个事件
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -106,7 +106,7 @@ namespace AxibugEmuOnline.Client
|
|||||||
switch (platform)
|
switch (platform)
|
||||||
{
|
{
|
||||||
case RomPlatformType.Nes: return new Vector2Int(256, 240);
|
case RomPlatformType.Nes: return new Vector2Int(256, 240);
|
||||||
default: return new Vector2Int(256, 240);
|
default: throw new System.NotImplementedException($"未实现的平台:{platform}");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -184,6 +184,7 @@ namespace AxibugEmuOnline.Client
|
|||||||
public string imgUrl;
|
public string imgUrl;
|
||||||
public string hash;
|
public string hash;
|
||||||
public int stars;
|
public int stars;
|
||||||
|
public int isStar;//TODO 实现收藏标记
|
||||||
}
|
}
|
||||||
[Serializable]
|
[Serializable]
|
||||||
public class Resp_CheckStandInfo
|
public class Resp_CheckStandInfo
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
using AxibugEmuOnline.Client.ClientCore;
|
using AxibugEmuOnline.Client.ClientCore;
|
||||||
|
using AxibugEmuOnline.Client.Event;
|
||||||
using AxibugProtobuf;
|
using AxibugProtobuf;
|
||||||
using ICSharpCode.SharpZipLib.Zip;
|
using ICSharpCode.SharpZipLib.Zip;
|
||||||
using System;
|
using System;
|
||||||
@ -54,8 +55,18 @@ namespace AxibugEmuOnline.Client
|
|||||||
public int Index { get; private set; }
|
public int Index { get; private set; }
|
||||||
/// <summary> 在查询结果中的所在页 </summary>
|
/// <summary> 在查询结果中的所在页 </summary>
|
||||||
public int Page { get; private set; }
|
public int Page { get; private set; }
|
||||||
public string Hash => webData != null ? webData.hash : string.Empty;
|
public string Hash => webData != null ? webData.hash : string.Empty;
|
||||||
|
/// <summary> 标记是否收藏 </summary>
|
||||||
|
public bool Star
|
||||||
|
{
|
||||||
|
get { return webData != null ? webData.isStar > 0 : false; }
|
||||||
|
set
|
||||||
|
{
|
||||||
|
if (webData == null) return;
|
||||||
|
webData.isStar = value ? 1 : 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public event Action<RomFile> OnDownloadOver;
|
public event Action<RomFile> OnDownloadOver;
|
||||||
public event Action OnInfoFilled;
|
public event Action OnInfoFilled;
|
||||||
|
|
||||||
@ -79,6 +90,8 @@ namespace AxibugEmuOnline.Client
|
|||||||
|
|
||||||
File.WriteAllBytes(LocalFilePath, bytes);
|
File.WriteAllBytes(LocalFilePath, bytes);
|
||||||
hasLocalFile = true;
|
hasLocalFile = true;
|
||||||
|
|
||||||
|
Eventer.Instance.PostEvent(EEvent.OnRomFileDownloaded, ID);
|
||||||
}
|
}
|
||||||
OnDownloadOver?.Invoke(this);
|
OnDownloadOver?.Invoke(this);
|
||||||
}));
|
}));
|
||||||
|
@ -1,9 +1,11 @@
|
|||||||
using AxibugEmuOnline.Client.ClientCore;
|
using AxibugEmuOnline.Client.ClientCore;
|
||||||
using AxibugEmuOnline.Client.Common;
|
using AxibugEmuOnline.Client.Common;
|
||||||
|
using AxibugEmuOnline.Client.Event;
|
||||||
using AxibugProtobuf;
|
using AxibugProtobuf;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
|
using System.Linq;
|
||||||
using static AxibugEmuOnline.Client.HttpAPI;
|
using static AxibugEmuOnline.Client.HttpAPI;
|
||||||
|
|
||||||
namespace AxibugEmuOnline.Client
|
namespace AxibugEmuOnline.Client
|
||||||
@ -33,6 +35,16 @@ namespace AxibugEmuOnline.Client
|
|||||||
m_romSearchFunc = App.httpAPI.SearchNesRomList;
|
m_romSearchFunc = App.httpAPI.SearchNesRomList;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Eventer.Instance.RegisterEvent<int, bool>(EEvent.OnRomStarStateChanged, OnRomStarStateChanged);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnRomStarStateChanged(int romID, bool star)
|
||||||
|
{
|
||||||
|
var targetRom = nesRomFetchList.FirstOrDefault(rom => rom.ID == romID);
|
||||||
|
if (targetRom == null) return;
|
||||||
|
|
||||||
|
targetRom.Star = star;
|
||||||
}
|
}
|
||||||
|
|
||||||
public RomFile GetRomFile(string romFileName)
|
public RomFile GetRomFile(string romFileName)
|
||||||
@ -42,8 +54,6 @@ namespace AxibugEmuOnline.Client
|
|||||||
return romFile;
|
return romFile;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary> 清除所有下载的Rom文件 </summary>
|
/// <summary> 清除所有下载的Rom文件 </summary>
|
||||||
public void ClearRomFile()
|
public void ClearRomFile()
|
||||||
{
|
{
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
using AxibugEmuOnline.Client.ClientCore;
|
using AxibugEmuOnline.Client.ClientCore;
|
||||||
using AxibugEmuOnline.Client.UI;
|
using AxibugEmuOnline.Client.UI;
|
||||||
using DG.Tweening;
|
using DG.Tweening;
|
||||||
using DG.Tweening.Core;
|
using DG.Tweening.Core;
|
||||||
@ -9,7 +9,7 @@ using UnityEngine;
|
|||||||
namespace AxibugEmuOnline.Client
|
namespace AxibugEmuOnline.Client
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// ąłž°ŃŐÉŤÉčÖĂUI
|
/// 背景颜色设置UI
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class UI_BgSettingItem_Color : MenuItem, IVirtualItem
|
public class UI_BgSettingItem_Color : MenuItem, IVirtualItem
|
||||||
{
|
{
|
||||||
@ -34,7 +34,7 @@ namespace AxibugEmuOnline.Client
|
|||||||
var color = Datacontext.CurrentColor;
|
var color = Datacontext.CurrentColor;
|
||||||
Icon.GetMaterial().SetColor("_Color1", color.color1);
|
Icon.GetMaterial().SetColor("_Color1", color.color1);
|
||||||
Icon.GetMaterial().SetColor("_Color2", color.color2);
|
Icon.GetMaterial().SetColor("_Color2", color.color2);
|
||||||
SetBaseInfo("Ö÷ĚâÉŤ", "ÉčÖĂÖ÷ĚâÉŤ", color.Name);
|
SetBaseInfo("主题色", "设置主题色", color.Name);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SetDependencyProperty(object data)
|
public void SetDependencyProperty(object data)
|
||||||
@ -58,8 +58,9 @@ namespace AxibugEmuOnline.Client
|
|||||||
public class ColorOption : ExecuteMenu
|
public class ColorOption : ExecuteMenu
|
||||||
{
|
{
|
||||||
public XMBColor Color;
|
public XMBColor Color;
|
||||||
|
public override string Name => Color.Name;
|
||||||
|
|
||||||
public ColorOption(XMBColor color) : base(color.Name)
|
public ColorOption(XMBColor color)
|
||||||
{
|
{
|
||||||
Color = color;
|
Color = color;
|
||||||
}
|
}
|
||||||
|
@ -70,7 +70,9 @@ namespace AxibugEmuOnline.Client
|
|||||||
{
|
{
|
||||||
private Filter m_filter;
|
private Filter m_filter;
|
||||||
|
|
||||||
public Opt_CreatePreset(Filter filter) : base("创建滤镜预设", Resources.LoadAll<Sprite>("Icons/XMB-Icons/misc")[0])
|
public override string Name => "创建滤镜预设";
|
||||||
|
public override Sprite Icon => Resources.LoadAll<Sprite>("Icons/XMB-Icons/misc")[0];
|
||||||
|
public Opt_CreatePreset(Filter filter)
|
||||||
{
|
{
|
||||||
m_filter = filter;
|
m_filter = filter;
|
||||||
}
|
}
|
||||||
@ -101,7 +103,9 @@ namespace AxibugEmuOnline.Client
|
|||||||
private OptionUI_MenuItem m_ui;
|
private OptionUI_MenuItem m_ui;
|
||||||
private List<OptionMenu> m_menu;
|
private List<OptionMenu> m_menu;
|
||||||
|
|
||||||
public Opt_Presets(Filter filter, FilterPreset preset) : base(preset.Name, null)
|
public override string Name => m_preset.Name;
|
||||||
|
|
||||||
|
public Opt_Presets(Filter filter, FilterPreset preset)
|
||||||
{
|
{
|
||||||
m_filter = filter;
|
m_filter = filter;
|
||||||
m_preset = preset;
|
m_preset = preset;
|
||||||
@ -151,8 +155,8 @@ namespace AxibugEmuOnline.Client
|
|||||||
|
|
||||||
public override bool Visible => m_param.ValueType.IsEnum || m_param.ValueType == typeof(float);
|
public override bool Visible => m_param.ValueType.IsEnum || m_param.ValueType == typeof(float);
|
||||||
|
|
||||||
|
public override string Name => m_param.Name;
|
||||||
public Opt_ParamEditor(Filter filter, FilterEffect.EditableParamerter editParam, FilterPreset preset)
|
public Opt_ParamEditor(Filter filter, FilterEffect.EditableParamerter editParam, FilterPreset preset)
|
||||||
: base(editParam.Name)
|
|
||||||
{
|
{
|
||||||
m_filter = filter;
|
m_filter = filter;
|
||||||
m_param = editParam;
|
m_param = editParam;
|
||||||
@ -179,8 +183,9 @@ namespace AxibugEmuOnline.Client
|
|||||||
{
|
{
|
||||||
private Filter m_filter;
|
private Filter m_filter;
|
||||||
private FilterPreset m_preset;
|
private FilterPreset m_preset;
|
||||||
|
public override string Name => "删除预设";
|
||||||
|
|
||||||
public Opt_Delete(Filter filter, FilterPreset preset) : base("删除预设", null)
|
public Opt_Delete(Filter filter, FilterPreset preset)
|
||||||
{
|
{
|
||||||
m_filter = filter;
|
m_filter = filter;
|
||||||
m_preset = preset;
|
m_preset = preset;
|
||||||
|
@ -1,5 +1,8 @@
|
|||||||
using AxibugEmuOnline.Client.ClientCore;
|
using AxibugEmuOnline.Client.ClientCore;
|
||||||
|
using AxibugEmuOnline.Client.Event;
|
||||||
using AxibugEmuOnline.Client.UI;
|
using AxibugEmuOnline.Client.UI;
|
||||||
|
using Coffee.UIExtensions;
|
||||||
|
using System;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using UnityEngine.UI;
|
using UnityEngine.UI;
|
||||||
|
|
||||||
@ -16,12 +19,45 @@ namespace AxibugEmuOnline.Client
|
|||||||
Slider DownProgress;
|
Slider DownProgress;
|
||||||
[SerializeField]
|
[SerializeField]
|
||||||
GameObject FileReadyFlag;
|
GameObject FileReadyFlag;
|
||||||
|
[SerializeField]
|
||||||
|
UIShiny DownloadComplete;
|
||||||
|
[SerializeField]
|
||||||
|
GameObject Star;
|
||||||
|
|
||||||
public int Index { get; set; }
|
public int Index { get; set; }
|
||||||
|
|
||||||
private RomLib m_romlib => App.nesRomLib;
|
public bool IsStar
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return m_romfile != null && m_romfile.InfoReady ? m_romfile.Star : false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
public int RomID { get { return m_romfile != null && m_romfile.InfoReady ? m_romfile.ID : -1; } }
|
||||||
|
|
||||||
|
private RomLib m_romlib => App.nesRomLib;
|
||||||
|
|
||||||
|
public bool RomInfoReady => m_romfile != null && m_romfile.InfoReady;
|
||||||
|
|
||||||
private RomFile m_romfile;
|
private RomFile m_romfile;
|
||||||
|
|
||||||
|
protected override void OnEnable()
|
||||||
|
{
|
||||||
|
Eventer.Instance.RegisterEvent<int>(EEvent.OnRomFileDownloaded, OnRomDownloaded);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void OnDisable()
|
||||||
|
{
|
||||||
|
Eventer.Instance.UnregisterEvent<int>(EEvent.OnRomFileDownloaded, OnRomDownloaded);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnRomDownloaded(int romID)
|
||||||
|
{
|
||||||
|
if (m_romfile == null || m_romfile.ID != romID) return;
|
||||||
|
|
||||||
|
DownloadComplete.Play();
|
||||||
|
}
|
||||||
|
|
||||||
public void SetData(object data)
|
public void SetData(object data)
|
||||||
{
|
{
|
||||||
Reset();
|
Reset();
|
||||||
@ -45,6 +81,14 @@ namespace AxibugEmuOnline.Client
|
|||||||
SetSelectState(data is ThirdMenuRoot && ((ThirdMenuRoot)data).SelectIndex == Index);
|
SetSelectState(data is ThirdMenuRoot && ((ThirdMenuRoot)data).SelectIndex == Index);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected override void OnSelected(float progress)
|
||||||
|
{
|
||||||
|
base.OnSelected(progress);
|
||||||
|
|
||||||
|
if (m_romImage.sprite == null) LaunchUI.Instance.HideRomPreview();
|
||||||
|
else LaunchUI.Instance.SetRomPreview(m_romImage.sprite);
|
||||||
|
}
|
||||||
|
|
||||||
public void Release()
|
public void Release()
|
||||||
{
|
{
|
||||||
m_romfile.OnInfoFilled -= OnRomInfoFilled;
|
m_romfile.OnInfoFilled -= OnRomInfoFilled;
|
||||||
@ -69,7 +113,9 @@ namespace AxibugEmuOnline.Client
|
|||||||
if (!m_romfile.InfoReady || url != m_romfile.ImageURL) return;
|
if (!m_romfile.InfoReady || url != m_romfile.ImageURL) return;
|
||||||
|
|
||||||
m_romImage.sprite = img;
|
m_romImage.sprite = img;
|
||||||
|
if (m_select) LaunchUI.Instance.SetRomPreview(img);
|
||||||
});
|
});
|
||||||
|
Star.SetActiveEx(m_romfile.Star);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -34,6 +34,7 @@ namespace AxibugEmuOnline.Client
|
|||||||
{
|
{
|
||||||
new OptMenu_Search(this),
|
new OptMenu_Search(this),
|
||||||
new OptMenu_ShowAll(this),
|
new OptMenu_ShowAll(this),
|
||||||
|
new OptMenu_Fav(this),
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -68,8 +69,9 @@ namespace AxibugEmuOnline.Client
|
|||||||
public class OptMenu_Search : ExecuteMenu
|
public class OptMenu_Search : ExecuteMenu
|
||||||
{
|
{
|
||||||
private RomListMenuItem m_romListUI;
|
private RomListMenuItem m_romListUI;
|
||||||
|
public override string Name => "搜索";
|
||||||
|
|
||||||
public OptMenu_Search(RomListMenuItem romListUI, Sprite icon = null) : base("搜索", icon)
|
public OptMenu_Search(RomListMenuItem romListUI)
|
||||||
{
|
{
|
||||||
m_romListUI = romListUI;
|
m_romListUI = romListUI;
|
||||||
}
|
}
|
||||||
@ -90,9 +92,10 @@ namespace AxibugEmuOnline.Client
|
|||||||
{
|
{
|
||||||
private RomListMenuItem m_ui;
|
private RomListMenuItem m_ui;
|
||||||
|
|
||||||
|
public override string Name => "显示全部";
|
||||||
public override bool Visible => !string.IsNullOrWhiteSpace(m_ui.SearchKey);
|
public override bool Visible => !string.IsNullOrWhiteSpace(m_ui.SearchKey);
|
||||||
|
|
||||||
public OptMenu_ShowAll(RomListMenuItem romListUI, Sprite icon = null) : base("显示全部", icon)
|
public OptMenu_ShowAll(RomListMenuItem romListUI)
|
||||||
{
|
{
|
||||||
m_ui = romListUI;
|
m_ui = romListUI;
|
||||||
}
|
}
|
||||||
@ -103,5 +106,32 @@ namespace AxibugEmuOnline.Client
|
|||||||
m_ui.RefreshUI();
|
m_ui.RefreshUI();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public class OptMenu_Fav : ExecuteMenu
|
||||||
|
{
|
||||||
|
private RomListMenuItem m_romListUI;
|
||||||
|
private ThirdMenuRoot m_romListSub;
|
||||||
|
|
||||||
|
private RomItem m_currentSelect => m_romListSub.GetItemUIByIndex(m_romListSub.SelectIndex) as RomItem;
|
||||||
|
|
||||||
|
public override bool Visible => m_currentSelect.RomInfoReady;
|
||||||
|
|
||||||
|
public override string Name { get { return m_currentSelect.IsStar ? "取消收藏" : "收藏"; } }
|
||||||
|
|
||||||
|
public OptMenu_Fav(RomListMenuItem romListUI)
|
||||||
|
{
|
||||||
|
m_romListUI = romListUI;
|
||||||
|
m_romListSub = m_romListUI.SubMenuItemGroup as ThirdMenuRoot;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void OnExcute(OptionUI optionUI, ref bool cancelHide)
|
||||||
|
{
|
||||||
|
var romItem = m_currentSelect;
|
||||||
|
if (!romItem.IsStar)
|
||||||
|
App.share.SendGameStar(romItem.RomID, 0);
|
||||||
|
else
|
||||||
|
App.share.SendGameStar(romItem.RomID, 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -8,8 +8,9 @@ namespace AxibugEmuOnline.Client
|
|||||||
public class InGameUI_FilterSetting : ExpandMenu
|
public class InGameUI_FilterSetting : ExpandMenu
|
||||||
{
|
{
|
||||||
private InGameUI m_gameUI;
|
private InGameUI m_gameUI;
|
||||||
|
public override string Name => "滤镜";
|
||||||
|
|
||||||
public InGameUI_FilterSetting(InGameUI gameUI) : base("滤镜", null)
|
public InGameUI_FilterSetting(InGameUI gameUI)
|
||||||
{
|
{
|
||||||
m_gameUI = gameUI;
|
m_gameUI = gameUI;
|
||||||
}
|
}
|
||||||
@ -26,12 +27,11 @@ namespace AxibugEmuOnline.Client
|
|||||||
{
|
{
|
||||||
private RomFile m_rom;
|
private RomFile m_rom;
|
||||||
|
|
||||||
|
public override string Name => "取消滤镜";
|
||||||
public override bool IsApplied => App.settings.Filter.GetFilterSetting(m_rom).filter == null;
|
public override bool IsApplied => App.settings.Filter.GetFilterSetting(m_rom).filter == null;
|
||||||
public FilterNone(RomFile rom) : base("取消滤镜", null)
|
public FilterNone(RomFile rom)
|
||||||
{
|
{
|
||||||
m_rom = rom;
|
m_rom = rom;
|
||||||
|
|
||||||
var currentFilterSetting = App.settings.Filter.GetFilterSetting(m_rom);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void OnExcute(OptionUI optionUI, ref bool cancelHide)
|
public override void OnExcute(OptionUI optionUI, ref bool cancelHide)
|
||||||
@ -58,8 +58,8 @@ namespace AxibugEmuOnline.Client
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
public override string Name => m_filter.Name;
|
||||||
public FilterMenu(RomFile rom, Filter filter) : base(filter.Name, null)
|
public FilterMenu(RomFile rom, Filter filter)
|
||||||
{
|
{
|
||||||
m_filter = filter;
|
m_filter = filter;
|
||||||
m_presetsMenuItems = new List<OptionMenu> { new FilterPresetMenu(rom, m_filter, m_filter.DefaultPreset) };
|
m_presetsMenuItems = new List<OptionMenu> { new FilterPresetMenu(rom, m_filter, m_filter.DefaultPreset) };
|
||||||
@ -87,8 +87,8 @@ namespace AxibugEmuOnline.Client
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public override string Name => m_preset.Name;
|
||||||
public FilterPresetMenu(RomFile rom, Filter filter, FilterPreset preset) : base(preset.Name, null)
|
public FilterPresetMenu(RomFile rom, Filter filter, FilterPreset preset)
|
||||||
{
|
{
|
||||||
m_preset = preset;
|
m_preset = preset;
|
||||||
m_rom = rom;
|
m_rom = rom;
|
||||||
|
@ -1,14 +1,12 @@
|
|||||||
using AxibugEmuOnline.Client.ClientCore;
|
namespace AxibugEmuOnline.Client
|
||||||
using System.Diagnostics;
|
|
||||||
|
|
||||||
namespace AxibugEmuOnline.Client
|
|
||||||
{
|
{
|
||||||
public class InGameUI_LoadState : ExecuteMenu
|
public class InGameUI_LoadState : ExecuteMenu
|
||||||
{
|
{
|
||||||
private InGameUI m_gameUI;
|
private InGameUI m_gameUI;
|
||||||
public override bool Visible => !m_gameUI.IsNetPlay;
|
public override bool Visible => !m_gameUI.IsNetPlay;
|
||||||
|
public override string Name => "读取快照";
|
||||||
|
|
||||||
public InGameUI_LoadState(InGameUI gameUI) : base("뗍혤우亮", null)
|
public InGameUI_LoadState(InGameUI gameUI)
|
||||||
{
|
{
|
||||||
m_gameUI = gameUI;
|
m_gameUI = gameUI;
|
||||||
}
|
}
|
||||||
@ -18,12 +16,9 @@ namespace AxibugEmuOnline.Client
|
|||||||
if (m_gameUI.IsNetPlay) return;
|
if (m_gameUI.IsNetPlay) return;
|
||||||
|
|
||||||
object state = m_gameUI.GetQuickState();
|
object state = m_gameUI.GetQuickState();
|
||||||
Stopwatch sw = Stopwatch.StartNew();
|
|
||||||
if (state != null)
|
if (state != null)
|
||||||
{
|
{
|
||||||
m_gameUI.Core.LoadState(state);
|
m_gameUI.Core.LoadState(state);
|
||||||
sw.Stop();
|
|
||||||
App.log.Info($"{m_gameUI.RomFile.Platform}====>우亮속潼봬珂:{sw.Elapsed.TotalMilliseconds}ms");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
namespace AxibugEmuOnline.Client
|
namespace AxibugEmuOnline.Client
|
||||||
{
|
{
|
||||||
public class InGameUI_QuitGame : ExecuteMenu
|
public class InGameUI_QuitGame : ExecuteMenu
|
||||||
{
|
{
|
||||||
private InGameUI m_gameUI;
|
private InGameUI m_gameUI;
|
||||||
|
public override string Name => "退出";
|
||||||
|
|
||||||
|
public InGameUI_QuitGame(InGameUI gameUI)
|
||||||
public InGameUI_QuitGame(InGameUI gameUI) : base("退出", null)
|
|
||||||
{
|
{
|
||||||
m_gameUI = gameUI;
|
m_gameUI = gameUI;
|
||||||
}
|
}
|
||||||
|
@ -1,14 +1,14 @@
|
|||||||
using AxibugEmuOnline.Client.ClientCore;
|
using AxibugEmuOnline.Client.ClientCore;
|
||||||
|
|
||||||
namespace AxibugEmuOnline.Client
|
namespace AxibugEmuOnline.Client
|
||||||
{
|
{
|
||||||
public class InGameUI_Reset : ExecuteMenu
|
public class InGameUI_Reset : ExecuteMenu
|
||||||
{
|
{
|
||||||
private InGameUI m_gameUI;
|
private InGameUI m_gameUI;
|
||||||
|
public override string Name => "复位";
|
||||||
public override bool Visible => !m_gameUI.IsNetPlay || App.roomMgr.IsHost;
|
public override bool Visible => !m_gameUI.IsNetPlay || App.roomMgr.IsHost;
|
||||||
|
|
||||||
public InGameUI_Reset(InGameUI gameUI) : base("复位", null)
|
public InGameUI_Reset(InGameUI gameUI)
|
||||||
{
|
{
|
||||||
m_gameUI = gameUI;
|
m_gameUI = gameUI;
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
using AxibugEmuOnline.Client.ClientCore;
|
using AxibugEmuOnline.Client.ClientCore;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
|
|
||||||
namespace AxibugEmuOnline.Client
|
namespace AxibugEmuOnline.Client
|
||||||
@ -8,8 +8,9 @@ namespace AxibugEmuOnline.Client
|
|||||||
private InGameUI m_gameUI;
|
private InGameUI m_gameUI;
|
||||||
|
|
||||||
public override bool Visible => !m_gameUI.IsNetPlay;
|
public override bool Visible => !m_gameUI.IsNetPlay;
|
||||||
|
public override string Name => "保存快照";
|
||||||
|
|
||||||
public InGameUI_SaveState(InGameUI gameUI) : base("괏닸우亮", null)
|
public InGameUI_SaveState(InGameUI gameUI)
|
||||||
{
|
{
|
||||||
m_gameUI = gameUI;
|
m_gameUI = gameUI;
|
||||||
}
|
}
|
||||||
@ -23,7 +24,7 @@ namespace AxibugEmuOnline.Client
|
|||||||
|
|
||||||
m_gameUI.SaveQuickState(state);
|
m_gameUI.SaveQuickState(state);
|
||||||
sw.Stop();
|
sw.Stop();
|
||||||
App.log.Info($"{m_gameUI.RomFile.Platform}====>삿혤우亮봬珂:{sw.Elapsed.TotalMilliseconds}ms");
|
App.log.Info($"{m_gameUI.RomFile.Platform}====>获取快照耗时:{sw.Elapsed.TotalMilliseconds}ms");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -8,8 +8,8 @@ namespace AxibugEmuOnline.Client
|
|||||||
public class InGameUI_Scaler : ExpandMenu
|
public class InGameUI_Scaler : ExpandMenu
|
||||||
{
|
{
|
||||||
private List<OptionMenu> m_subMenus = new List<OptionMenu>();
|
private List<OptionMenu> m_subMenus = new List<OptionMenu>();
|
||||||
|
public override string Name => "屏幕比例";
|
||||||
public InGameUI_Scaler(InGameUI inGameUI) : base("屏幕比例", null)
|
public InGameUI_Scaler(InGameUI inGameUI)
|
||||||
{
|
{
|
||||||
m_subMenus.Add(new Scale(inGameUI, null));
|
m_subMenus.Add(new Scale(inGameUI, null));
|
||||||
foreach (EnumScalerMode scaleModeValue in Enum.GetValues(typeof(EnumScalerMode)))
|
foreach (EnumScalerMode scaleModeValue in Enum.GetValues(typeof(EnumScalerMode)))
|
||||||
@ -48,8 +48,8 @@ namespace AxibugEmuOnline.Client
|
|||||||
else return false;
|
else return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
public override string Name => ModeToName(m_mode);
|
||||||
public Scale(InGameUI inGameUI, EnumScalerMode? mode) : base(ModeToName(mode), null)
|
public Scale(InGameUI inGameUI, EnumScalerMode? mode)
|
||||||
{
|
{
|
||||||
m_mode = mode;
|
m_mode = mode;
|
||||||
m_gameUI = inGameUI;
|
m_gameUI = inGameUI;
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
using AxibugEmuOnline.Client.ClientCore;
|
using AxibugEmuOnline.Client.ClientCore;
|
||||||
using AxibugEmuOnline.Client.UI;
|
using AxibugEmuOnline.Client.UI;
|
||||||
|
using Coffee.UIExtensions;
|
||||||
using DG.Tweening;
|
using DG.Tweening;
|
||||||
using DG.Tweening.Core;
|
using DG.Tweening.Core;
|
||||||
using DG.Tweening.Plugins.Options;
|
using DG.Tweening.Plugins.Options;
|
||||||
@ -14,7 +15,12 @@ namespace AxibugEmuOnline.Client
|
|||||||
RectTransform MainMenuRoot;
|
RectTransform MainMenuRoot;
|
||||||
[SerializeField]
|
[SerializeField]
|
||||||
MainMenuController MainMenu;
|
MainMenuController MainMenu;
|
||||||
public Image BG;
|
[SerializeField]
|
||||||
|
Image XMBBackground;
|
||||||
|
[SerializeField]
|
||||||
|
Image RomPreviewBigPic;
|
||||||
|
[SerializeField]
|
||||||
|
CanvasGroup XMBCG_For_RomPreviewBigPic;
|
||||||
|
|
||||||
Vector2 m_mainLayoutPosition;
|
Vector2 m_mainLayoutPosition;
|
||||||
[SerializeField]
|
[SerializeField]
|
||||||
@ -25,12 +31,20 @@ namespace AxibugEmuOnline.Client
|
|||||||
public static LaunchUI Instance { get; private set; }
|
public static LaunchUI Instance { get; private set; }
|
||||||
|
|
||||||
TweenerCore<Vector2, Vector2, VectorOptions> m_layoutTween;
|
TweenerCore<Vector2, Vector2, VectorOptions> m_layoutTween;
|
||||||
|
AlphaWraper romPreviewWraper;
|
||||||
|
|
||||||
private void Awake()
|
private void Awake()
|
||||||
{
|
{
|
||||||
Instance = this;
|
Instance = this;
|
||||||
m_mainLayoutPosition = MainMenuRoot.anchoredPosition;
|
m_mainLayoutPosition = MainMenuRoot.anchoredPosition;
|
||||||
MainMenu.ListenControlAction = true;
|
MainMenu.ListenControlAction = true;
|
||||||
|
romPreviewWraper = new AlphaWraper(XMBCG_For_RomPreviewBigPic, RomPreviewBigPic.GetComponent<CanvasGroup>(), false);
|
||||||
|
|
||||||
|
var uiEffect = RomPreviewBigPic.GetComponent<UIEffect>();
|
||||||
|
if (Application.platform == RuntimePlatform.PSP2)
|
||||||
|
uiEffect.blurMode = BlurMode.FastBlur;
|
||||||
|
else
|
||||||
|
uiEffect.blurMode = BlurMode.DetailBlur;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Start()
|
private void Start()
|
||||||
@ -46,14 +60,40 @@ namespace AxibugEmuOnline.Client
|
|||||||
|
|
||||||
public void HideMainMenu()
|
public void HideMainMenu()
|
||||||
{
|
{
|
||||||
BG.gameObject.SetActiveEx(false);
|
XMBBackground.gameObject.SetActiveEx(false);
|
||||||
MainMenuRoot.gameObject.SetActiveEx(false);
|
MainMenuRoot.gameObject.SetActiveEx(false);
|
||||||
|
RomPreviewBigPic.gameObject.SetActiveEx(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void ShowMainMenu()
|
public void ShowMainMenu()
|
||||||
{
|
{
|
||||||
BG.gameObject.SetActiveEx(true);
|
XMBBackground.gameObject.SetActiveEx(true);
|
||||||
MainMenuRoot.gameObject.SetActiveEx(true);
|
MainMenuRoot.gameObject.SetActiveEx(true);
|
||||||
|
|
||||||
|
if (romPreviewWraper.On)
|
||||||
|
{
|
||||||
|
XMBCG_For_RomPreviewBigPic.gameObject.SetActive(false);
|
||||||
|
RomPreviewBigPic.gameObject.SetActive(true);
|
||||||
|
}
|
||||||
|
else if (!romPreviewWraper.On)
|
||||||
|
{
|
||||||
|
XMBCG_For_RomPreviewBigPic.gameObject.SetActive(true);
|
||||||
|
XMBCG_For_RomPreviewBigPic.alpha = 1;
|
||||||
|
RomPreviewBigPic.gameObject.SetActive(false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void HideRomPreview()
|
||||||
|
{
|
||||||
|
romPreviewWraper.On = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void SetRomPreview(Sprite sp)
|
||||||
|
{
|
||||||
|
if (MainMenu.ListenControlAction) return;
|
||||||
|
|
||||||
|
RomPreviewBigPic.sprite = sp;
|
||||||
|
romPreviewWraper.On = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void ToDetailMenuLayout()
|
public void ToDetailMenuLayout()
|
||||||
@ -89,6 +129,8 @@ namespace AxibugEmuOnline.Client
|
|||||||
.SetSpeedBased();
|
.SetSpeedBased();
|
||||||
MainMenu.ListenControlAction = true;
|
MainMenu.ListenControlAction = true;
|
||||||
MainMenu.ExitDetailState();
|
MainMenu.ExitDetailState();
|
||||||
|
|
||||||
|
HideRomPreview();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -42,7 +42,7 @@ namespace AxibugEmuOnline.Client
|
|||||||
if (m_selectIndex == -1) SelectIndex = 0;
|
if (m_selectIndex == -1) SelectIndex = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected virtual MenuItem GetItemUIByIndex(int index)
|
public virtual MenuItem GetItemUIByIndex(int index)
|
||||||
{
|
{
|
||||||
return m_runtimeMenuUI[SelectIndex];
|
return m_runtimeMenuUI[SelectIndex];
|
||||||
}
|
}
|
||||||
|
@ -35,18 +35,20 @@ namespace AxibugEmuOnline.Client
|
|||||||
value = Mathf.Clamp(value, 0, m_runtimeMenuItems.Count - 1);
|
value = Mathf.Clamp(value, 0, m_runtimeMenuItems.Count - 1);
|
||||||
if (m_selectIndex == value) return;
|
if (m_selectIndex == value) return;
|
||||||
|
|
||||||
var gap = value - m_selectIndex;
|
var gap = value - m_selectIndex;
|
||||||
|
|
||||||
|
var temp = value;
|
||||||
while (!m_runtimeMenuItems[value].Visible)
|
while (!m_runtimeMenuItems[value].Visible)
|
||||||
{
|
{
|
||||||
var temp = value;
|
|
||||||
if (gap > 0)
|
if (gap > 0)
|
||||||
{
|
{
|
||||||
temp++;
|
temp++;
|
||||||
|
if (temp >= m_runtimeMenuItems.Count) return;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
temp--;
|
temp--;
|
||||||
|
if (temp < 0) return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (temp >= 0 && temp < m_runtimeMenuItems.Count)
|
if (temp >= 0 && temp < m_runtimeMenuItems.Count)
|
||||||
@ -386,7 +388,6 @@ namespace AxibugEmuOnline.Client
|
|||||||
{
|
{
|
||||||
/// <summary> 设置这个值以控制菜单中显示"已应用"标记 </summary>
|
/// <summary> 设置这个值以控制菜单中显示"已应用"标记 </summary>
|
||||||
public virtual bool IsApplied { get; }
|
public virtual bool IsApplied { get; }
|
||||||
protected ExecuteMenu(string name, Sprite icon = null) : base(name, icon) { }
|
|
||||||
|
|
||||||
public abstract void OnExcute(OptionUI optionUI, ref bool cancelHide);
|
public abstract void OnExcute(OptionUI optionUI, ref bool cancelHide);
|
||||||
}
|
}
|
||||||
@ -396,7 +397,7 @@ namespace AxibugEmuOnline.Client
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public abstract class ExpandMenu : ExecuteMenu
|
public abstract class ExpandMenu : ExecuteMenu
|
||||||
{
|
{
|
||||||
protected ExpandMenu(string name, Sprite icon = null) : base(name, icon) { }
|
protected ExpandMenu() : base() { }
|
||||||
|
|
||||||
public sealed override void OnExcute(OptionUI optionUI, ref bool cancelHide)
|
public sealed override void OnExcute(OptionUI optionUI, ref bool cancelHide)
|
||||||
{
|
{
|
||||||
@ -411,7 +412,7 @@ namespace AxibugEmuOnline.Client
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public abstract class ValueSetMenu : OptionMenu
|
public abstract class ValueSetMenu : OptionMenu
|
||||||
{
|
{
|
||||||
protected ValueSetMenu(string name) : base(name) { }
|
protected ValueSetMenu() : base() { }
|
||||||
|
|
||||||
public abstract Type ValueType { get; }
|
public abstract Type ValueType { get; }
|
||||||
public abstract object ValueRaw { get; }
|
public abstract object ValueRaw { get; }
|
||||||
@ -423,17 +424,11 @@ namespace AxibugEmuOnline.Client
|
|||||||
/// <summary> 不要直接继承这个类 </summary>
|
/// <summary> 不要直接继承这个类 </summary>
|
||||||
public abstract class OptionMenu
|
public abstract class OptionMenu
|
||||||
{
|
{
|
||||||
public string Name { get; protected set; }
|
public abstract string Name { get; }
|
||||||
public Sprite Icon { get; protected set; }
|
public virtual Sprite Icon { get; }
|
||||||
public virtual bool Visible => true;
|
public virtual bool Visible => true;
|
||||||
public virtual bool Enable => true;
|
public virtual bool Enable => true;
|
||||||
|
|
||||||
protected OptionMenu(string name, Sprite icon = null)
|
|
||||||
{
|
|
||||||
Name = name;
|
|
||||||
Icon = icon;
|
|
||||||
}
|
|
||||||
|
|
||||||
public virtual void OnFocus() { }
|
public virtual void OnFocus() { }
|
||||||
public virtual void OnShow(OptionUI_MenuItem ui) { }
|
public virtual void OnShow(OptionUI_MenuItem ui) { }
|
||||||
public virtual void OnHide() { }
|
public virtual void OnHide() { }
|
||||||
|
@ -3,6 +3,7 @@ using AxibugEmuOnline.Client.Event;
|
|||||||
using AxibugEmuOnline.Client.Manager;
|
using AxibugEmuOnline.Client.Manager;
|
||||||
using AxibugEmuOnline.Client.UI;
|
using AxibugEmuOnline.Client.UI;
|
||||||
using AxibugProtobuf;
|
using AxibugProtobuf;
|
||||||
|
using Sony.Vita.Dialog;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using UnityEngine.UI;
|
using UnityEngine.UI;
|
||||||
@ -48,6 +49,14 @@ namespace AxibugEmuOnline.Client
|
|||||||
UpdateUI(roomInfo);
|
UpdateUI(roomInfo);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected override void OnSelected(float progress)
|
||||||
|
{
|
||||||
|
base.OnSelected(progress);
|
||||||
|
|
||||||
|
if (Icon.sprite == null) LaunchUI.Instance.HideRomPreview();
|
||||||
|
else LaunchUI.Instance.SetRomPreview(Icon.sprite);
|
||||||
|
}
|
||||||
|
|
||||||
public override bool OnEnterItem()
|
public override bool OnEnterItem()
|
||||||
{
|
{
|
||||||
if (m_romFile == null) return false;
|
if (m_romFile == null) return false;
|
||||||
@ -128,8 +137,9 @@ namespace AxibugEmuOnline.Client
|
|||||||
{
|
{
|
||||||
if (m_romFile == null) return;
|
if (m_romFile == null) return;
|
||||||
if (m_romFile.ImageURL != url) return;
|
if (m_romFile.ImageURL != url) return;
|
||||||
|
|
||||||
SetIcon(sprite);
|
SetIcon(sprite);
|
||||||
|
|
||||||
|
if (m_select) LaunchUI.Instance.SetRomPreview(sprite);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SetDependencyProperty(object data)
|
public void SetDependencyProperty(object data)
|
||||||
|
@ -45,7 +45,7 @@ namespace AxibugEmuOnline.Client
|
|||||||
SelectIndex = selectIndex;
|
SelectIndex = selectIndex;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override MenuItem GetItemUIByIndex(int index)
|
public override MenuItem GetItemUIByIndex(int index)
|
||||||
{
|
{
|
||||||
return itemGroup.GetItemUIByDataIndex(index)?.GetComponent<MenuItem>();
|
return itemGroup.GetItemUIByDataIndex(index)?.GetComponent<MenuItem>();
|
||||||
}
|
}
|
||||||
|
@ -5,12 +5,6 @@
|
|||||||
[PerRendererData] _MainTex ("Sprite Texture", 2D) = "white" {}
|
[PerRendererData] _MainTex ("Sprite Texture", 2D) = "white" {}
|
||||||
_Color ("Tint", Color) = (1,1,1,1)
|
_Color ("Tint", Color) = (1,1,1,1)
|
||||||
|
|
||||||
_StencilComp ("Stencil Comparison", Float) = 8
|
|
||||||
_Stencil ("Stencil ID", Float) = 0
|
|
||||||
_StencilOp ("Stencil Operation", Float) = 0
|
|
||||||
_StencilWriteMask ("Stencil Write Mask", Float) = 255
|
|
||||||
_StencilReadMask ("Stencil Read Mask", Float) = 255
|
|
||||||
|
|
||||||
_ColorMask ("Color Mask", Float) = 15
|
_ColorMask ("Color Mask", Float) = 15
|
||||||
|
|
||||||
[Toggle(UNITY_UI_ALPHACLIP)] _UseUIAlphaClip ("Use Alpha Clip", Float) = 0
|
[Toggle(UNITY_UI_ALPHACLIP)] _UseUIAlphaClip ("Use Alpha Clip", Float) = 0
|
||||||
@ -45,15 +39,6 @@
|
|||||||
"CanUseSpriteAtlas"="True"
|
"CanUseSpriteAtlas"="True"
|
||||||
}
|
}
|
||||||
|
|
||||||
Stencil
|
|
||||||
{
|
|
||||||
Ref [_Stencil]
|
|
||||||
Comp [_StencilComp]
|
|
||||||
Pass [_StencilOp]
|
|
||||||
ReadMask [_StencilReadMask]
|
|
||||||
WriteMask [_StencilWriteMask]
|
|
||||||
}
|
|
||||||
|
|
||||||
Cull Off
|
Cull Off
|
||||||
Lighting Off
|
Lighting Off
|
||||||
ZWrite Off
|
ZWrite Off
|
||||||
@ -72,9 +57,6 @@
|
|||||||
#include "UnityCG.cginc"
|
#include "UnityCG.cginc"
|
||||||
#include "UnityUI.cginc"
|
#include "UnityUI.cginc"
|
||||||
|
|
||||||
#pragma multi_compile_local _ UNITY_UI_CLIP_RECT
|
|
||||||
#pragma multi_compile_local _ UNITY_UI_ALPHACLIP
|
|
||||||
|
|
||||||
struct appdata_t
|
struct appdata_t
|
||||||
{
|
{
|
||||||
float4 vertex : POSITION;
|
float4 vertex : POSITION;
|
||||||
@ -94,12 +76,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
fixed4 _Color;
|
fixed4 _Color;
|
||||||
fixed4 _TextureSampleAdd;
|
|
||||||
float4 _ClipRect;
|
|
||||||
sampler2D _MainTex;
|
sampler2D _MainTex;
|
||||||
float4 _MainTex_ST;
|
|
||||||
float _UIMaskSoftnessX;
|
|
||||||
float _UIMaskSoftnessY;
|
|
||||||
|
|
||||||
float wave(float x, float frequency, float speed, float midHeight, float maxHeight)
|
float wave(float x, float frequency, float speed, float midHeight, float maxHeight)
|
||||||
{
|
{
|
||||||
@ -128,10 +105,7 @@
|
|||||||
float2 pixelSize = vPosition.w;
|
float2 pixelSize = vPosition.w;
|
||||||
pixelSize /= float2(1, 1) * abs(mul((float2x2)UNITY_MATRIX_P, _ScreenParams.xy));
|
pixelSize /= float2(1, 1) * abs(mul((float2x2)UNITY_MATRIX_P, _ScreenParams.xy));
|
||||||
|
|
||||||
float4 clampedRect = clamp(_ClipRect, -2e10, 2e10);
|
OUT.texcoord = v.texcoord.xy;
|
||||||
float2 maskUV = (v.vertex.xy - clampedRect.xy) / (clampedRect.zw - clampedRect.xy);
|
|
||||||
OUT.texcoord = TRANSFORM_TEX(v.texcoord.xy, _MainTex);
|
|
||||||
OUT.mask = float4(v.vertex.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_UIMaskSoftnessX, _UIMaskSoftnessY) + abs(pixelSize.xy)));
|
|
||||||
|
|
||||||
OUT.color = v.color * _Color;
|
OUT.color = v.color * _Color;
|
||||||
return OUT;
|
return OUT;
|
||||||
@ -187,15 +161,6 @@
|
|||||||
// Output to screen
|
// Output to screen
|
||||||
fixed4 fragColor = float4(col,1.0)*IN.color;
|
fixed4 fragColor = float4(col,1.0)*IN.color;
|
||||||
|
|
||||||
#ifdef UNITY_UI_CLIP_RECT
|
|
||||||
half2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(IN.mask.xy)) * IN.mask.zw);
|
|
||||||
fragColor.a *= m.x * m.y;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef UNITY_UI_ALPHACLIP
|
|
||||||
clip (fragColor.a - 0.001);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
return fragColor;
|
return fragColor;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,207 +0,0 @@
|
|||||||
Shader "AxibugEmuOnline/XMBBackGroundPreview"
|
|
||||||
{
|
|
||||||
Properties
|
|
||||||
{
|
|
||||||
[PerRendererData] _MainTex ("Sprite Texture", 2D) = "white" {}
|
|
||||||
_Color ("Tint", Color) = (1,1,1,1)
|
|
||||||
|
|
||||||
_StencilComp ("Stencil Comparison", Float) = 8
|
|
||||||
_Stencil ("Stencil ID", Float) = 0
|
|
||||||
_StencilOp ("Stencil Operation", Float) = 0
|
|
||||||
_StencilWriteMask ("Stencil Write Mask", Float) = 255
|
|
||||||
_StencilReadMask ("Stencil Read Mask", Float) = 255
|
|
||||||
|
|
||||||
_ColorMask ("Color Mask", Float) = 15
|
|
||||||
|
|
||||||
[Toggle(UNITY_UI_ALPHACLIP)] _UseUIAlphaClip ("Use Alpha Clip", Float) = 0
|
|
||||||
|
|
||||||
[Space(10)]
|
|
||||||
_Color1("Color1",Color) = (0,0.4,1,1)
|
|
||||||
_Color2("Color2",Color) = (0,0.7,1,1)
|
|
||||||
|
|
||||||
[Header(Wave1)]
|
|
||||||
_MidHeight1("MidHeight",Float) = 0.4
|
|
||||||
_MaxHeight1("MaxHeigh",Float) = 0.5
|
|
||||||
_Power1("Power",Float)=50.0
|
|
||||||
_Frequency1("Frequency",Float)=2.0
|
|
||||||
_Speed1("Speed",Float)=0.4
|
|
||||||
|
|
||||||
[Header(Wave2)]
|
|
||||||
_MidHeight2("MidHeight",Float) = 0.42
|
|
||||||
_MaxHeight2("MaxHeigh",Float) = 0.54
|
|
||||||
_Power2("Power",Float)=50.0
|
|
||||||
_Frequency2("Frequency",Float)=2.1
|
|
||||||
_Speed2("Speed",Float)=0.3
|
|
||||||
}
|
|
||||||
|
|
||||||
SubShader
|
|
||||||
{
|
|
||||||
Tags
|
|
||||||
{
|
|
||||||
"Queue"="Transparent"
|
|
||||||
"IgnoreProjector"="True"
|
|
||||||
"RenderType"="Transparent"
|
|
||||||
"PreviewType"="Plane"
|
|
||||||
"CanUseSpriteAtlas"="True"
|
|
||||||
}
|
|
||||||
|
|
||||||
Stencil
|
|
||||||
{
|
|
||||||
Ref [_Stencil]
|
|
||||||
Comp [_StencilComp]
|
|
||||||
Pass [_StencilOp]
|
|
||||||
ReadMask [_StencilReadMask]
|
|
||||||
WriteMask [_StencilWriteMask]
|
|
||||||
}
|
|
||||||
|
|
||||||
Cull Off
|
|
||||||
Lighting Off
|
|
||||||
ZWrite Off
|
|
||||||
ZTest [unity_GUIZTestMode]
|
|
||||||
Blend SrcAlpha OneMinusSrcAlpha
|
|
||||||
ColorMask [_ColorMask]
|
|
||||||
|
|
||||||
Pass
|
|
||||||
{
|
|
||||||
Name "Default"
|
|
||||||
CGPROGRAM
|
|
||||||
#pragma vertex vert
|
|
||||||
#pragma fragment frag
|
|
||||||
#pragma target 2.0
|
|
||||||
|
|
||||||
#include "UnityCG.cginc"
|
|
||||||
#include "UnityUI.cginc"
|
|
||||||
|
|
||||||
#pragma multi_compile_local _ UNITY_UI_CLIP_RECT
|
|
||||||
#pragma multi_compile_local _ UNITY_UI_ALPHACLIP
|
|
||||||
|
|
||||||
struct appdata_t
|
|
||||||
{
|
|
||||||
float4 vertex : POSITION;
|
|
||||||
float4 color : COLOR;
|
|
||||||
float2 texcoord : TEXCOORD0;
|
|
||||||
UNITY_VERTEX_INPUT_INSTANCE_ID
|
|
||||||
};
|
|
||||||
|
|
||||||
struct v2f
|
|
||||||
{
|
|
||||||
float4 vertex : SV_POSITION;
|
|
||||||
fixed4 color : COLOR;
|
|
||||||
float2 texcoord : TEXCOORD0;
|
|
||||||
float4 worldPosition : TEXCOORD1;
|
|
||||||
float4 mask : TEXCOORD2;
|
|
||||||
UNITY_VERTEX_OUTPUT_STEREO
|
|
||||||
};
|
|
||||||
|
|
||||||
fixed4 _Color;
|
|
||||||
fixed4 _TextureSampleAdd;
|
|
||||||
float4 _ClipRect;
|
|
||||||
sampler2D _MainTex;
|
|
||||||
float4 _MainTex_ST;
|
|
||||||
float _UIMaskSoftnessX;
|
|
||||||
float _UIMaskSoftnessY;
|
|
||||||
|
|
||||||
float wave(float x, float frequency, float speed, float midHeight, float maxHeight)
|
|
||||||
{
|
|
||||||
return (sin(frequency * (x + speed * (((1. - (pow(cos(0.002 * (_Time.y + 400.)), 2.) + 1.) / 2.) + .1) * 2048.))) * (maxHeight - midHeight)) + midHeight;
|
|
||||||
}
|
|
||||||
float percentHigh(float currentY, float waveHeight, float maxHeight, float power)
|
|
||||||
{
|
|
||||||
float percentWave = max(waveHeight - currentY, 0.0) / maxHeight;
|
|
||||||
return pow(1.0 - percentWave, power);
|
|
||||||
}
|
|
||||||
float waveColor(float2 uv, float waveHeight, float maxHeight, float frequency, float power)
|
|
||||||
{
|
|
||||||
float percentWave = percentHigh(uv.y, waveHeight, maxHeight, power);
|
|
||||||
return clamp(percentWave + 0.8, 0.0, 1.0);
|
|
||||||
}
|
|
||||||
|
|
||||||
v2f vert(appdata_t v)
|
|
||||||
{
|
|
||||||
v2f OUT;
|
|
||||||
UNITY_SETUP_INSTANCE_ID(v);
|
|
||||||
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(OUT);
|
|
||||||
float4 vPosition = UnityObjectToClipPos(v.vertex);
|
|
||||||
OUT.worldPosition = v.vertex;
|
|
||||||
OUT.vertex = vPosition;
|
|
||||||
|
|
||||||
float2 pixelSize = vPosition.w;
|
|
||||||
pixelSize /= float2(1, 1) * abs(mul((float2x2)UNITY_MATRIX_P, _ScreenParams.xy));
|
|
||||||
|
|
||||||
float4 clampedRect = clamp(_ClipRect, -2e10, 2e10);
|
|
||||||
float2 maskUV = (v.vertex.xy - clampedRect.xy) / (clampedRect.zw - clampedRect.xy);
|
|
||||||
OUT.texcoord = TRANSFORM_TEX(v.texcoord.xy, _MainTex);
|
|
||||||
OUT.mask = float4(v.vertex.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_UIMaskSoftnessX, _UIMaskSoftnessY) + abs(pixelSize.xy)));
|
|
||||||
|
|
||||||
OUT.color = v.color * _Color;
|
|
||||||
return OUT;
|
|
||||||
}
|
|
||||||
|
|
||||||
float3 _Color1;
|
|
||||||
float3 _Color2;
|
|
||||||
|
|
||||||
float _MidHeight1;
|
|
||||||
float _MaxHeight1;
|
|
||||||
float _Power1;
|
|
||||||
float _Frequency1;
|
|
||||||
float _Speed1;
|
|
||||||
|
|
||||||
float _MidHeight2;
|
|
||||||
float _MaxHeight2;
|
|
||||||
float _Power2;
|
|
||||||
float _Frequency2;
|
|
||||||
float _Speed2;
|
|
||||||
|
|
||||||
fixed4 frag(v2f IN) : SV_Target
|
|
||||||
{
|
|
||||||
float2 uv= IN.texcoord;
|
|
||||||
// Lerped background
|
|
||||||
|
|
||||||
float amount = (uv.x + uv.y) / 2.0;
|
|
||||||
float3 bg = lerp(_Color2, _Color1, amount);
|
|
||||||
|
|
||||||
// Overlayed sine waves
|
|
||||||
float maxHeight1 = _MaxHeight1 + wave(0, 4.0,0.02, 0.0, 0.02);
|
|
||||||
float power1 = _Power1; //Higher power means thinner line
|
|
||||||
float frequency1 = _Frequency1 + wave(0.0, 3.0, 0.03, 0.0, 0.02);
|
|
||||||
float speed1 = _Speed1 + wave(0.0, 2.2, 0.04, 0.0, 0.01);
|
|
||||||
float waveHeight1 = wave(uv.x, frequency1, speed1, _MidHeight1, maxHeight1);
|
|
||||||
float waveCol1 = waveColor(uv, waveHeight1, maxHeight1, frequency1, power1);
|
|
||||||
|
|
||||||
float midHeight2 = _MidHeight2;
|
|
||||||
float maxHeight2 = _MaxHeight2 + wave(0.0, 3.0, 0.04, 0.0, 0.02);
|
|
||||||
float power2 = _Power2; //Higher power means thinner line
|
|
||||||
float frequency2 = _Frequency2 + wave(0.0, 4.0, 0.05, 0.0, 0.02);
|
|
||||||
float speed2 = _Speed2 + wave(0.0, 2.0, 0.02, 0.0, 0.01);
|
|
||||||
float waveHeight2 = wave(uv.x, frequency2, speed2, midHeight2, maxHeight2);
|
|
||||||
float waveCol2 = waveColor(uv, waveHeight2, maxHeight2, frequency2, power2);
|
|
||||||
|
|
||||||
float3 col = bg;
|
|
||||||
|
|
||||||
float3 waveCol1_temp=col/waveCol1;
|
|
||||||
col = lerp(col,waveCol1_temp, step(uv.y, waveHeight1));
|
|
||||||
|
|
||||||
float3 waveCol2_temp=col/waveCol2;
|
|
||||||
col = lerp(col,waveCol2_temp, step(uv.y, waveHeight2));
|
|
||||||
|
|
||||||
// Output to screen
|
|
||||||
fixed4 fragColor = float4(col,1.0)*IN.color;
|
|
||||||
|
|
||||||
#ifdef UNITY_UI_CLIP_RECT
|
|
||||||
half2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(IN.mask.xy)) * IN.mask.zw);
|
|
||||||
fragColor.a *= m.x * m.y;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef UNITY_UI_ALPHACLIP
|
|
||||||
clip (fragColor.a - 0.001);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
return fragColor;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
ENDCG
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,10 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 424d88aff12857f4aab1911fdb6e02e9
|
|
||||||
ShaderImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
defaultTextures: []
|
|
||||||
nonModifiableTextures: []
|
|
||||||
preprocessorOverride: 0
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
Loading…
Reference in New Issue
Block a user