Compare commits

...

2 Commits

Author SHA1 Message Date
b52e1df9f8 update assets to 1.03 2025-08-04 16:05:58 +08:00
0ac6d9882e update assets to 1.03 2025-08-04 16:04:54 +08:00
23 changed files with 499 additions and 1034 deletions

13
.idea/.idea.WordConnect/.idea/.gitignore generated vendored Normal file
View File

@ -0,0 +1,13 @@
# 默认忽略的文件
/shelf/
/workspace.xml
# Rider 忽略的文件
/contentModel.xml
/modules.xml
/projectSettingsUpdater.xml
/.idea.WordConnect.iml
# 基于编辑器的 HTTP 客户端请求
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="UserContentModel">
<attachedFolders />
<explicitIncludes />
<explicitExcludes />
</component>
</project>

6
.idea/.idea.WordConnect/.idea/vcs.xml generated Normal file
View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
</component>
</project>

View File

@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: c06b57978eca4a8c985a0db2980155d7
timeCreated: 1753441726

View File

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="com.unity3d.player"
xmlns:tools="http://schemas.android.com/tools">
<application>
<activity android:name="com.unity3d.player.UnityPlayerActivity"
android:theme="@style/UnityThemeSelector">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<meta-data android:name="unityplayer.UnityActivity" android:value="true" />
</activity>
</application>
<uses-permission android:name="android.permission.VIBRATE"/>
</manifest>

View File

@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: ae3546a78b994fb698b42f134c762323
timeCreated: 1753441198

View File

@ -1,23 +1,26 @@
// In a file named HapticFeedback.mm
#import <UIKit/UIKit.h> #import <UIKit/UIKit.h>
extern "C" void _TriggerHapticFeedback(int force) { extern "C" {
UIImpactFeedbackStyle style = UIImpactFeedbackStyleMedium; void _TriggerHapticFeedback(int force)
switch (force) { {
case 0: UIImpactFeedbackGenerator *generator;
style = UIImpactFeedbackStyleLight; switch (force)
break; {
case 1: case 0:
style = UIImpactFeedbackStyleMedium; generator = [[UIImpactFeedbackGenerator alloc] initWithStyle:UIImpactFeedbackStyleLight];
break; break;
case 2: case 1:
style = UIImpactFeedbackStyleHeavy; generator = [[UIImpactFeedbackGenerator alloc] initWithStyle:UIImpactFeedbackStyleMedium];
break; break;
default: case 2:
style = UIImpactFeedbackStyleMedium; generator = [[UIImpactFeedbackGenerator alloc] initWithStyle:UIImpactFeedbackStyleHeavy];
break; break;
default:
generator = [[UIImpactFeedbackGenerator alloc] initWithStyle:UIImpactFeedbackStyleLight];
break;
}
[generator prepare];
[generator impactOccurred];
} }
UIImpactFeedbackGenerator *generator = [[UIImpactFeedbackGenerator alloc] initWithStyle:style];
[generator prepare];
[generator impactOccurred];
} }

View File

@ -1,33 +1,3 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: c30cc81651d3a475abd96c3e551db242 guid: cbfaede381004ac784b15b5491659521
PluginImporter: timeCreated: 1729853676
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
defineConstraints: []
isPreloaded: 0
isOverridable: 0
isExplicitlyReferenced: 0
validateReferences: 1
platformData:
- first:
Any:
second:
enabled: 0
settings: {}
- first:
Editor: Editor
second:
enabled: 0
settings:
DefaultValueInitialized: true
- first:
iPhone: iOS
second:
enabled: 1
settings:
AddToEmbeddedBinaries: false
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

View File

