diff --git a/AxibugEmuOnline.Client/Assets/Resources/UIPrefabs/LaunchUI.prefab b/AxibugEmuOnline.Client/Assets/Resources/UIPrefabs/LaunchUI.prefab
index 50821624..7a4b8cdf 100644
--- a/AxibugEmuOnline.Client/Assets/Resources/UIPrefabs/LaunchUI.prefab
+++ b/AxibugEmuOnline.Client/Assets/Resources/UIPrefabs/LaunchUI.prefab
@@ -107,7 +107,7 @@ MonoBehaviour:
Description:
OverrideTemplate: {fileID: 6299221187810587914, guid: 3ecc1c637c161184099b69c3d7a0f354, type: 3}
SubMenus: []
- - Icon: {fileID: 21300000, guid: 8b2d1bdf739173c40bb205540b308d02, type: 3}
+ - Icon: {fileID: 8228730565043098574, guid: d518d00d4940e854bbe45d9ef891401a, type: 3}
Name: "\u753B\u9762\u6BD4\u4F8B"
SubTitle:
Description:
@@ -452,9 +452,9 @@ RectTransform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- - {fileID: 1916588507637046755}
- - {fileID: 6460010277324914646}
- - {fileID: 3058488711806216331}
+ - {fileID: 3669871757666250546}
+ - {fileID: 3678134670041827378}
+ - {fileID: 885538609892901687}
m_Father: {fileID: 6855144573435021451}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
@@ -551,424 +551,13 @@ CanvasGroup:
m_Interactable: 1
m_BlocksRaycasts: 1
m_IgnoreParentGroups: 0
---- !u!1001 &81703635293737790
+--- !u!1001 &1584318430553463231
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
- m_TransformParent: {fileID: 7102897325704768026}
- m_Modifications:
- - target: {fileID: 632697230221148209, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_Alpha
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 991446423622995247, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_Text
- value: Settings
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_Pivot.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_Pivot.y
- value: 0.5
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_AnchorMax.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_AnchorMax.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_AnchorMin.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_AnchorMin.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_SizeDelta.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_SizeDelta.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalPosition.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalPosition.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalPosition.z
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalRotation.w
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalRotation.x
- value: -0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalRotation.y
- value: -0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalRotation.z
- value: -0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_AnchoredPosition.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_AnchoredPosition.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalEulerAnglesHint.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalEulerAnglesHint.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalEulerAnglesHint.z
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 3189920797946144379, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_Name
- value: Settings
- objectReference: {fileID: 0}
- - target: {fileID: 6771349210554360888, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_Sprite
- value:
- objectReference: {fileID: 21300000, guid: c300d49e84cf0fb4186c750320e50146, type: 3}
- - target: {fileID: 8754483333502849411, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalScale.x
- value: 0.85
- objectReference: {fileID: 0}
- - target: {fileID: 8754483333502849411, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalScale.y
- value: 0.85
- objectReference: {fileID: 0}
- - target: {fileID: 8754483333502849411, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalScale.z
- value: 0.85
- objectReference: {fileID: 0}
- m_RemovedComponents: []
- m_RemovedGameObjects: []
- m_AddedGameObjects:
- - targetCorrespondingSourceObject: {fileID: 3226730524206505336, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- insertIndex: -1
- addedObject: {fileID: 8908145107926033739}
- - targetCorrespondingSourceObject: {fileID: 3226730524206505336, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- insertIndex: -1
- addedObject: {fileID: 6896717217113787335}
- - targetCorrespondingSourceObject: {fileID: 3226730524206505336, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- insertIndex: -1
- addedObject: {fileID: 7873173972809266028}
- m_AddedComponents: []
- m_SourcePrefab: {fileID: 100100000, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
---- !u!224 &1916588507637046755 stripped
-RectTransform:
- m_CorrespondingSourceObject: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- m_PrefabInstance: {fileID: 81703635293737790}
- m_PrefabAsset: {fileID: 0}
---- !u!224 &3307299456251563590 stripped
-RectTransform:
- m_CorrespondingSourceObject: {fileID: 3226730524206505336, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- m_PrefabInstance: {fileID: 81703635293737790}
- m_PrefabAsset: {fileID: 0}
---- !u!1001 &3587888227065243222
-PrefabInstance:
- m_ObjectHideFlags: 0
- serializedVersion: 2
- m_Modification:
- serializedVersion: 3
- m_TransformParent: {fileID: 7102897325704768026}
- m_Modifications:
- - target: {fileID: 632697230221148209, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_Alpha
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 991446423622995247, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_Text
- value: "\u8054\u673A"
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_Pivot.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_Pivot.y
- value: 0.5
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_AnchorMax.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_AnchorMax.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_AnchorMin.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_AnchorMin.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_SizeDelta.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_SizeDelta.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalPosition.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalPosition.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalPosition.z
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalRotation.w
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalRotation.x
- value: -0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalRotation.y
- value: -0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalRotation.z
- value: -0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_AnchoredPosition.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_AnchoredPosition.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalEulerAnglesHint.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalEulerAnglesHint.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalEulerAnglesHint.z
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 3189920797946144379, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_Name
- value: "\u8054\u673A"
- objectReference: {fileID: 0}
- - target: {fileID: 6771349210554360888, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_Sprite
- value:
- objectReference: {fileID: 21300000, guid: ecce24ec6d4b5b546af85d64ba55a3a2, type: 3}
- - target: {fileID: 8754483333502849411, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalScale.x
- value: 0.85
- objectReference: {fileID: 0}
- - target: {fileID: 8754483333502849411, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalScale.y
- value: 0.85
- objectReference: {fileID: 0}
- - target: {fileID: 8754483333502849411, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalScale.z
- value: 0.85
- objectReference: {fileID: 0}
- m_RemovedComponents: []
- m_RemovedGameObjects: []
- m_AddedGameObjects:
- - targetCorrespondingSourceObject: {fileID: 3226730524206505336, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- insertIndex: -1
- addedObject: {fileID: 7964242884360883841}
- m_AddedComponents: []
- m_SourcePrefab: {fileID: 100100000, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
---- !u!224 &2093359112723807022 stripped
-RectTransform:
- m_CorrespondingSourceObject: {fileID: 3226730524206505336, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- m_PrefabInstance: {fileID: 3587888227065243222}
- m_PrefabAsset: {fileID: 0}
---- !u!224 &3058488711806216331 stripped
-RectTransform:
- m_CorrespondingSourceObject: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- m_PrefabInstance: {fileID: 3587888227065243222}
- m_PrefabAsset: {fileID: 0}
---- !u!1001 &4764178440449765643
-PrefabInstance:
- m_ObjectHideFlags: 0
- serializedVersion: 2
- m_Modification:
- serializedVersion: 3
- m_TransformParent: {fileID: 7102897325704768026}
- m_Modifications:
- - target: {fileID: 632697230221148209, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_Alpha
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 991446423622995247, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_Text
- value: Game
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_Pivot.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_Pivot.y
- value: 0.5
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_AnchorMax.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_AnchorMax.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_AnchorMin.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_AnchorMin.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_SizeDelta.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_SizeDelta.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalPosition.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalPosition.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalPosition.z
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalRotation.w
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalRotation.x
- value: -0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalRotation.y
- value: -0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalRotation.z
- value: -0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_AnchoredPosition.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_AnchoredPosition.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalEulerAnglesHint.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalEulerAnglesHint.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalEulerAnglesHint.z
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 3189920797946144379, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_Name
- value: Game
- objectReference: {fileID: 0}
- - target: {fileID: 6771349210554360888, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_Sprite
- value:
- objectReference: {fileID: 21300000, guid: 1b52cdd34b39a8c4fa0dad6f2007e2f3, type: 3}
- - target: {fileID: 8754483333502849411, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalScale.x
- value: 0.85
- objectReference: {fileID: 0}
- - target: {fileID: 8754483333502849411, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalScale.y
- value: 0.85
- objectReference: {fileID: 0}
- - target: {fileID: 8754483333502849411, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- propertyPath: m_LocalScale.z
- value: 0.85
- objectReference: {fileID: 0}
- m_RemovedComponents: []
- m_RemovedGameObjects: []
- m_AddedGameObjects:
- - targetCorrespondingSourceObject: {fileID: 3226730524206505336, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- insertIndex: -1
- addedObject: {fileID: 7397854261345223634}
- - targetCorrespondingSourceObject: {fileID: 3226730524206505336, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- insertIndex: -1
- addedObject: {fileID: 8292633707166609363}
- m_AddedComponents: []
- m_SourcePrefab: {fileID: 100100000, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
---- !u!224 &6460010277324914646 stripped
-RectTransform:
- m_CorrespondingSourceObject: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- m_PrefabInstance: {fileID: 4764178440449765643}
- m_PrefabAsset: {fileID: 0}
---- !u!224 &7987808335387176051 stripped
-RectTransform:
- m_CorrespondingSourceObject: {fileID: 3226730524206505336, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
- m_PrefabInstance: {fileID: 4764178440449765643}
- m_PrefabAsset: {fileID: 0}
---- !u!1001 &4903678746850264346
-PrefabInstance:
- m_ObjectHideFlags: 0
- serializedVersion: 2
- m_Modification:
- serializedVersion: 3
- m_TransformParent: {fileID: 3307299456251563590}
+ m_TransformParent: {fileID: 401652325809503383}
m_Modifications:
- target: {fileID: 734025543935719296, guid: 3ecc1c637c161184099b69c3d7a0f354, type: 3}
propertyPath: m_IsActive
@@ -1191,18 +780,152 @@ PrefabInstance:
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 3ecc1c637c161184099b69c3d7a0f354, type: 3}
---- !u!224 &6896717217113787335 stripped
+--- !u!224 &1029058383689914210 stripped
RectTransform:
m_CorrespondingSourceObject: {fileID: 1998281097548910301, guid: 3ecc1c637c161184099b69c3d7a0f354, type: 3}
- m_PrefabInstance: {fileID: 4903678746850264346}
+ m_PrefabInstance: {fileID: 1584318430553463231}
m_PrefabAsset: {fileID: 0}
---- !u!1001 &6925204534056151958
+--- !u!1001 &1725233518776716778
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
- m_TransformParent: {fileID: 3307299456251563590}
+ m_TransformParent: {fileID: 7102897325704768026}
+ m_Modifications:
+ - target: {fileID: 632697230221148209, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_Alpha
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 991446423622995247, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_Text
+ value: "\u8054\u673A"
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_Pivot.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_Pivot.y
+ value: 0.5
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_AnchorMax.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_AnchorMax.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_AnchorMin.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_AnchorMin.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_SizeDelta.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_SizeDelta.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalPosition.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalPosition.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalPosition.z
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalRotation.w
+ value: 1
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalRotation.x
+ value: -0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalRotation.y
+ value: -0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalRotation.z
+ value: -0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_AnchoredPosition.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_AnchoredPosition.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.z
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 3189920797946144379, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_Name
+ value: "\u8054\u673A"
+ objectReference: {fileID: 0}
+ - target: {fileID: 6771349210554360888, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_Sprite
+ value:
+ objectReference: {fileID: 21300000, guid: ecce24ec6d4b5b546af85d64ba55a3a2, type: 3}
+ - target: {fileID: 8754483333502849411, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalScale.x
+ value: 0.85
+ objectReference: {fileID: 0}
+ - target: {fileID: 8754483333502849411, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalScale.y
+ value: 0.85
+ objectReference: {fileID: 0}
+ - target: {fileID: 8754483333502849411, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalScale.z
+ value: 0.85
+ objectReference: {fileID: 0}
+ m_RemovedComponents: []
+ m_RemovedGameObjects: []
+ m_AddedGameObjects:
+ - targetCorrespondingSourceObject: {fileID: 3226730524206505336, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ insertIndex: -1
+ addedObject: {fileID: 4948236486807009510}
+ m_AddedComponents: []
+ m_SourcePrefab: {fileID: 100100000, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+--- !u!224 &885538609892901687 stripped
+RectTransform:
+ m_CorrespondingSourceObject: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ m_PrefabInstance: {fileID: 1725233518776716778}
+ m_PrefabAsset: {fileID: 0}
+--- !u!224 &4266849409854443666 stripped
+RectTransform:
+ m_CorrespondingSourceObject: {fileID: 3226730524206505336, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ m_PrefabInstance: {fileID: 1725233518776716778}
+ m_PrefabAsset: {fileID: 0}
+--- !u!1001 &2169617127143425986
+PrefabInstance:
+ m_ObjectHideFlags: 0
+ serializedVersion: 2
+ m_Modification:
+ serializedVersion: 3
+ m_TransformParent: {fileID: 401652325809503383}
m_Modifications:
- target: {fileID: 734025543935719296, guid: dd267389f23898f45b22dbc9670a17c7, type: 3}
propertyPath: m_IsActive
@@ -1425,252 +1148,295 @@ PrefabInstance:
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: dd267389f23898f45b22dbc9670a17c7, type: 3}
---- !u!224 &8908145107926033739 stripped
+--- !u!224 &407388136691927327 stripped
RectTransform:
m_CorrespondingSourceObject: {fileID: 1998281097548910301, guid: dd267389f23898f45b22dbc9670a17c7, type: 3}
- m_PrefabInstance: {fileID: 6925204534056151958}
+ m_PrefabInstance: {fileID: 2169617127143425986}
m_PrefabAsset: {fileID: 0}
---- !u!1001 &7542975743905456398
+--- !u!1001 &2931854269036594927
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
- m_TransformParent: {fileID: 7987808335387176051}
+ m_TransformParent: {fileID: 7102897325704768026}
m_Modifications:
- - target: {fileID: 734025543935719296, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_IsActive
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 991446423622995247, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_Text
- value: "\u6536\u85CF"
- objectReference: {fileID: 0}
- - target: {fileID: 1559746939363341302, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_AnchorMax.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1559746939363341302, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_AnchorMin.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1559746939363341302, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_SizeDelta.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1559746939363341302, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_AnchoredPosition.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1559746939363341302, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_AnchoredPosition.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_Pivot.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_Pivot.y
- value: 0.5
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_AnchorMax.x
- value: 0.5
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_AnchorMax.y
- value: 0.5
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_AnchorMin.x
- value: 0.5
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_AnchorMin.y
- value: 0.5
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_SizeDelta.x
- value: 144
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_SizeDelta.y
- value: 104
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_LocalPosition.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_LocalPosition.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_LocalPosition.z
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_LocalRotation.w
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_LocalRotation.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_LocalRotation.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_LocalRotation.z
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_AnchoredPosition.x
- value: -72
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_AnchoredPosition.y
- value: -363
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_LocalEulerAnglesHint.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_LocalEulerAnglesHint.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_LocalEulerAnglesHint.z
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 2619187604372594158, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_Sprite
- value:
- objectReference: {fileID: 7637870703528583553, guid: a8e14774cb9b81d4799116466bc09437, type: 3}
- - target: {fileID: 3189920797946144379, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_Name
- value: "\u6536\u85CF"
- objectReference: {fileID: 0}
- - target: {fileID: 3380485461544738227, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_Text
- value: "\u5C55\u793A\u6240\u6709\u5E73\u53F0\u6536\u85CF\u7684rom"
- objectReference: {fileID: 0}
- - target: {fileID: 5331629140490413834, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ - target: {fileID: 632697230221148209, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
propertyPath: m_Alpha
value: 0
objectReference: {fileID: 0}
- - target: {fileID: 6087025893861054323, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ - target: {fileID: 991446423622995247, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_Text
+ value: Game
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_Pivot.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_Pivot.y
+ value: 0.5
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_AnchorMax.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- - target: {fileID: 6087025893861054323, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_AnchorMin.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- - target: {fileID: 6087025893861054323, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
propertyPath: m_SizeDelta.x
value: 0
objectReference: {fileID: 0}
- - target: {fileID: 6087025893861054323, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
propertyPath: m_SizeDelta.y
value: 0
objectReference: {fileID: 0}
- - target: {fileID: 6087025893861054323, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalPosition.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalPosition.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalPosition.z
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalRotation.w
+ value: 1
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalRotation.x
+ value: -0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalRotation.y
+ value: -0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalRotation.z
+ value: -0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- - target: {fileID: 6087025893861054323, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- - target: {fileID: 6095356919362338847, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_AnchorMax.y
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- - target: {fileID: 6095356919362338847, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_AnchorMin.y
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- - target: {fileID: 6095356919362338847, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_SizeDelta.x
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- - target: {fileID: 6095356919362338847, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_AnchoredPosition.x
- value: 0
+ - target: {fileID: 3189920797946144379, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_Name
+ value: Game
objectReference: {fileID: 0}
- - target: {fileID: 6771349210554360888, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ - target: {fileID: 6771349210554360888, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
propertyPath: m_Sprite
value:
- objectReference: {fileID: 7637870703528583553, guid: a8e14774cb9b81d4799116466bc09437, type: 3}
- - target: {fileID: 8126322204359135913, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_AnchorMax.y
- value: 0
+ objectReference: {fileID: 21300000, guid: 1b52cdd34b39a8c4fa0dad6f2007e2f3, type: 3}
+ - target: {fileID: 8754483333502849411, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalScale.x
+ value: 0.85
objectReference: {fileID: 0}
- - target: {fileID: 8126322204359135913, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_AnchorMin.y
- value: 0
+ - target: {fileID: 8754483333502849411, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalScale.y
+ value: 0.85
objectReference: {fileID: 0}
- - target: {fileID: 8126322204359135913, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_SizeDelta.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 8126322204359135913, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_AnchoredPosition.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 8126322204359135913, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_AnchoredPosition.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 8754483333502849411, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_SizeDelta.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 8789823129857705082, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_AnchorMax.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 8789823129857705082, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_AnchorMin.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 8789823129857705082, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_SizeDelta.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 8789823129857705082, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_SizeDelta.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 8789823129857705082, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_AnchoredPosition.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 8789823129857705082, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- propertyPath: m_AnchoredPosition.y
- value: 0
+ - target: {fileID: 8754483333502849411, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalScale.z
+ value: 0.85
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
- m_AddedGameObjects: []
+ m_AddedGameObjects:
+ - targetCorrespondingSourceObject: {fileID: 3226730524206505336, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ insertIndex: -1
+ addedObject: {fileID: 8415874216589457928}
+ - targetCorrespondingSourceObject: {fileID: 3226730524206505336, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ insertIndex: -1
+ addedObject: {fileID: 7706441286827416620}
m_AddedComponents: []
- m_SourcePrefab: {fileID: 100100000, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
---- !u!224 &8292633707166609363 stripped
+ m_SourcePrefab: {fileID: 100100000, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+--- !u!224 &321919121813838743 stripped
RectTransform:
- m_CorrespondingSourceObject: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
- m_PrefabInstance: {fileID: 7542975743905456398}
+ m_CorrespondingSourceObject: {fileID: 3226730524206505336, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ m_PrefabInstance: {fileID: 2931854269036594927}
m_PrefabAsset: {fileID: 0}
---- !u!1001 &8448188468684947548
+--- !u!224 &3678134670041827378 stripped
+RectTransform:
+ m_CorrespondingSourceObject: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ m_PrefabInstance: {fileID: 2931854269036594927}
+ m_PrefabAsset: {fileID: 0}
+--- !u!1001 &2978377959354180079
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
- m_TransformParent: {fileID: 2093359112723807022}
+ m_TransformParent: {fileID: 7102897325704768026}
+ m_Modifications:
+ - target: {fileID: 632697230221148209, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_Alpha
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 991446423622995247, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_Text
+ value: Settings
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_Pivot.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_Pivot.y
+ value: 0.5
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_AnchorMax.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_AnchorMax.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_AnchorMin.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_AnchorMin.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_SizeDelta.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_SizeDelta.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalPosition.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalPosition.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalPosition.z
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalRotation.w
+ value: 1
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalRotation.x
+ value: -0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalRotation.y
+ value: -0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalRotation.z
+ value: -0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_AnchoredPosition.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_AnchoredPosition.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.z
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 3189920797946144379, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_Name
+ value: Settings
+ objectReference: {fileID: 0}
+ - target: {fileID: 6771349210554360888, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_Sprite
+ value:
+ objectReference: {fileID: 21300000, guid: c300d49e84cf0fb4186c750320e50146, type: 3}
+ - target: {fileID: 8754483333502849411, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalScale.x
+ value: 0.85
+ objectReference: {fileID: 0}
+ - target: {fileID: 8754483333502849411, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalScale.y
+ value: 0.85
+ objectReference: {fileID: 0}
+ - target: {fileID: 8754483333502849411, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ propertyPath: m_LocalScale.z
+ value: 0.85
+ objectReference: {fileID: 0}
+ m_RemovedComponents: []
+ m_RemovedGameObjects: []
+ m_AddedGameObjects:
+ - targetCorrespondingSourceObject: {fileID: 3226730524206505336, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ insertIndex: -1
+ addedObject: {fileID: 407388136691927327}
+ - targetCorrespondingSourceObject: {fileID: 3226730524206505336, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ insertIndex: -1
+ addedObject: {fileID: 1029058383689914210}
+ - targetCorrespondingSourceObject: {fileID: 3226730524206505336, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ insertIndex: -1
+ addedObject: {fileID: 9120671577046735909}
+ m_AddedComponents: []
+ m_SourcePrefab: {fileID: 100100000, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+--- !u!224 &401652325809503383 stripped
+RectTransform:
+ m_CorrespondingSourceObject: {fileID: 3226730524206505336, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ m_PrefabInstance: {fileID: 2978377959354180079}
+ m_PrefabAsset: {fileID: 0}
+--- !u!224 &3669871757666250546 stripped
+RectTransform:
+ m_CorrespondingSourceObject: {fileID: 1998281097548910301, guid: ece591129eb9bcc48bd83ec153c98018, type: 3}
+ m_PrefabInstance: {fileID: 2978377959354180079}
+ m_PrefabAsset: {fileID: 0}
+--- !u!1001 &6850248588422149691
+PrefabInstance:
+ m_ObjectHideFlags: 0
+ serializedVersion: 2
+ m_Modification:
+ serializedVersion: 3
+ m_TransformParent: {fileID: 4266849409854443666}
m_Modifications:
- target: {fileID: 15566658635405967, guid: 71eabba88b30a4945b153dbaa6237441, type: 3}
propertyPath: m_AnchorMax.y
@@ -1893,18 +1659,18 @@ PrefabInstance:
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 71eabba88b30a4945b153dbaa6237441, type: 3}
---- !u!224 &7964242884360883841 stripped
+--- !u!224 &4948236486807009510 stripped
RectTransform:
m_CorrespondingSourceObject: {fileID: 1998281097548910301, guid: 71eabba88b30a4945b153dbaa6237441, type: 3}
- m_PrefabInstance: {fileID: 8448188468684947548}
+ m_PrefabInstance: {fileID: 6850248588422149691}
m_PrefabAsset: {fileID: 0}
---- !u!1001 &8572725111514365361
+--- !u!1001 &7289199605824656120
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
- m_TransformParent: {fileID: 3307299456251563590}
+ m_TransformParent: {fileID: 401652325809503383}
m_Modifications:
- target: {fileID: 734025543935719296, guid: 98ac562d730eabc42b9a3b12c715d114, type: 3}
propertyPath: m_IsActive
@@ -1997,7 +1763,7 @@ PrefabInstance:
- target: {fileID: 2619187604372594158, guid: 98ac562d730eabc42b9a3b12c715d114, type: 3}
propertyPath: m_Sprite
value:
- objectReference: {fileID: 21300000, guid: 8b2d1bdf739173c40bb205540b308d02, type: 3}
+ objectReference: {fileID: 8228730565043098574, guid: d518d00d4940e854bbe45d9ef891401a, type: 3}
- target: {fileID: 3189920797946144379, guid: 98ac562d730eabc42b9a3b12c715d114, type: 3}
propertyPath: m_Name
value: "\u753B\u9762\u6BD4\u4F8B"
@@ -2053,7 +1819,7 @@ PrefabInstance:
- target: {fileID: 6771349210554360888, guid: 98ac562d730eabc42b9a3b12c715d114, type: 3}
propertyPath: m_Sprite
value:
- objectReference: {fileID: 21300000, guid: 8b2d1bdf739173c40bb205540b308d02, type: 3}
+ objectReference: {fileID: 8228730565043098574, guid: d518d00d4940e854bbe45d9ef891401a, type: 3}
- target: {fileID: 8126322204359135913, guid: 98ac562d730eabc42b9a3b12c715d114, type: 3}
propertyPath: m_AnchorMax.y
value: 0
@@ -2127,18 +1893,18 @@ PrefabInstance:
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 98ac562d730eabc42b9a3b12c715d114, type: 3}
---- !u!224 &7873173972809266028 stripped
+--- !u!224 &9120671577046735909 stripped
RectTransform:
m_CorrespondingSourceObject: {fileID: 1998281097548910301, guid: 98ac562d730eabc42b9a3b12c715d114, type: 3}
- m_PrefabInstance: {fileID: 8572725111514365361}
+ m_PrefabInstance: {fileID: 7289199605824656120}
m_PrefabAsset: {fileID: 0}
---- !u!1001 &9012027568782593295
+--- !u!1001 &8030027059846264021
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
- m_TransformParent: {fileID: 7987808335387176051}
+ m_TransformParent: {fileID: 321919121813838743}
m_Modifications:
- target: {fileID: 734025543935719296, guid: b170104e466853c49b29f9b5b103364e, type: 3}
propertyPath: m_IsActive
@@ -2361,8 +2127,242 @@ PrefabInstance:
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: b170104e466853c49b29f9b5b103364e, type: 3}
---- !u!224 &7397854261345223634 stripped
+--- !u!224 &8415874216589457928 stripped
RectTransform:
m_CorrespondingSourceObject: {fileID: 1998281097548910301, guid: b170104e466853c49b29f9b5b103364e, type: 3}
- m_PrefabInstance: {fileID: 9012027568782593295}
+ m_PrefabInstance: {fileID: 8030027059846264021}
+ m_PrefabAsset: {fileID: 0}
+--- !u!1001 &8163220276214452977
+PrefabInstance:
+ m_ObjectHideFlags: 0
+ serializedVersion: 2
+ m_Modification:
+ serializedVersion: 3
+ m_TransformParent: {fileID: 321919121813838743}
+ m_Modifications:
+ - target: {fileID: 734025543935719296, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_IsActive
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 991446423622995247, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_Text
+ value: "\u6536\u85CF"
+ objectReference: {fileID: 0}
+ - target: {fileID: 1559746939363341302, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchorMax.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1559746939363341302, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchorMin.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1559746939363341302, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_SizeDelta.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1559746939363341302, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchoredPosition.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1559746939363341302, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchoredPosition.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_Pivot.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_Pivot.y
+ value: 0.5
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchorMax.x
+ value: 0.5
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchorMax.y
+ value: 0.5
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchorMin.x
+ value: 0.5
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchorMin.y
+ value: 0.5
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_SizeDelta.x
+ value: 144
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_SizeDelta.y
+ value: 104
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_LocalPosition.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_LocalPosition.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_LocalPosition.z
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_LocalRotation.w
+ value: 1
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_LocalRotation.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_LocalRotation.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_LocalRotation.z
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchoredPosition.x
+ value: -72
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchoredPosition.y
+ value: -363
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.z
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 2619187604372594158, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_Sprite
+ value:
+ objectReference: {fileID: 7637870703528583553, guid: a8e14774cb9b81d4799116466bc09437, type: 3}
+ - target: {fileID: 3189920797946144379, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_Name
+ value: "\u6536\u85CF"
+ objectReference: {fileID: 0}
+ - target: {fileID: 3380485461544738227, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_Text
+ value: "\u5C55\u793A\u6240\u6709\u5E73\u53F0\u6536\u85CF\u7684rom"
+ objectReference: {fileID: 0}
+ - target: {fileID: 5331629140490413834, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_Alpha
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 6087025893861054323, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchorMax.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 6087025893861054323, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchorMin.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 6087025893861054323, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_SizeDelta.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 6087025893861054323, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_SizeDelta.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 6087025893861054323, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchoredPosition.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 6087025893861054323, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchoredPosition.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 6095356919362338847, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchorMax.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 6095356919362338847, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchorMin.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 6095356919362338847, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_SizeDelta.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 6095356919362338847, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchoredPosition.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 6771349210554360888, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_Sprite
+ value:
+ objectReference: {fileID: 7637870703528583553, guid: a8e14774cb9b81d4799116466bc09437, type: 3}
+ - target: {fileID: 8126322204359135913, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchorMax.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 8126322204359135913, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchorMin.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 8126322204359135913, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_SizeDelta.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 8126322204359135913, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchoredPosition.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 8126322204359135913, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchoredPosition.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 8754483333502849411, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_SizeDelta.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 8789823129857705082, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchorMax.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 8789823129857705082, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchorMin.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 8789823129857705082, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_SizeDelta.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 8789823129857705082, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_SizeDelta.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 8789823129857705082, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchoredPosition.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 8789823129857705082, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ propertyPath: m_AnchoredPosition.y
+ value: 0
+ objectReference: {fileID: 0}
+ m_RemovedComponents: []
+ m_RemovedGameObjects: []
+ m_AddedGameObjects: []
+ m_AddedComponents: []
+ m_SourcePrefab: {fileID: 100100000, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+--- !u!224 &7706441286827416620 stripped
+RectTransform:
+ m_CorrespondingSourceObject: {fileID: 1998281097548910301, guid: 2ab970ec87696e44a99fdd18821215fc, type: 3}
+ m_PrefabInstance: {fileID: 8163220276214452977}
m_PrefabAsset: {fileID: 0}
diff --git a/AxibugEmuOnline.Client/Assets/Resources/UIPrefabs/OptionUI.prefab b/AxibugEmuOnline.Client/Assets/Resources/UIPrefabs/OptionUI.prefab
index 87e53efb..325f6f89 100644
--- a/AxibugEmuOnline.Client/Assets/Resources/UIPrefabs/OptionUI.prefab
+++ b/AxibugEmuOnline.Client/Assets/Resources/UIPrefabs/OptionUI.prefab
@@ -520,6 +520,77 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
gradient: {fileID: 46877084639177849}
+--- !u!1 &1280900818828460255
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 1718494758036642021}
+ - component: {fileID: 406189280625441644}
+ - component: {fileID: 6728379839034828402}
+ m_Layer: 5
+ m_Name: BoolEdit
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &1718494758036642021
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1280900818828460255}
+ 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: 7754613193470953066}
+ m_Father: {fileID: 278706555072840209}
+ 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.5, y: 0.5}
+--- !u!114 &406189280625441644
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1280900818828460255}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_IgnoreLayout: 0
+ m_MinWidth: -1
+ m_MinHeight: -1
+ m_PreferredWidth: -1
+ m_PreferredHeight: 40
+ m_FlexibleWidth: -1
+ m_FlexibleHeight: -1
+ m_LayoutPriority: 1
+--- !u!114 &6728379839034828402
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1280900818828460255}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: c864ef7d3920dfc4cb69a86ef3af426b, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ txt_value: {fileID: 7822831767140937850}
--- !u!1 &1501213187178026014
GameObject:
m_ObjectHideFlags: 0
@@ -723,6 +794,81 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
animator: {fileID: 8744505332349586225}
+--- !u!1 &2011250662246569413
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 2971252204166660888}
+ - component: {fileID: 8603130728764424453}
+ - component: {fileID: 5558698359590655883}
+ m_Layer: 5
+ m_Name: Background
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &2971252204166660888
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2011250662246569413}
+ 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: 623010347094537687}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0.25}
+ m_AnchorMax: {x: 1, y: 0.75}
+ m_AnchoredPosition: {x: 0, y: 0}
+ m_SizeDelta: {x: 0, y: 0}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &8603130728764424453
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2011250662246569413}
+ m_CullTransparentMesh: 1
+--- !u!114 &5558698359590655883
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2011250662246569413}
+ 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: 10907, guid: 0000000000000000f000000000000000, type: 0}
+ m_Type: 1
+ 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 &2471254561136382013
GameObject:
m_ObjectHideFlags: 0
@@ -877,6 +1023,42 @@ MonoBehaviour:
m_Icon: {fileID: 394891843266770919}
ExpandFlag: {fileID: 1501213187178026014}
ApplyFlag: {fileID: 3335801350916860509}
+--- !u!1 &2660711182228429640
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 5502792356073001137}
+ m_Layer: 5
+ m_Name: Fill Area
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &5502792356073001137
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2660711182228429640}
+ 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: 9033422041994042558}
+ m_Father: {fileID: 623010347094537687}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0.25}
+ m_AnchorMax: {x: 1, y: 0.75}
+ m_AnchoredPosition: {x: -5, y: 0}
+ m_SizeDelta: {x: -20, y: 0}
+ m_Pivot: {x: 0.5, y: 0.5}
--- !u!1 &3335801350916860509
GameObject:
m_ObjectHideFlags: 0
@@ -1260,6 +1442,8 @@ RectTransform:
m_Children:
- {fileID: 2450201408575734812}
- {fileID: 7216060871118576844}
+ - {fileID: 3461365397350504029}
+ - {fileID: 1718494758036642021}
- {fileID: 816049057894123782}
m_Father: {fileID: 4478785627166277610}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@@ -1283,6 +1467,8 @@ MonoBehaviour:
m_MenuNameTxt: {fileID: 6349204039935213934}
m_Icon: {fileID: 1062489471918314902}
com_floatEdit: {fileID: 3979886008433050043}
+ com_intEdit: {fileID: 7283495606979218283}
+ com_boolEdit: {fileID: 6728379839034828402}
com_enumEdit: {fileID: 3614321873420207159}
--- !u!114 &4314371315188452187
MonoBehaviour:
@@ -1330,6 +1516,178 @@ MonoBehaviour:
m_FlexibleWidth: -1
m_FlexibleHeight: -1
m_LayoutPriority: 1
+--- !u!1 &5368404913088401643
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 5211094055976679099}
+ m_Layer: 5
+ m_Name: Handle Slide Area
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &5211094055976679099
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 5368404913088401643}
+ 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: 4027954690118145370}
+ m_Father: {fileID: 623010347094537687}
+ 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!1 &5564584920301875764
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 7900345916139696652}
+ - component: {fileID: 4039086934110648845}
+ m_Layer: 5
+ m_Name: content
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &7900345916139696652
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 5564584920301875764}
+ 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: 623010347094537687}
+ - {fileID: 345486178931433765}
+ m_Father: {fileID: 3461365397350504029}
+ 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!114 &4039086934110648845
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 5564584920301875764}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 30649d3a9faa99c48a7b1166b86bf2a0, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_ChildAlignment: 0
+ m_Spacing: 5
+ m_ChildForceExpandWidth: 1
+ m_ChildForceExpandHeight: 1
+ m_ChildControlWidth: 1
+ m_ChildControlHeight: 1
+ m_ChildScaleWidth: 0
+ m_ChildScaleHeight: 0
+ m_ReverseArrangement: 0
+--- !u!1 &5830336849912211446
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 3461365397350504029}
+ - component: {fileID: 9093150501524936851}
+ - component: {fileID: 7283495606979218283}
+ m_Layer: 5
+ m_Name: IntEdit
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &3461365397350504029
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 5830336849912211446}
+ 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: 7900345916139696652}
+ m_Father: {fileID: 278706555072840209}
+ 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.5, y: 0.5}
+--- !u!114 &9093150501524936851
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 5830336849912211446}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_IgnoreLayout: 0
+ m_MinWidth: -1
+ m_MinHeight: -1
+ m_PreferredWidth: -1
+ m_PreferredHeight: 40
+ m_FlexibleWidth: -1
+ m_FlexibleHeight: -1
+ m_LayoutPriority: 1
+--- !u!114 &7283495606979218283
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 5830336849912211446}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: abad743de1574354f99efc5054aa6b43, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ slider: {fileID: 5919193658528722431}
+ txt_value: {fileID: 6075532957906331759}
--- !u!1 &5894141955990945432
GameObject:
m_ObjectHideFlags: 0
@@ -1394,6 +1752,217 @@ MonoBehaviour:
m_ChildScaleWidth: 0
m_ChildScaleHeight: 0
m_ReverseArrangement: 0
+--- !u!1 &6033457221832404715
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 8543458054403131507}
+ - component: {fileID: 6646371810488858664}
+ - component: {fileID: 7822831767140937850}
+ - component: {fileID: 3722671482862039384}
+ m_Layer: 5
+ m_Name: value
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &8543458054403131507
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6033457221832404715}
+ 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: 7754613193470953066}
+ 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.5, y: 0.5}
+--- !u!222 &6646371810488858664
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6033457221832404715}
+ m_CullTransparentMesh: 1
+--- !u!114 &7822831767140937850
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6033457221832404715}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, 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_FontData:
+ m_Font: {fileID: 12800000, guid: 33a3bdf8f6bd1ec4eba7c4bc58183212, type: 3}
+ m_FontSize: 20
+ m_FontStyle: 0
+ m_BestFit: 0
+ m_MinSize: 2
+ m_MaxSize: 40
+ m_Alignment: 4
+ m_AlignByGeometry: 0
+ m_RichText: 1
+ m_HorizontalOverflow: 0
+ m_VerticalOverflow: 1
+ m_LineSpacing: 1
+ m_Text: ENUMNAME
+--- !u!114 &3722671482862039384
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6033457221832404715}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_IgnoreLayout: 0
+ m_MinWidth: -1
+ m_MinHeight: -1
+ m_PreferredWidth: -1
+ m_PreferredHeight: -1
+ m_FlexibleWidth: 1
+ m_FlexibleHeight: -1
+ m_LayoutPriority: 1
+--- !u!1 &6058311224544485353
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 623010347094537687}
+ - component: {fileID: 5919193658528722431}
+ - component: {fileID: 5682207136112565641}
+ m_Layer: 5
+ m_Name: Slider
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &623010347094537687
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6058311224544485353}
+ 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: 2971252204166660888}
+ - {fileID: 5502792356073001137}
+ - {fileID: 5211094055976679099}
+ m_Father: {fileID: 7900345916139696652}
+ 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.5, y: 0.5}
+--- !u!114 &5919193658528722431
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6058311224544485353}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 67db9e8f0e2ae9c40bc1e2b64352a6b4, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Navigation:
+ m_Mode: 3
+ m_WrapAround: 0
+ m_SelectOnUp: {fileID: 0}
+ m_SelectOnDown: {fileID: 0}
+ m_SelectOnLeft: {fileID: 0}
+ m_SelectOnRight: {fileID: 0}
+ m_Transition: 0
+ m_Colors:
+ m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
+ m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+ m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
+ m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+ m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
+ m_ColorMultiplier: 1
+ m_FadeDuration: 0.1
+ m_SpriteState:
+ m_HighlightedSprite: {fileID: 0}
+ m_PressedSprite: {fileID: 0}
+ m_SelectedSprite: {fileID: 0}
+ m_DisabledSprite: {fileID: 0}
+ m_AnimationTriggers:
+ m_NormalTrigger: Normal
+ m_HighlightedTrigger: Highlighted
+ m_PressedTrigger: Pressed
+ m_SelectedTrigger: Selected
+ m_DisabledTrigger: Disabled
+ m_Interactable: 1
+ m_TargetGraphic: {fileID: 3790767580891084363}
+ m_FillRect: {fileID: 9033422041994042558}
+ m_HandleRect: {fileID: 4027954690118145370}
+ m_Direction: 0
+ m_MinValue: 0
+ m_MaxValue: 1
+ m_WholeNumbers: 0
+ m_Value: 0
+ m_OnValueChanged:
+ m_PersistentCalls:
+ m_Calls: []
+--- !u!114 &5682207136112565641
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6058311224544485353}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_IgnoreLayout: 0
+ m_MinWidth: -1
+ m_MinHeight: -1
+ m_PreferredWidth: -1
+ m_PreferredHeight: -1
+ m_FlexibleWidth: 5
+ m_FlexibleHeight: -1
+ m_LayoutPriority: 1
--- !u!1 &6312116949113707702
GameObject:
m_ObjectHideFlags: 0
@@ -1466,6 +2035,106 @@ MonoBehaviour:
m_EditorClassIdentifier:
slider: {fileID: 6489571631904078165}
txt_value: {fileID: 6176548475786947694}
+--- !u!1 &6551251729527098609
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 345486178931433765}
+ - component: {fileID: 7323868397581272064}
+ - component: {fileID: 6075532957906331759}
+ - component: {fileID: 6388778664118236617}
+ m_Layer: 5
+ m_Name: value
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &345486178931433765
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6551251729527098609}
+ 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: 7900345916139696652}
+ 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.5, y: 0.5}
+--- !u!222 &7323868397581272064
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6551251729527098609}
+ m_CullTransparentMesh: 1
+--- !u!114 &6075532957906331759
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6551251729527098609}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, 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_FontData:
+ m_Font: {fileID: 12800000, guid: 33a3bdf8f6bd1ec4eba7c4bc58183212, type: 3}
+ m_FontSize: 20
+ m_FontStyle: 0
+ m_BestFit: 1
+ m_MinSize: 2
+ m_MaxSize: 20
+ m_Alignment: 4
+ m_AlignByGeometry: 0
+ m_RichText: 1
+ m_HorizontalOverflow: 0
+ m_VerticalOverflow: 1
+ m_LineSpacing: 1
+ m_Text: 0
+--- !u!114 &6388778664118236617
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6551251729527098609}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_IgnoreLayout: 0
+ m_MinWidth: -1
+ m_MinHeight: -1
+ m_PreferredWidth: 50
+ m_PreferredHeight: -1
+ m_FlexibleWidth: -1
+ m_FlexibleHeight: -1
+ m_LayoutPriority: 1
--- !u!1 &6669948312920191200
GameObject:
m_ObjectHideFlags: 0
@@ -1675,6 +2344,144 @@ MonoBehaviour:
m_EffectColor: {r: 0, g: 0, b: 0, a: 0.5}
m_EffectDistance: {x: 1.5, y: -1.5}
m_UseGraphicAlpha: 1
+--- !u!1 &7579340952198812870
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 9033422041994042558}
+ - component: {fileID: 9210239002563918603}
+ - component: {fileID: 4055457614720979564}
+ m_Layer: 5
+ m_Name: Fill
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &9033422041994042558
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 7579340952198812870}
+ 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: 5502792356073001137}
+ 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: 10, y: 0}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &9210239002563918603
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 7579340952198812870}
+ m_CullTransparentMesh: 1
+--- !u!114 &4055457614720979564
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 7579340952198812870}
+ 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: 10905, guid: 0000000000000000f000000000000000, type: 0}
+ m_Type: 1
+ 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 &7928927824150591534
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 7754613193470953066}
+ - component: {fileID: 4099568322977131793}
+ m_Layer: 5
+ m_Name: content
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &7754613193470953066
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 7928927824150591534}
+ 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: 8543458054403131507}
+ m_Father: {fileID: 1718494758036642021}
+ 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!114 &4099568322977131793
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 7928927824150591534}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 30649d3a9faa99c48a7b1166b86bf2a0, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Padding:
+ m_Left: 0
+ m_Right: 0
+ m_Top: 0
+ m_Bottom: 0
+ m_ChildAlignment: 0
+ m_Spacing: 5
+ m_ChildForceExpandWidth: 1
+ m_ChildForceExpandHeight: 1
+ m_ChildControlWidth: 1
+ m_ChildControlHeight: 1
+ m_ChildScaleWidth: 0
+ m_ChildScaleHeight: 0
+ m_ReverseArrangement: 0
--- !u!1 &8045610840842517781
GameObject:
m_ObjectHideFlags: 0
@@ -2064,6 +2871,81 @@ MonoBehaviour:
m_FlexibleWidth: -1
m_FlexibleHeight: -1
m_LayoutPriority: 1
+--- !u!1 &8670820869058111882
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 4027954690118145370}
+ - component: {fileID: 4961390550090550147}
+ - component: {fileID: 3790767580891084363}
+ m_Layer: 5
+ m_Name: Handle
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &4027954690118145370
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 8670820869058111882}
+ 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: 5211094055976679099}
+ 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: 20, y: -20}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &4961390550090550147
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 8670820869058111882}
+ m_CullTransparentMesh: 1
+--- !u!114 &3790767580891084363
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 8670820869058111882}
+ 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: 10911, guid: 0000000000000000f000000000000000, type: 0}
+ m_Type: 1
+ 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 &8884391103430529053
GameObject:
m_ObjectHideFlags: 0
diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/App.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/App.cs
index f8b50ce9..2f394d93 100644
--- a/AxibugEmuOnline.Client/Assets/Script/AppMain/App.cs
+++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/App.cs
@@ -1,249 +1,253 @@
-using AxibugEmuOnline.Client.Manager;
-using AxibugEmuOnline.Client.Network;
-using AxibugProtobuf;
-using System;
-using System.Collections;
-using System.IO;
-using System.Threading.Tasks;
-using UnityEngine;
-using static AxibugEmuOnline.Client.HttpAPI;
-using static AxibugEmuOnline.Client.Manager.LogManager;
-
-namespace AxibugEmuOnline.Client.ClientCore
-{
- public static class App
- {
- public static string TokenStr;
- public static string IP;
- public static int Port;
- public static LogManager log;
- public static NetworkHelper network;
- public static AppLogin login;
- public static AppChat chat;
- public static UserDataManager user;
- //public static AppNetGame netgame;
- public static AppEmu emu;
+using AxibugEmuOnline.Client.Manager;
+using AxibugEmuOnline.Client.Network;
+using AxibugProtobuf;
+using System;
+using System.Collections;
+using System.IO;
+using System.Threading.Tasks;
+using UnityEngine;
+using static AxibugEmuOnline.Client.HttpAPI;
+using static AxibugEmuOnline.Client.Manager.LogManager;
+
+namespace AxibugEmuOnline.Client.ClientCore
+{
+ public static class App
+ {
+ public static string TokenStr;
+ public static string IP;
+ public static int Port;
+ public static LogManager log;
+ public static NetworkHelper network;
+ public static AppLogin login;
+ public static AppChat chat;
+ public static UserDataManager user;
+ public static AppEmu emu;
///
/// nes Rom库
- ///
- public static RomLib nesRomLib;
+ ///
+ public static RomLib nesRomLib;
///
/// 收藏 Rom库
- ///
- public static RomLib starRomLib;
- public static HttpAPI httpAPI;
- public static CacheManager CacheMgr;
- public static AppRoom roomMgr;
- public static AppSettings settings;
- public static AppShare share;
- private static object gameSavMgr;
- static bool bTest;
- static string mTestSrvIP;
- #region Mono
- public static TickLoop tickLoop;
- private static CoroutineRunner coRunner;
-
-#if UNITY_PSP2
- public static SonyVitaCommonDialog sonyVitaCommonDialog;
-#endif
-
- #endregion
-
-#if UNITY_PSP2 && !UNITY_EDITOR //PSV真机
- public static string PersistentDataPath => "ux0:data/AxibugEmu";
-#else
- public static string PersistentDataPath => Application.persistentDataPath;
-#endif
- public static void Init(bool isTest = false, string testSrvIP = "", bool bUseLocalWebApi = false, string mLocalWebApi = "")
- {
- log = new LogManager(OnLogOut);
-
- //其他平台必要的初始化
- if (UnityEngine.Application.platform == RuntimePlatform.PSP2)
- {
- PSP2Init();
- }
-
- settings = new AppSettings();
- network = new NetworkHelper();
- login = new AppLogin();
- chat = new AppChat();
- user = new UserDataManager();
- emu = new AppEmu();
- //netgame = new AppNetGame();
- httpAPI = new HttpAPI();
- if (bUseLocalWebApi)
- httpAPI.WebHost = mLocalWebApi;
- nesRomLib = new RomLib(RomPlatformType.Nes);
- starRomLib = new RomLib();
- CacheMgr = new CacheManager();
- roomMgr = new AppRoom();
- share = new AppShare();
- gameSavMgr = new AppGameSavMgr();
- bTest = isTest;
- mTestSrvIP = testSrvIP;
- var go = new GameObject("[AppAxibugEmuOnline]");
- GameObject.DontDestroyOnLoad(go);
- tickLoop = go.AddComponent();
- coRunner = go.AddComponent();
-
-
- var importNode = GameObject.Find("IMPORTENT");
- if (importNode != null) GameObject.DontDestroyOnLoad(importNode);
-
- StartCoroutine(AppTickFlow());
- RePullNetInfo();
- }
-
-
- private static void PSP2Init()
- {
- //PSVita最好手动创建目录
- if (!Directory.Exists(PersistentDataPath))
- Directory.CreateDirectory(PersistentDataPath);
-
-#if UNITY_PSP2
- //创建PSV弹窗UI
- sonyVitaCommonDialog = new GameObject().AddComponent();
- //释放解码 FMV的26M内存,一般游戏用不上(PSP才用那破玩意儿)
- UnityEngine.PSVita.PSVitaVideoPlayer.TransferMemToMonoHeap();
-#endif
-
- }
-
- private static IEnumerator AppTickFlow()
- {
- while (true)
- {
- Tick();
- yield return null;
- }
- }
-
- public static void RePullNetInfo()
- {
- StartCoroutine(StartNetInit());
- }
-
- static IEnumerator StartNetInit()
- {
- if (App.network.isConnected)
- yield break;
-
- int platform = 0;
- if (bTest)
- {
- yield return null;
- Connect(mTestSrvIP, 10492);
- yield break;
- }
-
- bool bHttpCheckDone = false;
- Resp_CheckStandInfo resp = null;
- while (true)
- {
- AxiHttpProxy.SendWebRequestProxy request = AxiHttpProxy.Get($"{App.httpAPI.WebSiteApi}/CheckStandInfo?platform={platform}&version={Application.version}");
- yield return request.SendWebRequest;
- if (!request.downloadHandler.isDone)
- {
- bHttpCheckDone = false;
- }
- else if (request.downloadHandler.bHadErr)
- {
- bHttpCheckDone = false;
- App.log.Error(request.downloadHandler.ErrInfo);
- }
- else
- {
- try
- {
- resp = JsonUtility.FromJson(request.downloadHandler.text);
- bHttpCheckDone = true;
- }
- catch (Exception ex)
- {
- bHttpCheckDone = false;
- App.log.Error(ex.ToString());
- }
- }
-
- //请求成功
- if (bHttpCheckDone)
- {
- break;
- }
- else
- {
- yield return new WaitForSeconds(1);
- App.log.Debug("请求失败,重试请求API...");
- }
- }
-
- /*UnityWebRequest request = UnityWebRequest.Get($"{App.httpAPI.WebSiteApi}/CheckStandInfo?platform={platform}&version={Application.version}");
- yield return request.SendWebRequest();
-
- if (request.result != UnityWebRequest.Result.Success)
- yield break;
-
- App.log.Debug($"ApiResp => {request.downloadHandler.text}");
- Resp_CheckStandInfo resp = JsonUtility.FromJson(request.downloadHandler.text);*/
-
- //需要更新
- if (resp.needUpdateClient == 1)
- {
- //TODO
- }
-
- yield return null;
- //Connect("127.0.0.1", 10492);
- Connect(resp.serverIp, resp.serverPort);
- }
-
- private static void Tick()
- {
- nesRomLib.ExecuteFetchRomInfo();
- }
-
- public static Coroutine StartCoroutine(IEnumerator itor)
- {
- return coRunner.StartCoroutine(itor);
- }
-
- public static void StopCoroutine(Coroutine cor)
- {
- coRunner.StopCoroutine(cor);
- }
-
- public static void Connect(string IP, int port)
- {
- Task task = new Task(() =>
- {
- network.Init(IP, port);
- });
- task.Start();
- }
-
- public static void Close()
- {
- App.log.Info("停止");
- }
- static void OnLogOut(int LogLevel, string msg)
- {
- E_LogType logType = (E_LogType)LogLevel;
- switch (logType)
- {
- case E_LogType.Debug:
- case E_LogType.Info:
- Debug.Log("[AxiNet]:" + msg);
- break;
- case E_LogType.Warning:
- Debug.LogWarning("[AxiNet]:" + msg);
- break;
- case E_LogType.Error:
- Debug.LogError("[AxiNet]:" + msg);
- break;
- }
- }
-
- }
+ ///
+ public static RomLib starRomLib;
+ public static HttpAPI httpAPI;
+ public static CacheManager CacheMgr;
+ public static AppRoom roomMgr;
+ public static AppSettings settings;
+ public static AppShare share;
+ public static GamePadManager gamePadMgr;
+ private static object gameSavMgr;
+ static bool bTest;
+ static string mTestSrvIP;
+ #region Mono
+ public static TickLoop tickLoop;
+ private static CoroutineRunner coRunner;
+
+#if UNITY_PSP2
+ public static SonyVitaCommonDialog sonyVitaCommonDialog;
+#endif
+
+ #endregion
+
+#if UNITY_PSP2 && !UNITY_EDITOR //PSV真机
+ public static string PersistentDataPath => "ux0:data/AxibugEmu";
+#else
+ public static string PersistentDataPath => Application.persistentDataPath;
+#endif
+ public static void Init(bool isTest = false, string testSrvIP = "", bool bUseLocalWebApi = false, string mLocalWebApi = "")
+ {
+ log = new LogManager(OnLogOut);
+
+ //其他平台必要的初始化
+ if (UnityEngine.Application.platform == RuntimePlatform.PSP2)
+ {
+ PSP2Init();
+ }
+
+ settings = new AppSettings();
+ network = new NetworkHelper();
+ login = new AppLogin();
+ chat = new AppChat();
+ user = new UserDataManager();
+ emu = new AppEmu();
+ httpAPI = new HttpAPI();
+ if (bUseLocalWebApi)
+ httpAPI.WebHost = mLocalWebApi;
+ nesRomLib = new RomLib(RomPlatformType.Nes);
+ starRomLib = new RomLib();
+ CacheMgr = new CacheManager();
+ roomMgr = new AppRoom();
+ share = new AppShare();
+ gameSavMgr = new AppGameSavMgr();
+ gamePadMgr = new GamePadManager();
+
+ bTest = isTest;
+ mTestSrvIP = testSrvIP;
+ var go = new GameObject("[AppAxibugEmuOnline]");
+ GameObject.DontDestroyOnLoad(go);
+ tickLoop = go.AddComponent();
+ coRunner = go.AddComponent();
+
+
+ var importNode = GameObject.Find("IMPORTENT");
+ if (importNode != null) GameObject.DontDestroyOnLoad(importNode);
+
+ StartCoroutine(AppTickFlow());
+ RePullNetInfo();
+ }
+
+
+ private static void PSP2Init()
+ {
+ //PSVita最好手动创建目录
+ if (!Directory.Exists(PersistentDataPath))
+ Directory.CreateDirectory(PersistentDataPath);
+
+#if UNITY_PSP2
+ //创建PSV弹窗UI
+ sonyVitaCommonDialog = new GameObject().AddComponent();
+ //释放解码 FMV的26M内存,一般游戏用不上(PSP才用那破玩意儿)
+ UnityEngine.PSVita.PSVitaVideoPlayer.TransferMemToMonoHeap();
+#endif
+
+ }
+
+ private static IEnumerator AppTickFlow()
+ {
+ while (true)
+ {
+ Tick();
+ yield return null;
+ }
+ }
+
+ public static void RePullNetInfo()
+ {
+ StartCoroutine(StartNetInit());
+ }
+
+ static IEnumerator StartNetInit()
+ {
+ if (App.network.isConnected)
+ yield break;
+
+ int platform = 0;
+ if (bTest)
+ {
+ yield return null;
+ Connect(mTestSrvIP, 10492);
+ yield break;
+ }
+
+ bool bHttpCheckDone = false;
+ Resp_CheckStandInfo resp = null;
+ while (true)
+ {
+ AxiHttpProxy.SendWebRequestProxy request = AxiHttpProxy.Get($"{App.httpAPI.WebSiteApi}/CheckStandInfo?platform={platform}&version={Application.version}");
+ yield return request.SendWebRequest;
+ if (!request.downloadHandler.isDone)
+ {
+ bHttpCheckDone = false;
+ }
+ else if (request.downloadHandler.bHadErr)
+ {
+ bHttpCheckDone = false;
+ App.log.Error(request.downloadHandler.ErrInfo);
+ }
+ else
+ {
+ try
+ {
+ resp = JsonUtility.FromJson(request.downloadHandler.text);
+ bHttpCheckDone = true;
+ }
+ catch (Exception ex)
+ {
+ bHttpCheckDone = false;
+ App.log.Error(ex.ToString());
+ }
+ }
+
+ //请求成功
+ if (bHttpCheckDone)
+ {
+ break;
+ }
+ else
+ {
+ yield return new WaitForSeconds(1);
+ App.log.Debug("请求失败,重试请求API...");
+ }
+ }
+
+ /*UnityWebRequest request = UnityWebRequest.Get($"{App.httpAPI.WebSiteApi}/CheckStandInfo?platform={platform}&version={Application.version}");
+ yield return request.SendWebRequest();
+
+ if (request.result != UnityWebRequest.Result.Success)
+ yield break;
+
+ App.log.Debug($"ApiResp => {request.downloadHandler.text}");
+ Resp_CheckStandInfo resp = JsonUtility.FromJson(request.downloadHandler.text);*/
+
+ //需要更新
+ if (resp.needUpdateClient == 1)
+ {
+ //TODO
+ }
+
+ yield return null;
+ //Connect("127.0.0.1", 10492);
+ Connect(resp.serverIp, resp.serverPort);
+ }
+
+ private static void Tick()
+ {
+ nesRomLib.ExecuteFetchRomInfo();
+ starRomLib.ExecuteFetchRomInfo();
+
+ gamePadMgr.Update();
+ }
+
+ public static Coroutine StartCoroutine(IEnumerator itor)
+ {
+ return coRunner.StartCoroutine(itor);
+ }
+
+ public static void StopCoroutine(Coroutine cor)
+ {
+ coRunner.StopCoroutine(cor);
+ }
+
+ public static void Connect(string IP, int port)
+ {
+ Task task = new Task(() =>
+ {
+ network.Init(IP, port);
+ });
+ task.Start();
+ }
+
+ public static void Close()
+ {
+ App.log.Info("停止");
+ }
+ static void OnLogOut(int LogLevel, string msg)
+ {
+ E_LogType logType = (E_LogType)LogLevel;
+ switch (logType)
+ {
+ case E_LogType.Debug:
+ case E_LogType.Info:
+ Debug.Log("[AxiNet]:" + msg);
+ break;
+ case E_LogType.Warning:
+ Debug.LogWarning("[AxiNet]:" + msg);
+ break;
+ case E_LogType.Error:
+ Debug.LogError("[AxiNet]:" + msg);
+ break;
+ }
+ }
+
+ }
}
\ No newline at end of file
diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/Initer.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/Initer.cs
index b0834165..881a74da 100644
--- a/AxibugEmuOnline.Client/Assets/Script/AppMain/Initer.cs
+++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/Initer.cs
@@ -1,50 +1,51 @@
-using AxibugEmuOnline.Client.ClientCore;
-using UnityEngine;
-
-namespace AxibugEmuOnline.Client
-{
- public class Initer : MonoBehaviour
- {
- static GlobalRef m_refs;
- public static CanvasGroup FilterPreview => m_refs.FilterPreview;
- public static CanvasGroup XMBBg => m_refs.XMBBg;
-
- public static string dev_UUID;
-
- [SerializeField]
+using AxibugEmuOnline.Client.ClientCore;
+using System.Text;
+using UnityEngine;
+
+namespace AxibugEmuOnline.Client
+{
+ public class Initer : MonoBehaviour
+ {
+ static GlobalRef m_refs;
+ public static CanvasGroup FilterPreview => m_refs.FilterPreview;
+ public static CanvasGroup XMBBg => m_refs.XMBBg;
+
+ public static string dev_UUID;
+
+ [SerializeField]
GameObject IMPORTENT;
-#if UNITY_EDITOR
- public bool bTestSkipWebApiToConServer = false;
- public string mTestSrvIP = "192.168.0.47";
- public bool bUseLocalWebApi = false;
- public string mLocalWebApi = "http://localhost:5051";
- public bool bEditorUUID = false;
-#endif
-
- private void Awake()
+#if UNITY_EDITOR
+ public bool bTestSkipWebApiToConServer = false;
+ public string mTestSrvIP = "192.168.0.47";
+ public bool bUseLocalWebApi = false;
+ public string mLocalWebApi = "http://localhost:5051";
+ public bool bEditorUUID = false;
+#endif
+
+ private void Awake()
{
-#if UNITY_EDITOR
- App.Init(bTestSkipWebApiToConServer, mTestSrvIP, bUseLocalWebApi,mLocalWebApi);
- dev_UUID = SystemInfo.deviceUniqueIdentifier;
+#if UNITY_EDITOR
+ App.Init(bTestSkipWebApiToConServer, mTestSrvIP, bUseLocalWebApi,mLocalWebApi);
+ dev_UUID = SystemInfo.deviceUniqueIdentifier;
if (bEditorUUID)
- {
- dev_UUID += "_Editor";
- }
-#else
- App.Init(this);
- dev_UUID = SystemInfo.deviceUniqueIdentifier;
-#endif
-
+ {
+ dev_UUID += "_Editor";
+ }
+#else
+ App.Init(this);
+ dev_UUID = SystemInfo.deviceUniqueIdentifier;
+#endif
+
m_refs = Instantiate(IMPORTENT, transform).GetComponent();
- }
-
+ }
+
private void Start()
{
App.settings.Filter.ShutDownFilterPreview();
App.settings.Filter.ShutDownFilter();
- }
- }
-}
+ }
+ }
+}
diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/FilterChainEffect.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/FilterChainEffect.cs
index 6508fad7..0807fb89 100644
--- a/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/FilterChainEffect.cs
+++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/FilterChainEffect.cs
@@ -1,160 +1,160 @@
-using Assets.Script.AppMain.Filter;
-using AxibugEmuOnline.Client;
-using System.Collections.Generic;
-using UnityEngine;
-using UnityEngine.Experimental.Rendering;
-
-public abstract class FilterChainEffect : FilterEffect
-{
- #region SealedForDisable
- protected sealed override string ShaderName => null;
- protected sealed override void OnInit(Material renderMat) { }
-
+using Assets.Script.AppMain.Filter;
+using AxibugEmuOnline.Client;
+using System.Collections.Generic;
+using UnityEngine;
+using UnityEngine.Experimental.Rendering;
+
+public abstract class FilterChainEffect : FilterEffect
+{
+ #region SealedForDisable
+ protected sealed override string ShaderName => null;
+ protected sealed override void OnInit(Material renderMat) { }
+
public sealed override void Render(Texture src, RenderTexture result)
{
- OnRenderer(src, result);
- }
- protected sealed override void OnRenderer(Material renderMat, Texture src, RenderTexture result) { }
- #endregion
-
- List m_passes = new List();
-
- static int Original;
- static int OriginalSize;
- static int Source;
- static int SourceSize;
- static int FrameCount;
- static int OutputSize;
-
- List m_passOutputTexNames = new List();
- List m_passOutputTexSizes = new List();
-
- static FilterChainEffect()
- {
- Original = Shader.PropertyToID(nameof(Original));
- OriginalSize = Shader.PropertyToID(nameof(OriginalSize));
- Source = Shader.PropertyToID(nameof(Source));
- SourceSize = Shader.PropertyToID(nameof(SourceSize));
- FrameCount = Shader.PropertyToID(nameof(FrameCount));
- OutputSize = Shader.PropertyToID(nameof(OutputSize));
- }
-
- protected sealed override void Init()
- {
- DefinePasses(ref m_passes);
- for (int i = 0; i < m_passes.Count; i++)
- {
- m_passes[i].Init(i);
- m_passOutputTexNames.Add(Shader.PropertyToID(m_passes[i].NormalOutputTextureName));
- m_passOutputTexSizes.Add(Shader.PropertyToID($"{m_passes[i].NormalOutputTextureName}Size"));
+ OnRenderer(src, result);
+ }
+ protected sealed override void OnRenderer(Material renderMat, Texture src, RenderTexture result) { }
+ #endregion
+
+ List m_passes = new List();
+
+ static int Original;
+ static int OriginalSize;
+ static int Source;
+ static int SourceSize;
+ static int FrameCount;
+ static int OutputSize;
+
+ List m_passOutputTexNames = new List();
+ List m_passOutputTexSizes = new List();
+
+ static FilterChainEffect()
+ {
+ Original = Shader.PropertyToID(nameof(Original));
+ OriginalSize = Shader.PropertyToID(nameof(OriginalSize));
+ Source = Shader.PropertyToID(nameof(Source));
+ SourceSize = Shader.PropertyToID(nameof(SourceSize));
+ FrameCount = Shader.PropertyToID(nameof(FrameCount));
+ OutputSize = Shader.PropertyToID(nameof(OutputSize));
+ }
+
+ protected sealed override void Init()
+ {
+ DefinePasses(ref m_passes);
+ for (int i = 0; i < m_passes.Count; i++)
+ {
+ m_passes[i].Init(i);
+ m_passOutputTexNames.Add(Shader.PropertyToID(m_passes[i].NormalOutputTextureName));
+ m_passOutputTexSizes.Add(Shader.PropertyToID($"{m_passes[i].NormalOutputTextureName}Size"));
if (m_passes[i].AliasOutputTextureName != null)
{
m_passOutputTexNames.Add(Shader.PropertyToID(m_passes[i].AliasOutputTextureName));
- m_passOutputTexSizes.Add(Shader.PropertyToID($"{m_passes[i].AliasOutputTextureName}Size"));
- }
- }
- }
-
- Dictionary m_outputCaches = new Dictionary();
- private void OnRenderer(Texture input, RenderTexture finalOut)
- {
- m_outputCaches.Clear();
-
- Vector4 originalSize = new Vector4(input.width, input.height, 1f / input.width, 1f / input.height);
-
- Texture lastoutput = input;
- for (int i = 0; i < m_passes.Count; i++)
- {
- var pass = m_passes[i];
- pass.OnRender();
-
- pass.Mat.SetTexture(Original, input);
- pass.Mat.SetVector(OriginalSize, originalSize);
- pass.Mat.SetTexture(Source, lastoutput);
+ m_passOutputTexSizes.Add(Shader.PropertyToID($"{m_passes[i].AliasOutputTextureName}Size"));
+ }
+ }
+ }
+
+ Dictionary m_outputCaches = new Dictionary();
+ private void OnRenderer(Texture input, RenderTexture finalOut)
+ {
+ m_outputCaches.Clear();
+
+ Vector4 originalSize = new Vector4(input.width, input.height, 1f / input.width, 1f / input.height);
+
+ Texture lastoutput = input;
+ for (int i = 0; i < m_passes.Count; i++)
+ {
+ var pass = m_passes[i];
+ pass.OnRender();
+
+ pass.Mat.SetTexture(Original, input);
+ pass.Mat.SetVector(OriginalSize, originalSize);
+ pass.Mat.SetTexture(Source, lastoutput);
pass.Mat.SetVector(SourceSize, new Vector4(lastoutput.width, lastoutput.height, 1f / lastoutput.width, 1f / lastoutput.height));
- pass.Mat.SetFloat(FrameCount, Time.frameCount);
-
- for (int index = 0; index < m_passOutputTexNames.Count; index++)
- {
- var existoutput = m_passOutputTexNames[index];
- var existoutputSize = m_passOutputTexSizes[index];
+ pass.Mat.SetFloat(FrameCount, Time.frameCount);
+
+ for (int index = 0; index < m_passOutputTexNames.Count; index++)
+ {
+ var existoutput = m_passOutputTexNames[index];
+ var existoutputSize = m_passOutputTexSizes[index];
if (m_outputCaches.TryGetValue(existoutput, out var passOutput))
{
if (pass.Mat.HasTexture(existoutput))
pass.Mat.SetTexture(existoutput, passOutput);
if (pass.Mat.HasVector(existoutputSize))
- pass.Mat.SetVector(existoutputSize, new Vector4(passOutput.width, passOutput.height, 1f / passOutput.width, 1f / passOutput.height));
- }
- }
-
+ pass.Mat.SetVector(existoutputSize, new Vector4(passOutput.width, passOutput.height, 1f / passOutput.width, 1f / passOutput.height));
+ }
+ }
+
var output = pass.GetOutput(input, lastoutput, finalOut);
- pass.Mat.SetVector(OutputSize, new Vector4(output.width, output.height, 1f / output.width, 1f / output.height));
-
- m_outputCaches[pass.NormalOutputTextureName_PID] = output;
- if (pass.AliasOutputTextureName != null) m_outputCaches[pass.AliasOutputTextureName_PID] = output;
-
- Graphics.Blit(lastoutput, output, pass.Mat);
-
- lastoutput = output;
- }
-
- Graphics.Blit(lastoutput, finalOut);
-
- foreach (var rt in m_outputCaches.Values)
- RenderTexture.ReleaseTemporary(rt);
- }
-
- protected abstract void DefinePasses(ref List passes);
-
- public class PassDefine
+ pass.Mat.SetVector(OutputSize, new Vector4(output.width, output.height, 1f / output.width, 1f / output.height));
+
+ m_outputCaches[pass.NormalOutputTextureName_PID] = output;
+ if (pass.AliasOutputTextureName != null) m_outputCaches[pass.AliasOutputTextureName_PID] = output;
+
+ Graphics.Blit(lastoutput, output, pass.Mat);
+
+ lastoutput = output;
+ }
+
+ Graphics.Blit(lastoutput, finalOut);
+
+ foreach (var rt in m_outputCaches.Values)
+ RenderTexture.ReleaseTemporary(rt);
+ }
+
+ protected abstract void DefinePasses(ref List passes);
+
+ public class PassDefine
{
- public string ShaderName { get; private set; }
- public FilterMode FilterMode { get; private set; }
- public TextureWrapMode WrapMode { get; private set; }
+ public string ShaderName { get; private set; }
+ public FilterMode FilterMode { get; private set; }
+ public TextureWrapMode WrapMode { get; private set; }
public EnumScaleMode ScaleModeX { get; private set; }
- public EnumScaleMode ScaleModeY { get; private set; }
- public float ScaleX { get; private set; }
- public float ScaleY { get; private set; }
- public string AliasOutputTextureName { get; private set; }
- public int AliasOutputTextureName_PID { get; private set; }
- public string NormalOutputTextureName { get; private set; }
- public int NormalOutputTextureName_PID { get; private set; }
+ public EnumScaleMode ScaleModeY { get; private set; }
+ public float ScaleX { get; private set; }
+ public float ScaleY { get; private set; }
+ public string AliasOutputTextureName { get; private set; }
+ public int AliasOutputTextureName_PID { get; private set; }
+ public string NormalOutputTextureName { get; private set; }
+ public int NormalOutputTextureName_PID { get; private set; }
public bool sRGB { get; private set; }
-
- private PassDefine() { }
-
- public static PassDefine Create(
- string shaderName,
- FilterMode filterMode = FilterMode.Point,
- TextureWrapMode wrapMode = TextureWrapMode.Clamp,
- EnumScaleMode scaleModeX = EnumScaleMode.Source, EnumScaleMode scaleModeY = EnumScaleMode.Source, float scaleX = 1f, float scaleY = 1f,
- string outputAlias = null,
- bool sRGB = false
- )
- {
- return new PassDefine()
- {
- ShaderName = shaderName,
- FilterMode = filterMode,
- WrapMode = wrapMode,
- ScaleModeX = scaleModeX,
- ScaleModeY = scaleModeY,
- ScaleX = scaleX,
- ScaleY = scaleY,
- AliasOutputTextureName = outputAlias,
- sRGB = sRGB,
- };
- }
-
- private Dictionary m_linkingParams = new Dictionary();
+
+ private PassDefine() { }
+
+ public static PassDefine Create(
+ string shaderName,
+ FilterMode filterMode = FilterMode.Point,
+ TextureWrapMode wrapMode = TextureWrapMode.Clamp,
+ EnumScaleMode scaleModeX = EnumScaleMode.Source, EnumScaleMode scaleModeY = EnumScaleMode.Source, float scaleX = 1f, float scaleY = 1f,
+ string outputAlias = null,
+ bool sRGB = false
+ )
+ {
+ return new PassDefine()
+ {
+ ShaderName = shaderName,
+ FilterMode = filterMode,
+ WrapMode = wrapMode,
+ ScaleModeX = scaleModeX,
+ ScaleModeY = scaleModeY,
+ ScaleX = scaleX,
+ ScaleY = scaleY,
+ AliasOutputTextureName = outputAlias,
+ sRGB = sRGB,
+ };
+ }
+
+ private Dictionary m_linkingParams = new Dictionary();
public PassDefine SetParameters(string shaderValName, FilterParameter para)
{
m_linkingParams[shaderValName] = para;
return this;
- }
-
- public int PassIndex { get; private set; }
+ }
+
+ public int PassIndex { get; private set; }
public Material Mat { get; private set; }
public void OnRender()
@@ -167,63 +167,63 @@ public abstract class FilterChainEffect : FilterEffect
if (valType == typeof(float))
Mat.SetFloat(paraName, (float)val);
}
- }
- internal void Init(int passIndex)
- {
- Mat = new Material(Shader.Find(ShaderName));
- PassIndex = passIndex;
- NormalOutputTextureName = $"PassOutput{passIndex}";
- NormalOutputTextureName_PID = Shader.PropertyToID(NormalOutputTextureName);
-
- if (AliasOutputTextureName != null) AliasOutputTextureName_PID = Shader.PropertyToID(AliasOutputTextureName);
- }
-
- internal RenderTexture GetOutput(Texture original, Texture source, Texture final)
- {
- int width = 0;
- switch (ScaleModeX)
- {
- case EnumScaleMode.Viewport:
- width = (int)(final.width * ScaleX);
- break;
- case EnumScaleMode.Source:
- width = (int)(source.width * ScaleX);
- break;
- case EnumScaleMode.Absolute:
- width = (int)ScaleX;
- break;
- }
+ }
+ internal void Init(int passIndex)
+ {
+ Mat = new Material(Shader.Find(ShaderName));
+ PassIndex = passIndex;
+ NormalOutputTextureName = $"PassOutput{passIndex}";
+ NormalOutputTextureName_PID = Shader.PropertyToID(NormalOutputTextureName);
+
+ if (AliasOutputTextureName != null) AliasOutputTextureName_PID = Shader.PropertyToID(AliasOutputTextureName);
+ }
+
+ internal RenderTexture GetOutput(Texture original, Texture source, Texture final)
+ {
+ int width = 0;
+ switch (ScaleModeX)
+ {
+ case EnumScaleMode.Viewport:
+ width = (int)(final.width * ScaleX);
+ break;
+ case EnumScaleMode.Source:
+ width = (int)(source.width * ScaleX);
+ break;
+ case EnumScaleMode.Absolute:
+ width = (int)ScaleX;
+ break;
+ }
int height = 0;
- switch (ScaleModeY)
- {
- case EnumScaleMode.Viewport:
- height = (int)(final.height * ScaleY);
- break;
- case EnumScaleMode.Source:
- height = (int)(source.height * ScaleY);
- break;
- case EnumScaleMode.Absolute:
- height = (int)ScaleY;
- break;
- }
-
- //if (sRGB) format = GraphicsFormat.R8G8B8A8_SRGB;
+ switch (ScaleModeY)
+ {
+ case EnumScaleMode.Viewport:
+ height = (int)(final.height * ScaleY);
+ break;
+ case EnumScaleMode.Source:
+ height = (int)(source.height * ScaleY);
+ break;
+ case EnumScaleMode.Absolute:
+ height = (int)ScaleY;
+ break;
+ }
+
+ //if (sRGB) format = GraphicsFormat.R8G8B8A8_SRGB;
var rt = RenderTexture.GetTemporary(width, height, 0, GraphicsFormat.R8G8B8A8_UNorm, 1);
- rt.wrapMode = WrapMode;
- rt.filterMode = FilterMode;
-
- return rt;
- }
- }
-
- public enum EnumScaleMode
- {
- /// 以输入源为缩放基准 以分辨率作为缩放基准 以固定值定义尺寸 以输入源为缩放基准 以分辨率作为缩放基准 以固定值定义尺寸 ();
float min = 0;
float max = 10;
- if (rangeAtt != null)
- {
- min = rangeAtt.min; max = rangeAtt.max;
- }
+ if (rangeAtt != null) { min = rangeAtt.min; max = rangeAtt.max; }
+
+ var descrip = param.GetCustomAttribute();
+ string name = descrip != null ? descrip.Description : param.Name;
- var editableParam = new EditableParamerter(param.Name, paramObj, min, max);
+ var editableParam = new EditableParamerter(name, paramObj, min, max);
m_editableParamList.Add(editableParam);
}
}
@@ -86,15 +87,23 @@ namespace AxibugEmuOnline.Client
public object MinValue { get; private set; }
public object MaxValue { get; private set; }
- public EditableParamerter(string name, FilterParameter paramObject, object minValue, object maxValue)
+ public EditableParamerter(string name, FilterParameter paramObject, float minValue, float maxValue)
{
m_paramObject = paramObject;
Name = name;
var paramType = paramObject.GetType();
- MinValue = minValue;
- MaxValue = maxValue;
+ if (paramObject.ValueType == typeof(int))
+ {
+ MinValue = (int)minValue;
+ MaxValue = (int)maxValue;
+ }
+ else if (paramObject.ValueType == typeof(float))
+ {
+ MinValue = minValue;
+ MaxValue = maxValue;
+ }
}
public void ResetToDefault() => m_paramObject.Value = null;
diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/FilterManager.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/FilterManager.cs
index 869df7b4..325ca0b1 100644
--- a/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/FilterManager.cs
+++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/FilterManager.cs
@@ -331,6 +331,18 @@ namespace AxibugEmuOnline.Client
float.TryParse(rawStr, out floatVal);
return floatVal;
}
+ else if (valueType == typeof(int))
+ {
+ int intVal;
+ int.TryParse(rawStr, out intVal);
+ return intVal;
+ }
+ else if (valueType == typeof(bool))
+ {
+ bool boolVal;
+ bool.TryParse(rawStr, out boolVal);
+ return boolVal;
+ }
else if (valueType.IsEnum)
{
var names = Enum.GetNames(valueType);
diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/FilterParamerter.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/FilterParamerter.cs
index b155f072..5195dd56 100644
--- a/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/FilterParamerter.cs
+++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/FilterParamerter.cs
@@ -13,7 +13,7 @@ namespace Assets.Script.AppMain.Filter
{
get => m_overrideValue ?? m_defaultValue;
set => m_overrideValue = value;
- }
+ }
}
public class FilterParameter : FilterParameter
@@ -28,21 +28,76 @@ namespace Assets.Script.AppMain.Filter
public FilterParameter(T defaultValue)
{
m_defaultValue = defaultValue;
+ }
+
+ public static implicit operator T(FilterParameter value)
+ {
+ return value.GetValue();
+ }
+
+ public static implicit operator FilterParameter(T value)
+ {
+ return new FilterParameter(value);
}
}
public class BoolParameter : FilterParameter
{
public BoolParameter(bool defaultValue) : base(defaultValue) { }
+
+ public static implicit operator bool(BoolParameter value)
+ {
+ return value.GetValue();
+ }
+
+ public static implicit operator BoolParameter(bool value)
+ {
+ return new BoolParameter(value);
+ }
}
public class Vector2Parameter : FilterParameter
{
- public Vector2Parameter(Vector2 defaultValue) : base(defaultValue) { }
+ public Vector2Parameter(Vector2 defaultValue) : base(defaultValue) { }
+
+ public static implicit operator Vector2(Vector2Parameter value)
+ {
+ return value.GetValue();
+ }
+
+ public static implicit operator Vector2Parameter(Vector2 value)
+ {
+ return new Vector2Parameter(value);
+ }
}
public class FloatParameter : FilterParameter
{
public FloatParameter(float defaultValue) : base(defaultValue) { }
+
+ public static implicit operator float(FloatParameter value)
+ {
+ return value.GetValue();
+ }
+
+ public static implicit operator FloatParameter(float value)
+ {
+ return new FloatParameter(value);
+ }
+ }
+
+ public class IntParameter : FilterParameter
+ {
+ public IntParameter(int defaultValue) : base(defaultValue) { }
+
+ public static implicit operator int(IntParameter value)
+ {
+ return value.GetValue();
+ }
+
+ public static implicit operator IntParameter(int value)
+ {
+ return new IntParameter(value);
+ }
}
}
\ No newline at end of file
diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/SimpleCRT.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/SimpleCRT.meta
new file mode 100644
index 00000000..60bec35b
--- /dev/null
+++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/SimpleCRT.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 36463068bd4c2274cb302669fa552345
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/SimpleCRT/SimpleCRT.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/SimpleCRT/SimpleCRT.cs
new file mode 100644
index 00000000..3d84b008
--- /dev/null
+++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/SimpleCRT/SimpleCRT.cs
@@ -0,0 +1,173 @@
+using Assets.Script.AppMain.Filter;
+using AxibugEmuOnline.Client;
+using System.ComponentModel;
+using UnityEngine;
+using Random = UnityEngine.Random;
+
+
+public class SimpleCRT : FilterEffect
+{
+ public override string Name => nameof(SimpleCRT);
+
+ protected override string ShaderName => "Filter/yunoda-3DCG/SimpleCRT";
+
+ [Range(0, 1000)][Description("White Noise Freq")] public IntParameter whiteNoiseFrequency = new IntParameter(1);
+ [Range(0, 1)][Description("White Noise Time Left (sec)")] public FloatParameter whiteNoiseLength = new FloatParameter(0.1f);
+ private float whiteNoiseTimeLeft;
+
+ [Range(0, 1000)][Description("Screen Jump Freq")] public IntParameter screenJumpFrequency = 1;
+ [Range(0, 1f)][Description("Screen Jump Length")] public FloatParameter screenJumpLength = 0.2f;
+ [Range(0, 1f)][Description("Jump Min")] public FloatParameter screenJumpMinLevel = 0.1f;
+ [Range(0, 1f)][Description("Jump Max")] public FloatParameter screenJumpMaxLevel = 0.9f;
+ private float screenJumpTimeLeft;
+
+ [Range(0, 1f)][Description("Flickering Strength")] public FloatParameter flickeringStrength = 0.002f;
+ [Range(0, 333f)][Description("Flickering Cycle")] public FloatParameter flickeringCycle = 111f;
+
+ [Description("Slip Page")] public BoolParameter isSlippage = true;
+ [Description("Slip Noise")] public BoolParameter isSlippageNoise = true;
+ [Range(0, 1)][Description("Slip Strength")] public FloatParameter slippageStrength = 0.005f;
+ [Range(0, 100)][Description("Slip Intervalw")] public float slippageInterval = 1f;
+ [Range(0, 330)][Description("Slip Scroll Speed")] public float slippageScrollSpeed = 33f;
+ [Range(0, 100f)][Description("Slip Size")] public FloatParameter slippageSize = 11f;
+
+ [Range(0, 1f)][Description("Chromatic Aberration Strength")] public FloatParameter chromaticAberrationStrength = 0.005f;
+ [Description("Chromatic Aberration")] public bool isChromaticAberration = true;
+
+ [Description("Multiple Ghost")] public BoolParameter isMultipleGhost = true;
+ [Range(0, 1f)][Description("Multiple Ghost Strength")] public FloatParameter multipleGhostStrength = 0.01f;
+
+ [Description("Scanline")] public BoolParameter isScanline = true;
+ [Description("Monochrome")] public BoolParameter isMonochrome = false;
+
+ [Description("Letter Box")] public bool isLetterBox = false;
+ public bool isLetterBoxEdgeBlur = false;
+ [Description("Letter Box Type")] public FilterParameter letterBoxType = default(LeterBoxType);
+ public enum LeterBoxType
+ {
+ Black,
+ Blur
+ }
+
+ #region Properties in shader
+ private int _WhiteNoiseOnOff;
+ private int _ScanlineOnOff;
+ private int _MonochormeOnOff;
+ private int _ScreenJumpLevel;
+ private int _FlickeringStrength;
+ private int _FlickeringCycle;
+ private int _SlippageStrength;
+ private int _SlippageSize;
+ private int _SlippageInterval;
+ private int _SlippageScrollSpeed;
+ private int _SlippageNoiseOnOff;
+ private int _SlippageOnOff;
+ private int _ChromaticAberrationStrength;
+ private int _ChromaticAberrationOnOff;
+ private int _MultipleGhostOnOff;
+ private int _MultipleGhostStrength;
+ private int _LetterBoxOnOff;
+ private int _LetterBoxType;
+ private int _LetterBoxEdgeBlurOnOff;
+ private int _DecalTex;
+ private int _DecalTexOnOff;
+ private int _DecalTexPos;
+ private int _DecalTexScale;
+ private int _FilmDirtOnOff;
+ private int _FilmDirtTex;
+ #endregion
+
+ protected override void OnInit(Material renderMat)
+ {
+ base.OnInit(renderMat);
+
+ _WhiteNoiseOnOff = Shader.PropertyToID("_WhiteNoiseOnOff");
+ _ScanlineOnOff = Shader.PropertyToID("_ScanlineOnOff");
+ _MonochormeOnOff = Shader.PropertyToID("_MonochormeOnOff");
+ _ScreenJumpLevel = Shader.PropertyToID("_ScreenJumpLevel");
+ _FlickeringStrength = Shader.PropertyToID("_FlickeringStrength");
+ _FlickeringCycle = Shader.PropertyToID("_FlickeringCycle");
+ _SlippageStrength = Shader.PropertyToID("_SlippageStrength");
+ _SlippageSize = Shader.PropertyToID("_SlippageSize");
+ _SlippageInterval = Shader.PropertyToID("_SlippageInterval");
+ _SlippageScrollSpeed = Shader.PropertyToID("_SlippageScrollSpeed");
+ _SlippageNoiseOnOff = Shader.PropertyToID("_SlippageNoiseOnOff");
+ _SlippageOnOff = Shader.PropertyToID("_SlippageOnOff");
+ _ChromaticAberrationStrength = Shader.PropertyToID("_ChromaticAberrationStrength");
+ _ChromaticAberrationOnOff = Shader.PropertyToID("_ChromaticAberrationOnOff");
+ _MultipleGhostOnOff = Shader.PropertyToID("_MultipleGhostOnOff");
+ _MultipleGhostStrength = Shader.PropertyToID("_MultipleGhostStrength");
+ _LetterBoxOnOff = Shader.PropertyToID("_LetterBoxOnOff");
+ _LetterBoxType = Shader.PropertyToID("_LetterBoxType");
+ _DecalTex = Shader.PropertyToID("_DecalTex");
+ _DecalTexOnOff = Shader.PropertyToID("_DecalTexOnOff");
+ _DecalTexPos = Shader.PropertyToID("_DecalTexPos");
+ _DecalTexScale = Shader.PropertyToID("_DecalTexScale");
+ _FilmDirtOnOff = Shader.PropertyToID("_FilmDirtOnOff");
+ _FilmDirtTex = Shader.PropertyToID("_FilmDirtTex");
+ }
+
+ protected override void OnRenderer(Material renderMat, Texture src, RenderTexture result)
+ {
+ SetShaderParameter(renderMat);
+
+ Graphics.Blit(src, result, renderMat);
+ }
+
+ private void SetShaderParameter(Material material)
+ {
+ ///////White noise
+ whiteNoiseTimeLeft -= 0.01f;
+ if (whiteNoiseTimeLeft <= 0)
+ {
+ if (Random.Range(0, 1000) < whiteNoiseFrequency)
+ {
+ material.SetInteger(_WhiteNoiseOnOff, 1);
+ whiteNoiseTimeLeft = whiteNoiseLength;
+ }
+ else
+ {
+ material.SetInteger(_WhiteNoiseOnOff, 0);
+ }
+ }
+ //////
+
+ material.SetInteger(_LetterBoxOnOff, isLetterBox ? 0 : 1);
+ //material.SetInteger(_LetterBoxEdgeBlurOnOff, isLetterBoxEdgeBlur ? 0 : 1);
+ material.SetInteger(_LetterBoxType, (int)letterBoxType.GetValue());
+
+ material.SetInteger(_ScanlineOnOff, isScanline ? 1 : 0);
+ material.SetInteger(_MonochormeOnOff, isMonochrome ? 1 : 0);
+ material.SetFloat(_FlickeringStrength, flickeringStrength);
+ material.SetFloat(_FlickeringCycle, flickeringCycle);
+ material.SetFloat(_ChromaticAberrationStrength, chromaticAberrationStrength);
+ material.SetInteger(_ChromaticAberrationOnOff, isChromaticAberration ? 1 : 0);
+ material.SetInteger(_MultipleGhostOnOff, isMultipleGhost ? 1 : 0);
+ material.SetFloat(_MultipleGhostStrength, multipleGhostStrength);
+
+ //////Slippage
+ material.SetInteger(_SlippageOnOff, isSlippage ? 1 : 0);
+ material.SetFloat(_SlippageInterval, slippageInterval);
+ material.SetFloat(_SlippageNoiseOnOff, isSlippageNoise ? Random.Range(0, 1f) : 1);
+ material.SetFloat(_SlippageScrollSpeed, slippageScrollSpeed);
+ material.SetFloat(_SlippageStrength, slippageStrength);
+ material.SetFloat(_SlippageSize, slippageSize);
+ //////
+
+ //////Screen Jump Noise
+ screenJumpTimeLeft -= 0.01f;
+ if (screenJumpTimeLeft <= 0)
+ {
+ if (Random.Range(0, 1000) < screenJumpFrequency)
+ {
+ var level = Random.Range(screenJumpMinLevel, screenJumpMaxLevel);
+ material.SetFloat(_ScreenJumpLevel, level);
+ screenJumpTimeLeft = screenJumpLength;
+ }
+ else
+ {
+ material.SetFloat(_ScreenJumpLevel, 0);
+ }
+ }
+ }
+}
diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/SimpleCRT/SimpleCRT.cs.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/SimpleCRT/SimpleCRT.cs.meta
new file mode 100644
index 00000000..7530d4b6
--- /dev/null
+++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/SimpleCRT/SimpleCRT.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: d4ffc7492874c2241827f1d70c24a1e3
\ No newline at end of file
diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/SimpleCRT/SimpleCRT.shader b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/SimpleCRT/SimpleCRT.shader
new file mode 100644
index 00000000..6dca2950
--- /dev/null
+++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/SimpleCRT/SimpleCRT.shader
@@ -0,0 +1,237 @@
+Shader "Filter/yunoda-3DCG/SimpleCRT"
+{
+ Properties
+ {
+ _MainTex ("Texture", 2D) = "white" {}
+ _DecalTex ("Decal Texture", 2D) = "white" {}
+ _FilmDirtTex ("Dirt Texture", 2D) = "white" {}
+ }
+ SubShader
+ {
+ Pass
+ {
+ CGPROGRAM
+ #include "UnityCG.cginc"
+
+ #pragma vertex vert
+ #pragma fragment frag
+
+ struct appdata
+ {
+ float4 vertex : POSITION;
+ float2 uv : TEXCOORD0;
+ };
+
+ struct v2f
+ {
+ float2 uv : TEXCOORD0;
+ float2 decaluv : TEXCOORD1;
+ float4 vertex : SV_POSITION;
+ };
+
+ sampler2D _MainTex;
+ float4 _MainTex_ST;
+ float4 _MainTex_TexelSize;
+
+ int _WhiteNoiseOnOff;
+ int _ScanlineOnOff;
+ int _MonochormeOnOff;
+
+ int _LetterBoxOnOff;
+ int _LetterBoxEdgeBlur;
+ int _LetterBoxType;
+
+ float _ScreenJumpLevel;
+
+ float _FlickeringStrength;
+ float _FlickeringCycle;
+
+ int _SlippageOnOff;
+ float _SlippageStrength;
+ float _SlippageInterval;
+ float _SlippageScrollSpeed;
+ float _SlippageNoiseOnOff;
+ float _SlippageSize;
+
+ float _ChromaticAberrationStrength;
+ int _ChromaticAberrationOnOff;
+
+ int _MultipleGhostOnOff;
+ float _MultipleGhostStrength;
+
+ sampler2D _DecalTex;
+ float4 _DecalTex_ST;
+ int _DecalTexOnOff;
+ float2 _DecalTexPos;
+ float2 _DecalTexScale;
+
+ int _FilmDirtOnOff;
+ sampler2D _FilmDirtTex;
+ float4 _FilmDirtTex_ST;
+
+ float GetRandom(float x);
+ float EaseIn(float t0, float t1, float t);
+
+ v2f vert (appdata v)
+ {
+ v2f o;
+ o.vertex = UnityObjectToClipPos(v.vertex);
+ o.uv = TRANSFORM_TEX(v.uv, _MainTex);
+ o.decaluv = TRANSFORM_TEX(v.uv, _DecalTex);
+ return o;
+ }
+
+ fixed4 frag (v2f i) : SV_Target
+ {
+ float2 uv = i.uv;
+
+ /////Jump noise
+ uv.y = frac(uv.y + _ScreenJumpLevel);
+ /////
+
+ /////frickering
+ float flickeringNoise = GetRandom(_Time.y);
+ float flickeringMask = pow(abs(sin(i.uv.y * _FlickeringCycle + _Time.y)), 10);
+ uv.x = uv.x + (flickeringNoise * _FlickeringStrength * flickeringMask);
+ /////
+
+ /////slippage
+ float scrollSpeed = _Time.x * _SlippageScrollSpeed;
+ float slippageMask = pow(abs(sin(i.uv.y * _SlippageInterval + scrollSpeed)), _SlippageSize);
+ float stepMask = round(sin(i.uv.y * _SlippageInterval + scrollSpeed - 1));
+ uv.x = uv.x + (_SlippageNoiseOnOff * _SlippageStrength * slippageMask * stepMask) * _SlippageOnOff;
+ /////
+
+ /////Chromatic Aberration
+ float red = tex2D(_MainTex, float2(uv.x - _ChromaticAberrationStrength * _ChromaticAberrationOnOff, uv.y)).r;
+ float green = tex2D(_MainTex, float2(uv.x, uv.y)).g;
+ float blue = tex2D(_MainTex, float2(uv.x + _ChromaticAberrationStrength * _ChromaticAberrationOnOff, uv.y)).b;
+ float4 color = float4(red, green, blue, 1);
+ /////
+
+ /////Multiple Ghost
+ float4 ghost1st = tex2D(_MainTex, uv - float2(1, 0) * _MultipleGhostStrength * _MultipleGhostOnOff);
+ float4 ghost2nd = tex2D(_MainTex, uv - float2(1, 0) * _MultipleGhostStrength * 2 * _MultipleGhostOnOff);
+ color = color * 0.8 + ghost1st * 0.15 + ghost2nd * 0.05;
+ /////
+
+ /////File dirt
+ float2 pp = -1.0 + 2.0 * uv;
+ float time = _Time.x;
+ float aaRad = 0.1;
+ float2 nseLookup2 = pp + time * 1000;
+ float3 nse2 =
+ tex2D(_FilmDirtTex, 0.1 * nseLookup2.xy).xyz +
+ tex2D(_FilmDirtTex, 0.01 * nseLookup2.xy).xyz +
+ tex2D(_FilmDirtTex, 0.004 * nseLookup2.xy).xyz;
+ float thresh = 0.6;
+ float mul1 = smoothstep(thresh - aaRad, thresh + aaRad, nse2.x);
+ float mul2 = smoothstep(thresh - aaRad, thresh + aaRad, nse2.y);
+ float mul3 = smoothstep(thresh - aaRad, thresh + aaRad, nse2.z);
+
+ float seed = tex2D(_FilmDirtTex, float2(time * 0.35, time)).x;
+
+ float result = clamp(0, 1, seed + 0.7);
+
+ result += 0.06 * EaseIn(19.2, 19.4, time);
+
+ float band = 0.05;
+ if(_FilmDirtOnOff == 1)
+ {
+ if( 0.3 < seed && 0.3 + band > seed )
+ color *= mul1 * result;
+ else if( 0.6 < seed && 0.6 + band > seed )
+ color *= mul2 * result;
+ else if( 0.9 < seed && 0.9 + band > seed )
+ color *= mul3 * result;
+ }
+ /////
+
+ /////Letter box
+ float band_uv = fmod(_MainTex_TexelSize.z, 640) / _MainTex_TexelSize.z / 2;
+ if(i.uv.x < band_uv || 1 - band_uv < i.uv.x)
+ {
+ float pi = 6.28318530718;
+ float directions = 16.0;
+ float quality = 3.0;
+ float size = 8.0;
+
+ float2 Radius = size * _MainTex_ST.zw;
+ float4 samplingColor = tex2D(_MainTex, uv);
+
+ for(float d = 0.0; d < pi; d += pi / directions)
+ {
+ for(float i = 1.0 / quality; i <= 1.0; i += 1.0 / quality)
+ {
+ samplingColor += tex2D(_MainTex, uv + float2(cos(d), sin(d)) * 0.015 * i);
+ }
+ }
+ samplingColor /= quality * directions - 15.0;
+
+ if(_LetterBoxOnOff == 1)
+ {
+ color = color;
+ }
+ else if(_LetterBoxType == 0) // LetterBox is Black
+ {
+ color = 0;
+ }
+ else if(_LetterBoxType == 1) // LetterBox is Blur
+ {
+ color = samplingColor;
+ }
+ }
+ /////
+
+ /////White noise
+ if(_WhiteNoiseOnOff == 1)
+ {
+ return frac(sin(dot(i.uv, float2(12.9898, 78.233)) + _Time.x) * 43758.5453);
+ }
+ /////
+
+ /////Decal texture
+ float4 decal = tex2D(_DecalTex, (i.decaluv - _DecalTexPos) * _DecalTexScale) * _DecalTexOnOff;
+ color = color * (1 - decal.a) + decal;
+ /////
+
+ /////Scanline
+ float scanline = sin((i.uv.y + _Time.x) * 800.0) * 0.04;
+ color -= scanline * _ScanlineOnOff;
+ /////
+
+ //////scanline noise
+ float noiseAlpha = 1;
+ if(pow(sin(uv.y + _Time.y * 2), 200) >= 0.999)
+ {
+ noiseAlpha = GetRandom(uv.y);
+ //color *= noiseAlpha;
+ }
+ //////
+
+ //////Monochorome
+ if(_MonochormeOnOff == 1)
+ {
+ color.xyz = 0.299f * color.r + 0.587f * color.g + 0.114f * color.b;
+ }
+ //////
+
+ return color;
+ }
+
+ float GetRandom(float x)
+ {
+ return frac(sin(dot(x, float2(12.9898, 78.233))) * 43758.5453);
+ }
+
+ float EaseIn(float t0, float t1, float t)
+ {
+ return 2.0 * smoothstep(t0, 2.0 * t1 - t0, t);
+ }
+ ENDCG
+ }
+ }
+}
+
+
+
diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/SimpleCRT/SimpleCRT.shader.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/SimpleCRT/SimpleCRT.shader.meta
new file mode 100644
index 00000000..d1237e56
--- /dev/null
+++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/AppSettings/Filter/SimpleCRT/SimpleCRT.shader.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: fdf9f1937116ab84c97a58a4cf82fbf8
+ShaderImporter:
+ externalObjects: {}
+ defaultTextures: []
+ nonModifiableTextures: []
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/GamePadManager.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/GamePadManager.meta
new file mode 100644
index 00000000..d9ee8b26
--- /dev/null
+++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/GamePadManager.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 5fe26f58ab822c44888b86305c5326e0
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/GamePadManager/GamePad.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/GamePadManager/GamePad.cs
new file mode 100644
index 00000000..7f0a445b
--- /dev/null
+++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/GamePadManager/GamePad.cs
@@ -0,0 +1,26 @@
+namespace AxibugEmuOnline.Client.Manager
+{
+ public partial class GamePadManager
+ {
+ ///
+ /// 被Unity所识别的通用GamePad类
+ ///
+ public class GamePad
+ {
+ internal GamePadInfo m_info;
+ public int Index => m_info.Index;
+ public string Name => m_info.Name;
+ public bool Offline { get; internal set; }
+
+ internal GamePad(GamePadInfo info)
+ {
+ m_info = info;
+ }
+
+ public override string ToString()
+ {
+ return $"{Index}:{Name}{(Offline ? "(Offline)" : string.Empty)}";
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/GamePadManager/GamePad.cs.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/GamePadManager/GamePad.cs.meta
new file mode 100644
index 00000000..531c8952
--- /dev/null
+++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/GamePadManager/GamePad.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: c2c0a06020f65a747af5490a6112361b
\ No newline at end of file
diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/GamePadManager/GamePadManager.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/GamePadManager/GamePadManager.cs
new file mode 100644
index 00000000..6941e69f
--- /dev/null
+++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/GamePadManager/GamePadManager.cs
@@ -0,0 +1,121 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using UnityEngine;
+
+namespace AxibugEmuOnline.Client.Manager
+{
+ public partial class GamePadManager
+ {
+ #region Events
+ public delegate void GamePadConnectedHandle(GamePad newConnectGamePad);
+ /// 当一个手柄连接时触发
+ public event GamePadConnectedHandle OnGamePadConnected;
+
+ public delegate void GamePadDisConnectedHandle(GamePad disConnectGamePad);
+ /// 当一个手柄断开时触发
+ public event GamePadDisConnectedHandle OnGamePadDisConnected;
+ #endregion
+
+ Dictionary m_gamePads = new Dictionary();
+ HashSet m_temp = new HashSet();
+
+ public void Update()
+ {
+ m_temp.Clear();
+ foreach (var info in m_gamePads.Keys)
+ m_temp.Add(info); //记录需要被移除的手柄
+
+ var devices = Input.GetJoystickNames();
+ for (int i = 0; i < devices.Length; i++)
+ {
+ var info = new GamePadInfo { Index = i, Name = devices[i] };
+ m_temp.Remove(info);
+
+ if (!m_gamePads.ContainsKey(info))
+ {
+ m_gamePads[info] = new GamePad(info);
+ OnGamePadConnected?.Invoke(m_gamePads[info]);
+ };
+ }
+
+ foreach (var info in m_temp)
+ {
+ if (m_gamePads.TryGetValue(info, out GamePad gp))
+ {
+ m_gamePads.Remove(info);
+ gp.Offline = true;
+ OnGamePadDisConnected?.Invoke(gp);
+ }
+ }
+ }
+
+ ///
+ /// 获取所有已连接的手柄,返回的结果顺序与手柄序号无关
+ ///
+ ///
+ public GamePad[] GetGamePads()
+ {
+ return m_gamePads.Values.ToArray();
+ }
+
+ internal struct GamePadInfo : IEquatable, IComparable
+ {
+ internal int Index;
+ internal string Name;
+
+ public override bool Equals(object obj)
+ {
+ if (obj is GamePadInfo)
+ {
+ return Equals((GamePadInfo)obj);
+ }
+ return false;
+ }
+
+ public bool Equals(GamePadInfo other)
+ {
+ return Index == other.Index && Name == other.Name;
+ }
+
+ public override int GetHashCode()
+ {
+ // Custom hash code implementation without HashCombine
+ int hash = 17;
+ hash = hash * 31 + Index.GetHashCode();
+ hash = hash * 31 + (Name != null ? Name.GetHashCode() : 0);
+ return hash;
+ }
+
+ public int CompareTo(GamePadInfo other)
+ {
+ int indexComparison = Index.CompareTo(other.Index);
+ if (indexComparison != 0)
+ {
+ return indexComparison;
+ }
+ return string.Compare(Name, other.Name, StringComparison.Ordinal);
+ }
+
+ public static bool operator ==(GamePadInfo left, GamePadInfo right)
+ {
+ return left.Equals(right);
+ }
+
+ public static bool operator !=(GamePadInfo left, GamePadInfo right)
+ {
+ return !(left == right);
+ }
+
+ public static bool operator <(GamePadInfo left, GamePadInfo right)
+ {
+ return left.CompareTo(right) < 0;
+ }
+
+ public static bool operator >(GamePadInfo left, GamePadInfo right)
+ {
+ return left.CompareTo(right) > 0;
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/GamePadManager/GamePadManager.cs.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/GamePadManager/GamePadManager.cs.meta
new file mode 100644
index 00000000..38c4ba12
--- /dev/null
+++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/GamePadManager/GamePadManager.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: ce4d215abea527e4a8cf1103cbfecf6b
\ No newline at end of file
diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/RomLib/RomLib.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/RomLib/RomLib.cs
index 8ef9f97a..3f9e4d3d 100644
--- a/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/RomLib/RomLib.cs
+++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/Manager/RomLib/RomLib.cs
@@ -43,6 +43,8 @@ namespace AxibugEmuOnline.Client
private void OnRomStarStateChanged(int romID, bool star)
{
+ if (nesRomFetchList == null) return;
+
var targetRom = nesRomFetchList.FirstOrDefault(rom => rom.ID == romID);
if (targetRom == null) return;
diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/BgSettingsUI/UI_FilterItem.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/BgSettingsUI/UI_FilterItem.cs
index e7dd6ab2..eaa92acb 100644
--- a/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/BgSettingsUI/UI_FilterItem.cs
+++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/BgSettingsUI/UI_FilterItem.cs
@@ -153,7 +153,7 @@ namespace AxibugEmuOnline.Client
private FilterEffect.EditableParamerter m_param;
private FilterPreset m_preset;
- public override bool Visible => m_param.ValueType.IsEnum || m_param.ValueType == typeof(float);
+ public override bool Visible => true;
public override string Name => m_param.Name;
public Opt_ParamEditor(Filter filter, FilterEffect.EditableParamerter editParam, FilterPreset preset)
diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/GamesUI/RomItem.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/GamesUI/RomItem.cs
index 480858c8..dfe04a32 100644
--- a/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/GamesUI/RomItem.cs
+++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/GamesUI/RomItem.cs
@@ -139,6 +139,7 @@ namespace AxibugEmuOnline.Client
{
DownloadingFlag.SetActiveEx(false);
FileReadyFlag.SetActiveEx(false);
+ Star.SetActiveEx(IsStar);
if (m_romfile == null) return;
if (!m_romfile.InfoReady) return;
diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/OptionUI/OptionUI_ValueEditItem.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/OptionUI/OptionUI_ValueEditItem.cs
index 1581768c..95bc9125 100644
--- a/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/OptionUI/OptionUI_ValueEditItem.cs
+++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/OptionUI/OptionUI_ValueEditItem.cs
@@ -8,6 +8,10 @@ namespace AxibugEmuOnline.Client
[SerializeField]
OptionUI_ValueEditItem_FloatEdit com_floatEdit;
[SerializeField]
+ OptionUI_ValueEditItem_IntEdit com_intEdit;
+ [SerializeField]
+ OptionUI_ValueEditItem_BoolEdit com_boolEdit;
+ [SerializeField]
OptionUI_ValueEditItem_EnumEdit com_enumEdit;
IValueEditControl m_currentCom;
@@ -15,6 +19,8 @@ namespace AxibugEmuOnline.Client
protected override void OnSetData(OptionMenu menuData)
{
com_floatEdit.gameObject.SetActive(false);
+ com_intEdit.gameObject.SetActive(false);
+ com_boolEdit.gameObject.SetActive(false);
com_enumEdit.gameObject.SetActive(false);
if (menuData is ValueSetMenu)
@@ -24,13 +30,21 @@ namespace AxibugEmuOnline.Client
{
m_currentCom = com_floatEdit;
}
+ else if(valueMenu.ValueType == typeof(int))
+ {
+ m_currentCom = com_intEdit;
+ }
+ else if(valueMenu.ValueType == typeof(bool))
+ {
+ m_currentCom = com_boolEdit;
+ }
else if (valueMenu.ValueType.IsEnum)
{
m_currentCom = com_enumEdit;
}
else
{
- App.log.Warning($"尚未支持的数据类型:{valueMenu.ValueType}");
+ App.log.Error($"尚未支持的数据类型:{valueMenu.ValueType}");
return;
}
diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/OptionUI/OptionUI_ValueEditItem_BoolEdit.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/OptionUI/OptionUI_ValueEditItem_BoolEdit.cs
new file mode 100644
index 00000000..85d4139b
--- /dev/null
+++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/OptionUI/OptionUI_ValueEditItem_BoolEdit.cs
@@ -0,0 +1,39 @@
+using System;
+using System.Collections.Generic;
+using UnityEngine;
+using UnityEngine.UI;
+
+namespace AxibugEmuOnline.Client
+{
+ public class OptionUI_ValueEditItem_BoolEdit : MonoBehaviour, IValueEditControl
+ {
+ [SerializeField]
+ Text txt_value;
+
+ private ValueSetMenu m_valueMenu;
+
+ public void SetData(ValueSetMenu valueMenu)
+ {
+ m_valueMenu = valueMenu;
+ txt_value.text = valueMenu.ValueRaw.ToString();
+ }
+
+ public void OnLeft()
+ {
+ OnExecute();
+ }
+
+ public void OnRight()
+ {
+ OnExecute();
+ }
+
+ public void OnExecute()
+ {
+ var value = (bool)m_valueMenu.ValueRaw;
+ value = !value;
+ txt_value.text = value.ToString();
+ m_valueMenu.OnValueChanged(value);
+ }
+ }
+}
diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/OptionUI/OptionUI_ValueEditItem_BoolEdit.cs.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/OptionUI/OptionUI_ValueEditItem_BoolEdit.cs.meta
new file mode 100644
index 00000000..556e4917
--- /dev/null
+++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/OptionUI/OptionUI_ValueEditItem_BoolEdit.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: c864ef7d3920dfc4cb69a86ef3af426b
diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/OptionUI/OptionUI_ValueEditItem_IntEdit.cs b/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/OptionUI/OptionUI_ValueEditItem_IntEdit.cs
new file mode 100644
index 00000000..1d7813c3
--- /dev/null
+++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/OptionUI/OptionUI_ValueEditItem_IntEdit.cs
@@ -0,0 +1,58 @@
+using UnityEngine;
+using UnityEngine.UI;
+
+namespace AxibugEmuOnline.Client
+{
+ public class OptionUI_ValueEditItem_IntEdit : MonoBehaviour, IValueEditControl
+ {
+ [SerializeField]
+ Slider slider;
+ [SerializeField]
+ Text txt_value;
+
+ int m_step;
+ private ValueSetMenu m_valueMenu;
+
+ private void Awake()
+ {
+ slider.onValueChanged.AddListener(OnSliderValueChanged);
+ }
+
+ private void OnSliderValueChanged(float value)
+ {
+ int intValue = (int)value;
+ txt_value.text = $"{intValue}";
+
+ if (!m_dataSetting) m_valueMenu.OnValueChanged(intValue);
+ }
+
+ bool m_dataSetting;
+ public void SetData(ValueSetMenu valueMenu)
+ {
+ m_dataSetting = true;
+ m_valueMenu = valueMenu;
+ slider.minValue = (int)valueMenu.Min;
+ slider.maxValue = (int)valueMenu.Max;
+ slider.value = (int)valueMenu.ValueRaw;
+ slider.wholeNumbers = true;
+ m_step = 1;
+ m_dataSetting = false;
+ }
+
+ public void OnLeft()
+ {
+ var newValue = Mathf.Clamp(slider.value - m_step, slider.minValue, slider.maxValue);
+ slider.value = newValue;
+ }
+
+ public void OnRight()
+ {
+ var newValue = Mathf.Clamp(slider.value + m_step, slider.minValue, slider.maxValue);
+ slider.value = newValue;
+ }
+
+ public void OnExecute()
+ {
+ }
+ }
+}
diff --git a/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/OptionUI/OptionUI_ValueEditItem_IntEdit.cs.meta b/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/OptionUI/OptionUI_ValueEditItem_IntEdit.cs.meta
new file mode 100644
index 00000000..1224e4aa
--- /dev/null
+++ b/AxibugEmuOnline.Client/Assets/Script/AppMain/UI/OptionUI/OptionUI_ValueEditItem_IntEdit.cs.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: abad743de1574354f99efc5054aa6b43
\ No newline at end of file