Initial commit
This commit is contained in:
1
Assets/Resources/BillingMode.json
Normal file
1
Assets/Resources/BillingMode.json
Normal file
@ -0,0 +1 @@
|
||||
{"androidStore":"GooglePlay"}
|
7
Assets/Resources/BillingMode.json.meta
Normal file
7
Assets/Resources/BillingMode.json.meta
Normal file
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 47ee60abed1514dababc02a35d8293ea
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
8
Assets/Resources/Prefabs.meta
Normal file
8
Assets/Resources/Prefabs.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e6244c313aaa59247a2c21c3a98bc200
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
140
Assets/Resources/Prefabs/Dots 1.prefab
Normal file
140
Assets/Resources/Prefabs/Dots 1.prefab
Normal file
@ -0,0 +1,140 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1 &319398986043626711
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 785763412374789818}
|
||||
- component: {fileID: 7015320508283337349}
|
||||
- component: {fileID: 486522181739725220}
|
||||
- component: {fileID: 1039877131302109580}
|
||||
m_Layer: 0
|
||||
m_Name: Dots 1
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &785763412374789818
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 319398986043626711}
|
||||
serializedVersion: 2
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 2, y: 2, z: 2}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!212 &7015320508283337349
|
||||
SpriteRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 319398986043626711}
|
||||
m_Enabled: 1
|
||||
m_CastShadows: 0
|
||||
m_ReceiveShadows: 0
|
||||
m_DynamicOccludee: 1
|
||||
m_StaticShadowCaster: 0
|
||||
m_MotionVectors: 1
|
||||
m_LightProbeUsage: 1
|
||||
m_ReflectionProbeUsage: 1
|
||||
m_RayTracingMode: 0
|
||||
m_RayTraceProcedural: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
- {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2}
|
||||
m_StaticBatchInfo:
|
||||
firstSubMesh: 0
|
||||
subMeshCount: 0
|
||||
m_StaticBatchRoot: {fileID: 0}
|
||||
m_ProbeAnchor: {fileID: 0}
|
||||
m_LightProbeVolumeOverride: {fileID: 0}
|
||||
m_ScaleInLightmap: 1
|
||||
m_ReceiveGI: 1
|
||||
m_PreserveUVs: 0
|
||||
m_IgnoreNormalsForChartDetection: 0
|
||||
m_ImportantGI: 0
|
||||
m_StitchLightmapSeams: 1
|
||||
m_SelectedEditorRenderState: 0
|
||||
m_MinimumChartSize: 4
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_SortingLayerID: 0
|
||||
m_SortingLayer: 0
|
||||
m_SortingOrder: 0
|
||||
m_Sprite: {fileID: -2413806693520163455, guid: a86470a33a6bf42c4b3595704624658b, type: 3}
|
||||
m_Color: {r: 0.11372549, g: 1, b: 0.8352941, a: 1}
|
||||
m_FlipX: 0
|
||||
m_FlipY: 0
|
||||
m_DrawMode: 0
|
||||
m_Size: {x: 1, y: 1}
|
||||
m_AdaptiveModeThreshold: 0.5
|
||||
m_SpriteTileMode: 0
|
||||
m_WasSpriteAssigned: 1
|
||||
m_MaskInteraction: 0
|
||||
m_SpriteSortPoint: 0
|
||||
--- !u!114 &486522181739725220
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 319398986043626711}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 11518baead38f7c46a03489cc7c09661, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
isDifferent: 0
|
||||
sprite: {fileID: 7015320508283337349}
|
||||
redValue: 0
|
||||
greenValue: 0
|
||||
blueValue: 0
|
||||
--- !u!58 &1039877131302109580
|
||||
CircleCollider2D:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 319398986043626711}
|
||||
m_Enabled: 1
|
||||
m_Density: 1
|
||||
m_Material: {fileID: 0}
|
||||
m_IncludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_ExcludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_LayerOverridePriority: 0
|
||||
m_ForceSendLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_ForceReceiveLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_ContactCaptureLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_CallbackLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_IsTrigger: 1
|
||||
m_UsedByEffector: 0
|
||||
m_UsedByComposite: 0
|
||||
m_Offset: {x: 0, y: 0}
|
||||
serializedVersion: 2
|
||||
m_Radius: 0.5
|
7
Assets/Resources/Prefabs/Dots 1.prefab.meta
Normal file
7
Assets/Resources/Prefabs/Dots 1.prefab.meta
Normal file
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6aa4728acadddf644b365433dbefc6e4
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
94
Assets/Resources/Prefabs/Dots.prefab
Normal file
94
Assets/Resources/Prefabs/Dots.prefab
Normal file
@ -0,0 +1,94 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1 &7871307963615678600
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 8615473580852410743}
|
||||
- component: {fileID: 4596729100013083618}
|
||||
- component: {fileID: 8926734215222152371}
|
||||
- component: {fileID: 5452406788060373828}
|
||||
m_Layer: 5
|
||||
m_Name: Dots
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &8615473580852410743
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 7871307963615678600}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 0.3424, y: 0.3424, z: 0.3424}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||
m_AnchoredPosition: {x: 70, y: 171}
|
||||
m_SizeDelta: {x: 476.6505, y: 476.6505}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!222 &4596729100013083618
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 7871307963615678600}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!114 &8926734215222152371
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 7871307963615678600}
|
||||
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.008141518, g: 0, 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: -2413806693520163455, guid: 7e213845e3ee6bb47899115dcd3d6ffb, 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!114 &5452406788060373828
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 7871307963615678600}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 11518baead38f7c46a03489cc7c09661, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
image: {fileID: 8926734215222152371}
|
||||
redValue: 0
|
||||
greenValue: 0
|
||||
blueValue: 0
|
7
Assets/Resources/Prefabs/Dots.prefab.meta
Normal file
7
Assets/Resources/Prefabs/Dots.prefab.meta
Normal file
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 922aef67589cabe488dd99c00fec58e3
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
137
Assets/Resources/Prefabs/SameDots.prefab
Normal file
137
Assets/Resources/Prefabs/SameDots.prefab
Normal file
@ -0,0 +1,137 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1 &1162867882491205106
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 5407407503906889453}
|
||||
- component: {fileID: 2899868161041141898}
|
||||
- component: {fileID: 7928419509168381202}
|
||||
- component: {fileID: 2419188734955269422}
|
||||
m_Layer: 0
|
||||
m_Name: SameDots
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &5407407503906889453
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1162867882491205106}
|
||||
serializedVersion: 2
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 10, y: 2.25, z: 0}
|
||||
m_LocalScale: {x: 2, y: 2, z: 2}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!212 &2899868161041141898
|
||||
SpriteRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1162867882491205106}
|
||||
m_Enabled: 1
|
||||
m_CastShadows: 0
|
||||
m_ReceiveShadows: 0
|
||||
m_DynamicOccludee: 1
|
||||
m_StaticShadowCaster: 0
|
||||
m_MotionVectors: 1
|
||||
m_LightProbeUsage: 1
|
||||
m_ReflectionProbeUsage: 1
|
||||
m_RayTracingMode: 0
|
||||
m_RayTraceProcedural: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
- {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2}
|
||||
m_StaticBatchInfo:
|
||||
firstSubMesh: 0
|
||||
subMeshCount: 0
|
||||
m_StaticBatchRoot: {fileID: 0}
|
||||
m_ProbeAnchor: {fileID: 0}
|
||||
m_LightProbeVolumeOverride: {fileID: 0}
|
||||
m_ScaleInLightmap: 1
|
||||
m_ReceiveGI: 1
|
||||
m_PreserveUVs: 0
|
||||
m_IgnoreNormalsForChartDetection: 0
|
||||
m_ImportantGI: 0
|
||||
m_StitchLightmapSeams: 1
|
||||
m_SelectedEditorRenderState: 0
|
||||
m_MinimumChartSize: 4
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_SortingLayerID: 0
|
||||
m_SortingLayer: 0
|
||||
m_SortingOrder: 0
|
||||
m_Sprite: {fileID: -2413806693520163455, guid: a86470a33a6bf42c4b3595704624658b, type: 3}
|
||||
m_Color: {r: 0.71829915, g: 0.9490196, b: 0.6117647, a: 1}
|
||||
m_FlipX: 0
|
||||
m_FlipY: 0
|
||||
m_DrawMode: 0
|
||||
m_Size: {x: 1, y: 1}
|
||||
m_AdaptiveModeThreshold: 0.5
|
||||
m_SpriteTileMode: 0
|
||||
m_WasSpriteAssigned: 1
|
||||
m_MaskInteraction: 0
|
||||
m_SpriteSortPoint: 0
|
||||
--- !u!58 &7928419509168381202
|
||||
CircleCollider2D:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1162867882491205106}
|
||||
m_Enabled: 1
|
||||
m_Density: 1
|
||||
m_Material: {fileID: 0}
|
||||
m_IncludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_ExcludeLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 0
|
||||
m_LayerOverridePriority: 0
|
||||
m_ForceSendLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_ForceReceiveLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_ContactCaptureLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_CallbackLayers:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_IsTrigger: 1
|
||||
m_UsedByEffector: 0
|
||||
m_UsedByComposite: 0
|
||||
m_Offset: {x: 0, y: 0}
|
||||
serializedVersion: 2
|
||||
m_Radius: 0.5
|
||||
--- !u!114 &2419188734955269422
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1162867882491205106}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: c940e254c8f971d45a9cc975aa3de997, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
index: 0
|
||||
sprite: {fileID: 2899868161041141898}
|
7
Assets/Resources/Prefabs/SameDots.prefab.meta
Normal file
7
Assets/Resources/Prefabs/SameDots.prefab.meta
Normal file
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ca1350dc69a55a34b92e3ac6e638a78f
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
8
Assets/Resources/Prefabs/UI.meta
Normal file
8
Assets/Resources/Prefabs/UI.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 761e25806b6c91f4daa173fa71a4e442
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
500
Assets/Resources/Prefabs/UI/AverageDataDisplay.prefab
Normal file
500
Assets/Resources/Prefabs/UI/AverageDataDisplay.prefab
Normal file
@ -0,0 +1,500 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1 &1963160862648856519
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 6332466293313995089}
|
||||
- component: {fileID: 1346425798279528164}
|
||||
- component: {fileID: 7126450072952254097}
|
||||
- component: {fileID: 1560273638242167490}
|
||||
m_Layer: 5
|
||||
m_Name: AverageDataDisplay
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &6332466293313995089
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1963160862648856519}
|
||||
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: 1863640361538362678}
|
||||
- {fileID: 4013599976793054767}
|
||||
- {fileID: 3932025024964869806}
|
||||
m_Father: {fileID: 0}
|
||||
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: 713.03, y: 283}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!222 &1346425798279528164
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1963160862648856519}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!114 &7126450072952254097
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1963160862648856519}
|
||||
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.79079384, g: 0.93962574, b: 0.9547169, 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: 74e324dd9cbd34aa2811e539973caac7, 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!114 &1560273638242167490
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1963160862648856519}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 104d6574fb136aa46b03339eb07ed2c5, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
data: []
|
||||
responseTimeList: []
|
||||
stageText: {fileID: 6615389757084420365}
|
||||
jumlahSalahText: {fileID: 2564702300718587932}
|
||||
responseTimeText: {fileID: 6280040936493118705}
|
||||
--- !u!1 &5664700189354168597
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 1863640361538362678}
|
||||
- component: {fileID: 5503009369978322682}
|
||||
- component: {fileID: 6615389757084420365}
|
||||
m_Layer: 5
|
||||
m_Name: 'Stage '
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &1863640361538362678
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5664700189354168597}
|
||||
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: 6332466293313995089}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 10.5, y: -13.25}
|
||||
m_SizeDelta: {x: 485.5909, y: 89.7078}
|
||||
m_Pivot: {x: 0, y: 1}
|
||||
--- !u!222 &5503009369978322682
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5664700189354168597}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!114 &6615389757084420365
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5664700189354168597}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, 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: 'Stage : Deutan'
|
||||
m_isRightToLeft: 0
|
||||
m_fontAsset: {fileID: 11400000, guid: 5c5ee151f9307453bad78be36b51a077, type: 2}
|
||||
m_sharedMaterial: {fileID: 2517202264660172603, guid: 5c5ee151f9307453bad78be36b51a077, 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: 64
|
||||
m_fontSizeBase: 64
|
||||
m_fontWeight: 400
|
||||
m_enableAutoSizing: 0
|
||||
m_fontSizeMin: 18
|
||||
m_fontSizeMax: 72
|
||||
m_fontStyle: 0
|
||||
m_HorizontalAlignment: 1
|
||||
m_VerticalAlignment: 256
|
||||
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}
|
||||
--- !u!1 &8256480103862193718
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 4013599976793054767}
|
||||
- component: {fileID: 2504700162754291991}
|
||||
- component: {fileID: 2564702300718587932}
|
||||
m_Layer: 5
|
||||
m_Name: Jumlah Salah
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &4013599976793054767
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8256480103862193718}
|
||||
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: 6332466293313995089}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 10.5, y: -100}
|
||||
m_SizeDelta: {x: 510.5432, y: 63.4422}
|
||||
m_Pivot: {x: 0, y: 1}
|
||||
--- !u!222 &2504700162754291991
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8256480103862193718}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!114 &2564702300718587932
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8256480103862193718}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, 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: 'Jumlah Salah : '
|
||||
m_isRightToLeft: 0
|
||||
m_fontAsset: {fileID: 11400000, guid: 50c12c23294124aa48490c44ac65a9e4, type: 2}
|
||||
m_sharedMaterial: {fileID: 7746803525459343344, guid: 50c12c23294124aa48490c44ac65a9e4, 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
|
||||
m_fontSizeBase: 40
|
||||
m_fontWeight: 400
|
||||
m_enableAutoSizing: 0
|
||||
m_fontSizeMin: 18
|
||||
m_fontSizeMax: 72
|
||||
m_fontStyle: 0
|
||||
m_HorizontalAlignment: 1
|
||||
m_VerticalAlignment: 256
|
||||
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}
|
||||
--- !u!1 &8976727440476285841
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 3932025024964869806}
|
||||
- component: {fileID: 1006755574535511889}
|
||||
- component: {fileID: 6280040936493118705}
|
||||
m_Layer: 5
|
||||
m_Name: Rata Rata Response Time
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &3932025024964869806
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8976727440476285841}
|
||||
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: 6332466293313995089}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 10.5, y: -164.5}
|
||||
m_SizeDelta: {x: 702.53, y: 63.4422}
|
||||
m_Pivot: {x: 0, y: 1}
|
||||
--- !u!222 &1006755574535511889
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8976727440476285841}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!114 &6280040936493118705
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8976727440476285841}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, 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: 'Rata Rata Response Time : 23s'
|
||||
m_isRightToLeft: 0
|
||||
m_fontAsset: {fileID: 11400000, guid: 50c12c23294124aa48490c44ac65a9e4, type: 2}
|
||||
m_sharedMaterial: {fileID: 7746803525459343344, guid: 50c12c23294124aa48490c44ac65a9e4, 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
|
||||
m_fontSizeBase: 40
|
||||
m_fontWeight: 400
|
||||
m_enableAutoSizing: 0
|
||||
m_fontSizeMin: 18
|
||||
m_fontSizeMax: 72
|
||||
m_fontStyle: 0
|
||||
m_HorizontalAlignment: 1
|
||||
m_VerticalAlignment: 256
|
||||
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}
|
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4dfc962c2a0efa24e81412123723bedf
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
644
Assets/Resources/Prefabs/UI/DetailDatadisplay.prefab
Normal file
644
Assets/Resources/Prefabs/UI/DetailDatadisplay.prefab
Normal file
@ -0,0 +1,644 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1 &111384675554203438
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 3776859144521590657}
|
||||
- component: {fileID: 5155670117034888351}
|
||||
- component: {fileID: 3797562467083114185}
|
||||
m_Layer: 5
|
||||
m_Name: Level
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &3776859144521590657
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 111384675554203438}
|
||||
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: 4690020162035885051}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 19, y: -9}
|
||||
m_SizeDelta: {x: 253.2742, y: 74.6881}
|
||||
m_Pivot: {x: 0, y: 1}
|
||||
--- !u!222 &5155670117034888351
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 111384675554203438}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!114 &3797562467083114185
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 111384675554203438}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, 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: 'Level 1 '
|
||||
m_isRightToLeft: 0
|
||||
m_fontAsset: {fileID: 11400000, guid: 5c5ee151f9307453bad78be36b51a077, type: 2}
|
||||
m_sharedMaterial: {fileID: 2517202264660172603, guid: 5c5ee151f9307453bad78be36b51a077, 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: 64
|
||||
m_fontSizeBase: 64
|
||||
m_fontWeight: 400
|
||||
m_enableAutoSizing: 0
|
||||
m_fontSizeMin: 18
|
||||
m_fontSizeMax: 72
|
||||
m_fontStyle: 0
|
||||
m_HorizontalAlignment: 1
|
||||
m_VerticalAlignment: 256
|
||||
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}
|
||||
--- !u!1 &2231409079835292116
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 4690020162035885051}
|
||||
- component: {fileID: 3580728234893487592}
|
||||
- component: {fileID: 6705694850817165265}
|
||||
- component: {fileID: 7274855291737038625}
|
||||
m_Layer: 5
|
||||
m_Name: DetailDatadisplay
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &4690020162035885051
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2231409079835292116}
|
||||
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: 1
|
||||
m_Children:
|
||||
- {fileID: 3776859144521590657}
|
||||
- {fileID: 5168664882974991433}
|
||||
- {fileID: 7219546479642867740}
|
||||
- {fileID: 6765480811978542882}
|
||||
m_Father: {fileID: 0}
|
||||
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: 713.03, y: 283}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!222 &3580728234893487592
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2231409079835292116}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!114 &6705694850817165265
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2231409079835292116}
|
||||
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.79079384, g: 0.93962574, b: 0.9547169, 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: 74e324dd9cbd34aa2811e539973caac7, 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!114 &7274855291737038625
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2231409079835292116}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 50fcd948d6d41284193f80addb075a3c, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
data:
|
||||
correct: 0
|
||||
level: 0
|
||||
stageLevel: 0
|
||||
stage: 0
|
||||
globalStage: 0
|
||||
responseTime: 0
|
||||
levelText: {fileID: 3797562467083114185}
|
||||
stageText: {fileID: 6780488837243352522}
|
||||
isCorrectText: {fileID: 5315380764608913304}
|
||||
responseTimeText: {fileID: 387815040761323240}
|
||||
bg: {fileID: 6705694850817165265}
|
||||
differentColorModeColor: {r: 0.7921569, g: 0.9411765, b: 0.9529412, a: 1}
|
||||
sameColorModeColor: {r: 0.9529412, g: 0.8666667, b: 0.7921569, a: 1}
|
||||
--- !u!1 &2919630729561506377
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 6765480811978542882}
|
||||
- component: {fileID: 1755938682986481637}
|
||||
- component: {fileID: 387815040761323240}
|
||||
m_Layer: 5
|
||||
m_Name: ResponseTime
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &6765480811978542882
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2919630729561506377}
|
||||
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: 4690020162035885051}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0}
|
||||
m_AnchorMax: {x: 0.5, y: 0}
|
||||
m_AnchoredPosition: {x: -95.121826, y: 40.914307}
|
||||
m_SizeDelta: {x: 506.0264, y: 70.242}
|
||||
m_Pivot: {x: 0.5, y: 0}
|
||||
--- !u!222 &1755938682986481637
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2919630729561506377}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!114 &387815040761323240
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2919630729561506377}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, 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: 'Response Time : 222.222s'
|
||||
m_isRightToLeft: 0
|
||||
m_fontAsset: {fileID: 11400000, guid: 5c5ee151f9307453bad78be36b51a077, type: 2}
|
||||
m_sharedMaterial: {fileID: 2517202264660172603, guid: 5c5ee151f9307453bad78be36b51a077, 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: 46
|
||||
m_fontSizeBase: 46
|
||||
m_fontWeight: 400
|
||||
m_enableAutoSizing: 0
|
||||
m_fontSizeMin: 18
|
||||
m_fontSizeMax: 72
|
||||
m_fontStyle: 0
|
||||
m_HorizontalAlignment: 1
|
||||
m_VerticalAlignment: 256
|
||||
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}
|
||||
--- !u!1 &4157072479690452804
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 7219546479642867740}
|
||||
- component: {fileID: 8320432554715755}
|
||||
- component: {fileID: 5315380764608913304}
|
||||
m_Layer: 5
|
||||
m_Name: Menjawab
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &7219546479642867740
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 4157072479690452804}
|
||||
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: 4690020162035885051}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0.5}
|
||||
m_AnchorMax: {x: 0, y: 0.5}
|
||||
m_AnchoredPosition: {x: 10.5, y: 1.9727}
|
||||
m_SizeDelta: {x: 361.4963, y: 64.6334}
|
||||
m_Pivot: {x: 0, y: 0.5}
|
||||
--- !u!222 &8320432554715755
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 4157072479690452804}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!114 &5315380764608913304
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 4157072479690452804}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, 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: Menjawab Salah
|
||||
m_isRightToLeft: 0
|
||||
m_fontAsset: {fileID: 11400000, guid: 5c5ee151f9307453bad78be36b51a077, type: 2}
|
||||
m_sharedMaterial: {fileID: 2517202264660172603, guid: 5c5ee151f9307453bad78be36b51a077, 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: 46
|
||||
m_fontSizeBase: 46
|
||||
m_fontWeight: 400
|
||||
m_enableAutoSizing: 0
|
||||
m_fontSizeMin: 18
|
||||
m_fontSizeMax: 72
|
||||
m_fontStyle: 0
|
||||
m_HorizontalAlignment: 1
|
||||
m_VerticalAlignment: 256
|
||||
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}
|
||||
--- !u!1 &6560326739214587045
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 5168664882974991433}
|
||||
- component: {fileID: 321922190464817745}
|
||||
- component: {fileID: 6780488837243352522}
|
||||
m_Layer: 5
|
||||
m_Name: Tritan
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &5168664882974991433
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 6560326739214587045}
|
||||
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: 4690020162035885051}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 1, y: 1}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: -13, y: -6}
|
||||
m_SizeDelta: {x: 253.27417, y: 74.6881}
|
||||
m_Pivot: {x: 1, y: 1}
|
||||
--- !u!222 &321922190464817745
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 6560326739214587045}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!114 &6780488837243352522
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 6560326739214587045}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, 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: Tritan
|
||||
m_isRightToLeft: 0
|
||||
m_fontAsset: {fileID: 11400000, guid: 5c5ee151f9307453bad78be36b51a077, type: 2}
|
||||
m_sharedMaterial: {fileID: 2517202264660172603, guid: 5c5ee151f9307453bad78be36b51a077, 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: 64
|
||||
m_fontSizeBase: 64
|
||||
m_fontWeight: 400
|
||||
m_enableAutoSizing: 0
|
||||
m_fontSizeMin: 18
|
||||
m_fontSizeMax: 72
|
||||
m_fontStyle: 0
|
||||
m_HorizontalAlignment: 1
|
||||
m_VerticalAlignment: 256
|
||||
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}
|
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c78aa3f1935ac11479db13ca804273b0
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
8
Assets/Resources/Scripts.meta
Normal file
8
Assets/Resources/Scripts.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: cbb699fada469324ba1d198545c7ee03
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
Assets/Resources/Scripts.rar
Normal file
BIN
Assets/Resources/Scripts.rar
Normal file
Binary file not shown.
113
Assets/Resources/Scripts/AnchorGameObject.cs
Normal file
113
Assets/Resources/Scripts/AnchorGameObject.cs
Normal file
@ -0,0 +1,113 @@
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
|
||||
[ExecuteInEditMode]
|
||||
public class AnchorGameObject : MonoBehaviour
|
||||
{
|
||||
public enum AnchorType
|
||||
{
|
||||
BottomLeft,
|
||||
BottomCenter,
|
||||
BottomRight,
|
||||
MiddleLeft,
|
||||
MiddleCenter,
|
||||
MiddleRight,
|
||||
TopLeft,
|
||||
TopCenter,
|
||||
TopRight,
|
||||
};
|
||||
|
||||
public bool executeInUpdate;
|
||||
|
||||
public AnchorType anchorType;
|
||||
public Vector3 anchorOffset;
|
||||
|
||||
IEnumerator updateAnchorRoutine; //Coroutine handle so we don't start it if it's already running
|
||||
|
||||
// Use this for initialization
|
||||
void Start()
|
||||
{
|
||||
updateAnchorRoutine = UpdateAnchorAsync();
|
||||
StartCoroutine(updateAnchorRoutine);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Coroutine to update the anchor only once CameraFit.Instance is not null.
|
||||
/// </summary>
|
||||
IEnumerator UpdateAnchorAsync()
|
||||
{
|
||||
|
||||
uint cameraWaitCycles = 0;
|
||||
|
||||
while (CameraViewportHandler.Instance == null)
|
||||
{
|
||||
++cameraWaitCycles;
|
||||
yield return new WaitForEndOfFrame();
|
||||
}
|
||||
|
||||
if (cameraWaitCycles > 0)
|
||||
{
|
||||
print(string.Format("CameraAnchor found CameraFit instance after waiting {0} frame(s). " +
|
||||
"You might want to check that CameraFit has an earlie execution order.", cameraWaitCycles));
|
||||
}
|
||||
|
||||
UpdateAnchor();
|
||||
updateAnchorRoutine = null;
|
||||
|
||||
}
|
||||
|
||||
void UpdateAnchor()
|
||||
{
|
||||
switch (anchorType)
|
||||
{
|
||||
case AnchorType.BottomLeft:
|
||||
SetAnchor(CameraViewportHandler.Instance.BottomLeft);
|
||||
break;
|
||||
case AnchorType.BottomCenter:
|
||||
SetAnchor(CameraViewportHandler.Instance.BottomCenter);
|
||||
break;
|
||||
case AnchorType.BottomRight:
|
||||
SetAnchor(CameraViewportHandler.Instance.BottomRight);
|
||||
break;
|
||||
case AnchorType.MiddleLeft:
|
||||
SetAnchor(CameraViewportHandler.Instance.MiddleLeft);
|
||||
break;
|
||||
case AnchorType.MiddleCenter:
|
||||
SetAnchor(CameraViewportHandler.Instance.MiddleCenter);
|
||||
break;
|
||||
case AnchorType.MiddleRight:
|
||||
SetAnchor(CameraViewportHandler.Instance.MiddleRight);
|
||||
break;
|
||||
case AnchorType.TopLeft:
|
||||
SetAnchor(CameraViewportHandler.Instance.TopLeft);
|
||||
break;
|
||||
case AnchorType.TopCenter:
|
||||
SetAnchor(CameraViewportHandler.Instance.TopCenter);
|
||||
break;
|
||||
case AnchorType.TopRight:
|
||||
SetAnchor(CameraViewportHandler.Instance.TopRight);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void SetAnchor(Vector3 anchor)
|
||||
{
|
||||
Vector3 newPos = anchor + anchorOffset;
|
||||
if (!transform.position.Equals(newPos))
|
||||
{
|
||||
transform.position = newPos;
|
||||
}
|
||||
}
|
||||
|
||||
#if UNITY_EDITOR
|
||||
// Update is called once per frame
|
||||
void Update()
|
||||
{
|
||||
if (updateAnchorRoutine == null && executeInUpdate)
|
||||
{
|
||||
updateAnchorRoutine = UpdateAnchorAsync();
|
||||
StartCoroutine(updateAnchorRoutine);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
11
Assets/Resources/Scripts/AnchorGameObject.cs.meta
Normal file
11
Assets/Resources/Scripts/AnchorGameObject.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 2e3284f2b426f72418fda875b016dd5e
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
8
Assets/Resources/Scripts/Audio.meta
Normal file
8
Assets/Resources/Scripts/Audio.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9032b0a88f0f44e45adb1fc6ef37bbd3
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
121
Assets/Resources/Scripts/Audio/AudioManager.cs
Normal file
121
Assets/Resources/Scripts/Audio/AudioManager.cs
Normal file
@ -0,0 +1,121 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class AudioManager : MonoBehaviour
|
||||
{
|
||||
public static AudioManager Instance;
|
||||
public Sound[] musicSounds, sfxSounds;
|
||||
public AudioSource musicSource, sfxSource;
|
||||
|
||||
private Dictionary<string, Sound> musicDictionary = new Dictionary<string, Sound>();
|
||||
private Dictionary<string, Sound> sfxDictionary = new Dictionary<string, Sound>();
|
||||
|
||||
void Awake()
|
||||
{
|
||||
if (Instance == null)
|
||||
{
|
||||
Instance = this;
|
||||
DontDestroyOnLoad(gameObject);
|
||||
Setup();
|
||||
}
|
||||
else
|
||||
{
|
||||
if (Instance != this)
|
||||
{
|
||||
Destroy(gameObject);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void Setup()
|
||||
{
|
||||
for (int i = 0; i < musicSounds.Length; i++)
|
||||
{
|
||||
musicDictionary[musicSounds[i].name] = musicSounds[i];
|
||||
}
|
||||
for (int i = 0; i < sfxSounds.Length; i++)
|
||||
{
|
||||
sfxDictionary[sfxSounds[i].name] = sfxSounds[i];
|
||||
}
|
||||
}
|
||||
public void StopMusic()
|
||||
{
|
||||
musicSource.Stop();
|
||||
}
|
||||
|
||||
public void PlayMusic(SoundName name)
|
||||
{
|
||||
Sound s = Array.Find(musicSounds, sound => sound.soundName == name);
|
||||
if (s != null)
|
||||
{
|
||||
musicSource.clip = s.clip;
|
||||
musicSource.Play();
|
||||
}
|
||||
}
|
||||
public void PlayMusic(string name)
|
||||
{
|
||||
Sound s = musicDictionary[name];
|
||||
if (s != null)
|
||||
{
|
||||
musicSource.clip = s.clip;
|
||||
|
||||
musicSource.Play();
|
||||
}
|
||||
}
|
||||
public void PlaySfx(string name)
|
||||
{
|
||||
Sound s = sfxDictionary[name];
|
||||
if (s != null)
|
||||
{
|
||||
sfxSource.PlayOneShot(s.clip);
|
||||
}
|
||||
}
|
||||
public void PlaySfx(AudioClip clip)
|
||||
{
|
||||
sfxSource.PlayOneShot(clip);
|
||||
|
||||
}
|
||||
public void PlaySfx(SoundName name)
|
||||
{
|
||||
|
||||
Sound s = Array.Find(sfxSounds, sound => sound.soundName == name);
|
||||
if (s != null)
|
||||
{
|
||||
sfxSource.PlayOneShot(s.clip);
|
||||
}
|
||||
}
|
||||
public void PlaySfx(Sound sound)
|
||||
{
|
||||
if (sound != null)
|
||||
{
|
||||
sfxSource.PlayOneShot(sound.clip);
|
||||
}
|
||||
}
|
||||
public void PlaySfx(Sound[] randomSound)
|
||||
{
|
||||
|
||||
if (randomSound != null)
|
||||
{
|
||||
sfxSource.PlayOneShot(randomSound[UnityEngine.Random.Range(0, randomSound.Length)].clip);
|
||||
}
|
||||
}
|
||||
public void PlaySfx(SoundName[] randomName)
|
||||
{
|
||||
SoundName name = randomName[UnityEngine.Random.Range(0, randomName.Length)];
|
||||
Sound s = Array.Find(sfxSounds, sound => sound.soundName == name);
|
||||
if (s != null)
|
||||
{
|
||||
sfxSource.PlayOneShot(s.clip);
|
||||
}
|
||||
}
|
||||
public void SetSfxVolume(float volume)
|
||||
{
|
||||
sfxSource.volume = volume;
|
||||
}
|
||||
public void SetMusicVolume(float volume)
|
||||
{
|
||||
musicSource.volume = volume;
|
||||
}
|
||||
}
|
||||
|
11
Assets/Resources/Scripts/Audio/AudioManager.cs.meta
Normal file
11
Assets/Resources/Scripts/Audio/AudioManager.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6f5ac05904ff5ab4882b8026e7f21813
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
11
Assets/Resources/Scripts/Audio/Sound.cs
Normal file
11
Assets/Resources/Scripts/Audio/Sound.cs
Normal file
@ -0,0 +1,11 @@
|
||||
using UnityEngine;
|
||||
|
||||
[System.Serializable]
|
||||
public class Sound
|
||||
{
|
||||
public string name;
|
||||
public SoundName soundName;
|
||||
public AudioClip clip;
|
||||
|
||||
}
|
||||
|
11
Assets/Resources/Scripts/Audio/Sound.cs.meta
Normal file
11
Assets/Resources/Scripts/Audio/Sound.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 273e91268ea03254f9cde0aa8362ab44
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
9
Assets/Resources/Scripts/Audio/SoundList.cs
Normal file
9
Assets/Resources/Scripts/Audio/SoundList.cs
Normal file
@ -0,0 +1,9 @@
|
||||
using UnityEngine;
|
||||
|
||||
[System.Serializable]
|
||||
|
||||
public class SoundList
|
||||
{
|
||||
[SerializeField] private Sound[] soundList;
|
||||
|
||||
}
|
11
Assets/Resources/Scripts/Audio/SoundList.cs.meta
Normal file
11
Assets/Resources/Scripts/Audio/SoundList.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b0ad2eabaf4aefc409fddc2622504ce3
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
6
Assets/Resources/Scripts/Audio/SoundName.cs
Normal file
6
Assets/Resources/Scripts/Audio/SoundName.cs
Normal file
@ -0,0 +1,6 @@
|
||||
|
||||
public enum SoundName
|
||||
{
|
||||
GameMusic, MainMenuMusic
|
||||
}
|
||||
|
11
Assets/Resources/Scripts/Audio/SoundName.cs.meta
Normal file
11
Assets/Resources/Scripts/Audio/SoundName.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 687137de75e342b4792ac6fdb52a4321
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
193
Assets/Resources/Scripts/CameraViewportHandler.cs
Normal file
193
Assets/Resources/Scripts/CameraViewportHandler.cs
Normal file
@ -0,0 +1,193 @@
|
||||
using UnityEngine;
|
||||
|
||||
[ExecuteInEditMode]
|
||||
[RequireComponent(typeof(Camera))]
|
||||
public class CameraViewportHandler : MonoBehaviour
|
||||
{
|
||||
public enum Constraint { Landscape, Portrait }
|
||||
|
||||
#region FIELDS
|
||||
public Color wireColor = Color.white;
|
||||
public float UnitsSize = 1; // size of your scene in unity units
|
||||
public Constraint constraint = Constraint.Portrait;
|
||||
public static CameraViewportHandler Instance;
|
||||
public new Camera camera;
|
||||
|
||||
public bool executeInUpdate;
|
||||
|
||||
private float _width;
|
||||
private float _height;
|
||||
//*** bottom screen
|
||||
private Vector3 _bl;
|
||||
private Vector3 _bc;
|
||||
private Vector3 _br;
|
||||
//*** middle screen
|
||||
private Vector3 _ml;
|
||||
private Vector3 _mc;
|
||||
private Vector3 _mr;
|
||||
//*** top screen
|
||||
private Vector3 _tl;
|
||||
private Vector3 _tc;
|
||||
private Vector3 _tr;
|
||||
#endregion
|
||||
|
||||
#region PROPERTIES
|
||||
public float Width
|
||||
{
|
||||
get
|
||||
{
|
||||
return _width;
|
||||
}
|
||||
}
|
||||
public float Height
|
||||
{
|
||||
get
|
||||
{
|
||||
return _height;
|
||||
}
|
||||
}
|
||||
|
||||
// helper points:
|
||||
public Vector3 BottomLeft
|
||||
{
|
||||
get
|
||||
{
|
||||
return _bl;
|
||||
}
|
||||
}
|
||||
public Vector3 BottomCenter
|
||||
{
|
||||
get
|
||||
{
|
||||
return _bc;
|
||||
}
|
||||
}
|
||||
public Vector3 BottomRight
|
||||
{
|
||||
get
|
||||
{
|
||||
return _br;
|
||||
}
|
||||
}
|
||||
public Vector3 MiddleLeft
|
||||
{
|
||||
get
|
||||
{
|
||||
return _ml;
|
||||
}
|
||||
}
|
||||
public Vector3 MiddleCenter
|
||||
{
|
||||
get
|
||||
{
|
||||
return _mc;
|
||||
}
|
||||
}
|
||||
public Vector3 MiddleRight
|
||||
{
|
||||
get
|
||||
{
|
||||
return _mr;
|
||||
}
|
||||
}
|
||||
public Vector3 TopLeft
|
||||
{
|
||||
get
|
||||
{
|
||||
return _tl;
|
||||
}
|
||||
}
|
||||
public Vector3 TopCenter
|
||||
{
|
||||
get
|
||||
{
|
||||
return _tc;
|
||||
}
|
||||
}
|
||||
public Vector3 TopRight
|
||||
{
|
||||
get
|
||||
{
|
||||
return _tr;
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region METHODS
|
||||
private void Awake()
|
||||
{
|
||||
camera = GetComponent<Camera>();
|
||||
Instance = this;
|
||||
ComputeResolution();
|
||||
}
|
||||
|
||||
private void ComputeResolution()
|
||||
{
|
||||
float leftX, rightX, topY, bottomY;
|
||||
|
||||
if (constraint == Constraint.Landscape)
|
||||
{
|
||||
camera.orthographicSize = 1f / camera.aspect * UnitsSize / 2f;
|
||||
}
|
||||
else
|
||||
{
|
||||
camera.orthographicSize = UnitsSize / 2f;
|
||||
}
|
||||
|
||||
_height = 2f * camera.orthographicSize;
|
||||
_width = _height * camera.aspect;
|
||||
|
||||
float cameraX, cameraY;
|
||||
cameraX = camera.transform.position.x;
|
||||
cameraY = camera.transform.position.y;
|
||||
|
||||
leftX = cameraX - _width / 2;
|
||||
rightX = cameraX + _width / 2;
|
||||
topY = cameraY + _height / 2;
|
||||
bottomY = cameraY - _height / 2;
|
||||
|
||||
//*** bottom
|
||||
_bl = new Vector3(leftX, bottomY, 0);
|
||||
_bc = new Vector3(cameraX, bottomY, 0);
|
||||
_br = new Vector3(rightX, bottomY, 0);
|
||||
//*** middle
|
||||
_ml = new Vector3(leftX, cameraY, 0);
|
||||
_mc = new Vector3(cameraX, cameraY, 0);
|
||||
_mr = new Vector3(rightX, cameraY, 0);
|
||||
//*** top
|
||||
_tl = new Vector3(leftX, topY, 0);
|
||||
_tc = new Vector3(cameraX, topY, 0);
|
||||
_tr = new Vector3(rightX, topY, 0);
|
||||
}
|
||||
|
||||
private void Update()
|
||||
{
|
||||
#if UNITY_EDITOR
|
||||
|
||||
if (executeInUpdate)
|
||||
ComputeResolution();
|
||||
|
||||
#endif
|
||||
}
|
||||
|
||||
void OnDrawGizmos()
|
||||
{
|
||||
Gizmos.color = wireColor;
|
||||
|
||||
Matrix4x4 temp = Gizmos.matrix;
|
||||
Gizmos.matrix = Matrix4x4.TRS(transform.position, transform.rotation, Vector3.one);
|
||||
if (camera.orthographic)
|
||||
{
|
||||
float spread = camera.farClipPlane - camera.nearClipPlane;
|
||||
float center = (camera.farClipPlane + camera.nearClipPlane) * 0.5f;
|
||||
Gizmos.DrawWireCube(new Vector3(0, 0, center), new Vector3(camera.orthographicSize * 2 * camera.aspect, camera.orthographicSize * 2, spread));
|
||||
}
|
||||
else
|
||||
{
|
||||
Gizmos.DrawFrustum(Vector3.zero, camera.fieldOfView, camera.farClipPlane, camera.nearClipPlane, camera.aspect);
|
||||
}
|
||||
Gizmos.matrix = temp;
|
||||
}
|
||||
#endregion
|
||||
|
||||
} // class
|
11
Assets/Resources/Scripts/CameraViewportHandler.cs.meta
Normal file
11
Assets/Resources/Scripts/CameraViewportHandler.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 60632382187fbbe46b6079efcb6cc8ce
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
74
Assets/Resources/Scripts/Dot.cs
Normal file
74
Assets/Resources/Scripts/Dot.cs
Normal file
@ -0,0 +1,74 @@
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class Dot : MonoBehaviour
|
||||
{
|
||||
[SerializeField] public bool isDifferent;
|
||||
[SerializeField] private SpriteRenderer sprite;
|
||||
[Range(0, 255)]
|
||||
[SerializeField] private float redValue;
|
||||
[Range(0, 255)]
|
||||
[SerializeField] private float greenValue;
|
||||
[Range(0, 255)]
|
||||
[SerializeField] private float blueValue;
|
||||
|
||||
public void SetDifferent(bool val)
|
||||
{
|
||||
isDifferent = val;
|
||||
}
|
||||
|
||||
public Vector2 GetPos()
|
||||
{
|
||||
return transform.position;
|
||||
}
|
||||
public void ChangeRed(float val)
|
||||
{
|
||||
redValue = val;
|
||||
}
|
||||
public void ChangeBlue(float val)
|
||||
{
|
||||
blueValue = val;
|
||||
}
|
||||
public void ChangeGreen(float val)
|
||||
{
|
||||
greenValue = val;
|
||||
}
|
||||
public void ChangeColor(Color color)
|
||||
{
|
||||
sprite.color = color;
|
||||
}
|
||||
public void CheckOverlapping()
|
||||
{
|
||||
List<Dot> dots = DotsManager.Instance.GetDots();
|
||||
for (int i = 0; i < dots.Count; i++)
|
||||
{
|
||||
if (dots[i] != this)
|
||||
{
|
||||
if (Vector2.Distance(transform.position, dots[i].transform.position) < 2.5f)
|
||||
{
|
||||
Debug.Log("Overlapping");
|
||||
DotsManager.Instance.MoveDots(this);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
private void Start()
|
||||
{
|
||||
LeanTween.scale(gameObject, new Vector3(1.5f, 1.5f, 1.5f), 0.25f).setEaseInOutCubic();
|
||||
LeanTween.scale(gameObject, new Vector3(2, 2, 2), 0.5f).setDelay(0.2f).setEaseInOutCubic();
|
||||
}
|
||||
private void OnMouseDown()
|
||||
{
|
||||
GameManager.Instance.ClickDot(this);
|
||||
}
|
||||
public Vector3 GetRGB()
|
||||
{
|
||||
return new Vector3(redValue, greenValue, blueValue);
|
||||
}
|
||||
|
||||
private byte FloatToByteColor(float val)
|
||||
{
|
||||
return (byte)((val * 255) * 255);
|
||||
}
|
||||
}
|
11
Assets/Resources/Scripts/Dot.cs.meta
Normal file
11
Assets/Resources/Scripts/Dot.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 11518baead38f7c46a03489cc7c09661
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
186
Assets/Resources/Scripts/DotsManager.cs
Normal file
186
Assets/Resources/Scripts/DotsManager.cs
Normal file
@ -0,0 +1,186 @@
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public enum Level
|
||||
{
|
||||
Protan, Deutan, Tritan
|
||||
}
|
||||
public enum Stage
|
||||
{
|
||||
Differentcolor,SameColor
|
||||
}
|
||||
|
||||
public class DotsManager : MonoBehaviour
|
||||
{
|
||||
public static DotsManager Instance;
|
||||
[SerializeField] private int dotsCount;
|
||||
[SerializeField] private Dot dotsPrefab;
|
||||
[SerializeField] private float saturationLevel = 50f;
|
||||
[SerializeField] private Transform parent; // nge spawn dotnya di child ini
|
||||
[SerializeField] private List<Transform> cornerPosition; //buat nge fixing pas di android
|
||||
[SerializeField] private List<Dot> dotsSpawned;
|
||||
[SerializeField] private LevelScriptable currentLevelPlay;
|
||||
[SerializeField] private List<LevelScriptable> levelList;
|
||||
[SerializeField] Color selectedColor;
|
||||
[SerializeField] Color saturatedColor;
|
||||
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
Instance = this;
|
||||
}
|
||||
public LevelScriptable GetCurrentLevel()
|
||||
{
|
||||
return currentLevelPlay;
|
||||
}
|
||||
public void StartDots()
|
||||
{
|
||||
ChangeMainColor();
|
||||
SpawnDots();
|
||||
ChangeDotsColor();
|
||||
saturatedColor = currentLevelPlay.rgbSaturatedList[0];
|
||||
Change1Saturation();
|
||||
}
|
||||
public void ClearWrongColor()
|
||||
{
|
||||
for (int i = 0; i < dotsSpawned.Count; i++)
|
||||
{
|
||||
if (!dotsSpawned[i].isDifferent)
|
||||
{
|
||||
dotsSpawned[i].gameObject.SetActive(false);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
public void SetStage(int index)
|
||||
{
|
||||
selectedColor = currentLevelPlay.rgbList[index];
|
||||
saturatedColor = currentLevelPlay.rgbSaturatedList[index];
|
||||
dotsCount = currentLevelPlay.dotCount[index];
|
||||
}
|
||||
public void StartPlay()
|
||||
{
|
||||
currentLevelPlay = levelList[0];
|
||||
}
|
||||
public void SetLevel(Level level)
|
||||
{
|
||||
if (level == Level.Protan)
|
||||
{
|
||||
currentLevelPlay = levelList[0];
|
||||
}
|
||||
else if (level == Level.Deutan)
|
||||
{
|
||||
currentLevelPlay = levelList[1];
|
||||
}
|
||||
else if (level == Level.Tritan)
|
||||
{
|
||||
currentLevelPlay = levelList[2];
|
||||
}
|
||||
}
|
||||
public void DecreaseSaturationLevel()
|
||||
{
|
||||
saturationLevel *= 0.8f;
|
||||
}
|
||||
public Color GetRGB()
|
||||
{
|
||||
return selectedColor;
|
||||
}
|
||||
public void IncreaseSaturationLevel()
|
||||
{
|
||||
saturationLevel *= 1.2f;
|
||||
}
|
||||
public void ChangeColor(Color val)
|
||||
{
|
||||
selectedColor = val;
|
||||
}
|
||||
private void Update()
|
||||
{
|
||||
if (Input.GetKey(KeyCode.Space))
|
||||
{
|
||||
ClearDots();
|
||||
SpawnDots();
|
||||
Change1Saturation();
|
||||
}
|
||||
}
|
||||
public void NextStage()
|
||||
{
|
||||
ClearDots();
|
||||
SpawnDots();
|
||||
Change1Saturation();
|
||||
}
|
||||
public void Change1Saturation()
|
||||
{
|
||||
for (int i = 0; i < dotsSpawned.Count; i++)
|
||||
{
|
||||
dotsSpawned[i].SetDifferent(false);
|
||||
}
|
||||
int rIndex = Random.Range(0, dotsSpawned.Count);
|
||||
|
||||
dotsSpawned[rIndex].ChangeColor(saturatedColor);
|
||||
dotsSpawned[rIndex].SetDifferent(true);
|
||||
Debug.Log("CurStage : 1");
|
||||
|
||||
}
|
||||
public void ChangeMainColor()
|
||||
{
|
||||
if (GameManager.Instance.currentLevel == Level.Protan)
|
||||
{
|
||||
selectedColor = currentLevelPlay.rgbList[0];
|
||||
}
|
||||
else if (GameManager.Instance.currentLevel == Level.Deutan)
|
||||
{
|
||||
selectedColor = currentLevelPlay.rgbList[0];
|
||||
|
||||
//selectedColor = Color.yellow;
|
||||
|
||||
}
|
||||
else if (GameManager.Instance.currentLevel == Level.Tritan)
|
||||
{
|
||||
selectedColor = currentLevelPlay.rgbList[0];
|
||||
|
||||
//selectedColor = Color.blue;
|
||||
|
||||
}
|
||||
}
|
||||
public void ChangeDotsColor()
|
||||
{
|
||||
for (int i = 0; i < dotsSpawned.Count; i++)
|
||||
{
|
||||
dotsSpawned[i].ChangeColor(selectedColor);
|
||||
}
|
||||
}
|
||||
public List<Dot> GetDots()
|
||||
{
|
||||
return dotsSpawned;
|
||||
}
|
||||
public void ClearDots()
|
||||
{
|
||||
foreach (Dot d in dotsSpawned)
|
||||
{
|
||||
Destroy(d.gameObject);
|
||||
}
|
||||
dotsSpawned.Clear();
|
||||
}
|
||||
|
||||
private void SpawnDots()
|
||||
{
|
||||
for (int i = 0; i < dotsCount; i++)
|
||||
{
|
||||
Dot dot = Instantiate(dotsPrefab, parent);
|
||||
dot.transform.position = GetNewPosition();
|
||||
dotsSpawned.Add(dot);
|
||||
dot.ChangeColor(selectedColor);
|
||||
dot.CheckOverlapping();
|
||||
}
|
||||
}
|
||||
public void MoveDots(Dot dot)
|
||||
{
|
||||
dot.transform.position = GetNewPosition();
|
||||
dot.CheckOverlapping();
|
||||
}
|
||||
Vector2 GetNewPosition()
|
||||
{
|
||||
Vector2 newpos = new Vector2(Random.Range(cornerPosition[0].position.x, cornerPosition[1].position.x), Random.Range(cornerPosition[2].position.y, cornerPosition[0].position.y));
|
||||
return newpos;
|
||||
}
|
||||
}
|
11
Assets/Resources/Scripts/DotsManager.cs.meta
Normal file
11
Assets/Resources/Scripts/DotsManager.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9f161491c5d2b104d9cfaed230128f89
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
455
Assets/Resources/Scripts/GameManager.cs
Normal file
455
Assets/Resources/Scripts/GameManager.cs
Normal file
@ -0,0 +1,455 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using System;
|
||||
|
||||
[System.Serializable]
|
||||
public class Answer
|
||||
{
|
||||
public bool correct;
|
||||
public Level level;
|
||||
public Stage stageLevel;
|
||||
public int stage;
|
||||
public int globalStage;
|
||||
public float responseTime;
|
||||
|
||||
public Answer(bool correct, Level level, Stage stageLevel,int stage, int globalStage,float responseTime)
|
||||
{
|
||||
this.correct = correct;
|
||||
this.level = level;
|
||||
this.stageLevel = stageLevel;
|
||||
this.stage = stage;
|
||||
this.globalStage = globalStage;
|
||||
this.responseTime = responseTime;
|
||||
}
|
||||
}
|
||||
public class GameManager : MonoBehaviour
|
||||
{
|
||||
public event Action OnDotClicked;
|
||||
public event Action<bool, int> OnAnswer;
|
||||
public event Action OnNext;
|
||||
public event Action OnLevelCleared;
|
||||
public event Action<int> OnGlobalStageAdded;
|
||||
public event Action<float> OnShowResult;
|
||||
|
||||
|
||||
public static GameManager Instance;
|
||||
public Level currentLevel;
|
||||
public Stage currentStageLevel;
|
||||
public int currentStage;
|
||||
public int currentGlobalStage;
|
||||
public int currentDifficulty;
|
||||
[SerializeField] private DotsManager dotsManager;
|
||||
[SerializeField] private SameColorDotsManager sameColorDotsManager;
|
||||
[SerializeField] private GuideManager guideManager;
|
||||
[SerializeField] private MainMenuUI mainMenuUI;
|
||||
[SerializeField] private GameUI gameUI;
|
||||
[SerializeField] private GuideUI guideUI;
|
||||
[SerializeField] private CameraColorController camColorController;
|
||||
[SerializeField] private ExampleDisplay exampleDisplay;
|
||||
[SerializeField] private SalahDisplay salahDisplay;
|
||||
[SerializeField] private float protanPoint;
|
||||
[SerializeField] private float deutanPoint;
|
||||
[SerializeField] private float tritanPoint;
|
||||
[SerializeField] private bool isAnswering;
|
||||
private Stack<Color> rgbStored = new Stack<Color>();
|
||||
|
||||
[SerializeField] private List<Answer> answers = new List<Answer>();
|
||||
|
||||
[SerializeField] private float showGuideMaxCooldown;
|
||||
[SerializeField] private float showGuidecurrentCooldown;
|
||||
[SerializeField] private bool isStart;
|
||||
[SerializeField] private bool isChoosing;
|
||||
[SerializeField] private bool guideShowing;
|
||||
|
||||
[SerializeField] private float responseTime;
|
||||
|
||||
[SerializeField] private ParticleSystem confettiParticle;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
Instance = this;
|
||||
}
|
||||
private void OnDestroy()
|
||||
{
|
||||
OnDotClicked = null;
|
||||
OnShowResult = null;
|
||||
OnNext = null;
|
||||
OnLevelCleared = null;
|
||||
OnGlobalStageAdded = null;
|
||||
}
|
||||
private void Update()
|
||||
{
|
||||
if (isStart && isChoosing)
|
||||
{
|
||||
if (showGuidecurrentCooldown > 0)
|
||||
{
|
||||
showGuidecurrentCooldown -= Time.deltaTime;
|
||||
}
|
||||
else if (showGuidecurrentCooldown < 0)
|
||||
{
|
||||
Debug.Log("Showing Guide");
|
||||
AudioManager.Instance.PlaySfx("Guide Show");
|
||||
if (currentStageLevel == Stage.Differentcolor)
|
||||
{
|
||||
guideUI.Show("Tekan Lingkaran yang warnanya\n berbeda dari yang lain!");
|
||||
}
|
||||
else {
|
||||
guideUI.Show("Tekan Lingkaran yang\n warnanya sama!");
|
||||
}
|
||||
guideShowing = true;
|
||||
showGuidecurrentCooldown = 0;
|
||||
}
|
||||
responseTime += Time.deltaTime;
|
||||
}
|
||||
}
|
||||
public void ShowGuide()
|
||||
{
|
||||
showGuidecurrentCooldown = 0.1f;
|
||||
}
|
||||
public void HideGuide()
|
||||
{
|
||||
if (guideShowing)
|
||||
{
|
||||
guideUI.Hide();
|
||||
ResetGuide();
|
||||
}
|
||||
}
|
||||
public void ResetGuide()
|
||||
{
|
||||
showGuidecurrentCooldown = 5;
|
||||
}
|
||||
public void NextStage()
|
||||
{
|
||||
Debug.Log("NextStage");
|
||||
GameManager.Instance.StartStage(Stage.Differentcolor);
|
||||
}
|
||||
|
||||
private void Start()
|
||||
{
|
||||
Application.targetFrameRate = 60;
|
||||
LeanTween.reset();
|
||||
gameUI.Hide();
|
||||
mainMenuUI.Show();
|
||||
AudioManager.Instance.PlayMusic("Music 1");
|
||||
}
|
||||
public void OpenGuide()
|
||||
{
|
||||
guideManager.Show();
|
||||
}
|
||||
public void CloseGuide()
|
||||
{
|
||||
guideManager.Hide();
|
||||
}
|
||||
|
||||
public void QuitGame()
|
||||
{
|
||||
Application.Quit();
|
||||
}
|
||||
public void StartStage(Stage stage)
|
||||
{
|
||||
if (stage == Stage.Differentcolor)
|
||||
{
|
||||
currentStageLevel = stage;
|
||||
camColorController.ChangeColor(Level.Protan);
|
||||
dotsManager.StartDots();
|
||||
ShowGuide();
|
||||
}
|
||||
else if (stage == Stage.SameColor)
|
||||
{
|
||||
currentStageLevel = stage;
|
||||
dotsManager.ClearDots();
|
||||
sameColorDotsManager.Play();
|
||||
ShowGuide();
|
||||
}
|
||||
}
|
||||
public void StartGame()
|
||||
{
|
||||
AudioManager.Instance.StopMusic();
|
||||
AudioManager.Instance.PlayMusic("Music 2");
|
||||
gameUI.Show();
|
||||
currentLevel = Level.Protan;
|
||||
sameColorDotsManager.ResetLevel();
|
||||
dotsManager.StartPlay();
|
||||
currentStage = 1;
|
||||
currentDifficulty = 1;
|
||||
protanPoint = 0.5f;
|
||||
deutanPoint = 0.5f;
|
||||
tritanPoint = 0.5f;
|
||||
currentGlobalStage = 1;
|
||||
StartStage(Stage.Differentcolor);
|
||||
dotsManager.SetStage(currentDifficulty - 1);
|
||||
isChoosing = true;
|
||||
OnDotClicked?.Invoke();
|
||||
mainMenuUI.Hide();
|
||||
OnGlobalStageAdded.Invoke(currentGlobalStage);
|
||||
ClearAnswer();
|
||||
isStart = true;
|
||||
guideShowing = true;
|
||||
guideUI.Show();
|
||||
}
|
||||
private void ClearAnswer()
|
||||
{
|
||||
answers.Clear();
|
||||
}
|
||||
public void SetIsChoosing(bool val)
|
||||
{
|
||||
isChoosing = val;
|
||||
}
|
||||
public void AnswerSameColorDots(bool correct)
|
||||
{
|
||||
answers.Add(new Answer(correct, currentLevel, currentStageLevel, currentStage,currentGlobalStage, responseTime));
|
||||
this.responseTime = 0;
|
||||
}
|
||||
private void AddAnswer(bool correct, Level level,Stage stageLevel, int stage, int globalStage,float responseTime)
|
||||
{
|
||||
answers.Add(new Answer(correct, level,stageLevel, stage, globalStage, responseTime));
|
||||
this.responseTime = 0;
|
||||
}
|
||||
public void GoToMenu()
|
||||
{
|
||||
gameUI.Hide();
|
||||
mainMenuUI.Show();
|
||||
AudioManager.Instance.StopMusic();
|
||||
AudioManager.Instance.PlayMusic("Music 1");
|
||||
camColorController.ChangeColorToMenu();
|
||||
}
|
||||
public void ClickDot(Dot dot)
|
||||
{
|
||||
if (isAnswering)
|
||||
return;
|
||||
if (guideShowing)
|
||||
{
|
||||
guideUI.Hide();
|
||||
}
|
||||
if (currentStage > 4)
|
||||
{
|
||||
isAnswering = true;
|
||||
isChoosing = false;
|
||||
if (dot.isDifferent)
|
||||
{
|
||||
OnAnswer?.Invoke(true, currentStage - 1);
|
||||
AddAnswer(true, currentLevel, currentStageLevel, currentStage, currentGlobalStage, responseTime);
|
||||
dotsManager.ClearDots();
|
||||
if (currentLevel == Level.Protan)
|
||||
{
|
||||
StartCoroutine(NextLevelDelay(Level.Deutan));
|
||||
}
|
||||
else if (currentLevel == Level.Deutan)
|
||||
{
|
||||
StartCoroutine(NextLevelDelay(Level.Tritan));
|
||||
}
|
||||
else if (currentLevel == Level.Tritan)
|
||||
{
|
||||
StartCoroutine(LastStageDelay());
|
||||
//StartCoroutine(ShowResultDelay());
|
||||
}
|
||||
AudioManager.Instance.PlaySfx("Jawab Benar");
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
OnAnswer?.Invoke(false, currentStage - 1);
|
||||
AddAnswer(false, currentLevel, currentStageLevel, currentStage, currentGlobalStage, responseTime);
|
||||
dotsManager.ClearWrongColor();
|
||||
if (currentLevel == Level.Protan)
|
||||
{
|
||||
StartCoroutine(NextLevelDelay(Level.Deutan));
|
||||
}
|
||||
else if (currentLevel == Level.Deutan)
|
||||
{
|
||||
StartCoroutine(NextLevelDelay(Level.Tritan));
|
||||
}
|
||||
else if (currentLevel == Level.Tritan)
|
||||
{
|
||||
StartCoroutine(LastStageDelay());
|
||||
//StartCoroutine(ShowResultDelay());
|
||||
}
|
||||
AudioManager.Instance.PlaySfx("Jawab Salah");
|
||||
|
||||
}
|
||||
Debug.Log("Level Clear!");
|
||||
}
|
||||
else
|
||||
{
|
||||
isChoosing = false;
|
||||
if (dot.isDifferent)
|
||||
{
|
||||
OnAnswer?.Invoke(true, currentStage - 1);
|
||||
Debug.Log("Jawaban Benar");
|
||||
Next(true, dot);
|
||||
AudioManager.Instance.PlaySfx("Jawab Benar");
|
||||
}
|
||||
else
|
||||
{
|
||||
OnAnswer?.Invoke(false, currentStage - 1);
|
||||
Debug.Log("Jawaban Salah");
|
||||
if (currentLevel == Level.Protan)
|
||||
{
|
||||
protanPoint -= 0.1f;
|
||||
}
|
||||
else if (currentLevel == Level.Deutan)
|
||||
{
|
||||
deutanPoint -= 0.1f;
|
||||
}
|
||||
else if (currentLevel == Level.Tritan)
|
||||
{
|
||||
tritanPoint -= 0.1f;
|
||||
}
|
||||
Next(false, dot);
|
||||
AudioManager.Instance.PlaySfx("Jawab Salah");
|
||||
|
||||
}
|
||||
}
|
||||
OnDotClicked?.Invoke();
|
||||
}
|
||||
public void ViewGameResult()
|
||||
{
|
||||
|
||||
ShowResult(protanPoint + deutanPoint + tritanPoint + sameColorDotsManager.score);
|
||||
}
|
||||
public List<Answer> GetAnswers()
|
||||
{
|
||||
return answers;
|
||||
}
|
||||
public IEnumerator ShowResultDelay()
|
||||
{
|
||||
isStart = false;
|
||||
dotsManager.ClearDots();
|
||||
yield return new WaitForSeconds(2);
|
||||
exampleDisplay.Hide();
|
||||
ShowResult(protanPoint + deutanPoint + tritanPoint + sameColorDotsManager.score);
|
||||
dotsManager.ClearDots();
|
||||
Debug.Log("Clear! Show Result");
|
||||
isAnswering = false;
|
||||
OnNext?.Invoke();
|
||||
}
|
||||
public void Next(bool isCorrect, Dot dot)
|
||||
{
|
||||
isAnswering = true;
|
||||
AddAnswer(isCorrect, currentLevel, currentStageLevel, currentStage, currentGlobalStage, responseTime);
|
||||
if (isCorrect)
|
||||
{
|
||||
dotsManager.ClearDots();
|
||||
StartCoroutine(NextCorrectDelay(dot));
|
||||
}
|
||||
else
|
||||
{
|
||||
dotsManager.ClearWrongColor();
|
||||
StartCoroutine(NextIncorrectDelay());
|
||||
}
|
||||
}
|
||||
public IEnumerator NextCorrectDelay(Dot dot)
|
||||
{
|
||||
yield return new WaitForSeconds(2f);
|
||||
exampleDisplay.Hide();
|
||||
dotsManager.DecreaseSaturationLevel();
|
||||
currentStage++;
|
||||
currentDifficulty++;
|
||||
Vector3 rgb = dot.GetRGB();
|
||||
rgbStored.Push(dotsManager.GetRGB());
|
||||
currentGlobalStage++;
|
||||
OnGlobalStageAdded.Invoke(currentGlobalStage);
|
||||
dotsManager.SetStage(currentDifficulty - 1);
|
||||
dotsManager.NextStage();
|
||||
OnNext?.Invoke();
|
||||
isAnswering = false;
|
||||
isChoosing = true;
|
||||
showGuidecurrentCooldown = showGuideMaxCooldown;
|
||||
}
|
||||
public void AddGlobalStage()
|
||||
{
|
||||
currentGlobalStage++;
|
||||
OnGlobalStageAdded.Invoke(currentGlobalStage);
|
||||
}
|
||||
public IEnumerator NextIncorrectDelay()
|
||||
{
|
||||
|
||||
yield return new WaitForSeconds(3f);
|
||||
dotsManager.IncreaseSaturationLevel();
|
||||
currentStage++;
|
||||
if (currentDifficulty > 1)
|
||||
{
|
||||
currentDifficulty--;
|
||||
}
|
||||
dotsManager.SetStage(currentDifficulty - 1);
|
||||
dotsManager.NextStage();
|
||||
OnNext?.Invoke();
|
||||
currentGlobalStage++;
|
||||
OnGlobalStageAdded.Invoke(currentGlobalStage);
|
||||
isAnswering = false;
|
||||
isChoosing = true;
|
||||
showGuidecurrentCooldown = showGuideMaxCooldown;
|
||||
|
||||
}
|
||||
public void ChangeLevel()
|
||||
{
|
||||
if (currentLevel == Level.Protan)
|
||||
{
|
||||
currentLevel = Level.Deutan;
|
||||
dotsManager.SetLevel(currentLevel);
|
||||
}
|
||||
else if (currentLevel == Level.Deutan)
|
||||
{
|
||||
currentLevel = Level.Tritan;
|
||||
dotsManager.SetLevel(currentLevel);
|
||||
}
|
||||
else if (currentLevel == Level.Tritan)
|
||||
{
|
||||
StartCoroutine(LastStageDelay());
|
||||
//StartCoroutine(ShowResultDelay());
|
||||
}
|
||||
}
|
||||
public IEnumerator NextLevelDelay(Level level)
|
||||
{
|
||||
|
||||
camColorController.ChangeColor(level);
|
||||
yield return new WaitForSeconds(2f);
|
||||
currentGlobalStage++;
|
||||
OnGlobalStageAdded.Invoke(currentGlobalStage);
|
||||
currentStage = 1;
|
||||
currentDifficulty = 1;
|
||||
dotsManager.SetLevel(currentLevel);
|
||||
dotsManager.SetStage(currentDifficulty - 1);
|
||||
dotsManager.NextStage();
|
||||
OnNext?.Invoke();
|
||||
isAnswering = false;
|
||||
isChoosing = true;
|
||||
exampleDisplay.Hide();
|
||||
showGuidecurrentCooldown = showGuideMaxCooldown;
|
||||
if (currentStageLevel == Stage.Differentcolor)
|
||||
{
|
||||
StartStage(Stage.SameColor);
|
||||
}
|
||||
}
|
||||
public IEnumerator LastStageDelay()
|
||||
{
|
||||
yield return new WaitForSeconds(2f);
|
||||
//currentGlobalStage++;
|
||||
//OnGlobalStageAdded.Invoke(currentGlobalStage);
|
||||
//currentStage = 1;
|
||||
//currentDifficulty = 1;
|
||||
dotsManager.SetLevel(currentLevel);
|
||||
dotsManager.SetStage(currentDifficulty - 1);
|
||||
dotsManager.NextStage();
|
||||
OnNext?.Invoke();
|
||||
isAnswering = false;
|
||||
isChoosing = true;
|
||||
exampleDisplay.Hide();
|
||||
showGuidecurrentCooldown = showGuideMaxCooldown;
|
||||
if (currentStageLevel == Stage.Differentcolor)
|
||||
{
|
||||
StartStage(Stage.SameColor);
|
||||
}
|
||||
}
|
||||
public int GetGlobalStage()
|
||||
{
|
||||
return currentGlobalStage;
|
||||
}
|
||||
public void ShowResult(float result)
|
||||
{
|
||||
isStart = false;
|
||||
confettiParticle.Play();
|
||||
OnShowResult?.Invoke(result);
|
||||
}
|
||||
}
|
11
Assets/Resources/Scripts/GameManager.cs.meta
Normal file
11
Assets/Resources/Scripts/GameManager.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 498f2e3bf6089bd419b9c12686ec74a3
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
13
Assets/Resources/Scripts/LevelScriptable.cs
Normal file
13
Assets/Resources/Scripts/LevelScriptable.cs
Normal file
@ -0,0 +1,13 @@
|
||||
using UnityEngine;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections;
|
||||
|
||||
[CreateAssetMenu(fileName = "Level", menuName = "ScriptableObjects/Level", order = 1)]
|
||||
public class LevelScriptable : ScriptableObject
|
||||
{
|
||||
public List<Color> rgbList;
|
||||
public List<Color> rgbSaturatedList;
|
||||
public List<int> dotCount;
|
||||
public List<Sprite> displaySprite;
|
||||
public List<string> displayString;
|
||||
}
|
11
Assets/Resources/Scripts/LevelScriptable.cs.meta
Normal file
11
Assets/Resources/Scripts/LevelScriptable.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 63bbcdf74f6e3cb42aac3213512180d4
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
13
Assets/Resources/Scripts/MatchDotLevelScriptable.cs
Normal file
13
Assets/Resources/Scripts/MatchDotLevelScriptable.cs
Normal file
@ -0,0 +1,13 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
[CreateAssetMenu(fileName = "MatchDotLevel", menuName = "ScriptableObjects/MatchDotLevel", order = 1)]
|
||||
public class MatchDotLevelScriptable : ScriptableObject
|
||||
|
||||
{
|
||||
public int colorCount;
|
||||
public List<Color> colors = new List<Color>();
|
||||
public List<int> id = new List<int>();
|
||||
}
|
||||
|
11
Assets/Resources/Scripts/MatchDotLevelScriptable.cs.meta
Normal file
11
Assets/Resources/Scripts/MatchDotLevelScriptable.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ad389b71d712964409097bb8596a101d
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
59
Assets/Resources/Scripts/SameColorDot.cs
Normal file
59
Assets/Resources/Scripts/SameColorDot.cs
Normal file
@ -0,0 +1,59 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class SameColorDot : MonoBehaviour
|
||||
{
|
||||
public int index;
|
||||
public int id;
|
||||
public SpriteRenderer sprite;
|
||||
|
||||
private SameColorDotsManager manager;
|
||||
|
||||
public void SetData(SameColorDotsManager manager)
|
||||
{
|
||||
this.manager = manager;
|
||||
|
||||
}
|
||||
public void SetId(int id)
|
||||
{
|
||||
this.id = id;
|
||||
}
|
||||
private void Start()
|
||||
{
|
||||
LeanTween.scale(gameObject, new Vector3(1.5f, 1.5f, 1.5f), 0.25f).setEaseInOutCubic();
|
||||
LeanTween.scale(gameObject, new Vector3(2, 2, 2), 0.5f).setDelay(0.2f).setEaseInOutCubic();
|
||||
}
|
||||
|
||||
public void ChangeColor(Color color)
|
||||
{
|
||||
sprite.color = color;
|
||||
}
|
||||
public Color GetColor()
|
||||
{
|
||||
return sprite.color;
|
||||
}
|
||||
private void OnMouseDown()
|
||||
{
|
||||
manager.SelectColor(this);
|
||||
}
|
||||
public void Select()
|
||||
{
|
||||
LeanTween.scale(gameObject, new Vector3(1.5f, 1.5f, 1.5f), 0.25f).setEaseInOutCubic();
|
||||
}
|
||||
public void Deselect()
|
||||
{
|
||||
LeanTween.scale(gameObject, new Vector3(2f, 2f, 2f), 0.25f).setEaseInOutCubic();
|
||||
}
|
||||
public void Destroying()
|
||||
{
|
||||
// LeanTween.scale(gameObject, new Vector3(2f, 2f, 2f), 0.25f).setEaseInOutCubic();
|
||||
LeanTween.scale(gameObject, new Vector3(1.5f, 1.5f, 1.5f), 0.25f).setEaseInOutCubic();
|
||||
StartCoroutine(DestroyDelay());
|
||||
}
|
||||
private IEnumerator DestroyDelay()
|
||||
{
|
||||
yield return new WaitForSeconds(0.25f);
|
||||
LeanTween.scale(gameObject, new Vector3(0.05f, 0.05f, 0.05f), 1f).setEaseInOutCubic();
|
||||
}
|
||||
}
|
11
Assets/Resources/Scripts/SameColorDot.cs.meta
Normal file
11
Assets/Resources/Scripts/SameColorDot.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c940e254c8f971d45a9cc975aa3de997
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
150
Assets/Resources/Scripts/SameColorDotsManager.cs
Normal file
150
Assets/Resources/Scripts/SameColorDotsManager.cs
Normal file
@ -0,0 +1,150 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class SameColorDotsManager : MonoBehaviour
|
||||
{
|
||||
public float score;
|
||||
|
||||
[SerializeField] private bool isPlaying;
|
||||
[SerializeField] private SameColorDot sameColorDotPrefab;
|
||||
[SerializeField] private List<Transform> places = new List<Transform>();
|
||||
[SerializeField] private List<SameColorDot> dotInScene = new List<SameColorDot>();
|
||||
|
||||
[SerializeField] List<SameColorDot> dotTemp = new List<SameColorDot>();
|
||||
[SerializeField] Queue<SameColorDot> dotQueue = new Queue<SameColorDot>();
|
||||
[SerializeField] private int level;
|
||||
[SerializeField] private List<MatchDotLevelScriptable> MatchDotLevels = new List<MatchDotLevelScriptable>();
|
||||
[SerializeField] private SalahDisplay salahDisplay;
|
||||
[SerializeField] private SameDotsBenarDisplay exampleDisplay;
|
||||
|
||||
[SerializeField] private SameColorDot dotSelected;
|
||||
[SerializeField] private bool isColorSelected;
|
||||
[SerializeField] private bool isSelectingColor;
|
||||
[SerializeField] private int pairLeft;
|
||||
//[SerializeField] private
|
||||
|
||||
|
||||
public void SelectColor(SameColorDot dot)
|
||||
{
|
||||
if (isSelectingColor) return;
|
||||
|
||||
if (!isColorSelected)
|
||||
{
|
||||
isColorSelected = true;
|
||||
dotSelected = dot;
|
||||
dot.Select();
|
||||
AudioManager.Instance.PlaySfx("Click");
|
||||
}
|
||||
else
|
||||
{
|
||||
if (dotSelected == dot) return;
|
||||
AudioManager.Instance.PlaySfx("Click");
|
||||
StartCoroutine(CheckColorDelay(dot));
|
||||
}
|
||||
}
|
||||
private IEnumerator CheckColorDelay(SameColorDot dot)
|
||||
{
|
||||
isSelectingColor = true;
|
||||
dot.Select();
|
||||
GameManager.Instance.ResetGuide();
|
||||
if (dotSelected.id == dot.id)
|
||||
{
|
||||
exampleDisplay.Display();
|
||||
dotSelected.Destroying();
|
||||
dot.Destroying();
|
||||
AudioManager.Instance.PlaySfx("Jawab Benar");
|
||||
GameManager.Instance.AnswerSameColorDots(true);
|
||||
GameManager.Instance.SetIsChoosing(false);
|
||||
}
|
||||
else
|
||||
{
|
||||
salahDisplay.Display();
|
||||
AudioManager.Instance.PlaySfx("Jawab Salah");
|
||||
GameManager.Instance.AnswerSameColorDots(false);
|
||||
GameManager.Instance.SetIsChoosing(false);
|
||||
}
|
||||
yield return new WaitForSeconds(1f);
|
||||
if (dotSelected.id == dot.id)
|
||||
{
|
||||
//Correct
|
||||
exampleDisplay.Hide();
|
||||
Destroy(dotSelected.gameObject);
|
||||
Destroy(dot.gameObject);
|
||||
isColorSelected = false;
|
||||
pairLeft--;
|
||||
GameManager.Instance.HideGuide();
|
||||
GameManager.Instance.AddGlobalStage();
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
//Incorrect
|
||||
salahDisplay.Hide();
|
||||
dotSelected.Deselect();
|
||||
dot.Deselect();
|
||||
isColorSelected = false;
|
||||
dotSelected = null;
|
||||
|
||||
if (score > 0)
|
||||
{
|
||||
score -= 0.1f;
|
||||
}
|
||||
}
|
||||
if (pairLeft == 0)
|
||||
{
|
||||
if (level < 2)
|
||||
{
|
||||
AddLevel();
|
||||
GameManager.Instance.ChangeLevel();
|
||||
GameManager.Instance.NextStage();
|
||||
}
|
||||
else
|
||||
{
|
||||
GameManager.Instance.ViewGameResult();
|
||||
}
|
||||
|
||||
}
|
||||
GameManager.Instance.SetIsChoosing(true);
|
||||
isSelectingColor = false;
|
||||
}
|
||||
public void AddLevel()
|
||||
{
|
||||
level++;
|
||||
}
|
||||
public void ResetLevel()
|
||||
{
|
||||
level = 0;
|
||||
}
|
||||
public void Play()
|
||||
{
|
||||
pairLeft = 6;
|
||||
dotTemp.Clear();
|
||||
dotInScene.Clear();
|
||||
for (int i = 0; i < places.Count; i++)
|
||||
{
|
||||
SameColorDot dot = Instantiate(sameColorDotPrefab, places[i].transform.position, Quaternion.identity);
|
||||
dot.SetData(this);
|
||||
dot.index = i;
|
||||
dotTemp.Add(dot);
|
||||
dotInScene.Add(dot);
|
||||
}
|
||||
for (int i = 0; i < dotTemp.Count;)
|
||||
{
|
||||
int r = Random.Range(0, dotTemp.Count);
|
||||
dotQueue.Enqueue(dotTemp[r]);
|
||||
dotTemp.RemoveAt(r);
|
||||
}
|
||||
Debug.Log("Dot Count : " + dotQueue.Count);
|
||||
int index = 0;
|
||||
while (dotQueue.Count > 0)
|
||||
{
|
||||
SameColorDot dot = dotQueue.Dequeue();
|
||||
dot.ChangeColor(MatchDotLevels[level].colors[index]);
|
||||
dot.SetId(MatchDotLevels[level].id[index]);
|
||||
index++;
|
||||
Debug.Log("Dequeued Dot Index : " + dot.index);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
11
Assets/Resources/Scripts/SameColorDotsManager.cs.meta
Normal file
11
Assets/Resources/Scripts/SameColorDotsManager.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 91732c6d0b3f7c7419fa292552b1492b
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
26
Assets/Resources/Scripts/ScaleToFitScreen.cs
Normal file
26
Assets/Resources/Scripts/ScaleToFitScreen.cs
Normal file
@ -0,0 +1,26 @@
|
||||
using UnityEngine;
|
||||
|
||||
public class ScaleToFitScreen : MonoBehaviour
|
||||
{
|
||||
private SpriteRenderer sr;
|
||||
|
||||
private void Start()
|
||||
{
|
||||
sr = GetComponent<SpriteRenderer>();
|
||||
|
||||
// world height is always camera's orthographicSize * 2
|
||||
float worldScreenHeight = Camera.main.orthographicSize * 2;
|
||||
|
||||
// world width is calculated by diving world height with screen heigh
|
||||
// then multiplying it with screen width
|
||||
float worldScreenWidth = worldScreenHeight / Screen.height * Screen.width;
|
||||
|
||||
// to scale the game object we divide the world screen width with the
|
||||
// size x of the sprite, and we divide the world screen height with the
|
||||
// size y of the sprite
|
||||
transform.localScale = new Vector3(
|
||||
worldScreenWidth / sr.sprite.bounds.size.x,
|
||||
worldScreenHeight / sr.sprite.bounds.size.y, 1);
|
||||
}
|
||||
|
||||
} // class
|
11
Assets/Resources/Scripts/ScaleToFitScreen.cs.meta
Normal file
11
Assets/Resources/Scripts/ScaleToFitScreen.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 802c845bdaa9b53438a2e6cf6e257bb2
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
8
Assets/Resources/Scripts/Scriptable Object.meta
Normal file
8
Assets/Resources/Scripts/Scriptable Object.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: aeb10b33b6842ea4785e943bd994d66a
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
8
Assets/Resources/Scripts/Scriptable Object/Level.meta
Normal file
8
Assets/Resources/Scripts/Scriptable Object/Level.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1a500e5c8b294394a879dfb76a17af09
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@ -0,0 +1,59 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 63bbcdf74f6e3cb42aac3213512180d4, type: 3}
|
||||
m_Name: Deutan
|
||||
m_EditorClassIdentifier:
|
||||
rgbList:
|
||||
- {r: 0.33299276, g: 0.86415094, b: 0.05706645, a: 1}
|
||||
- {r: 0.33299276, g: 0.86415094, b: 0.05706645, a: 1}
|
||||
- {r: 0.33299276, g: 0.86415094, b: 0.05706645, a: 1}
|
||||
- {r: 0.33299276, g: 0.86415094, b: 0.05706645, a: 1}
|
||||
- {r: 0.33299276, g: 0.86415094, b: 0.05706645, a: 1}
|
||||
- {r: 0.33299276, g: 0.86415094, b: 0.05706645, a: 1}
|
||||
- {r: 0.33299276, g: 0.86415094, b: 0.05706645, a: 1}
|
||||
- {r: 0.33299276, g: 0.86415094, b: 0.05706645, a: 1}
|
||||
- {r: 0.33299276, g: 0.86415094, b: 0.05706645, a: 1}
|
||||
- {r: 0.33299276, g: 0.86415094, b: 0.05706645, a: 1}
|
||||
rgbSaturatedList:
|
||||
- {r: 0.42558023, g: 0.98490566, b: 0.16167314, a: 1}
|
||||
- {r: 0.42558023, g: 0.98490566, b: 0.16167314, a: 1}
|
||||
- {r: 0.42558023, g: 0.98490566, b: 0.16167314, a: 1}
|
||||
- {r: 0.42558023, g: 0.98490566, b: 0.16167314, a: 1}
|
||||
- {r: 0.42558023, g: 0.98490566, b: 0.16167314, a: 1}
|
||||
- {r: 0.42558023, g: 0.98490566, b: 0.16167314, a: 1}
|
||||
- {r: 0.42558023, g: 0.98490566, b: 0.16167314, a: 1}
|
||||
- {r: 0.42558023, g: 0.98490566, b: 0.16167314, a: 1}
|
||||
- {r: 0.42558023, g: 0.98490566, b: 0.16167314, a: 1}
|
||||
- {r: 0.42558023, g: 0.98490566, b: 0.16167314, a: 1}
|
||||
dotCount: 04000000040000000500000005000000060000000600000005000000050000000600000006000000
|
||||
displaySprite:
|
||||
- {fileID: 21300000, guid: 0f3af4fc4419bf940bba624a9ac98748, type: 3}
|
||||
- {fileID: 21300000, guid: 0f3af4fc4419bf940bba624a9ac98748, type: 3}
|
||||
- {fileID: 21300000, guid: 0f3af4fc4419bf940bba624a9ac98748, type: 3}
|
||||
- {fileID: 21300000, guid: 0f3af4fc4419bf940bba624a9ac98748, type: 3}
|
||||
- {fileID: 21300000, guid: 0f3af4fc4419bf940bba624a9ac98748, type: 3}
|
||||
- {fileID: 21300000, guid: 0f3af4fc4419bf940bba624a9ac98748, type: 3}
|
||||
- {fileID: 21300000, guid: 0f3af4fc4419bf940bba624a9ac98748, type: 3}
|
||||
- {fileID: 21300000, guid: 0f3af4fc4419bf940bba624a9ac98748, type: 3}
|
||||
- {fileID: 21300000, guid: 0f3af4fc4419bf940bba624a9ac98748, type: 3}
|
||||
- {fileID: 21300000, guid: 0f3af4fc4419bf940bba624a9ac98748, type: 3}
|
||||
displayString:
|
||||
- Brokoli berwarna Hijau
|
||||
- Brokoli berwarna Hijau
|
||||
- Brokoli berwarna Hijau
|
||||
- Brokoli berwarna Hijau
|
||||
- Brokoli berwarna Hijau
|
||||
- Brokoli berwarna Hijau
|
||||
- Brokoli berwarna Hijau
|
||||
- Brokoli berwarna Hijau
|
||||
- Brokoli berwarna Hijau
|
||||
- Brokoli berwarna Hijau
|
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9416d429868f8c6499c95f55002e4c9c
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@ -0,0 +1,59 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 63bbcdf74f6e3cb42aac3213512180d4, type: 3}
|
||||
m_Name: Protan
|
||||
m_EditorClassIdentifier:
|
||||
rgbList:
|
||||
- {r: 0.8113208, g: 0, b: 0.0042478093, a: 1}
|
||||
- {r: 0.8113208, g: 0, b: 0.0042478093, a: 1}
|
||||
- {r: 0.8113208, g: 0, b: 0.0042478093, a: 1}
|
||||
- {r: 0.8113208, g: 0, b: 0.0042478093, a: 1}
|
||||
- {r: 0.8113208, g: 0, b: 0.0042478093, a: 1}
|
||||
- {r: 0.8113208, g: 0, b: 0.0042478093, a: 1}
|
||||
- {r: 0.8113208, g: 0, b: 0.0042478093, a: 1}
|
||||
- {r: 0.8113208, g: 0, b: 0.0042478093, a: 1}
|
||||
- {r: 0.8113208, g: 0, b: 0.0042478093, a: 1}
|
||||
- {r: 0.8113208, g: 0, b: 0.0042478093, a: 1}
|
||||
rgbSaturatedList:
|
||||
- {r: 0.93207544, g: 0.19520827, b: 0.19906625, a: 1}
|
||||
- {r: 0.93207544, g: 0.19520827, b: 0.19906625, a: 1}
|
||||
- {r: 0.93207544, g: 0.19520827, b: 0.19906625, a: 1}
|
||||
- {r: 0.93207544, g: 0.19520827, b: 0.19906625, a: 1}
|
||||
- {r: 0.93207544, g: 0.19520827, b: 0.19906625, a: 1}
|
||||
- {r: 0.93207544, g: 0.19520827, b: 0.19906625, a: 1}
|
||||
- {r: 0.93207544, g: 0.19520827, b: 0.19906625, a: 1}
|
||||
- {r: 0.93207544, g: 0.19520827, b: 0.19906625, a: 1}
|
||||
- {r: 0.93207544, g: 0.19520827, b: 0.19906625, a: 1}
|
||||
- {r: 0.93207544, g: 0.19520827, b: 0.19906625, a: 1}
|
||||
dotCount: 04000000040000000500000005000000060000000600000005000000050000000600000006000000
|
||||
displaySprite:
|
||||
- {fileID: 21300000, guid: c3f44276ad38a694fa113bc758a5c4fe, type: 3}
|
||||
- {fileID: 21300000, guid: e4464c541f39f9745b541ff6a798507e, type: 3}
|
||||
- {fileID: 21300000, guid: 6c8a85fb7fc9d75449a1850506698aad, type: 3}
|
||||
- {fileID: 21300000, guid: ba4a9cdc6e2777c45b17820bd3b18667, type: 3}
|
||||
- {fileID: 21300000, guid: c3f44276ad38a694fa113bc758a5c4fe, type: 3}
|
||||
- {fileID: 21300000, guid: e4464c541f39f9745b541ff6a798507e, type: 3}
|
||||
- {fileID: 21300000, guid: 6c8a85fb7fc9d75449a1850506698aad, type: 3}
|
||||
- {fileID: 21300000, guid: b847208fce4f21b448ff26a643810308, type: 3}
|
||||
- {fileID: 21300000, guid: c3f44276ad38a694fa113bc758a5c4fe, type: 3}
|
||||
- {fileID: 21300000, guid: e4464c541f39f9745b541ff6a798507e, type: 3}
|
||||
displayString:
|
||||
- Buah apel berwarna merah
|
||||
- Buah Strawberi berwarna merah
|
||||
- Tomat berwarna merah
|
||||
- Kacang berwarna Coklat
|
||||
- Buah apel berwarna merah
|
||||
- Buah Strawberi berwarna merah
|
||||
- Tomat berwarna merah
|
||||
- Cabai berwarna merah
|
||||
- Buah apel berwarna merah
|
||||
- Buah Strawberi berwarna merah
|
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7133b420ee80789419dbfee4aa31bbc4
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@ -0,0 +1,59 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 63bbcdf74f6e3cb42aac3213512180d4, type: 3}
|
||||
m_Name: Tritan
|
||||
m_EditorClassIdentifier:
|
||||
rgbList:
|
||||
- {r: 0.022107378, g: 0.78113204, b: 0.71408993, a: 1}
|
||||
- {r: 0.022107378, g: 0.78113204, b: 0.71408993, a: 1}
|
||||
- {r: 0.022107378, g: 0.78113204, b: 0.71408993, a: 1}
|
||||
- {r: 0.022107378, g: 0.78113204, b: 0.71408993, a: 1}
|
||||
- {r: 0.022107378, g: 0.78113204, b: 0.71408993, a: 1}
|
||||
- {r: 0.022107378, g: 0.78113204, b: 0.71408993, a: 1}
|
||||
- {r: 0.022107378, g: 0.78113204, b: 0.71408993, a: 1}
|
||||
- {r: 0.022107378, g: 0.78113204, b: 0.71408993, a: 1}
|
||||
- {r: 0.022107378, g: 0.78113204, b: 0.71408993, a: 1}
|
||||
- {r: 0.022107378, g: 0.78113204, b: 0.71408993, a: 1}
|
||||
rgbSaturatedList:
|
||||
- {r: 0.24705881, g: 0.94335365, b: 1, a: 1}
|
||||
- {r: 0.24705881, g: 0.94335365, b: 1, a: 1}
|
||||
- {r: 0.24705881, g: 0.94335365, b: 1, a: 1}
|
||||
- {r: 0.24705881, g: 0.94335365, b: 1, a: 1}
|
||||
- {r: 0.24705881, g: 0.94335365, b: 1, a: 1}
|
||||
- {r: 0.24705881, g: 0.94335365, b: 1, a: 1}
|
||||
- {r: 0.24705881, g: 0.94335365, b: 1, a: 1}
|
||||
- {r: 0.24705881, g: 0.94335365, b: 1, a: 1}
|
||||
- {r: 0.24705881, g: 0.94335365, b: 1, a: 1}
|
||||
- {r: 0.24705881, g: 0.94335365, b: 1, a: 1}
|
||||
dotCount: 04000000040000000500000005000000060000000600000005000000050000000600000006000000
|
||||
displaySprite:
|
||||
- {fileID: 21300000, guid: c3f44276ad38a694fa113bc758a5c4fe, type: 3}
|
||||
- {fileID: 21300000, guid: c3f44276ad38a694fa113bc758a5c4fe, type: 3}
|
||||
- {fileID: 21300000, guid: c3f44276ad38a694fa113bc758a5c4fe, type: 3}
|
||||
- {fileID: 21300000, guid: c3f44276ad38a694fa113bc758a5c4fe, type: 3}
|
||||
- {fileID: 21300000, guid: c3f44276ad38a694fa113bc758a5c4fe, type: 3}
|
||||
- {fileID: 21300000, guid: c3f44276ad38a694fa113bc758a5c4fe, type: 3}
|
||||
- {fileID: 21300000, guid: c3f44276ad38a694fa113bc758a5c4fe, type: 3}
|
||||
- {fileID: 21300000, guid: c3f44276ad38a694fa113bc758a5c4fe, type: 3}
|
||||
- {fileID: 21300000, guid: c3f44276ad38a694fa113bc758a5c4fe, type: 3}
|
||||
- {fileID: 21300000, guid: c3f44276ad38a694fa113bc758a5c4fe, type: 3}
|
||||
displayString:
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: afa2f00556839da47a6d93948f14950d
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1747ebb3a7678ed42835ddbd8c743ad9
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@ -0,0 +1,29 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: ad389b71d712964409097bb8596a101d, type: 3}
|
||||
m_Name: MatchDotLevel 1
|
||||
m_EditorClassIdentifier:
|
||||
colorCount: 12
|
||||
colors:
|
||||
- {r: 1, g: 0.12631074, b: 0.073584795, a: 1}
|
||||
- {r: 1, g: 0.1254902, b: 0.07450981, a: 1}
|
||||
- {r: 0.89433956, g: 0.261552, b: 0.3003623, a: 1}
|
||||
- {r: 0.89411765, g: 0.2627451, b: 0.3019608, a: 1}
|
||||
- {r: 0.9924528, g: 0.35165524, b: 0.2902455, a: 1}
|
||||
- {r: 0.99607843, g: 0.3529412, b: 0.29411766, a: 1}
|
||||
- {r: 0.8867924, g: 0.22277398, b: 0.2058027, a: 1}
|
||||
- {r: 0.8862745, g: 0.22352941, b: 0.20392157, a: 1}
|
||||
- {r: 0.96981126, g: 0.26898536, b: 0.45062613, a: 1}
|
||||
- {r: 0.96862745, g: 0.27058825, b: 0.4509804, a: 1}
|
||||
- {r: 1, g: 0.18823528, b: 0.55308914, a: 1}
|
||||
- {r: 1, g: 0.1882353, b: 0.5568628, a: 1}
|
||||
id: 010000000100000002000000020000000300000003000000040000000400000005000000050000000600000006000000
|
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9dfb5522c5ec35b4fb7d079afb4e38d4
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@ -0,0 +1,29 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: ad389b71d712964409097bb8596a101d, type: 3}
|
||||
m_Name: MatchDotLevel 2
|
||||
m_EditorClassIdentifier:
|
||||
colorCount: 12
|
||||
colors:
|
||||
- {r: 0.3157891, g: 0.99215686, b: 0.21568628, a: 1}
|
||||
- {r: 0.31764707, g: 0.99215686, b: 0.2153434, a: 1}
|
||||
- {r: 0.77703065, g: 0.99215686, b: 0.627451, a: 1}
|
||||
- {r: 0.7764706, g: 0.99215686, b: 0.627451, a: 1}
|
||||
- {r: 0.8433925, g: 0.9764706, b: 0.5294118, a: 1}
|
||||
- {r: 0.84705883, g: 0.9764706, b: 0.5294118, a: 1}
|
||||
- {r: 0.6, g: 0.78431374, b: 0.40784314, a: 1}
|
||||
- {r: 0.59879977, g: 0.78113204, b: 0.4053043, a: 1}
|
||||
- {r: 0.50884163, g: 1, b: 0.45882356, a: 1}
|
||||
- {r: 0.50980395, g: 1, b: 0.45882356, a: 1}
|
||||
- {r: 0.6441413, g: 1, b: 0.33725488, a: 1}
|
||||
- {r: 0.6431373, g: 1, b: 0.3372549, a: 1}
|
||||
id: 010000000100000002000000020000000300000003000000040000000400000005000000050000000600000006000000
|
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 985b55fe284d6d9418928b9f794746dc
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@ -0,0 +1,29 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: ad389b71d712964409097bb8596a101d, type: 3}
|
||||
m_Name: MatchDotLevel 3
|
||||
m_EditorClassIdentifier:
|
||||
colorCount: 12
|
||||
colors:
|
||||
- {r: 0.6698113, g: 1, b: 0.950717, a: 1}
|
||||
- {r: 0.67058825, g: 1, b: 0.9490196, a: 1}
|
||||
- {r: 0.627451, g: 0.99215686, b: 0.7926314, a: 1}
|
||||
- {r: 0.627451, g: 0.99215686, b: 0.7921569, a: 1}
|
||||
- {r: 0.67731583, g: 0.7807961, b: 0.94716984, a: 1}
|
||||
- {r: 0.6784314, g: 0.78431374, b: 0.9490196, a: 1}
|
||||
- {r: 0.72561765, g: 0.75381833, b: 0.79622644, a: 1}
|
||||
- {r: 0.7294118, g: 0.75686276, b: 0.8, a: 1}
|
||||
- {r: 0.65389097, g: 0.9185385, b: 0.9547169, a: 1}
|
||||
- {r: 0.654902, g: 0.92156863, b: 0.95686275, a: 1}
|
||||
- {r: 0.33725488, g: 1, b: 0.76732063, a: 1}
|
||||
- {r: 0.3372549, g: 1, b: 0.76862746, a: 1}
|
||||
id: 010000000100000002000000020000000300000003000000040000000400000005000000050000000600000006000000
|
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: cb79965c5e0ed2949959edb9ff4c494d
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
8
Assets/Resources/Scripts/UI.meta
Normal file
8
Assets/Resources/Scripts/UI.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b3ed0d23cf6073d42b1a8b9cd64e8992
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
37
Assets/Resources/Scripts/UI/AverageDataDisplay.cs
Normal file
37
Assets/Resources/Scripts/UI/AverageDataDisplay.cs
Normal file
@ -0,0 +1,37 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using System.Linq;
|
||||
using TMPro;
|
||||
using UnityEngine.UI;
|
||||
|
||||
public class AverageDataDisplay : MonoBehaviour
|
||||
{
|
||||
[SerializeField] private List<Answer> data = new List<Answer>();
|
||||
[SerializeField] private List<float> responseTimeList = new List<float>();
|
||||
|
||||
[SerializeField] private TextMeshProUGUI stageText;
|
||||
[SerializeField] private TextMeshProUGUI jumlahSalahText;
|
||||
[SerializeField] private TextMeshProUGUI responseTimeText;
|
||||
|
||||
public void SetData(List<Answer> data, Level level)
|
||||
{
|
||||
int jumlahSalah = 0;
|
||||
for (int i = 0; i < data.Count; i++)
|
||||
{
|
||||
if (data[i].level == level)
|
||||
{
|
||||
this.data.Add(data[i]);
|
||||
responseTimeList.Add(data[i].responseTime);
|
||||
if (!data[i].correct)
|
||||
{
|
||||
jumlahSalah++;
|
||||
}
|
||||
}
|
||||
}
|
||||
float average = responseTimeList.Average();
|
||||
stageText.text = "Stage : " + level.ToString();
|
||||
jumlahSalahText.text = "Jumlah Salah : " + jumlahSalah.ToString();
|
||||
responseTimeText.text = "Rata Rata Response Time : " + average.ToString("F1") + "s";
|
||||
}
|
||||
}
|
11
Assets/Resources/Scripts/UI/AverageDataDisplay.cs.meta
Normal file
11
Assets/Resources/Scripts/UI/AverageDataDisplay.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 104d6574fb136aa46b03339eb07ed2c5
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
39
Assets/Resources/Scripts/UI/CameraColorController.cs
Normal file
39
Assets/Resources/Scripts/UI/CameraColorController.cs
Normal file
@ -0,0 +1,39 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class CameraColorController : MonoBehaviour
|
||||
{
|
||||
[SerializeField] private Camera cam;
|
||||
[SerializeField] private Color menuColor;
|
||||
[SerializeField] private Color colorProtan;
|
||||
[SerializeField] private Color colorDeutan;
|
||||
[SerializeField] private Color colorTritan;
|
||||
[SerializeField] private float duration;
|
||||
|
||||
public void ChangeColor(Level level)
|
||||
{
|
||||
if (level == Level.Protan)
|
||||
{
|
||||
LeanTween.value(gameObject, UpdateColor, menuColor, colorProtan, duration)
|
||||
.setEase(LeanTweenType.easeInOutQuad);
|
||||
} else if (level == Level.Deutan)
|
||||
{
|
||||
LeanTween.value(gameObject, UpdateColor, colorProtan, colorDeutan, duration)
|
||||
.setEase(LeanTweenType.easeInOutQuad);
|
||||
} else if (level == Level.Tritan)
|
||||
{
|
||||
LeanTween.value(gameObject, UpdateColor, colorDeutan, colorTritan, duration)
|
||||
.setEase(LeanTweenType.easeInOutQuad);
|
||||
}
|
||||
}
|
||||
public void ChangeColorToMenu()
|
||||
{
|
||||
LeanTween.value(gameObject, UpdateColor, colorTritan, menuColor, duration)
|
||||
.setEase(LeanTweenType.easeInOutQuad);
|
||||
}
|
||||
public void UpdateColor(Color color)
|
||||
{
|
||||
cam.backgroundColor = color;
|
||||
}
|
||||
}
|
11
Assets/Resources/Scripts/UI/CameraColorController.cs.meta
Normal file
11
Assets/Resources/Scripts/UI/CameraColorController.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1141b8ce6e53e2a499ea762a5349fb7d
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
40
Assets/Resources/Scripts/UI/DetailDataDisplay.cs
Normal file
40
Assets/Resources/Scripts/UI/DetailDataDisplay.cs
Normal file
@ -0,0 +1,40 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using TMPro;
|
||||
using UnityEngine.UI;
|
||||
|
||||
public class DetailDataDisplay : MonoBehaviour
|
||||
{
|
||||
[SerializeField] private Answer data;
|
||||
[SerializeField] private TextMeshProUGUI levelText;
|
||||
[SerializeField] private TextMeshProUGUI stageText;
|
||||
[SerializeField] private TextMeshProUGUI isCorrectText;
|
||||
[SerializeField] private TextMeshProUGUI responseTimeText;
|
||||
[SerializeField] private Image bg;
|
||||
[SerializeField] private Color differentColorModeColor;
|
||||
[SerializeField] private Color sameColorModeColor;
|
||||
|
||||
public void SetData(Answer data)
|
||||
{
|
||||
this.data = data;
|
||||
levelText.text = "Level " +data.globalStage.ToString();
|
||||
stageText.text = "Stage " +data.level.ToString();
|
||||
if (data.correct)
|
||||
{
|
||||
isCorrectText.text = "Menjawab Benar";
|
||||
}
|
||||
else {
|
||||
isCorrectText.text = "Menjawab Salah ";
|
||||
}
|
||||
responseTimeText.text = "Response Time :" + data.responseTime.ToString("F1")+"s";
|
||||
if (data.stageLevel == Stage.Differentcolor)
|
||||
{
|
||||
bg.color = differentColorModeColor;
|
||||
}
|
||||
else {
|
||||
bg.color = sameColorModeColor;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
11
Assets/Resources/Scripts/UI/DetailDataDisplay.cs.meta
Normal file
11
Assets/Resources/Scripts/UI/DetailDataDisplay.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 50fcd948d6d41284193f80addb075a3c
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
27
Assets/Resources/Scripts/UI/ExampleDisplay.cs
Normal file
27
Assets/Resources/Scripts/UI/ExampleDisplay.cs
Normal file
@ -0,0 +1,27 @@
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
using TMPro;
|
||||
|
||||
public class ExampleDisplay : UIManager
|
||||
{
|
||||
[SerializeField] private Image image;
|
||||
[SerializeField] private Image mascotImage;
|
||||
[SerializeField] private Image thumbsImage;
|
||||
[SerializeField] private TextMeshProUGUI displayText;
|
||||
public void Display(Sprite sprite,string displayString)
|
||||
{
|
||||
Show();
|
||||
LeanTween.scale(image.gameObject, new Vector3(1.5f,1.5f,1.5f), 0.25f).setEaseInOutCubic();
|
||||
//LeanTween.scale(mascotImage.gameObject, new Vector3(0.75f, 0.75f, 0.75f), 0.25f).setEaseInOutCubic();
|
||||
LeanTween.rotate(thumbsImage.gameObject, new Vector3(0,0,30), 0.25f).setEaseInOutCubic();
|
||||
LeanTween.rotate(mascotImage.gameObject, new Vector3(0,0,30), 0.25f).setEaseInOutCubic();
|
||||
LeanTween.scale(image.gameObject, new Vector3(1,1,1), 0.5f).setDelay(0.2f).setEaseInOutCubic();
|
||||
LeanTween.scale(displayText.gameObject, new Vector3(0.75f, 0.75f, 0.75f), 0.25f).setEaseInOutCubic();
|
||||
LeanTween.rotate(thumbsImage.gameObject, new Vector3(0, 0, 0), 0.25f).setDelay(0.2f).setEaseInOutCubic();
|
||||
LeanTween.rotate(mascotImage.gameObject, new Vector3(0, 0, 0), 0.25f).setDelay(0.2f).setEaseInOutCubic();
|
||||
LeanTween.scale(displayText.gameObject, new Vector3(1,1,1), 0.5f).setDelay(0.2f).setEaseInOutCubic();
|
||||
//LeanTween.scale(mascotImage.gameObject, new Vector3(1,1,1), 0.5f).setDelay(0.2f).setEaseInOutCubic();
|
||||
image.sprite = sprite;
|
||||
displayText.text = displayString;
|
||||
}
|
||||
}
|
11
Assets/Resources/Scripts/UI/ExampleDisplay.cs.meta
Normal file
11
Assets/Resources/Scripts/UI/ExampleDisplay.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 21f171aa80bb06041b97cb6bfcb0c676
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
139
Assets/Resources/Scripts/UI/GameUI.cs
Normal file
139
Assets/Resources/Scripts/UI/GameUI.cs
Normal file
@ -0,0 +1,139 @@
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using TMPro;
|
||||
using UnityEngine.UI;
|
||||
|
||||
public class GameUI : UIManager
|
||||
{
|
||||
[SerializeField] private GameManager gameManager;
|
||||
[SerializeField] private DotsManager dotsManager;
|
||||
[SerializeField] private TextMeshProUGUI levelText;
|
||||
[SerializeField] private TextMeshProUGUI stageText;
|
||||
[SerializeField] private TextMeshProUGUI resultText;
|
||||
[SerializeField] private TextMeshProUGUI rankText;
|
||||
[SerializeField] private TextMeshProUGUI correctText;
|
||||
[SerializeField] private GameObject mainMenuButton;
|
||||
[SerializeField] private GameObject showSummaryButton;
|
||||
[SerializeField] private Slider progressBar;
|
||||
|
||||
[SerializeField] private float targetProgress;
|
||||
private float fillspeed = 1f;
|
||||
|
||||
[SerializeField] private SummaryDisplay summaryDisplay;
|
||||
|
||||
[SerializeField] private SalahDisplay salahDisplay;
|
||||
[SerializeField] private ExampleDisplay exampleDisplay;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
gameManager.OnShowResult += ShowResult;
|
||||
gameManager.OnAnswer += ShowCorrect;
|
||||
gameManager.OnNext += Next;
|
||||
gameManager.OnGlobalStageAdded += DisplayProgressBar;
|
||||
}
|
||||
private void DisplayProgressBar(int val)
|
||||
{
|
||||
float progress = (float)((float)val / 33f);
|
||||
targetProgress = progress;
|
||||
}
|
||||
|
||||
private void Update()
|
||||
{
|
||||
progressBar.value = Mathf.Lerp(progressBar.value, targetProgress, fillspeed * Time.deltaTime);
|
||||
}
|
||||
public void OpenSummary()
|
||||
{
|
||||
summaryDisplay.Show();
|
||||
}
|
||||
public void CloseSummary()
|
||||
{
|
||||
summaryDisplay.Hide();
|
||||
}
|
||||
private void Start()
|
||||
{
|
||||
ToggleMainMenuButton(false);
|
||||
ToggleSummaryButton(false);
|
||||
}
|
||||
public void ToggleMainMenuButton(bool val)
|
||||
{
|
||||
mainMenuButton.SetActive(val);
|
||||
}
|
||||
public void ToggleSummaryButton(bool val)
|
||||
{
|
||||
showSummaryButton.SetActive(val);
|
||||
}
|
||||
public void Next()
|
||||
{
|
||||
ResetCorrect();
|
||||
AudioManager.Instance.PlaySfx("Mulai Game");
|
||||
}
|
||||
public void GoToMainMenu()
|
||||
{
|
||||
ToggleSummaryButton(false);
|
||||
ToggleMainMenuButton(false);
|
||||
resultText.text = "";
|
||||
rankText.text = "";
|
||||
GameManager.Instance.GoToMenu();
|
||||
}
|
||||
public void ShowCorrect(bool val,int currentStage)
|
||||
{
|
||||
levelText.text = "";
|
||||
stageText.text = "";
|
||||
if (val)
|
||||
{
|
||||
exampleDisplay.Display(dotsManager.GetCurrentLevel().displaySprite[currentStage], dotsManager.GetCurrentLevel().displayString[currentStage]);
|
||||
}
|
||||
else {
|
||||
salahDisplay.Display();
|
||||
}
|
||||
}
|
||||
public void ResetCorrect()
|
||||
{
|
||||
salahDisplay.Hide();
|
||||
exampleDisplay.Hide();
|
||||
correctText.text = "";
|
||||
}
|
||||
public void ShowResult(float result)
|
||||
{
|
||||
ResetCorrect();
|
||||
ToggleMainMenuButton(true);
|
||||
ToggleSummaryButton(true);
|
||||
levelText.text = "";
|
||||
stageText.text = "";
|
||||
string rank;
|
||||
if (result > 2.8f)
|
||||
{
|
||||
rank = "A";
|
||||
}
|
||||
else if (result > 2.4f)
|
||||
{
|
||||
rank = "B";
|
||||
}
|
||||
else if (result > 1.8f)
|
||||
{
|
||||
rank = "C";
|
||||
}
|
||||
else if (result > 1f)
|
||||
{
|
||||
rank = "D";
|
||||
}
|
||||
else {
|
||||
rank = "E";
|
||||
}
|
||||
rankText.text = rank.ToString();
|
||||
float finalScore = (result / 3f) * 100f;
|
||||
resultText.text = "Kamu Dapat " +rank +" , dengan skor "+ finalScore.ToString("F0");
|
||||
//fuzzy logic
|
||||
if (result > 2.4f)
|
||||
{
|
||||
resultText.text += "\n(Tinggi, Mata aman)";
|
||||
}
|
||||
else if (result > 1.5f)
|
||||
{
|
||||
resultText.text += "\n(Sedang, Zona Abu Abu)";
|
||||
}
|
||||
else {
|
||||
resultText.text += "\n(Rendah, Buta Warna)";
|
||||
}
|
||||
}
|
||||
}
|
11
Assets/Resources/Scripts/UI/GameUI.cs.meta
Normal file
11
Assets/Resources/Scripts/UI/GameUI.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b0978fda385cc544188a2090dbc29a5a
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
53
Assets/Resources/Scripts/UI/GuideManager.cs
Normal file
53
Assets/Resources/Scripts/UI/GuideManager.cs
Normal file
@ -0,0 +1,53 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
using TMPro;
|
||||
|
||||
public class GuideManager : UIManager
|
||||
{
|
||||
[SerializeField] private Image imageDisplay;
|
||||
[SerializeField] private TextMeshProUGUI textDisplay;
|
||||
[SerializeField] private TextMeshProUGUI indexDisplay;
|
||||
|
||||
[TextArea]
|
||||
[SerializeField] private string[] textList;
|
||||
[SerializeField] private Sprite[] imageList;
|
||||
|
||||
[SerializeField] private int currentIndex;
|
||||
public override void Show()
|
||||
{
|
||||
base.Show();
|
||||
currentIndex = 0;
|
||||
DisplayGuide();
|
||||
}
|
||||
public void Next()
|
||||
{
|
||||
if (currentIndex < imageList.Length - 1)
|
||||
{
|
||||
currentIndex++;
|
||||
AudioManager.Instance.PlaySfx("Click");
|
||||
DisplayGuide();
|
||||
}
|
||||
}
|
||||
public void Prev()
|
||||
{
|
||||
if (currentIndex > 0)
|
||||
{
|
||||
currentIndex--;
|
||||
DisplayGuide();
|
||||
AudioManager.Instance.PlaySfx("Click");
|
||||
}
|
||||
}
|
||||
private void DisplayGuide()
|
||||
{
|
||||
imageDisplay.sprite = imageList[currentIndex];
|
||||
textDisplay.text = textList[currentIndex];
|
||||
indexDisplay.text = "(" + (currentIndex + 1) + " / " + imageList.Length + " )";
|
||||
}
|
||||
public void Close()
|
||||
{
|
||||
AudioManager.Instance.PlaySfx("Click");
|
||||
Hide();
|
||||
}
|
||||
}
|
11
Assets/Resources/Scripts/UI/GuideManager.cs.meta
Normal file
11
Assets/Resources/Scripts/UI/GuideManager.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 07ee3511a775cd24a8552dfe9196db35
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
24
Assets/Resources/Scripts/UI/GuideUI.cs
Normal file
24
Assets/Resources/Scripts/UI/GuideUI.cs
Normal file
@ -0,0 +1,24 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using TMPro;
|
||||
|
||||
public class GuideUI : UIManager
|
||||
{
|
||||
[SerializeField] private TextMeshProUGUI guideText;
|
||||
|
||||
|
||||
|
||||
public void Show(string theText)
|
||||
{
|
||||
base.Show();
|
||||
guideText.text = theText;
|
||||
guideText.transform.localScale = new Vector3(1, 1, 1);
|
||||
LeanTween.scale(guideText.gameObject, new Vector3(1.25f, 1.25f, 1.25f), 1).setLoopPingPong();
|
||||
}
|
||||
public override void Hide()
|
||||
{
|
||||
base.Hide();
|
||||
LeanTween.cancel(guideText.gameObject);
|
||||
}
|
||||
}
|
11
Assets/Resources/Scripts/UI/GuideUI.cs.meta
Normal file
11
Assets/Resources/Scripts/UI/GuideUI.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9476eb98d272a16419b46074ff30078a
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
8
Assets/Resources/Scripts/UI/MainMenuUI.cs
Normal file
8
Assets/Resources/Scripts/UI/MainMenuUI.cs
Normal file
@ -0,0 +1,8 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class MainMenuUI : UIManager
|
||||
{
|
||||
|
||||
}
|
11
Assets/Resources/Scripts/UI/MainMenuUI.cs.meta
Normal file
11
Assets/Resources/Scripts/UI/MainMenuUI.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d48241b288895b64ba70bb09c4843044
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
8
Assets/Resources/Scripts/UI/PauseUI.cs
Normal file
8
Assets/Resources/Scripts/UI/PauseUI.cs
Normal file
@ -0,0 +1,8 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class PauseUI : UIManager
|
||||
{
|
||||
|
||||
}
|
11
Assets/Resources/Scripts/UI/PauseUI.cs.meta
Normal file
11
Assets/Resources/Scripts/UI/PauseUI.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 04c18e6eaf4774447b6c5917e9655ade
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
31
Assets/Resources/Scripts/UI/SalahDisplay.cs
Normal file
31
Assets/Resources/Scripts/UI/SalahDisplay.cs
Normal file
@ -0,0 +1,31 @@
|
||||
using UnityEngine;
|
||||
using TMPro;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections;
|
||||
using UnityEngine.UI;
|
||||
public class SalahDisplay : UIManager
|
||||
{
|
||||
[SerializeField] private TextMeshProUGUI salahText;
|
||||
[SerializeField] private Image mascotImage;
|
||||
[SerializeField] private Image thumbsImage;
|
||||
[SerializeField] private List<string> variasiText = new List<string>();
|
||||
public void Display()
|
||||
{
|
||||
Show();
|
||||
salahText.text = "Kamu Salah";
|
||||
LeanTween.scale(salahText.gameObject, new Vector3(1.5f, 1.5f, 1.5f), 0.25f).setEaseInOutCubic();
|
||||
LeanTween.scale(salahText.gameObject, new Vector3(1, 1, 1), 0.5f).setDelay(0.2f).setEaseInOutCubic();
|
||||
LeanTween.rotate(thumbsImage.gameObject, new Vector3(0, 0, -30), 0.25f).setEaseInOutCubic();
|
||||
LeanTween.rotate(thumbsImage.gameObject, new Vector3(0, 0, 0), 0.25f).setDelay(0.2f).setEaseInOutCubic();
|
||||
StartCoroutine(SalahDelay());
|
||||
}
|
||||
private IEnumerator SalahDelay()
|
||||
{
|
||||
yield return new WaitForSeconds(1f);
|
||||
LeanTween.scale(salahText.gameObject, new Vector3(1.5f, 1.5f, 1.5f), 0.25f).setEaseInOutCubic();
|
||||
LeanTween.scale(salahText.gameObject, new Vector3(1, 1, 1), 0.5f).setDelay(0.2f).setEaseInOutCubic();
|
||||
LeanTween.rotate(thumbsImage.gameObject, new Vector3(0, 0, -30), 0.25f).setEaseInOutCubic();
|
||||
LeanTween.rotate(thumbsImage.gameObject, new Vector3(0, 0, 0), 0.25f).setDelay(0.2f).setEaseInOutCubic();
|
||||
salahText.text = variasiText[Random.Range(0, variasiText.Count)];
|
||||
}
|
||||
}
|
11
Assets/Resources/Scripts/UI/SalahDisplay.cs.meta
Normal file
11
Assets/Resources/Scripts/UI/SalahDisplay.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 35b8222270fb18b42a6aded426356fa9
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
32
Assets/Resources/Scripts/UI/SameDotsBenarDisplay.cs
Normal file
32
Assets/Resources/Scripts/UI/SameDotsBenarDisplay.cs
Normal file
@ -0,0 +1,32 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
using TMPro;
|
||||
|
||||
public class SameDotsBenarDisplay : UIManager
|
||||
{
|
||||
[SerializeField] private TextMeshProUGUI salahText;
|
||||
[SerializeField] private Image mascotImage;
|
||||
[SerializeField] private Image thumbsImage;
|
||||
//[SerializeField] private List<string> variasiText = new List<string>();
|
||||
public void Display()
|
||||
{
|
||||
Show();
|
||||
//salahText.text = "Kamu Salah";
|
||||
//LeanTween.scale(salahText.gameObject, new Vector3(1.5f, 1.5f, 1.5f), 0.25f).setEaseInOutCubic();
|
||||
//LeanTween.scale(salahText.gameObject, new Vector3(1, 1, 1), 0.5f).setDelay(0.2f).setEaseInOutCubic();
|
||||
LeanTween.rotate(thumbsImage.gameObject, new Vector3(0, 0, -30), 0.25f).setEaseInOutCubic();
|
||||
LeanTween.rotate(thumbsImage.gameObject, new Vector3(0, 0, 0), 0.25f).setDelay(0.2f).setEaseInOutCubic();
|
||||
StartCoroutine(SalahDelay());
|
||||
}
|
||||
private IEnumerator SalahDelay()
|
||||
{
|
||||
yield return new WaitForSeconds(1f);
|
||||
//LeanTween.scale(salahText.gameObject, new Vector3(1.5f, 1.5f, 1.5f), 0.25f).setEaseInOutCubic();
|
||||
//LeanTween.scale(salahText.gameObject, new Vector3(1, 1, 1), 0.5f).setDelay(0.2f).setEaseInOutCubic();
|
||||
LeanTween.rotate(thumbsImage.gameObject, new Vector3(0, 0, -30), 0.25f).setEaseInOutCubic();
|
||||
LeanTween.rotate(thumbsImage.gameObject, new Vector3(0, 0, 0), 0.25f).setDelay(0.2f).setEaseInOutCubic();
|
||||
// salahText.text = variasiText[Random.Range(0, variasiText.Count)];
|
||||
}
|
||||
}
|
11
Assets/Resources/Scripts/UI/SameDotsBenarDisplay.cs.meta
Normal file
11
Assets/Resources/Scripts/UI/SameDotsBenarDisplay.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6b11ee3b5d37a2a46a5a361a943d9093
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
64
Assets/Resources/Scripts/UI/SummaryDisplay.cs
Normal file
64
Assets/Resources/Scripts/UI/SummaryDisplay.cs
Normal file
@ -0,0 +1,64 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using TMPro;
|
||||
|
||||
public class SummaryDisplay : UIManager
|
||||
{
|
||||
|
||||
[SerializeField] private Transform parent;
|
||||
[SerializeField] private DetailDataDisplay detailDataDisplayPrefab;
|
||||
[SerializeField] private AverageDataDisplay averageDataDisplayPrefab;
|
||||
[SerializeField] private TextMeshProUGUI showText;
|
||||
|
||||
[SerializeField] private bool isShowingAverage;
|
||||
|
||||
public override void Show()
|
||||
{
|
||||
base.Show();
|
||||
isShowingAverage = true;
|
||||
ShowAverage();
|
||||
}
|
||||
public void ToggleShow()
|
||||
{
|
||||
if (isShowingAverage)
|
||||
{
|
||||
isShowingAverage = false;
|
||||
ShowDetail();
|
||||
showText.text = "Tampilkan Rata-Rata";
|
||||
}
|
||||
else {
|
||||
isShowingAverage = true;
|
||||
ShowAverage();
|
||||
showText.text = "Tampilkan Detail";
|
||||
}
|
||||
}
|
||||
private void ShowAverage()
|
||||
{
|
||||
foreach (Transform t in parent)
|
||||
{
|
||||
Destroy(t.gameObject);
|
||||
}
|
||||
List<Answer> answers = GameManager.Instance.GetAnswers();
|
||||
AverageDataDisplay Protan = Instantiate(averageDataDisplayPrefab, parent);
|
||||
Protan.SetData(answers, Level.Protan);
|
||||
AverageDataDisplay Deutan = Instantiate(averageDataDisplayPrefab, parent);
|
||||
Deutan.SetData(answers, Level.Deutan);
|
||||
AverageDataDisplay Tritan = Instantiate(averageDataDisplayPrefab, parent);
|
||||
Tritan.SetData(answers, Level.Tritan);
|
||||
}
|
||||
private void ShowDetail()
|
||||
{
|
||||
foreach (Transform t in parent)
|
||||
{
|
||||
Destroy(t.gameObject);
|
||||
}
|
||||
List<Answer> answers = GameManager.Instance.GetAnswers();
|
||||
for (int i = 0; i < answers.Count; i++)
|
||||
{
|
||||
DetailDataDisplay p = Instantiate(detailDataDisplayPrefab, parent);
|
||||
p.SetData(answers[i]);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
11
Assets/Resources/Scripts/UI/SummaryDisplay.cs.meta
Normal file
11
Assets/Resources/Scripts/UI/SummaryDisplay.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 234d71201bdfd03479285497530226b9
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
16
Assets/Resources/Scripts/UI/UIManager.cs
Normal file
16
Assets/Resources/Scripts/UI/UIManager.cs
Normal file
@ -0,0 +1,16 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class UIManager : MonoBehaviour
|
||||
{
|
||||
[SerializeField] private Canvas canvas;
|
||||
public virtual void Show()
|
||||
{
|
||||
canvas.enabled = true;
|
||||
}
|
||||
public virtual void Hide()
|
||||
{
|
||||
canvas.enabled = false;
|
||||
}
|
||||
}
|
11
Assets/Resources/Scripts/UI/UIManager.cs.meta
Normal file
11
Assets/Resources/Scripts/UI/UIManager.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f946136b507d30f44a44263cafd89a33
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
8
Assets/Resources/Sound.meta
Normal file
8
Assets/Resources/Sound.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b10d9f9d53357114dad7557647f78cc9
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
8
Assets/Resources/Sound/Music.meta
Normal file
8
Assets/Resources/Sound/Music.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ce8669e9cec0e9a4992e78a433f77951
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
Assets/Resources/Sound/Music/Color Quest 1.mp3
Normal file
BIN
Assets/Resources/Sound/Music/Color Quest 1.mp3
Normal file
Binary file not shown.
23
Assets/Resources/Sound/Music/Color Quest 1.mp3.meta
Normal file
23
Assets/Resources/Sound/Music/Color Quest 1.mp3.meta
Normal file
@ -0,0 +1,23 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 95ddab96f6582a14e848cf1514c6bebf
|
||||
AudioImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 7
|
||||
defaultSettings:
|
||||
serializedVersion: 2
|
||||
loadType: 0
|
||||
sampleRateSetting: 0
|
||||
sampleRateOverride: 44100
|
||||
compressionFormat: 1
|
||||
quality: 1
|
||||
conversionMode: 0
|
||||
preloadAudioData: 0
|
||||
platformSettingOverrides: {}
|
||||
forceToMono: 0
|
||||
normalize: 1
|
||||
loadInBackground: 0
|
||||
ambisonic: 0
|
||||
3D: 1
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
Assets/Resources/Sound/Music/Color Quest 2.mp3
Normal file
BIN
Assets/Resources/Sound/Music/Color Quest 2.mp3
Normal file
Binary file not shown.
23
Assets/Resources/Sound/Music/Color Quest 2.mp3.meta
Normal file
23
Assets/Resources/Sound/Music/Color Quest 2.mp3.meta
Normal file
@ -0,0 +1,23 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 084e8ca47964c4d4ea0da489013a96f4
|
||||
AudioImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 7
|
||||
defaultSettings:
|
||||
serializedVersion: 2
|
||||
loadType: 0
|
||||
sampleRateSetting: 0
|
||||
sampleRateOverride: 44100
|
||||
compressionFormat: 1
|
||||
quality: 1
|
||||
conversionMode: 0
|
||||
preloadAudioData: 0
|
||||
platformSettingOverrides: {}
|
||||
forceToMono: 0
|
||||
normalize: 1
|
||||
loadInBackground: 0
|
||||
ambisonic: 0
|
||||
3D: 1
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
8
Assets/Resources/Sound/Sfx.meta
Normal file
8
Assets/Resources/Sound/Sfx.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b100d24ca9ba02049b74b0176cf1966c
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
Assets/Resources/Sound/Sfx/ui_menu_button_beep_19.wav
Normal file
BIN
Assets/Resources/Sound/Sfx/ui_menu_button_beep_19.wav
Normal file
Binary file not shown.
23
Assets/Resources/Sound/Sfx/ui_menu_button_beep_19.wav.meta
Normal file
23
Assets/Resources/Sound/Sfx/ui_menu_button_beep_19.wav.meta
Normal file
@ -0,0 +1,23 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 09e9cead3c7f6f34f8bf881479564168
|
||||
AudioImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 7
|
||||
defaultSettings:
|
||||
serializedVersion: 2
|
||||
loadType: 0
|
||||
sampleRateSetting: 0
|
||||
sampleRateOverride: 44100
|
||||
compressionFormat: 1
|
||||
quality: 1
|
||||
conversionMode: 0
|
||||
preloadAudioData: 0
|
||||
platformSettingOverrides: {}
|
||||
forceToMono: 0
|
||||
normalize: 1
|
||||
loadInBackground: 0
|
||||
ambisonic: 0
|
||||
3D: 1
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
Assets/Resources/Sound/Sfx/ui_menu_button_click_08.wav
Normal file
BIN
Assets/Resources/Sound/Sfx/ui_menu_button_click_08.wav
Normal file
Binary file not shown.
23
Assets/Resources/Sound/Sfx/ui_menu_button_click_08.wav.meta
Normal file
23
Assets/Resources/Sound/Sfx/ui_menu_button_click_08.wav.meta
Normal file
@ -0,0 +1,23 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1841406ddd7bb9f4696888ccf97afecb
|
||||
AudioImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 7
|
||||
defaultSettings:
|
||||
serializedVersion: 2
|
||||
loadType: 0
|
||||
sampleRateSetting: 0
|
||||
sampleRateOverride: 44100
|
||||
compressionFormat: 1
|
||||
quality: 1
|
||||
conversionMode: 0
|
||||
preloadAudioData: 0
|
||||
platformSettingOverrides: {}
|
||||
forceToMono: 0
|
||||
normalize: 1
|
||||
loadInBackground: 0
|
||||
ambisonic: 0
|
||||
3D: 1
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
BIN
Assets/Resources/Sound/Sfx/ui_menu_button_click_12.wav
Normal file
BIN
Assets/Resources/Sound/Sfx/ui_menu_button_click_12.wav
Normal file
Binary file not shown.
23
Assets/Resources/Sound/Sfx/ui_menu_button_click_12.wav.meta
Normal file
23
Assets/Resources/Sound/Sfx/ui_menu_button_click_12.wav.meta
Normal file
@ -0,0 +1,23 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 03f5b17d552252d4085da3d61c2df494
|
||||
AudioImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 7
|
||||
defaultSettings:
|
||||
serializedVersion: 2
|
||||
loadType: 0
|
||||
sampleRateSetting: 0
|
||||
sampleRateOverride: 44100
|
||||
compressionFormat: 1
|
||||
quality: 1
|
||||
conversionMode: 0
|
||||
preloadAudioData: 0
|
||||
platformSettingOverrides: {}
|
||||
forceToMono: 0
|
||||
normalize: 1
|
||||
loadInBackground: 0
|
||||
ambisonic: 0
|
||||
3D: 1
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user