@ -0,0 +1,81 @@
fileFormatVersion: 2
guid: b1cd6fee1bb9460190dc70ce1c525793
labels:
- gvh
- gvh_version-10.3.0
- gvhp_exportpath-Plugins/iOS/unity-plugin-library.a
timeCreated: 1480838400
PluginImporter:
serializedVersion: 1
iconMap: {}
executionOrder: {}
isPreloaded: 0
platformData:
Android:
enabled: 0
settings:
CPU: AnyCPU
Any:
enabled: 0
settings: {}
Editor:
enabled: 1
settings:
CPU: AnyCPU
DefaultValueInitialized: true
OS: AnyOS
Linux:
enabled: 1
settings:
CPU: x86
Linux64:
enabled: 1
settings:
CPU: x86_64
LinuxUniversal:
enabled: 1
settings:
CPU: AnyCPU
OSXIntel:
enabled: 1
settings:
CPU: x86
OSXIntel64:
enabled: 1
settings:
CPU: x86_64
OSXUniversal:
enabled: 1
settings:
CPU: AnyCPU
Web:
enabled: 0
settings: {}
WebStreamed:
enabled: 0
settings: {}
Win:
enabled: 1
settings:
CPU: x86
Win64:
enabled: 1
settings:
CPU: x86_64
WindowsStoreApps:
enabled: 0
settings:
CPU: AnyCPU
iOS:
enabled: 1
settings:
CompileFlags:
FrameworkDependencies:
tvOS:
enabled: 0
settings:
CompileFlags:
FrameworkDependencies:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,305 +1,5 @@
%YAML 1.1 %YAML 1.1
%TAG !u! tag:unity3d.com,2011: %TAG !u! tag:unity3d.com,2011:
--- !u!1 &1125092840833149178
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2857020825867236269}
- component: {fileID: 4017715066533413546}
- component: {fileID: 7146954275472271903}
m_Layer: 0
m_Name: label
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &2857020825867236269
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1125092840833149178}
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: 8066142236189538299}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 102.25001, y: -244}
m_SizeDelta: {x: 328.5, y: 145}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &4017715066533413546
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1125092840833149178}
m_CullTransparentMesh: 1
--- !u!114 &7146954275472271903
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1125092840833149178}
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: 0.32156864, g: 0.5921569, 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: 21300000, guid: 6a1a7d9e52614b9438e28d1e5065266d, type: 3}
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 &1144527466411814374
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2188668316507465762}
- component: {fileID: 9116841351308745868}
- component: {fileID: 708254459989493197}
m_Layer: 0
m_Name: Puzzle-logo-txt
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &2188668316507465762
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1144527466411814374}
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: 8066142236189538299}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: -31, y: -148}
m_SizeDelta: {x: 638, y: 156}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &9116841351308745868
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1144527466411814374}
m_CullTransparentMesh: 1
--- !u!114 &708254459989493197
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1144527466411814374}
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: 21300000, guid: 5cf5fbb98fd054a9eb0548bf5a15a9a0, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &1217184182562031401
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 800133845910122391}
- component: {fileID: 7502779889808049259}
- component: {fileID: 3538560189389860317}
m_Layer: 0
m_Name: C
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &800133845910122391
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1217184182562031401}
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: 8066142236189538299}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 165, y: 57}
m_SizeDelta: {x: 203, y: 256}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &7502779889808049259
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1217184182562031401}
m_CullTransparentMesh: 1
--- !u!114 &3538560189389860317
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1217184182562031401}
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: 21300000, guid: 40b11c76fc4454ab9a3aca503b041332, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &1238907732860986645
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 3798089143438738365}
- component: {fileID: 8152803508105789924}
- component: {fileID: 8662333087983062108}
m_Layer: 0
m_Name: O
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &3798089143438738365
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1238907732860986645}
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: 8066142236189538299}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: -10, y: 66}
m_SizeDelta: {x: 323, y: 340}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &8152803508105789924
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1238907732860986645}
m_CullTransparentMesh: 1
--- !u!114 &8662333087983062108
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1238907732860986645}
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: 21300000, guid: 0fb4562dafa8549dfa0912b3d5ddf429, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &1317114975559913173 --- !u!1 &1317114975559913173
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -328,16 +28,7 @@ RectTransform:
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: m_Children:
- {fileID: 2857020825867236269} - {fileID: 6991519853766543942}
- {fileID: 7237985044392396943}
- {fileID: 800133845910122391}
- {fileID: 3798089143438738365}
- {fileID: 3669207199257443244}
- {fileID: 1651716613691765073}
- {fileID: 7930341969674081366}
- {fileID: 2188668316507465762}
- {fileID: 1587692055834529378}
- {fileID: 5267061118891656177}
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMin: {x: 0.5, y: 0.5}
@ -345,7 +36,7 @@ RectTransform:
m_AnchoredPosition: {x: 19.5, y: 641.9} m_AnchoredPosition: {x: 19.5, y: 641.9}
m_SizeDelta: {x: 937, y: 652.4} m_SizeDelta: {x: 937, y: 652.4}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!1 &1775140480896058040 --- !u!1 &4436263584535608625
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -353,158 +44,23 @@ GameObject:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
serializedVersion: 6 serializedVersion: 6
m_Component: m_Component:
- component: {fileID: 1587692055834529378} - component: {fileID: 6991519853766543942}
- component: {fileID: 4905075138657936865} - component: {fileID: 1171551675424211014}
- component: {fileID: 7383671856993782237} - component: {fileID: 9119692445744535771}
m_Layer: 0 m_Layer: 0
m_Name: Game Toolkit txt m_Name: logo
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
m_IsActive: 1 m_IsActive: 1
--- !u!224 &1587692055834529378 --- !u!224 &6991519853766543942
RectTransform: RectTransform:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1775140480896058040} m_GameObject: {fileID: 4436263584535608625}
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: 8066142236189538299}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 104, y: -258}
m_SizeDelta: {x: 301.8, y: 48.9}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &4905075138657936865
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1775140480896058040}
m_CullTransparentMesh: 1
--- !u!114 &7383671856993782237
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1775140480896058040}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 2bc838cbc2e148b3a5e7578d063ccb18, 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_text: Game Toolkit
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 14928a98ac0086a4483452d618f1764c, type: 2}
m_sharedMaterial: {fileID: 3722732180671858053, guid: 14928a98ac0086a4483452d618f1764c, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4294967295
m_fontColor: {r: 1, g: 1, b: 1, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
m_fontColorGradient:
topLeft: {r: 1, g: 1, b: 1, a: 1}
topRight: {r: 1, g: 1, b: 1, a: 1}
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
bottomRight: {r: 1, g: 1, b: 1, a: 1}
m_fontColorGradientPreset: {fileID: 0}
m_spriteAsset: {fileID: 0}
m_tintAllSprites: 0
m_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 40.4
m_fontSizeBase: 32
m_fontWeight: 400
m_enableAutoSizing: 1
m_fontSizeMin: 16
m_fontSizeMax: 200
m_fontStyle: 0
m_HorizontalAlignment: 2
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_enableWordWrapping: 1
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 1
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
instanceID:
--- !u!1 &2798765249596915848
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7237985044392396943}
- component: {fileID: 4278521145482899828}
- component: {fileID: 5182781659340014903}
m_Layer: 0
m_Name: K
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &7237985044392396943
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2798765249596915848}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
@ -514,24 +70,24 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 339, y: 62} m_AnchoredPosition: {x: -19.5, y: -51}
m_SizeDelta: {x: 201, y: 258} m_SizeDelta: {x: 765, y: 367}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &4278521145482899828 --- !u!222 &1171551675424211014
CanvasRenderer: CanvasRenderer:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2798765249596915848} m_GameObject: {fileID: 4436263584535608625}
m_CullTransparentMesh: 1 m_CullTransparentMesh: 1
--- !u!114 &5182781659340014903 --- !u!114 &9119692445744535771
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2798765249596915848} m_GameObject: {fileID: 4436263584535608625}
m_Enabled: 1 m_Enabled: 1
m_EditorHideFlags: 0 m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
@ -545,367 +101,7 @@ MonoBehaviour:
m_OnCullStateChanged: m_OnCullStateChanged:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls: []
m_Sprite: {fileID: 21300000, guid: 35fdbc8e63c5a4bf3bbd3ccc76219cff, type: 3} m_Sprite: {fileID: 21300000, guid: 05efaf40126cf49a99b0596285b72ff3, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &2950914775016921288
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5267061118891656177}
- component: {fileID: 5692801182675953203}
- component: {fileID: 405362430117505333}
m_Layer: 0
m_Name: candy-smith.com
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &5267061118891656177
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2950914775016921288}
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: 8066142236189538299}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 107, y: -292.29996}
m_SizeDelta: {x: 198.3, y: 49.6}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &5692801182675953203
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2950914775016921288}
m_CullTransparentMesh: 1
--- !u!114 &405362430117505333
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2950914775016921288}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 2bc838cbc2e148b3a5e7578d063ccb18, 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_text: candy-smith.com
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 14928a98ac0086a4483452d618f1764c, type: 2}
m_sharedMaterial: {fileID: 3722732180671858053, guid: 14928a98ac0086a4483452d618f1764c, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4294967295
m_fontColor: {r: 1, g: 1, b: 1, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
m_fontColorGradient:
topLeft: {r: 1, g: 1, b: 1, a: 1}
topRight: {r: 1, g: 1, b: 1, a: 1}
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
bottomRight: {r: 1, g: 1, b: 1, a: 1}
m_fontColorGradientPreset: {fileID: 0}
m_spriteAsset: {fileID: 0}
m_tintAllSprites: 0
m_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 24.15
m_fontSizeBase: 32
m_fontWeight: 400
m_enableAutoSizing: 1
m_fontSizeMin: 16
m_fontSizeMax: 200
m_fontStyle: 0
m_HorizontalAlignment: 2
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_enableWordWrapping: 1
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 1
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
instanceID:
--- !u!1 &3099863380251655998
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7930341969674081366}
- component: {fileID: 4443224619461481476}
- component: {fileID: 1383818645761691821}
m_Layer: 0
m_Name: crown-icon
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &7930341969674081366
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3099863380251655998}
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: 8066142236189538299}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 5, y: 236}
m_SizeDelta: {x: 117, y: 141}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &4443224619461481476
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3099863380251655998}
m_CullTransparentMesh: 1
--- !u!114 &1383818645761691821
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3099863380251655998}
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: 21300000, guid: 1c2a6b54e47f24ec988ab312f4f9f15f, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &4483943647209023423
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 3669207199257443244}
- component: {fileID: 579003316832335955}
- component: {fileID: 13517998226414589}
m_Layer: 0
m_Name: B
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &3669207199257443244
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4483943647209023423}
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: 8066142236189538299}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: -347, y: 61}
m_SizeDelta: {x: 214, y: 258}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &579003316832335955
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4483943647209023423}
m_CullTransparentMesh: 1
--- !u!114 &13517998226414589
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4483943647209023423}
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: 21300000, guid: d6d3c7c6338024d748bb251e20f1feae, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &8851489014707413941
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1651716613691765073}
- component: {fileID: 26444035618884800}
- component: {fileID: 2592848455393306425}
m_Layer: 0
m_Name: L
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1651716613691765073
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8851489014707413941}
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: 8066142236189538299}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: -185, y: 63}
m_SizeDelta: {x: 182, y: 250}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &26444035618884800
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8851489014707413941}
m_CullTransparentMesh: 1
--- !u!114 &2592848455393306425
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8851489014707413941}
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: 21300000, guid: 970b0ebcc16dc4bfda9cf885b350e841, type: 3}
m_Type: 0 m_Type: 0
m_PreserveAspect: 0 m_PreserveAspect: 0
m_FillCenter: 1 m_FillCenter: 1

View File

@ -3475,81 +3475,6 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
rectCanvasTransform: {fileID: 344021084} rectCanvasTransform: {fileID: 344021084}
--- !u!1 &1559885650
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1559885651}
- component: {fileID: 1559885653}
- component: {fileID: 1559885652}
m_Layer: 0
m_Name: logo
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1559885651
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1559885650}
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: 1298389566}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: -19.5, y: -51}
m_SizeDelta: {x: 765, y: 367}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1559885652
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1559885650}
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: 21300000, guid: 05efaf40126cf49a99b0596285b72ff3, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!222 &1559885653
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1559885650}
m_CullTransparentMesh: 1
--- !u!1 &1652429908 --- !u!1 &1652429908
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -6327,10 +6252,6 @@ PrefabInstance:
propertyPath: m_Name propertyPath: m_Name
value: logotype value: logotype
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 1317114975559913173, guid: 7c8e4739e8dd640cd9446b343d1439dd, type: 3}
propertyPath: m_IsActive
value: 1
objectReference: {fileID: 0}
- target: {fileID: 8066142236189538299, guid: 7c8e4739e8dd640cd9446b343d1439dd, type: 3} - target: {fileID: 8066142236189538299, guid: 7c8e4739e8dd640cd9446b343d1439dd, type: 3}
propertyPath: m_Pivot.x propertyPath: m_Pivot.x
value: 0.5 value: 0.5
@ -6412,21 +6333,8 @@ PrefabInstance:
value: 0 value: 0
objectReference: {fileID: 0} objectReference: {fileID: 0}
m_RemovedComponents: [] m_RemovedComponents: []
m_RemovedGameObjects: m_RemovedGameObjects: []
- {fileID: 2950914775016921288, guid: 7c8e4739e8dd640cd9446b343d1439dd, type: 3} m_AddedGameObjects: []
- {fileID: 1775140480896058040, guid: 7c8e4739e8dd640cd9446b343d1439dd, type: 3}
- {fileID: 1144527466411814374, guid: 7c8e4739e8dd640cd9446b343d1439dd, type: 3}
- {fileID: 3099863380251655998, guid: 7c8e4739e8dd640cd9446b343d1439dd, type: 3}
- {fileID: 8851489014707413941, guid: 7c8e4739e8dd640cd9446b343d1439dd, type: 3}
- {fileID: 4483943647209023423, guid: 7c8e4739e8dd640cd9446b343d1439dd, type: 3}
- {fileID: 1238907732860986645, guid: 7c8e4739e8dd640cd9446b343d1439dd, type: 3}
- {fileID: 1217184182562031401, guid: 7c8e4739e8dd640cd9446b343d1439dd, type: 3}
- {fileID: 2798765249596915848, guid: 7c8e4739e8dd640cd9446b343d1439dd, type: 3}
- {fileID: 1125092840833149178, guid: 7c8e4739e8dd640cd9446b343d1439dd, type: 3}
m_AddedGameObjects:
- targetCorrespondingSourceObject: {fileID: 8066142236189538299, guid: 7c8e4739e8dd640cd9446b343d1439dd, type: 3}
insertIndex: -1
addedObject: {fileID: 1559885651}
m_AddedComponents: [] m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 7c8e4739e8dd640cd9446b343d1439dd, type: 3} m_SourcePrefab: {fileID: 100100000, guid: 7c8e4739e8dd640cd9446b343d1439dd, type: 3}
--- !u!114 &7744221874774066920 --- !u!114 &7744221874774066920

View File

@ -0,0 +1,154 @@
using UnityEngine;
using UnityEngine.UI;
using System.Collections.Generic;
namespace WordsToolkit.Scripts.GUI
{
[AddComponentMenu("Layout/Flexible Grid Layout")]
public class FlexibleGridLayout : LayoutGroup
{
[Header("Grid Settings")]
[SerializeField] private bool fitX = true;
[SerializeField] private bool fitY = true;
[SerializeField] private int rows = 1;
[SerializeField] private int columns = 1;
[Header("Cell Settings")]
[SerializeField] private Vector2 cellSize = new Vector2(100, 100);
[SerializeField] private Vector2 spacing = Vector2.zero;
[SerializeField] private bool overrideHeight = false;
[SerializeField] private float fixedCellHeight = 100f;
[Header("Flexible Width Options")]
[SerializeField] private bool enableFlexibleWidth = true;
[SerializeField] private bool enableFlexibleHeight = false;
[SerializeField] private float minCellWidth = 50f;
[SerializeField] private float maxCellWidth = 200f;
[SerializeField] private bool keepAspectRatio = false;
[SerializeField] private bool stretchLastRow = true;
public override void CalculateLayoutInputHorizontal()
{
base.CalculateLayoutInputHorizontal();
if (fitX || fitY)
{
float sqrRt = Mathf.Sqrt(transform.childCount);
rows = Mathf.CeilToInt(sqrRt);
columns = Mathf.CeilToInt(sqrRt);
}
if (fitX)
{
rows = Mathf.CeilToInt(transform.childCount / (float)columns);
}
if (fitY)
{
columns = Mathf.CeilToInt(transform.childCount / (float)rows);
}
CalculateAndApplyLayout();
}
private void CalculateAndApplyLayout()
{
float parentWidth = rectTransform.rect.width;
float parentHeight = rectTransform.rect.height;
float availableWidth = parentWidth - padding.left - padding.right;
float availableHeight = parentHeight - padding.top - padding.bottom;
float totalSpacingWidth = spacing.x * (columns - 1);
float totalSpacingHeight = spacing.y * (rows - 1);
float cellWidth = (availableWidth - totalSpacingWidth) / columns;
float cellHeight = (availableHeight - totalSpacingHeight) / rows;
if (enableFlexibleWidth)
{
cellWidth = Mathf.Clamp(cellWidth, minCellWidth, maxCellWidth);
if (keepAspectRatio)
{
cellHeight = cellWidth * (cellSize.y / cellSize.x);
}
}
if (enableFlexibleHeight && !keepAspectRatio)
{
cellHeight = enableFlexibleHeight ? cellHeight : cellSize.y;
}
cellSize.x = enableFlexibleWidth ? cellWidth : cellSize.x;
cellSize.y = enableFlexibleHeight || keepAspectRatio ? cellHeight : cellSize.y;
// Override height if specified
if (overrideHeight)
{
cellSize.y = fixedCellHeight;
}
SetChildrenPositions();
}
private void SetChildrenPositions()
{
int totalChildren = rectChildren.Count;
int lastRowStart = ((totalChildren - 1) / columns) * columns;
int elementsInLastRow = totalChildren - lastRowStart;
bool isLastRowIncomplete = elementsInLastRow < columns && elementsInLastRow > 0;
for (int i = 0; i < rectChildren.Count; i++)
{
int rowIndex = i / columns;
int columnIndex = i % columns;
bool isInLastRow = i >= lastRowStart;
var item = rectChildren[i];
float cellWidth = cellSize.x;
float xPos;
if (stretchLastRow && isLastRowIncomplete && isInLastRow)
{
// Calculate stretched width for last row elements
float availableWidth = rectTransform.rect.width - padding.left - padding.right;
float totalSpacing = spacing.x * (elementsInLastRow - 1);
float stretchedCellWidth = (availableWidth - totalSpacing) / elementsInLastRow;
if (enableFlexibleWidth)
{
stretchedCellWidth = Mathf.Clamp(stretchedCellWidth, minCellWidth, maxCellWidth);
}
cellWidth = stretchedCellWidth;
// Calculate position for stretched elements
int positionInLastRow = i - lastRowStart;
xPos = padding.left + (cellWidth * positionInLastRow) + (spacing.x * positionInLastRow);
}
else
{
// Normal positioning
xPos = padding.left + (cellSize.x * columnIndex) + (spacing.x * columnIndex);
}
float yPos = padding.top + (cellSize.y * rowIndex) + (spacing.y * rowIndex);
SetChildAlongAxis(item, 0, xPos, cellWidth);
SetChildAlongAxis(item, 1, yPos, cellSize.y);
}
}
public override void CalculateLayoutInputVertical()
{
}
public override void SetLayoutHorizontal()
{
}
public override void SetLayoutVertical()
{
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -10,13 +10,17 @@ namespace WordsToolkit.Scripts.Levels.Editor
public static class EditorScope public static class EditorScope
{ {
private static IObjectResolver editorContainer; private static IObjectResolver editorContainer;
private static bool isDisposed = false;
public static IObjectResolver Container public static IObjectResolver Container
{ {
get get
{ {
if (editorContainer == null) if (isDisposed || editorContainer == null)
{ {
if (isDisposed)
return null;
var builder = new ContainerBuilder(); var builder = new ContainerBuilder();
Configure(builder); Configure(builder);
editorContainer = builder.Build(); editorContainer = builder.Build();
@ -48,7 +52,31 @@ namespace WordsToolkit.Scripts.Levels.Editor
public static T Resolve<T>() where T : class public static T Resolve<T>() where T : class
{ {
return Container.Resolve<T>(); var container = Container;
if (container == null || isDisposed)
return null;
return container.Resolve<T>();
}
public static void Dispose()
{
isDisposed = true;
if (editorContainer != null)
{
if (editorContainer is global::System.IDisposable disposableContainer)
{
disposableContainer.Dispose();
}
editorContainer = null;
}
}
// Called by Unity when domain is reloading
[UnityEngine.RuntimeInitializeOnLoadMethod(UnityEngine.RuntimeInitializeLoadType.SubsystemRegistration)]
private static void Reset()
{
isDisposed = false;
editorContainer = null;
} }
} }
} }

View File

@ -15,6 +15,9 @@ namespace WordsToolkit.Scripts.Levels.Editor.EditorWindows
// Static field to track all windows and handle script recompilation // Static field to track all windows and handle script recompilation
private static List<LevelManagerWindow> activeWindows = new List<LevelManagerWindow>(); private static List<LevelManagerWindow> activeWindows = new List<LevelManagerWindow>();
// Static flag to track if Unity is quitting
private static bool isQuitting = false;
// Static event for when hierarchy selection changes - other windows can subscribe to this // Static event for when hierarchy selection changes - other windows can subscribe to this
public static event Action<LevelHierarchyItem> OnHierarchySelectionChanged; public static event Action<LevelHierarchyItem> OnHierarchySelectionChanged;
@ -64,6 +67,9 @@ namespace WordsToolkit.Scripts.Levels.Editor.EditorWindows
activeWindows.Add(this); activeWindows.Add(this);
} }
// Subscribe to Unity quitting event
EditorApplication.quitting += OnUnityQuitting;
// Initialize UI // Initialize UI
LevelManagerWindowUI.InitializeUI(this); LevelManagerWindowUI.InitializeUI(this);
@ -82,10 +88,23 @@ namespace WordsToolkit.Scripts.Levels.Editor.EditorWindows
if (!string.IsNullOrEmpty(m_SelectedLanguage)) if (!string.IsNullOrEmpty(m_SelectedLanguage))
EditorPrefs.SetString(SELECTED_LANGUAGE_KEY, m_SelectedLanguage); EditorPrefs.SetString(SELECTED_LANGUAGE_KEY, m_SelectedLanguage);
// Unsubscribe from Unity quitting event
EditorApplication.quitting -= OnUnityQuitting;
// Unregister this window instance // Unregister this window instance
activeWindows.Remove(this); activeWindows.Remove(this);
} }
private static void OnUnityQuitting()
{
isQuitting = true;
// Dispose the editor scope container to prevent crashes
EditorScope.Dispose();
}
// Public static property to check if Unity is quitting
public static bool IsQuitting => isQuitting;
private void InitializeTreeView() private void InitializeTreeView()
{ {
// Create tree view state if needed // Create tree view state if needed

View File

@ -845,20 +845,20 @@ namespace WordsToolkit.Scripts.Levels.Editor
var wordsListContainer = new VisualElement(); var wordsListContainer = new VisualElement();
wordsListContainer.style.width = new StyleLength(new Length(100, LengthUnit.Percent)); wordsListContainer.style.width = new StyleLength(new Length(100, LengthUnit.Percent));
wordsListContainer.style.flexGrow = 1; wordsListContainer.style.flexGrow = 1;
// Store reference to the words list container for this language // Store reference to the words list container for this language
wordsListElements[langCode] = wordsListContainer; wordsListElements[langCode] = wordsListContainer;
// Fill words list from the SerializedProperty using ListView // Fill words list from the SerializedProperty using ListView
FillWordsList(wordsListContainer, wordsProp, langCode); FillWordsList(wordsListContainer, wordsProp, langCode);
wordsContent.Add(wordsListContainer); wordsContent.Add(wordsListContainer);
// Add Clear Words button // Add Clear Words button
var clearWordsButton = new Button(() => var clearWordsButton = new Button(() =>
{ {
if (EditorUtility.DisplayDialog("Clear Words", if (EditorUtility.DisplayDialog("Clear Words",
"Are you sure you want to clear all words and crossword? This action cannot be undone.", "Are you sure you want to clear all words and crossword? This action cannot be undone.",
"Clear", "Cancel")) "Clear", "Cancel"))
{ {
serializedObject.Update(); serializedObject.Update();
@ -871,7 +871,7 @@ namespace WordsToolkit.Scripts.Levels.Editor
{ {
previewDataDict[langCode] = null; previewDataDict[langCode] = null;
} }
// Clear the saved crossword data in the level // Clear the saved crossword data in the level
var languageData = level.GetLanguageData(langCode); var languageData = level.GetLanguageData(langCode);
if (languageData != null) if (languageData != null)
@ -886,10 +886,10 @@ namespace WordsToolkit.Scripts.Levels.Editor
EditorUtility.SetDirty(serializedObject.targetObject); EditorUtility.SetDirty(serializedObject.targetObject);
AssetDatabase.SaveAssets(); AssetDatabase.SaveAssets();
// Notify that the level needs update to refresh the crossword // Notify that the level needs update to refresh the crossword
NotifyLevelNeedsUpdate(level); NotifyLevelNeedsUpdate(level);
// Refresh the UI using LevelManagerWindow // Refresh the UI using LevelManagerWindow
EditorWindows.LevelManagerWindow.RefreshInspectorForLevel(level); EditorWindows.LevelManagerWindow.RefreshInspectorForLevel(level);
} }
@ -912,13 +912,13 @@ namespace WordsToolkit.Scripts.Levels.Editor
{ {
// Clear existing content first // Clear existing content first
wordsListContainer.Clear(); wordsListContainer.Clear();
// Create ListView for words // Create ListView for words
var wordsListView = new ListView(); var wordsListView = new ListView();
wordsListView.name = $"words-listview-{langCode}"; wordsListView.name = $"words-listview-{langCode}";
wordsListView.style.flexGrow = 1; wordsListView.style.flexGrow = 1;
wordsListView.style.height = StyleKeyword.Auto; // Auto height based on content wordsListView.style.height = StyleKeyword.Auto; // Auto height based on content
// Schedule setting the title after the ListView is fully constructed // Schedule setting the title after the ListView is fully constructed
wordsListView.schedule.Execute(() => wordsListView.schedule.Execute(() =>
{ {
@ -928,7 +928,7 @@ namespace WordsToolkit.Scripts.Levels.Editor
{ {
var label = sizeField.Q<Label>(); var label = sizeField.Q<Label>();
label.text = "Words"; label.text = "Words";
// Set the text input value directly on the TextField // Set the text input value directly on the TextField
sizeField.value = wordsProp.arraySize.ToString(); sizeField.value = wordsProp.arraySize.ToString();
} }
@ -949,10 +949,10 @@ namespace WordsToolkit.Scripts.Levels.Editor
} }
} }
}).ExecuteLater(1); // Execute after UI is built }).ExecuteLater(1); // Execute after UI is built
// Bind the ListView to the words property // Bind the ListView to the words property
wordsListView.BindProperty(wordsProp); wordsListView.BindProperty(wordsProp);
// Setup ListView properties // Setup ListView properties
wordsListView.showBorder = true; wordsListView.showBorder = true;
wordsListView.showAlternatingRowBackgrounds = AlternatingRowBackground.None; wordsListView.showAlternatingRowBackgrounds = AlternatingRowBackground.None;
@ -961,16 +961,16 @@ namespace WordsToolkit.Scripts.Levels.Editor
wordsListView.reorderMode = ListViewReorderMode.Animated; wordsListView.reorderMode = ListViewReorderMode.Animated;
wordsListView.virtualizationMethod = CollectionVirtualizationMethod.FixedHeight; wordsListView.virtualizationMethod = CollectionVirtualizationMethod.FixedHeight;
wordsListView.fixedItemHeight = 25; // Set a fixed height per item to help with layout wordsListView.fixedItemHeight = 25; // Set a fixed height per item to help with layout
// Set up the make item callback // Set up the make item callback
wordsListView.makeItem = () => CreateWordListItem(langCode); wordsListView.makeItem = () => CreateWordListItem(langCode);
// Set up the bind item callback // Set up the bind item callback
wordsListView.bindItem = (element, index) => BindWordListItem(element, index, wordsProp, langCode); wordsListView.bindItem = (element, index) => BindWordListItem(element, index, wordsProp, langCode);
// Set up the unbind item callback to clean up event handlers // Set up the unbind item callback to clean up event handlers
wordsListView.unbindItem = (element, index) => UnbindWordListItem(element, index); wordsListView.unbindItem = (element, index) => UnbindWordListItem(element, index);
// Add callback for when items are added/removed // Add callback for when items are added/removed
wordsListView.itemsAdded += (items) => wordsListView.itemsAdded += (items) =>
{ {
@ -981,7 +981,7 @@ namespace WordsToolkit.Scripts.Levels.Editor
// Refresh available words UI when words are added // Refresh available words UI when words are added
EditorWindows.LevelManagerWindow.RefreshInspectorForLevel(level); EditorWindows.LevelManagerWindow.RefreshInspectorForLevel(level);
}; };
wordsListView.itemsRemoved += (items) => wordsListView.itemsRemoved += (items) =>
{ {
serializedObject.ApplyModifiedProperties(); serializedObject.ApplyModifiedProperties();
@ -1000,7 +1000,7 @@ namespace WordsToolkit.Scripts.Levels.Editor
// Refresh available words UI when words are removed // Refresh available words UI when words are removed
EditorWindows.LevelManagerWindow.RefreshInspectorForLevel(level); EditorWindows.LevelManagerWindow.RefreshInspectorForLevel(level);
}; };
wordsListContainer.Add(wordsListView); wordsListContainer.Add(wordsListView);
} }
@ -1219,20 +1219,21 @@ namespace WordsToolkit.Scripts.Levels.Editor
private void UpdateWordIcon(VisualElement iconContainer, string wordValue, string langCode) private void UpdateWordIcon(VisualElement iconContainer, string wordValue, string langCode)
{ {
iconContainer.Clear(); iconContainer.Clear();
// Check if word is used in other levels // Check if word is used in other levels
var usedInLevels = LevelEditorServices.GetUsedInLevels(wordValue, langCode, level); var usedInLevels = LevelEditorServices.GetUsedInLevels(wordValue, langCode, level);
bool hasWarning = !string.IsNullOrEmpty(wordValue) && usedInLevels.Length > 0; bool hasWarning = !string.IsNullOrEmpty(wordValue) && usedInLevels.Length > 0;
// Get banned words service for banned status check // Get banned words service for banned status check
var bannedWordsService = EditorScope.Resolve<IBannedWordsService>(); var bannedWordsService = EditorScope.Resolve<IBannedWordsService>();
bool isWordBanned = !string.IsNullOrEmpty(wordValue) && bannedWordsService != null && bannedWordsService.IsWordBanned(wordValue, langCode); bool isWordBanned = !string.IsNullOrEmpty(wordValue) && bannedWordsService != null && bannedWordsService.IsWordBanned(wordValue, langCode);
// Check if word is duplicate within current level // Check if word is duplicate within current level
bool isDuplicate = IsWordDuplicateInLevel(wordValue, langCode); bool isDuplicate = IsWordDuplicateInLevel(wordValue, langCode);
// Check if word is not known in model controller // Check if word is not known in model controller
bool isWordUnknown = !string.IsNullOrEmpty(wordValue) && Controller != null && bool isWordUnknown = !string.IsNullOrEmpty(wordValue)
&& Controller != null &&
!Controller.IsWordKnown(wordValue, langCode); !Controller.IsWordKnown(wordValue, langCode);
if (hasWarning || isWordBanned || isDuplicate || isWordUnknown) if (hasWarning || isWordBanned || isDuplicate || isWordUnknown)
@ -1241,7 +1242,7 @@ namespace WordsToolkit.Scripts.Levels.Editor
warningImage.image = warningIcon; warningImage.image = warningIcon;
warningImage.style.width = 16; warningImage.style.width = 16;
warningImage.style.height = 16; warningImage.style.height = 16;
// Priority: Banned > Duplicate > Used in other levels // Priority: Banned > Duplicate > Used in other levels
if (isWordBanned && isDuplicate && hasWarning) if (isWordBanned && isDuplicate && hasWarning)
{ {
@ -1264,7 +1265,7 @@ namespace WordsToolkit.Scripts.Levels.Editor
else if (isDuplicate && hasWarning) else if (isDuplicate && hasWarning)
{ {
// Duplicate + used in other levels // Duplicate + used in other levels
string tooltipText = usedInLevels.Length == 1 string tooltipText = usedInLevels.Length == 1
? $"WARNING: This word is DUPLICATED in this level AND already used in level {usedInLevels[0].number}" ? $"WARNING: This word is DUPLICATED in this level AND already used in level {usedInLevels[0].number}"
: $"WARNING: This word is DUPLICATED in this level AND already used in levels: {string.Join(", ", usedInLevels.OrderBy(l => l.number).Select(l => l.number.ToString()))}"; : $"WARNING: This word is DUPLICATED in this level AND already used in levels: {string.Join(", ", usedInLevels.OrderBy(l => l.number).Select(l => l.number.ToString()))}";
iconContainer.tooltip = tooltipText; iconContainer.tooltip = tooltipText;
@ -1285,7 +1286,7 @@ namespace WordsToolkit.Scripts.Levels.Editor
else if (hasWarning) else if (hasWarning)
{ {
// Only used in other levels // Only used in other levels
string tooltipText = usedInLevels.Length == 1 string tooltipText = usedInLevels.Length == 1
? $"This word has already been used in level {usedInLevels[0].number}" ? $"This word has already been used in level {usedInLevels[0].number}"
: $"This word has already been used in levels: {string.Join(", ", usedInLevels.OrderBy(l => l.number).Select(l => l.number.ToString()))}"; : $"This word has already been used in levels: {string.Join(", ", usedInLevels.OrderBy(l => l.number).Select(l => l.number.ToString()))}";
iconContainer.tooltip = tooltipText; iconContainer.tooltip = tooltipText;
@ -1297,7 +1298,7 @@ namespace WordsToolkit.Scripts.Levels.Editor
iconContainer.tooltip = "This word is not known in the model controller"; iconContainer.tooltip = "This word is not known in the model controller";
warningImage.tintColor = Color.green; warningImage.tintColor = Color.green;
} }
iconContainer.Add(warningImage); iconContainer.Add(warningImage);
} }
} }

View File

@ -53,9 +53,9 @@ namespace WordsToolkit.Scripts.Services.IAP
public void UnsubscribeFromPurchaseEvent(Action<string> purchaseHandler) public void UnsubscribeFromPurchaseEvent(Action<string> purchaseHandler)
{ {
#if UNITY_PURCHASING #if UNITY_PURCHASING
IAPController.OnSuccessfulPurchase -= purchaseHandler; IAPController.OnSuccessfulPurchase -= purchaseHandler;
#endif #endif
} }
public void BuyProduct(string productId) public void BuyProduct(string productId)

View File

@ -10,7 +10,7 @@
"com.unity.purchasing": "4.13.0", "com.unity.purchasing": "4.13.0",
"com.unity.sentis": "2.1.2", "com.unity.sentis": "2.1.2",
"com.unity.test-framework": "1.1.33", "com.unity.test-framework": "1.1.33",
"com.unity.textmeshpro": "3.0.7", "com.unity.textmeshpro": "3.0.9",
"com.unity.timeline": "1.7.7", "com.unity.timeline": "1.7.7",
"com.unity.ugui": "1.0.0", "com.unity.ugui": "1.0.0",
"com.unity.visualscripting": "1.9.4", "com.unity.visualscripting": "1.9.4",

View File

@ -274,9 +274,9 @@
"depth": 1, "depth": 1,
"source": "registry", "source": "registry",
"dependencies": { "dependencies": {
"com.unity.modules.unitywebrequest": "1.0.0", "com.unity.modules.androidjni": "1.0.0",
"com.unity.nuget.newtonsoft-json": "3.2.1", "com.unity.nuget.newtonsoft-json": "3.2.1",
"com.unity.modules.androidjni": "1.0.0" "com.unity.modules.unitywebrequest": "1.0.0"
}, },
"url": "https://packages.unity.com" "url": "https://packages.unity.com"
}, },
@ -311,7 +311,7 @@
"url": "https://packages.unity.com" "url": "https://packages.unity.com"
}, },
"com.unity.textmeshpro": { "com.unity.textmeshpro": {
"version": "3.0.7", "version": "3.0.9",
"depth": 0, "depth": 0,
"source": "registry", "source": "registry",
"dependencies": { "dependencies": {

View File

@ -8,6 +8,4 @@ EditorBuildSettings:
- enabled: 1 - enabled: 1
path: Assets/WordConnectGameToolkit/Scenes/main.unity path: Assets/WordConnectGameToolkit/Scenes/main.unity
guid: 88c9f51e8542e47d28fa27d5846353d5 guid: 88c9f51e8542e47d28fa27d5846353d5
m_configObjects: m_configObjects: {}
com.unity.adaptiveperformance.loader_settings: {fileID: 11400000, guid: f01770c3ff0ba4f2e94cc146cdb245a5, type: 2}
com.unity.adaptiveperformance.simulator.provider_settings: {fileID: 11400000, guid: 3e70720b3e3ab479dbbe59419be4071d, type: 2}

View File

@ -4,7 +4,7 @@
PlayerSettings: PlayerSettings:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
serializedVersion: 26 serializedVersion: 26
productGUID: ed32c40abe9624865b4aab76d0fcf23b productGUID: 3f0059c091b2a45e69272ac33622b2bc
AndroidProfiler: 0 AndroidProfiler: 0
AndroidFilterTouchesWhenObscured: 0 AndroidFilterTouchesWhenObscured: 0
AndroidEnableSustainedPerformanceMode: 0 AndroidEnableSustainedPerformanceMode: 0
@ -141,7 +141,7 @@ PlayerSettings:
loadStoreDebugModeEnabled: 0 loadStoreDebugModeEnabled: 0
visionOSBundleVersion: 1.0 visionOSBundleVersion: 1.0
tvOSBundleVersion: 1.0 tvOSBundleVersion: 1.0
bundleVersion: 1.0 bundleVersion: 1.03
preloadedAssets: [] preloadedAssets: []
metroInputSource: 0 metroInputSource: 0
wsaTransparentSwapchain: 0 wsaTransparentSwapchain: 0
@ -165,13 +165,13 @@ PlayerSettings:
applicationIdentifier: applicationIdentifier:
Android: com.CandySmith.WordConnect Android: com.CandySmith.WordConnect
Standalone: com.DefaultCompany.WordsCompleteProject Standalone: com.DefaultCompany.WordsCompleteProject
iPhone: com.sophon.wordconnect iPhone: com.CandySmith.WordConnect
buildNumber: buildNumber:
Standalone: 0 Standalone: 0
VisionOS: 0 VisionOS: 0
iPhone: 0 iPhone: 0
tvOS: 0 tvOS: 0
overrideDefaultApplicationIdentifier: 1 overrideDefaultApplicationIdentifier: 0
AndroidBundleVersionCode: 1 AndroidBundleVersionCode: 1
AndroidMinSdkVersion: 22 AndroidMinSdkVersion: 22
AndroidTargetSdkVersion: 33 AndroidTargetSdkVersion: 33
@ -242,7 +242,7 @@ PlayerSettings:
metalCompileShaderBinary: 0 metalCompileShaderBinary: 0
iOSRenderExtraFrameOnPause: 0 iOSRenderExtraFrameOnPause: 0
iosCopyPluginsCodeInsteadOfSymlink: 0 iosCopyPluginsCodeInsteadOfSymlink: 0
appleDeveloperTeamID: G8UMWM9TLL appleDeveloperTeamID:
iOSManualSigningProvisioningProfileID: iOSManualSigningProvisioningProfileID:
tvOSManualSigningProvisioningProfileID: tvOSManualSigningProvisioningProfileID:
VisionOSManualSigningProvisioningProfileID: VisionOSManualSigningProvisioningProfileID:
@ -265,7 +265,7 @@ PlayerSettings:
useCustomGradlePropertiesTemplate: 0 useCustomGradlePropertiesTemplate: 0
useCustomGradleSettingsTemplate: 0 useCustomGradleSettingsTemplate: 0
useCustomProguardFile: 0 useCustomProguardFile: 0
AndroidTargetArchitectures: 3 AndroidTargetArchitectures: 1
AndroidTargetDevices: 0 AndroidTargetDevices: 0
AndroidSplashScreenScale: 0 AndroidSplashScreenScale: 0
androidSplashScreen: {fileID: 0} androidSplashScreen: {fileID: 0}
@ -300,6 +300,31 @@ PlayerSettings:
m_BuildTargetPlatformIcons: m_BuildTargetPlatformIcons:
- m_BuildTarget: iPhone - m_BuildTarget: iPhone
m_Icons: m_Icons:
- m_Textures: []
m_Width: 180
m_Height: 180
m_Kind: 0
m_SubKind: iPhone
- m_Textures: []
m_Width: 120
m_Height: 120
m_Kind: 0
m_SubKind: iPhone
- m_Textures: []
m_Width: 167
m_Height: 167
m_Kind: 0
m_SubKind: iPad
- m_Textures: []
m_Width: 152
m_Height: 152
m_Kind: 0
m_SubKind: iPad
- m_Textures: []
m_Width: 76
m_Height: 76
m_Kind: 0
m_SubKind: iPad
- m_Textures: [] - m_Textures: []
m_Width: 120 m_Width: 120
m_Height: 120 m_Height: 120
@ -370,31 +395,6 @@ PlayerSettings:
m_Height: 1024 m_Height: 1024
m_Kind: 4 m_Kind: 4
m_SubKind: App Store m_SubKind: App Store
- m_Textures: []
m_Width: 180
m_Height: 180
m_Kind: 0
m_SubKind: iPhone
- m_Textures: []
m_Width: 120
m_Height: 120
m_Kind: 0
m_SubKind: iPhone
- m_Textures: []
m_Width: 167
m_Height: 167
m_Kind: 0
m_SubKind: iPad
- m_Textures: []
m_Width: 152
m_Height: 152
m_Kind: 0
m_SubKind: iPad
- m_Textures: []
m_Width: 76
m_Height: 76
m_Kind: 0
m_SubKind: iPad
- m_BuildTarget: Android - m_BuildTarget: Android
m_Icons: m_Icons:
- m_Textures: [] - m_Textures: []

46
commit.sh Executable file
View File

@ -0,0 +1,46 @@
#!/bin/bash
# 确保脚本有执行权限(只需执行一次)
# chmod +x git_commit.sh
# 检查是否在 Git 仓库内
if ! git rev-parse --is-inside-work-tree >/dev/null 2>&1; then
echo "❌ 当前目录不是 Git 仓库,请先执行 git init"
exit 1
fi
# 获取 commit message
commit_msg="$1"
# 如果没有提供 commit message提示用户输入
if [ -z "$commit_msg" ]; then
commit_msg="modify scripts"
#read -p "请输入 commit message: " commit_msg
#if [ -z "$commit_msg" ]; then
# echo "❌ 提交信息不能为空!"
# exit 1
#fi
fi
# 添加所有更改
git add .
if [ $? -ne 0 ]; then
echo "❌ git add 失败!"
exit 1
fi
# 提交更改
git commit -m "$commit_msg"
if [ $? -ne 0 ]; then
echo "❌ git commit 失败!"
exit 1
fi
# 推送到远程仓库
git push -u origin main
if [ $? -ne 0 ]; then
echo "❌ git push 失败!请检查远程仓库设置。"
exit 1
fi
echo "✅ 代码提交成功!"